Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.docketlayer.ai/llms.txt

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

Rate limits are enforced per wallet address via Cloudflare Durable Objects. They apply to all paid endpoints. You are never charged for a rate-limited request.

Limits

WindowLimit
Per minute60 requests per wallet
Per day10,000 requests per wallet
Both limits apply independently. Hitting either one returns a 429.

Exempt requests

The following are not counted against rate limits:
  • GET /v2/status
  • OPTIONS (preflight)
  • Sandbox requests (?test=1 or X-DocketLayer-Test: 1)

429 response

When a rate limit is exceeded:
{
  "meta": {
    "request_id": "req_01jt7y4kx0",
    "queried_at": "2026-04-29T12:00:00Z"
  },
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Rate limit exceeded. Retry after 47 seconds.",
    "documentation_url": "https://docketlayer.ai/rate-limits",
    "details": {
      "retry_after": 47
    }
  }
}
retry_after is seconds until the limit resets. Back off and retry after that interval.
elif response.status_code == 429:
    retry_after = response.json()["error"]["details"]["retry_after"]
    time.sleep(retry_after)

Batch counting

For POST /v2/cases/batch, rate limits are applied at the case level, not the request level:
  • One batch request counts as one against the per-minute limit
  • Each successful case in the batch counts as one against the per-day limit
A batch of 50 cases can consume up to 50 units of your 10,000/day allowance in a single call.

High-volume portfolios

For portfolios that need more than 10,000 queries per day, distribute load across multiple funded wallets. Each wallet has its own independent rate limit. There is no mechanism to pool or increase the per-wallet limit.

Rate limits and the MCP server

MCP tool calls to POST /v2/mcp are subject to the same per-wallet rate limits as direct REST calls. Each paid tool call counts as one request.