Webhooks
Webhooks deliver signed callbacks to your server. They’re used for asynchronouscrawl.completed notifications and can be tested manually before going live.
Authentication: API key required.
Signature verification
Every webhook is signed with HMAC-SHA256. The signature is computed over the canonical JSON of the payload (stable key order, compact separators) and sent in two places:- The
X-BaaS-Signatureheader —sha256=<hex> - The
signaturefield in the JSON body
Node.js — verify a signature
Python — verify a signature
Test a webhook
POST /v1/webhooks/test sends a single immediate signed webhook to your URL (no
retry) and records the attempt in your delivery logs.
Body
Response — 200 OK
502 with detail.error: webhook_delivery_failed.
View delivery logs
GET /v1/webhooks/logs lists your delivery records, newest first.
Response
Crawl completion callback
When a crawl job with acallback_url completes, X1-BaaS dispatches a signed
crawl.completed webhook:
Example payload
Retry behavior
Crawl-completion webhooks retry with exponential backoff:
After the retry budget (3 retries after the initial attempt) the delivery is marked
failed.