Webhooks let you send form responses to any URL in real-time when a submission is received.
#Setting Up a Webhook
- Open your form's Integrations tab
- Click Add Webhook
- Enter your endpoint URL
- Optionally, add a secret for signature verification
- Save
#Payload Format
When a response is submitted, Polyform sends a POST request with a JSON payload:
{
"formId": "abc123",
"formName": "Customer Feedback",
"responseId": "resp_456",
"submittedAt": "2026-01-15T10:30:00.000Z",
"data": {
"Your Name": "John Doe",
"Email Address": "john@example.com",
"How satisfied are you?": "Very satisfied"
}
}
The keys in data are the question labels from your form.
#Verifying Webhooks
If you set a secret, each webhook request includes a X-Webhook-Signature header containing an HMAC SHA-256 signature. Use this to verify the request came from Polyform.
#Delivery
- Webhook requests have a 30-second timeout
- All deliveries are logged with status, duration, and response body for debugging
- Endpoint URLs are validated — private/internal IPs are not allowed
#Testing
Use the Test button in the webhook settings to send a sample payload to your endpoint.