Skip to main content

Set up

Pass webhook_url, a public https URL, when you submit a job:
When the job ends, Blon sends one event to that URL: Each job sends each event at most once.

Payload

The body is the event with the whole job in data. Artifact URLs are signed fresh for each delivery.
The job’s webhook field shows the delivery: status (pending, delivered or failed) and attempts.

Verify the signature

Signatures follow Standard Webhooks. Each request carries webhook-id (the event id), webhook-timestamp and webhook-signature. Use an official Standard Webhooks library with your signing secret and the raw request body.
Find and rotate the signing secret in the developer console. After a rotation the old and new secrets are both valid for 24 hours.

Delivery and retries

  • Each attempt waits 10 seconds for your response.
  • A 2xx response is a success.
  • A 4xx response is a permanent failure and is not retried.
  • Anything else is retried up to 10 times, starting at 30 seconds and doubling, at most 1 hour apart.
There is no redelivery endpoint. If you miss an event, read the job with GET /jobs/{id}. Respond quickly with 2xx and do slow work afterwards. Use the event id to ignore duplicates.