Skip to main content

When this fires

Once per processed usage event, after the async processor persists it. This is the only high-volume webhook: it fires at your own ingest rate, so it is excluded from the family select-all in the dashboard and must be subscribed to explicitly. Delivery is asynchronous — events are batched through the usage pipeline, so expect seconds of delay relative to the original POST /usage/events call. The idempotency key is the usage event ID, so retries never duplicate. Use it to mirror usage into your own analytics store without polling.

Body

application/json
id
string
required
event
string
required
Allowed value: "usage.recorded"
timestamp
string
required
organizationId
string
required
mode
enum<string>
required
Available options:
live,
sandbox
apiVersion
string
required
data
object
required

Response

200

Return any 2xx status code to acknowledge receipt of the event.