spend.threshold_reached
⚠️
Preview — this feature is being built; the design below is the spec.
Sent when: Credit spend passed 50%, 80% or 100% of a spend limit for the organization or a workspace.
| Property | Value |
|---|---|
| Scope | The whole organization. Register with an Admin key at /v1/organizations/webhooks. |
| Area | Billing |
| Subscribe with | "events": ["spend.threshold_reached"], or a prefix such as "spend.*" |
Payload
{
"id": "evt_01JCA5D7F9H1K3M5P7R9",
"type": "spend.threshold_reached",
"created_at": "2026-11-05T10:00:00Z",
"organization_id": "org_01J9X8Z6B4D2F0H8K6M4",
"data": {
"object": {
"type": "spend_limit",
"scope": "workspace",
"workspace_id": "wrkspc_01JC0A2C4E6G8J0L2N4Q",
"threshold_pct": 80,
"limit_usd": "500.00",
"spent_usd": "401.12",
"period_start": "2026-11-01T00:00:00Z"
}
}
}data.object matches what the corresponding GET endpoint returned when the event happened. Prompt and output text are never included.
What to do
- At 80%, alert the owning team; at 100%, requests paid from credits are refused until the limit rises or the month ends.
- To ask for more, use Request a higher limit.
Delivery
Deliveries are signed, retried with back-off for up to 3 days, and may arrive more than once or out of order. De-duplicate on the syntic-event-id header and compare timestamps before acting. See Webhooks.
Was this page helpful?