Developers
Build on top of zyntForms
Connect your forms to any tool, trigger automations on every response, embed reviews on your site, and query your data via API. Everything you need is here.
WebhooksPro
Get an HTTP POST to your server the moment a response is submitted. Configure the webhook URL per form under Form Settings → Integrations.
Payload
POST https://your-server.com/webhook
Content-Type: application/json
{
"event": "response.created",
"formId": "clxxx...",
"formTitle": "Event Registration",
"submittedAt": "2026-06-20T10:34:00.000Z",
"response": {
"id": "res_abc123",
"answers": [
{ "fieldId": "field_1", "label": "Full name", "value": "Alice Nakato" },
{ "fieldId": "field_2", "label": "Email address", "value": "[email protected]" },
{ "fieldId": "field_3", "label": "Ticket type", "value": "VIP — $75" }
]
}
}Verifying the signature
Each request includes an X-ZyntForms-Signature header — an HMAC-SHA256 digest of the raw body using your webhook secret. Verify it before processing.
// Node.js / Edge example
import { createHmac } from 'crypto'
const sig = req.headers['x-zyntforms-signature']
const expected = createHmac('sha256', process.env.WEBHOOK_SECRET!)
.update(rawBody)
.digest('hex')
if (sig !== expected) {
return new Response('Forbidden', { status: 403 })
}Slack notificationsPro
Paste a Slack Incoming Webhook URL in Form Settings → Integrations → Slack webhook and your team will receive a message for every new response.
Setting up in Slack
- Go to api.slack.com/apps and create a new app (or use an existing one).
- Enable Incoming Webhooks and click Add New Webhook to Workspace.
- Choose the channel where you want response notifications.
- Copy the webhook URL (starts with
https://hooks.slack.com/) and paste it into your form settings.
Embed reviews widget
Display verified customer reviews collected via your zyntForms forms on any external website — your landing page, marketing site, or app.
Drop-in script
<!-- Add to your <head> or before </body> -->
<script
src="https://zyntforms.com/embed/reviews.js"
data-form-id="YOUR_FORM_ID"
data-theme="light"
async
></script>
<!-- Place where you want reviews to appear -->
<div id="zyntforms-reviews"></div>JSON endpoint
If you want to fetch review data yourself and render it your own way:
GET /api/embed/reviews/data?formId=YOUR_FORM_ID
// Response
{
"count": 42,
"averageRating": 4.8,
"reviews": [
{
"id": "res_abc",
"rating": 5,
"text": "Incredibly smooth experience.",
"submittedAt": "2026-06-15T08:12:00.000Z"
}
]
}The endpoint is public and CORS-enabled. Rate-limited to 60 requests per minute per IP.
REST APIPro
Query your forms, responses, and analytics programmatically. Available on Pro plans. Full API reference is coming soon.
Coming soon
The public REST API is currently in development. Endpoints planned for the initial release:
GET /api/v1/forms — list your formsGET /api/v1/forms/:id/responses — paginated response listGET /api/v1/forms/:id/responses/:responseId — single responseGET /api/v1/forms/:id/analytics — aggregate stats
Want early access? Email [email protected].
Ready to start building?
Webhooks, Slack, and the embed widget are available today on the Pro plan.