Rate Limits
To protect service availability and prevent abuse, Tiger OpenAPI applies rate limits to all API requests.
Rate Limiting Rules
Rate limits are applied at the tigerId + method level, meaning each tigerId has an independent quota for each API method. For example, calls to place_order and get_orders under the same tigerId are counted separately and do not affect each other.
API methods are classified into three tiers based on allowed call frequency:
| Tier | Rate Limit | Counting Method |
|---|---|---|
| High-frequency | 120 calls/min | Per tigerId and method, 60-second rolling window |
| Medium-frequency | 60 calls/min | Per tigerId and method, 60-second rolling window |
| Low-frequency | 10 calls/min | Per tigerId and method, 60-second rolling window |
A documented rate-limit response example is shown below:
code=4 msg=rate limit error(current limiting interface:<interface_name>, up to 60 times per minute)
The application code in existing documentation is inconsistent: this example uses code 4, while the error-code table assigns rate limiting to code 5. Until the service contract is confirmed, detect HTTP 429 and use the returned limit description rather than depending on one application code.
NOTE
- If you repeatedly exceed a rate limit, the system may automatically blacklist the account. A blacklisted account cannot make further API requests.
- To increase your rate limits, sign in to the Developer Center and purchase a higher limit.
High-Frequency API Methods (120 Calls per Minute)
| API Method |
|---|
| Get Order ID (create_order) |
| Place Order (place_order) |
| Modify Order (modify_order) |
| Cancel Order (cancel_order) |
| Get Orders (get_orders/get_order) |
| Get Open Orders (get_open_orders) |
| Get Cancelled Orders (get_cancelled_orders) |
| Get Filled Orders (get_filled_orders) |
| Get Timeline (get_timeline) |
| Get Real-time Quotes (get_stock_briefs) |
| Get Trade Ticks (get_trade_ticks) |
| Get Option Briefs (get_option_briefs) |
| Get Option Trade Ticks (get_option_trade_ticks) |
| Get Future Real-time Quotes (get_future_briefs) |
Medium-Frequency API Methods (60 Calls per Minute)
| API Method |
|---|
| Get Option Chain (get_option_chain) |
| Get Option Expirations (get_option_expirations) |
| Get Depth Quotes (get_depth_quote) |
| Get Single Contract (get_contract) |
| Get Batch Contracts (get_contracts) |
| Get Derivative Contracts (get_derivative_contracts) |
| Get Shortable Stocks List (quote_shortable_stocks) |
| Get Stock Trading Information (get_trade_metas) |
| Get Future Trading Times (get_future_trading_times) |
| Get Current Future Contract (get_current_future_contract) |
| Get Managed Accounts (get_managed_accounts) |
| Get Global Account Assets (get_assets) |
| Get Prime/Paper Trading Account Assets (get_prime_assets) |
| Get Positions (get_positions) |
| Get Transaction Reports (get_transactions) |
| Get Historical Timeline Data (get_timeline_history) |
| Get Stock K-Line (get_bars) |
| Get Option K-Line (get_option_bars) |
| Get Future K-Line (get_future_bars) |
| Get Option Analysis (get_option_analysis) |
Low-Frequency API Methods (10 Calls per Minute)
| API Method |
|---|
| Claim Existing Market Data Access (grab_quote_permission) |
| Get Quote Permission List (get_quote_permission) |
| Get Market Status (get_market_status) |
| Get Stock Symbols (get_symbols) |
| Get Stock Symbol Names (get_symbol_names) |
| Get Stock Details (get_stock_details) |
| Get Future Exchanges (get_future_exchanges) |
| Get Trading Rank (get_trade_rank) |
Updated 7 days ago
