Spend Limits

Create a spend limit

Changed on

Sets 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.

post/spend_limits

Request

  • Base URL
    https://api.telnyx.com/v2
  • URL
    https://api.telnyx.com/v2/spend_limits
  • Auth
    HTTP bearer

Request body

OR

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

      endpoint added