Webhooks Pro
Forward form submissions to any URL in real time. Webhooks fire a POST request with JSON payload whenever a non-spam submission is received.
Setup
Set the webhookUrl in your form settings via the dashboard or API:
JSON
{
"webhookUrl": "https://your-server.com/webhooks/formfast"
}Payload format
Webhook requests are sent as POST with a Content-Type: application/json header:
JSON
{
"formId": "550e8400-e29b-41d4-a716-446655440000",
"formName": "Contact Form",
"data": {
"name": "Jane Doe",
"email": "jane@example.com",
"message": "Hello from my website!"
},
"metadata": {
"submittedAt": "2025-01-15T10:30:00.000Z",
"referrer": "https://example.com/contact",
"ipAddress": "203.0.113.42"
}
}Payload fields
| Field | Type | Description |
|---|---|---|
| formId | string | UUID of the form |
| formName | string | Display name of the form |
| data | object | Cleaned submission data (special fields removed) |
| metadata.submittedAt | string | ISO 8601 timestamp |
| metadata.referrer | string | null | Page URL where the form was submitted |
| metadata.ipAddress | string | Submitter's IP address |
Behavior
- Webhooks are sent asynchronously — they do not block the submission response
- Webhooks are not sent for spam-flagged submissions
- Failed webhook deliveries are logged but not retried
Testing webhooks
Use a service like
webhook.site or requestbin.com to inspect webhook payloads during development.