Skip to main content

Integrations

The Integrations page connects your site to other systems. You'll find it in the site sidebar under Settings → Integrations.

Form rules

With a form rule, submissions from your site's forms are forwarded automatically to your own system, such as a CRM or a ticketing tool. When a new submission arrives through the selected form, we send its details to the address you provide as an HTTP POST request (webhook).

Creating a rule

  1. Press New rule.
  2. Give the rule a name (e.g., "Orders to CRM").
  3. Choose which form the rule applies to: a single form or All forms. You can also type a form key by hand if the form has not received any submissions yet.
  4. Enter the address the data is sent to. It must be a public https address.
  5. Save. You'll receive a signing secret — copy it somewhere safe right away, because it is never shown again.

A rule can be switched on and off with the toggle, edited with the pencil icon, and deleted with the trash icon.

Signing

Every delivery is signed with the rule's secret so your receiving system can verify the message is genuine. The signature travels in the X-Kamu-Signature header in the form t=<timestamp>,v1=<hmac>, where v1 is the HMAC-SHA256 digest of the string <timestamp>.<request body>.

If the secret is lost, create a new one from the key icon. The old secret stops working immediately, so update the new one in your receiving system at the same time.

Delivery payload

The delivery is JSON and contains the form fields as they were submitted:

{
"event": "form.submission",
"submission_id": "…",
"site_id": "…",
"form_key": "contact",
"form_label": "Contact form",
"page": "/contact",
"created_at": "2026-08-07T12:00:00.000Z",
"fields": [
{ "label": "Name", "value": "John Smith" },
{ "label": "Email", "value": "john@example.com" }
]
}

Your server should respond with a 2xx status code. If a delivery fails, we retry with increasing delays, up to five times in total.

Delivery log

Under each rule you'll find a Latest deliveries log. It shows the delivery status (delivered, pending, or failed), the receiver's HTTP response code, the number of attempts, and any error message. The log is the best first place to check if messages do not seem to arrive in your system.

Other notification channels

If you want contact requests by email, as push notifications, or on WhatsApp, see Notifications.