Send form submissions to the tools your team already uses — Slack, Discord, Telegram, Google Sheets, or any custom endpoint via Webhook.
To set up any integration: open your form → go to the Integrations tab → choose a service → fill in the details → click Save → click Send test to confirm it's working.
Integrations are per-form. If you have multiple forms, set up integrations on each one separately.
Webhook
Best for: developers who want full control, or connecting to services not listed here.
How it works: TruForms sends a signed HTTP POST request to your URL every time a submission comes in. Your server receives the JSON payload and does whatever you need — store it, forward it, trigger a workflow.
Setup:
- Enter your endpoint URL (must return a
2xxresponse to confirm receipt). - Copy the auto-generated signing secret — use it to verify that requests are genuinely from TruForms.
- Click Save, then Send test to push a sample payload through.
Good to know:
- Failed deliveries are retried up to 8 times with exponential backoff.
- Every attempt (success or failure) is logged in the Delivery log panel — great for debugging.
- Your signing secret is encrypted at rest and never shown again after you leave the page.
Slack
Best for: getting a Slack message every time someone submits your form.
Setup:
- In Slack, go to Apps → Incoming Webhooks → Add to channel.
- Choose the channel where you want notifications to appear and click Allow.
- Copy the webhook URL — it starts with
hooks.slack.com/services/.... - Paste it into the Slack integration in TruForms, click Save, then Send test.
You'll receive a formatted message in your chosen channel showing all submission fields.
Discord
Best for: notifying your Discord community or team server about new submissions.
Setup:
- Open your Discord server and go to the channel you want to post in.
- Click the gear icon (Edit Channel) → Integrations → Webhooks → New Webhook.
- Give it a name, then click Copy Webhook URL.
- Paste it into the Discord integration in TruForms, click Save, then Send test.
Submissions appear as a Discord embed with each field listed clearly.
Telegram
Best for: getting submission alerts in a Telegram group, channel, or your personal chat.
Telegram needs a bot to send messages on your behalf. It takes about 2 minutes to set up.
Setup:
- Create a bot — open Telegram and message @BotFather. Send
/newbot, follow the prompts, and copy the bot token it gives you. - Add the bot to your chat — add the bot to your group or channel. If it's a group, make it an admin so it can post.
- Find your chat ID:
- For a group/channel: forward any message to @getidsbot and it will reply with the chat ID.
- For a personal chat: send any message to your bot, then open
https://api.telegram.org/bot<YOUR_TOKEN>/getUpdatesin a browser — look for"chat":{"id":...}.
- Paste the bot token and chat ID into TruForms, click Save, then Send test.
Your chat ID is usually a negative number for groups/channels (e.g. -1001234567890) and a positive number for personal chats.
Google Sheets
Best for: collecting all submissions into a spreadsheet for analysis, sharing, or reporting.
How it works: each submission appends a new row to your sheet with a timestamp, submission ID, form name, and all field values.
Setup:
Step 1 — Create or choose a Google Sheet
- Note the spreadsheet ID from the URL:
docs.google.com/spreadsheets/d/<ID>/edit. - Also note the sheet name (the tab name at the bottom, default is
Sheet1).
Step 2 — Set up a service account in Google Cloud
- Go to Google Cloud Console and create a project (or use an existing one).
- Search for Google Sheets API and enable it.
- Go to IAM & Admin → Service Accounts → Create Service Account. Give it any name.
- Open the service account → Keys tab → Add Key → Create new key → JSON. Download the file.
Step 3 — Share your sheet with the service account
- Open the downloaded JSON file and copy the
client_emailvalue (looks like[email protected]). - In your Google Sheet, click Share, paste that email, and set the role to Editor.
Step 4 — Connect in TruForms
- Paste the spreadsheet ID, sheet name, and the full contents of the JSON file into the Google Sheets integration.
- Click Save, then Send test — a test row will appear in your sheet within seconds.
The service account JSON is encrypted before storage. We never log or expose its contents.
Testing and troubleshooting
Send test fires a sample payload through the real delivery pipeline without creating an actual submission. Use it any time you want to check connectivity.
If a test fails:
- Webhook — check the Delivery log panel for the HTTP status and error message from your server.
- Slack / Discord — make sure the webhook URL is complete and the channel still exists.
- Telegram — double-check the bot token format and that the bot is a member of the chat.
- Google Sheets — confirm the service account email has Editor access on the sheet.
Pausing and removing integrations
- Pause — flip the toggle on any integration to stop deliveries without losing your config. New submissions will skip that integration until you re-enable it.
- Remove — use the Remove button inside the expanded integration panel. This permanently deletes the config (you'll need to re-enter credentials to set it up again).