Form Builder
Webhook Integration

Form Builder Webhook Integration

Send form submissions to any URL in real-time. Build custom integrations with your backend, CRM, or any service. JSON payloads, signature verification, and automatic retries included.

View All Integrations
<1s

Delivery Time

Real-time

5x

Retry Attempts

Auto-retry on failure

SHA256

Signatures

Verified authenticity

99.9%

Delivery Rate

With retries

Webhook Features

Everything developers need for custom integrations

Real-Time Delivery

Webhooks fire immediately when forms are submitted. No polling, no delays. Sub-second delivery.

JSON Payloads

Clean, structured JSON data with all form fields. Easy to parse and process in any language.

Signature Verification

HMAC-SHA256 signatures verify webhook authenticity. Prevent spoofing and ensure data integrity.

Automatic Retries

Failed webhooks retry up to 5 times with exponential backoff. Never lose a submission.

Custom Headers

Add authentication headers, API keys, or any custom headers your endpoint requires.

Delivery Logs

Full logs of every webhook attempt. See payloads, responses, and debug issues easily.

How to Set Up Webhooks

Start receiving form data in 5 steps

1

Add Webhook URL

Enter your endpoint URL that will receive form submissions

2

Configure Headers

Add authentication headers or API keys if required

3

Set Up Signature

Copy the webhook secret to verify request authenticity

4

Test Connection

Send a test payload to verify your endpoint is working

5
5

Go Live

Enable the webhook and start receiving submissions

Webhook Payload Format

Clean JSON data structure

// POST request to your endpoint
// Headers:
Content-Type: application/json
X-Webhook-Signature: sha256=a1b2c3d4e5f6...
X-Webhook-ID: whk_abc123
X-Form-ID: form_xyz789
// Body:
{
  "event": "form.submission.created",
  "timestamp": "2024-01-15T10:30:00Z",
  "webhook_id": "whk_abc123",
  "submission": {
    "id": "sub_def456",
    "form_id": "form_xyz789",
    "form_name": "Contact Form",
    "submitted_at": "2024-01-15T10:30:00Z",
    "fields": {
      "name": "John Doe",
      "email": "[email protected]",
      "phone": "+1 555-123-4567",
      "message": "I'd like to learn more about your product",
      "budget": "10000-50000",
      "file_upload": "https://storage.example.com/files/doc.pdf"
    },
    "metadata": {
      "ip_address": "192.168.1.1",
      "user_agent": "Mozilla/5.0...",
      "referrer": "https://google.com",
      "page_url": "https://example.com/contact"
    }
  }
}

Signature Verification

Verify webhook authenticity with HMAC-SHA256

Node.js Example

const crypto = require('crypto');

function verifyWebhook(payload, signature, secret) {
  const expected = crypto
    .createHmac('sha256', secret)
    .update(payload)
    .digest('hex');

  return `sha256=${expected}` === signature;
}

// In your endpoint handler:
const isValid = verifyWebhook(
  JSON.stringify(req.body),
  req.headers['x-webhook-signature'],
  process.env.WEBHOOK_SECRET
);

Python Example

import hmac
import hashlib

def verify_webhook(payload, signature, secret):
    expected = hmac.new(
        secret.encode(),
        payload.encode(),
        hashlib.sha256
    ).hexdigest()

    return f"sha256={expected}" == signature

# In your endpoint handler:
is_valid = verify_webhook(
    request.data.decode(),
    request.headers.get('X-Webhook-Signature'),
    os.environ['WEBHOOK_SECRET']
)

Why Use Webhooks

Full control over your form data

For Developers

  • Full Control

    Process data exactly how you need

  • Any Language

    Works with Node, Python, PHP, Go, etc.

  • Custom Logic

    Build any integration logic

  • Self-Hosted

    Keep data on your infrastructure

For Security

  • Signature Verification

    HMAC-SHA256 authentication

  • HTTPS Only

    TLS encrypted transmission

  • IP Whitelisting

    Restrict to known IPs

  • Audit Logs

    Complete delivery history

Common Webhook Use Cases

Build any custom integration

Custom Backend Processing

Send submissions to your own API for custom validation, enrichment, or processing logic.

Database Integration

Store form data directly in your database. PostgreSQL, MongoDB, MySQL, or any data store.

CRM Updates

Push leads to Salesforce, HubSpot, or custom CRM systems via their APIs.

Workflow Triggers

Start internal workflows, approval processes, or task creation in your systems.

Compliance & Logging

Route submissions to compliance systems, audit logs, or data governance platforms.

Real-Time Notifications

Build custom notification systems via SMS, push notifications, or internal alerts.

Automatic Retry Logic

Never lose a form submission

When your endpoint returns a non-2xx status code or times out, Form Builder automatically retries with exponential backoff:

1

1st

Instant

2

2nd

1 min

3

3rd

5 min

4

4th

30 min

5

5th

2 hrs

All attempts are logged for debugging
Manual retry available from dashboard after all attempts

Webhook Integration FAQ

Common questions about Form Builder webhooks

Prefer No-Code Integration?

Try our Zapier integration for 5000+ app connections

Ready to Build Custom Integrations?

Start receiving form data via webhooks in minutes

View Pricing