GET /api/webhooks/events.
Billing
credits.low
credits.low
Your balance has fallen below $1.00. Fires once on the request that
crosses the threshold, not on every request after it, so topping up is the
only thing that arms it again.
credits.exhausted
credits.exhausted
A request was refused because the balance could not cover it. The request
that triggered this also returned
402.payment.succeeded
payment.succeeded
A top-up settled and the credit has been applied.
payment.failed
payment.failed
A top-up did not complete. No credit was applied.
API keys
key.created
key.created
A new API key was issued. The secret is never included.
key.revoked
key.revoked
A key was revoked and stopped working immediately.
Search
search.completed
search.completed
A search finished.
Envelope
Every payload has the same four fields regardless of type.New event types and new fields inside
data are added over time. Ignore
what you do not recognise rather than failing on it.Ordering and duplicates
Deliveries are not ordered. A retried event can arrive after a newer one, so do not infer sequence from arrival time. Usecreated_at when order matters.
Each event is delivered to each endpoint once, and a retry reuses the same
id. Treat id as an idempotency key and ignore one you have already
processed.