Skip to main content
GET
/
v1
/
limits
/
tiers
Tier Matrix
curl --request GET \
  --url https://kymaapi.com/v1/limits/tiers \
  --header 'Authorization: Bearer <token>'
{
  "object": "<string>",
  "tiers": [
    {}
  ]
}

Documentation Index

Fetch the complete documentation index at: https://docs.kymaapi.com/llms.txt

Use this file to discover all available pages before exploring further.

Public, no authentication required. Returns Kyma’s complete rate-limit tier ladder so docs, dashboard signup flows, and external tools can show “what you unlock at each spend threshold” without hardcoding the matrix in two places. The response is Cache-Control: public, max-age=300 (5 minutes).
curl https://kymaapi.com/v1/limits/tiers

Response

{
  "object": "tier.matrix",
  "tiers": [
    {
      "tier": 0,
      "name": "Tier 0",
      "min_deposit": 0,
      "rpm": 30,
      "per_model_rpm": 25,
      "tpm": 200000,
      "max_single_request": 200000,
      "image_concurrent": 2,
      "image_queue_depth_cap": 6,
      "video_concurrent": 0,
      "video_queue_depth_cap": 0,
      "audio_concurrent": 2,
      "audio_concurrent_per_provider": {
        "groq": 1,
        "vertex": 2,
        "elevenlabs": 1,
        "minimax": 1,
        "openai": 1
      }
    }
  ]
}
object
string
Always "tier.matrix".
tiers
array
Array of 5 tier definitions, ordered Tier 0 → Tier 4.

Tier fields

FieldTypeMeaning
tiernumberTier number (0–4)
namestringDisplay name ("Tier 0""Tier 4")
min_depositnumberMinimum cumulative Stripe deposit in USD to qualify for this tier
rpmnumberRequests per minute (text/code endpoints, global per-user)
per_model_rpmnumberRequests per minute for any single model (text/code)
tpmnumberTokens per minute (text/code, global per-user)
max_single_requestnumberUpper bound for tokens in a single request (input + estimated output)
image_concurrentnumberMax concurrent image generation jobs
image_queue_depth_capnumberMax queued image jobs ahead of the concurrency gate. 0 on Tier 4 (uses combined pool)
video_concurrentnumberMax concurrent video generation jobs. 0 on Tier 0 (video blocked entirely)
video_queue_depth_capnumberMax queued video jobs. 0 on Tier 0 (blocked) and Tier 4 (combined pool)
audio_concurrentnumberLegacy aggregate cap — max() across audio sub-pools
audio_concurrent_per_providerobjectPer-provider audio sub-pool caps. Keys: groq, vertex, elevenlabs, minimax, openai. See Audio sub-pools.
combined_media_concurrentnumber?Tier 4 only. Image + video share this combined concurrent pool (38 total).
combined_queue_depth_capnumber?Tier 4 only. Queue depth cap for the combined pool (114).

Use cases

  • Dashboard signup flow: show “deposit $5 to unlock 60 RPM + 10 concurrent image” inline.
  • Pricing page: render tier comparison table without hardcoding numbers.
  • External capacity planner: developers building products on Kyma can fetch tier caps and budget concurrency client-side.
  • CI test fixture: lock test expectations against the live matrix.

Caching

Cache-Control: public, max-age=300 (5 minutes). Tier matrix changes infrequently (typically only when Kyma raises caps, e.g. after upstream key rotation or quota upgrades).

Errors

Public read-only — no auth errors. Only failure mode is 500 on internal error.
  • GET /v1/pricing — companion catalog of all SKU pricing
  • Rate Limits guide — full human-readable explanation with audio sub-pool reasoning, queue + backpressure semantics, 429 response shape, and the “Need higher limits?” CTA
  • GET /v1/auth/limits — your account’s CURRENT tier (requires auth, returns your specific tier_override if set)