Data Collection via Email Using AMP Forms
1 Overview
AMP emails can collect data from recipients without them leaving the inbox. Using the <amp-form> component, forms submit via XHR to a server endpoint. MiN8T provides the full stack: a visual form builder, managed submission endpoints (Data Storages), and webhook forwarding to connect submissions to your existing tools.
This guide ties together the form block and data storage features into an end-to-end data collection workflow.
2 The Data Flow
Here's what happens when a recipient submits a form in an AMP email:
- Recipient fills out the form in their email client (Gmail, Yahoo, etc.)
- Form submits via XHR to the Data Storage endpoint (
action-xhr) - MiN8T validates AMP CORS headers (origin, source-origin)
- Field values are sanitized (HTML stripped, size limited to 10KB per field, max 50 fields)
- Response is stored in the Data Storage with metadata (origin, IP, user agent, timestamp)
- Webhook fires (if configured) — POSTs the fields to Zapier, Make, or your API
- Success/error template renders in the email — recipient sees confirmation
Steps 3–7 happen in under a second. The form submission, storage, webhook, and response all happen server-side in a single request cycle. The recipient sees the success message almost instantly.
3 Setup Steps
1. Create a Data Storage
Go to the Data Storages dashboard and create a new storage. Optionally configure a webhook URL.
2. Build the Form
In the email editor, add an AMP Form block. Configure fields (text, email, select, etc.) and the submit button.
3. Connect Form to Storage
In the form's property panel, select the Data Storage from the dropdown. MiN8T sets the action-xhr URL automatically.
4. Configure Success Message
Edit the success template to reference submitted fields: Thanks {{name}}, we'll email you at {{email}}.
5. Test
Send a test email to Gmail, submit the form, and verify the response appears in your Data Storage dashboard.
4 Webhook Integrations
Webhooks extend the data flow beyond MiN8T. Configure a webhook URL on your Data Storage to forward every submission in real-time:
- Zapier — create contacts in HubSpot, add rows to Google Sheets, send Slack notifications
- Make (Integromat) — multi-step workflows with conditional logic
- Custom API — your own backend for validation, enrichment, or database storage
- Slack incoming webhook — post form responses directly to a channel
The webhook receives a JSON payload with storage_id, storage_name, timestamp, and fields. Webhook failures don't block the form response — submissions are always stored in MiN8T regardless.
You can also export all stored responses as CSV or JSON from the Data Storages dashboard — useful for batch processing or importing into a CRM.
5 Next Steps
- How to Add a Feedback Form — detailed form block configuration
- What are Data Storages? — storage management, responses, and export
- AMP Email Whitelisting Guide — get approved to send AMP emails
Last updated: April 2026. All details verified against MiN8T's actual codebase implementation.