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

FieldTypeDescription
formIdstringUUID of the form
formNamestringDisplay name of the form
dataobjectCleaned submission data (special fields removed)
metadata.submittedAtstringISO 8601 timestamp
metadata.referrerstring | nullPage URL where the form was submitted
metadata.ipAddressstringSubmitter'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.