Skip to main content

Adrata Developers

Rate Limits

Metered responses expose readable budget headers for request limits, and some agent or enrichment routes may include additional bucket context.

Retry
if (error instanceof RateLimitError && error.retryAfter) {
  await sleep(error.retryAfter * 1000);
}

Headers

`x-ratelimit-limit`, `x-ratelimit-remaining`, `x-ratelimit-used`, `x-ratelimit-reset`, `x-ratelimit-scope`, `x-ratelimit-bucket`, and `retry-after` are exposed for browser clients.

Buckets

CRUD, AI-token, enrichment, and workspace budgets are tracked separately so background AI work does not silently consume the same capacity as normal record reads and writes.

Client behavior

Back off by bucket, not globally. A 429 on enrichment should not pause simple reads unless the response says the workspace-wide bucket is exhausted.