Skip to content

Docs/API Rate Limits

Account & billing

API Rate Limits

Current HTTP API defaults and planned trial/paid request quotas for Option Chain, Market Structure, and Historical SQL.

Open productMarkdown
On this page

Current defaults

The current default is about 60 requests per 60 seconds per customer on each HTTP endpoint, for both trial and paid users. It is best-effort protection, not a guaranteed global quota.

The planned limits below are not yet active. No effective date has been announced. The current defaults remain in effect until enforcement is rolled out and announced.

Planned trial and paid limits

These are requests per customer, separately for each endpoint. Both the minute and hourly limits apply once enabled; reaching either limit triggers rate limiting.

HTTP productTrial requests/minuteTrial requests/hourPaid Pro requests/minutePaid Pro requests/hour
Option Chain20600603,000
Market Structure301,200603,600
Historical SQL510010300
  • All API keys and IP addresses belonging to the same customer will share that endpoint's quota. Rotating keys or changing IP addresses will not create a new allowance.
  • The three endpoints will have separate quotas, not one combined request pool.
  • Enterprise limits are contract-specific. Contact Sales or Support at support@optiondata.io for higher-volume access.
  • This planned rate policy does not change prices, subscription access, response row caps, or data freshness.

Handling a rate-limit response

HTTP 429 means a rate or connection limit was reached. Honor the Retry-After response header before retrying, and use backoff instead of sending an immediate retry loop.

For Option Chain, broad/full-chain polling about every 5 minutes and narrow symbol/expiry/strike polling every 1–2 minutes remain the recommended intervals. A request allowance is a ceiling, not a recommendation to poll at that rate.

Realtime WebSocket is separate

Realtime WebSocket remains limited to 5 concurrent connections per API token. HTTP request quotas do not apply to streamed trade messages. Existing connection behavior is unchanged.

中文:当前默认与计划限额

当前默认:试用与付费用户均为每个客户在每个 HTTP 端点每 60 秒约 60 次请求。这是一线尽力防护,并非严格的全局配额。

下表是计划限额,尚未生效。生效日期尚未公布;在限流部署并公告前,继续适用当前默认值。

HTTP 产品试用每分钟请求数试用每小时请求数付费 Pro 每分钟请求数付费 Pro 每小时请求数
期权链20600603,000
市场结构301,200603,600
历史 SQL510010300

启用后,每分钟与每小时限额将同时适用,按客户、按端点分别计算;任一限额用尽即触发限流。同一客户的所有 API 密钥和 IP 地址共用该端点的额度,更换密钥或 IP 不会增加额度。三个端点不是共用一个请求池。

企业限额按合同约定;如需更高调用量,请联系销售或客服 support@optiondata.io。此计划不改变价格、订阅权益、响应行数上限或数据时效。

收到 HTTP 429 时,请等待 Retry-After 指定的时间后重试,并采用退避机制。期权链的完整链查询仍建议约每 5 分钟轮询;单个标的、到期或行权价等窄查询每 1–2 分钟即可。额度是上限,不是建议轮询频率。

实时 WebSocket 保持每个 API token 最多 5 条并发连接;HTTP 请求配额不适用于推送消息。

Ask ChatGPT or Claude Code

Copy this prompt, paste it into ChatGPT, Claude, Claude Code, Cursor, or Codex, then add your question. It tells the model to read our public docs first — no API key needed for that step.

You are helping me use OptionData (https://www.optiondata.io/), an OPRA-licensed U.S. equity options data API.

Before answering, fetch these public files (no login required) and treat them as the source of truth:
- https://www.optiondata.io/llms.txt — short product map (same content as https://www.optiondata.io/llm.txt)
- https://www.optiondata.io/llms-full.txt — full API reference
- https://www.optiondata.io/openapi.json — HTTP OpenAPI

Do not invent endpoints, fields, tables, or limits. Prefer `Authorization: Bearer apikey_…` for HTTP APIs. Realtime uses `wss://ws.optiondata.io` with a `token` query parameter.

Products:
- Realtime trades WebSocket: wss://ws.optiondata.io
- Historical SQL: POST https://www.optiondata.io/api/historical/sql
- Option chain: POST https://www.optiondata.io/api/option-chain
- Market structure: GET https://www.optiondata.io/api/v1/market-structure/{symbol}

I am asking about: API Rate Limits
- Markdown: https://www.optiondata.io/md/api-rate-limits/
- HTML docs: https://www.optiondata.io/docs/api-rate-limits/

My question:

Search OptionData documentation

Search guides, API fields, examples, and troubleshooting steps.