Create a spend limit
Changed onSets a limit for a product and period that has none. Send exactly one of amount and unlimited: true. The period's spend is checked at once: if it is already above the new limit, the product is blocked immediately (evaluation.blocked_now). Returns 409 when a limit already exists for the product and period; update it instead. With credential_id, the limit applies to that API key only: it needs an amount, and the period's API key limits cannot add up to more than the total limit when the total has an amount.
Request
- Base URLhttps://api.telnyx.com/v2
- URLhttps://api.telnyx.com/v2/spend_limits
- AuthHTTP bearer
Request body
Example request
{
"product": "inference",
"period": "daily",
"credential_id": "KEY0192F3A1B2C3D4E5F6A7B8C9D0E1F2",
"amount": 100,
"reason": "Team budget"
}Response
The limit was created. evaluation says whether the change blocked the product.
Example response
{
"data": {
"record_type": "spend_limit",
"product": "inference",
"product_name": "Inference",
"period": "daily",
"period_start": "2026-09-24",
"period_end": "2026-09-25",
"limit": {
"amount": "100",
"origin": "self_service",
"updated_at": "2026-09-24T09:12:03.412Z"
},
"effective_limit_usd": "100",
"spend_usd": "37.41",
"block": {
"detected_at": "2026-09-24T08:41:17Z",
"spend_usd": "10.20",
"limit_usd": "10",
"blocked_until": "2026-09-25"
},
"allocation": {
"total_limit_usd": "1000.00",
"allocated_usd": "800.00",
"unallocated_usd": "200.00",
"over_allocated_usd": "0.00"
},
"credential_limits": [
{
"credential_id": "KEY0192F3A1B2C3D4E5F6A7B8C9D0E1F2",
"limit": {
"amount": "300.00",
"origin": "self_service",
"updated_at": "2026-10-20T08:03:40Z"
},
"spend_usd": "120.00",
"block": {
"detected_at": "2026-09-24T08:41:17Z",
"spend_usd": "10.20",
"limit_usd": "10",
"blocked_until": "2026-09-25"
}
}
],
"evaluation": {
"spend_usd": "37.41",
"note": "A block was lifted by Telnyx support today; this limit applies from tomorrow."
}
}
}Changes
- info
added the new optional request property
/ - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
//to the response with the status
- info
- info
endpoint added
- info