Skip to main content
Jomioz webhooks let you receive instant HTTP notifications whenever something meaningful happens on your account — such as a resource being created or an event firing. Instead of polling the API repeatedly, you register an endpoint on your server and Jomioz delivers a signed JSON payload to it the moment the relevant activity occurs, keeping your application in sync in real time.

Creating a Webhook

1

Navigate to the Webhooks page

In the Jomioz Dashboard, go to Integrations → Webhooks. You’ll see a list of any existing webhooks on your account.
2

Click New Webhook

Select New Webhook in the top-right corner to open the webhook creation form.
3

Configure your endpoint and events

Enter the publicly reachable HTTPS URL where Jomioz should send notifications. Then select one or more event types you want to subscribe to. You can subscribe to all events or choose a specific subset.
4

Save and store your webhook secret

Click Save. Jomioz generates a unique webhook secret for this endpoint — copy it immediately and store it securely. You’ll use this secret to verify that incoming payloads genuinely originate from Jomioz.

Webhook Payload

Every webhook request Jomioz sends to your endpoint is an HTTP POST with a Content-Type: application/json header. The body contains a consistent JSON structure regardless of the event type.

Verifying Signatures

Always verify the signature on every incoming webhook before processing the payload. Jomioz signs each delivery using HMAC-SHA256 with your webhook secret as the key and the raw request body as the message. Compare the result against the x-jomioz-signature header — if they match, the payload is authentic.
Use the raw request body bytes when computing the signature — do not parse the JSON first. Parsing and re-serializing the body can alter whitespace or key ordering, causing the signature check to fail even for legitimate payloads.

Supported Events

Subscribe to any combination of the following event types when configuring a webhook.

Retry Behavior

If your endpoint does not return a 2xx HTTP status code within 10 seconds, Jomioz marks the delivery as failed and schedules a retry. Jomioz retries a failed delivery up to 5 times using exponential backoff, with increasing delays between each attempt. After five failed attempts, the delivery is marked as permanently failed. You can view failed deliveries and manually replay them from Dashboard → Integrations → Webhooks → [your webhook] → Delivery Logs.
Your endpoint must return a 200 status code within 10 seconds of receiving a webhook. If it times out or returns a non-2xx response, Jomioz treats the delivery as failed and will retry it. Perform any time-consuming processing asynchronously — acknowledge the webhook immediately, then handle the payload in a background job.