API referenceWebhooksEvent catalogBillingspend.threshold_reached

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.

PropertyValue
ScopeThe whole organization. Register with an Admin key at /v1/organizations/webhooks.
AreaBilling
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?