Skip to content
Albastar Corp.

Rate limits

Call, token, size and wait limits, with the error each returns.

Every limit returns an error code. Retry-After is in seconds.

Limits

LimitValueErrorReset
Calls per account key (abk_)60 per minute and 5,000 per 24 hours by default; set per key429 rate_limitedRolling 1 minute and 24 hours
Chat completions per LLM key (hlk_)200 per UTC day by default429 daily_limit00:00 UTC
Tokens per member account300,000 per UTC day429 daily_tokens00:00 UTC
Open chat completions per member account64429 too_many_streamsWhen a completion ends
Open chat completions per account and modelThe model's max_parallel400 too_many_parallel; 400 parallel_unsupported when max_parallel is 1When a completion ends
Chat request body32 MB413 too_largeNone
Tokens per chat requestThe model's context_length400None
Media processing per member account600 s per UTC day by default429 budget-exhausted00:00 UTC
Open media jobs per account1,000429 too-many-openWhen a job ends
JSON request body on audio and media routes4 MB413 too-largeNone
File in POST /v1/media/uploads or POST /v1/audio/transcriptions20 MB413 too-largeNone
  • A member account is an albastov.com account other than the owner's. The owner's account has no token, open-completion or media-processing limit.
  • Account limits apply to every key of the account. max_parallel does not apply to hlk_ keys.
  • max_parallel and context_length per model are in GET /v1/models.
  • Open completions count toward the hlk_ daily limit; GET /v1/models does not.
  • A 429 daily_limit or 429 daily_tokens body carries limit and used; 429 budget-exhausted carries resets_at.

Events limits

LimitValue
Publish requests, per publish key120 a minute, bursts of 30
Published events, per publish key300 a minute; each event of a batch counts
Requests, per events key600 a minute, 200,000 a day
Publish body16 KB; batch 256 KB and at most 100 events
idempotency_key window7 days, per source
Webhook body2 MiB
Webhook deliveries, per source120 a minute, bursts of 30
Webhook noise budget, per source5 events a minute one by one; the rest as one summary event
Kept webhook deliveries, per sourceThe newest 200, bodies cut at 256 KiB
Open streams, per read key8
Stream catch-up1000 events
History90 days per source by default

Waits

ConditionResponse
Model not loaded503 model_loading with Retry-After and retry_after_s; a streamed request stays open until the model answers
Request waiting in the queue503 queued with position and Retry-After
Speech or transcription not finished in time503 queued with job_id and Retry-After; the job stays in media jobs
Non-streamed request with no response within about 100 s524, plain text; stream the request instead

Recommendations

  • Set max_tokens on every chat completion.
  • Use the model that is loaded: state in GET /v1/models.
  • Stream long chat completions with "stream": true.

Retry rules per status: Errors.