Every plan reaches every endpoint and every expiration. Plans differ by how fast and how much you can call, and how far back you can read.
Plan
Rate
Burst
Calls a day
History
Stream
Free
1 request/s
5
100
The current session
Quotes only: up to 50 quotes, 1 connection
Basic
1 request/s
5
250
Today and the four sessions before it
5 symbols, 1 connection
Trader
2 requests/s
10
1,000
30 calendar days
25 symbols, 2 connections
Developer
10 requests/s
60
100,000
One year (365 calendar days)
50 symbols, 2 connections
Quant
50 requests/s
150
unlimited
Every kept session
50 symbols, 5 connections
Free
Rate1 request/s
Burst5
Calls a day100
HistoryThe current session
StreamQuotes only: up to 50 quotes, 1 connection
Basic
Rate1 request/s
Burst5
Calls a day250
HistoryToday and the four sessions before it
Stream5 symbols, 1 connection
Trader
Rate2 requests/s
Burst10
Calls a day1,000
History30 calendar days
Stream25 symbols, 2 connections
Developer
Rate10 requests/s
Burst60
Calls a day100,000
HistoryOne year (365 calendar days)
Stream50 symbols, 2 connections
Quant
Rate50 requests/s
Burst150
Calls a dayunlimited
HistoryEvery kept session
Stream50 symbols, 5 connections
The Free plan reads a limited set of symbols; every other plan reads all of them. Bulk export is on Quant. Read your own numbers from GET /v1/me. Prices are on the API page and in GET /v1/plans.
Headers on every answer
RateLimit-Limit, -Remaining, -Reset, -Policy
Your plan's rate and burst, what's left in the window, and seconds until it refills.
Quota-Remaining
Calls left in the New York day on plans with a daily quota. When spent: 429 quota_reached_day with Retry-After.
Age
Seconds since the market moment in meta.as_of.
Retry-After
On every 429 and 503: seconds to wait. Honour it; retries count.
X-History-Earliest
On 403 history_out_of_reach: the first session date your plan may ask for.
The day
Daily calls count on the New York calendar day and reset at midnight New York. Once they’re spent, calls answer 429 quota_reached_day with Retry-After.