Webhooks
Webhooks allow you to receive real-time updates when viewers interact with your Arcades. Webhooks are ideal for connecting Arcade to your internal systems, CRMs, or automation workflows.
What events does Arcade support via webhooks?
Currently, Arcade supports webhooks for form submission events:
formSubmission.created
formSubmission.updated
(reserved for future use)
More events may be added in the future — let us know if there are others you'd like to see!
How do I set up a webhook?
You can configure your webhook in the Advanced Settings of your Arcade workspace.
Go to
Settings > Advanced
Enter your webhook URL
Copy your webhook secret (used for verifying the payload)
Save your changes
Arcade will send a POST
request to your configured URL whenever a supported event occurs.
What does the webhook payload look like?
The payload is sent as a JSON object. Here’s an example of a formSubmission.created
event:
What headers are included with the webhook?
Every webhook request includes:
content-type: application/json
x-arcade-signature
: an HMAC-SHA256 signature of the raw body, Base64 encodedx-arcade-signature-2
(optional): a second signature used during secret rotation
How do I verify the webhook signature?
You can verify the signature by creating an HMAC using your webhook secret and comparing it to the x-arcade-signature
header.
With a Next.js API route:
With a Next.js Route Handler (App Router):
Can I test my webhook?
What should I do if I need more webhook events?
Let us know! We currently support form submission events, but we're exploring more event types (e.g. CTA clicks, Arcade completions, viewer sessions). Your input helps prioritize our roadmap.
Last updated
Was this helpful?