Integrations
Every FormDoc submission is emailed to you. On paid plans you can also send each one to Slack, a Google Sheet or your own server, and from there to almost any app through Zapier, Make or n8n. Integrations are set up per form from the Integrations tab in your dashboard, with no code on your website.
All integrations at a glance
| Integration | Plan | What it does |
|---|---|---|
| Every plan | Each submission arrives as a clear email; replying answers the visitor | |
| Summary emails | Every plan | One daily or weekly email instead of one per submission |
| Cloudflare Turnstile, hCaptcha | Every plan | Optional “are you human” check on the form |
| JSON API and formdoc.js | Every plan | Send with fetch and show the result on your own page |
| Webhooks | Pro, opening soon | Signed JSON to your own URL for every submission |
| Slack | Pro, opening soon | A formatted message in a Slack channel |
| Google Sheets | Pro, opening soon | A new row in a spreadsheet for every submission |
| Zapier, Make, n8n | Pro, opening soon | Connect through a webhook to thousands of apps |
| reCAPTCHA | Pro, opening soon | Google’s captcha, if you prefer it |
| CLI and MCP server | Every plan | Create and test forms from the terminal or an AI assistant |
Pro allows up to 5 integrations and Agency up to 10. Paid plans are opening soon; see pricing.
Email notifications
Every plan includes email. Each submission is sent to the address you confirmed, as a table of the fields people filled in, and the reply-to address is the visitor’s email, so replying answers them directly. Spam is never emailed. Prefer fewer emails? Choose a daily or weekly summary in the form’s settings.
Send form submissions to Slack
- In Slack, create an incoming webhook for the channel you want (Slack’s “Incoming Webhooks” app gives you a hooks.slack.com address).
- In FormDoc, open your form, go to Integrations and add Slack.
- Paste the address and press Send test.
Each submission appears as a formatted message with up to 10 fields and a button to open it in FormDoc. The webhook address is stored encrypted and shown masked.
Send form submissions to Google Sheets
- Open your form’s Integrations tab and add Google Sheets.
- Sign in with Google and allow FormDoc to create one spreadsheet.
- Send a test: it appears as the first row under a header row.
FormDoc only asks for access to the spreadsheet it creates, not your other files. New fields become new columns automatically, and values are written as plain text so a submission can never run as a spreadsheet formula. If Google access is removed, FormDoc pauses the integration and emails you to reconnect.
Webhooks: send submissions to your own server
Add an https address and FormDoc sends each accepted submission as JSON, signed with an HMAC signature in the X-Formdoc-Signature header so your server can check it’s genuine. Failed deliveries are retried automatically for several hours, and every attempt is listed in a delivery log with a Retry button. The payload format and code to verify the signature are in the webhooks guide.
Zapier, Make and n8n
Use FormDoc’s webhooks to reach thousands of apps without writing code:
- Zapier: start a Zap with the Webhooks by Zapier “Catch Hook” trigger and paste its address into a FormDoc webhook.
- Make: start a scenario with a “Custom webhook” module and paste its address.
- n8n: add a Webhook node set to POST and paste its production address.
Then send a test from FormDoc so the tool learns the fields, and map them into your CRM, helpdesk or spreadsheet. Check each tool’s own plan limits for webhooks.
Captcha providers
Most forms don’t need a captcha: FormDoc’s hidden honeypot, spam scoring and rate limits stop most spam. If a form still attracts it, turn on Cloudflare Turnstile or hCaptcha in the form’s settings and add your secret key; reCAPTCHA is available on paid plans. Read how FormDoc stops form spam to decide whether you need one.
For developers and AI assistants
- JSON API: send with
Accept: application/jsonand getsuccessor an error code back. See the API reference. - formdoc.js: one optional script that sends the form in the background and shows the result in place.
- CLI and MCP server:
npx @formdocdev/clicreates, checks and tests forms, and connects to Claude Code, Cursor and VS Code. Use the MCP setup generator.
Common questions
Do integrations replace the email notification?
No. Email keeps working alongside every integration. If Slack or a spreadsheet is enough, switch the form’s emails to a summary or turn them off.
Can one form send to several places?
Yes. A form can use several integrations at once, for example Slack for the team and Google Sheets for records, within your plan’s limit.
What happens if my server or Slack is down?
FormDoc retries failed deliveries automatically with growing gaps, for several hours. You can see every attempt in the delivery log and retry by hand.
Do I need to change my website to add an integration?
No. Integrations are set up in the FormDoc dashboard. Your form keeps posting to FormDoc as before.