Migration Guide: API v2 → v3
1. Overview
v3 introduces a unified schema across asset classes, simplified request parameters, expanded wildcard support, and several new data products. This guide outlines breaking changes, deprecations, new features, and endpoint/parameter mappings needed when migrating from v2.
2. Deprecations
These v2 endpoints and features are removed or awaiting re-introduction in v3.
| Feature / Endpoint | v2 Behavior | v3 Status | Notes / Replacement |
|---|---|---|---|
/v2/hist/stock/split | Returns stock split data | Coming Soon | TBD |
/v2/hist/stock/dividend | Returns stock dividend data | Coming Soon | TBD |
| Bulk requests (strikes/exp) | Returns all matching strikes for an expiration | New Behavior | Use * wildcard for strike and expiration fields |
3. New Features in v3
Option Data
- Implied Volatility Snapshot Endpoint
- Option History
- Trade Implied Volatility History Endpoint
- Wildcard support for expiration/strike
Index Data
- Added index price at-time endpoint
Market Calendar
- On Date Endpoint
- Current Day Endpoint
- Year Holidays Endpoint
4. Endpoint Mapping
4.1 List Endpoints
| v2 Endpoint | v3 Endpoint | Notes |
|---|---|---|
/v2/list/roots/{sec} | /v3/{sec}/list/symbols | 1 |
/v2/list/dates/{sec}/{req} | /v3/{sec}/list/dates/{req} | 1, 2 |
| /v2/list/expirations | /v3/option/list/expirations | — |
| /v2/list/strikes | /v3/option/list/strikes | — |
/v2/list/contracts/option/{req} | /v3/option/list/contracts/{req} | 2 |
1sec ∈ {stock, option, index}
2req ∈ {trade, quote}
4.2 Stock Endpoints
| v2 Endpoint | v3 Endpoint | Notes |
|---|---|---|
| /v2/hist/stock/eod | /v3/stock/history/eod | — |
/v2/hist/stock/{req} | /v3/stock/history/{req} | 1, 4 |
/v2/at_time/stock/{req} | /v3/stock/at_time/{req} | 2 |
/v2/snapshot/stock/{req} | /v3/stock/snapshot/{req} | 3 |
/v2/bulk_snapshot/stock/{req} | — | Use v3 snapshot symbol=* |
1No longer includes start_date and end_date parameters. Returns one day of data.
2req ∈ {trade, quote}
3req ∈ {trade, quote, ohlc}
4req ∈ {trade, quote, ohlc, trade_quote}
4.3 Options Endpoints
| v2 Endpoint | v3 Endpoint | Notes |
|---|---|---|
| /v2/hist/option/eod | /v3/option/history/eod | — |
/v2/snapshot/option/{req} | /v3/option/snapshot/{req} | 1, 2, 3 |
/v2/hist/option/{req} | /v3/option/history/{req} | 1, 2, 4 |
/v2/hist/option/greeks_{req} | /v3/option/history/greeks/{req} | 1, 2, 5 |
/v2/hist/option/trade_greeks_{req} | /v3/option/history/trade_greeks/{req} | 1, 2, 5 |
/v2/at_time/option/{req} | /v3/option/at_time/{req} |
1strike and right params are no longer required and will return bulk data if not provided
2Allows for bulk expiration requests with expiration=*
3req ∈ {trade, quote, ohlc, open_interest}
4req ∈ {trade, quote, ohlc, open_interest, trade_quote}
5req ∈ {first_order, second_order, third_order}
6req ∈ {trade, quote}
4.4 Index Endpoints
| v2 Endpoint | v3 Endpoint | Notes |
|---|---|---|
/v2/snapshot/index/{req} | /v3/index/snapshot/{req} | 1 |
/v2/hist/option/{req} | /v3/option/history/{req} | 2 |
| /v2/hist/index/price | /v3/index/history/price | 3 |
1req ∈ {ohlc, price}
2req ∈ {ohlc, eod}
3No longer includes start_date and end_date parameters. Returns one day of data.
5. Parameter Mapping
| v2 Param | v3 Param | Notes |
|---|---|---|
pretty_time | — | v3 uses pretty timestamps by default |
rth | — | Replace with start_time / end_time filters |
root | symbol | Direct symbol identifier |
exp | expiration | Accepts YYYYMMDD, YYYY-MM-DD, or * |
right | right | Values changed from ['C','P'] → ['call','put'] |
strike | strike | Now a float in dollars; supports * |
ivl | interval | Millisecond int → string (1m, 5m, 1h, etc.) |
use_csv | format | Options: csv, ndjson, json |
req | request_type | Used in v3 path parameters |
under_price | stock_price | — |
annual_div | annual_dividend | — |
rate | rate_value | — |
| — | rate_type | Defaults when rate_value is omitted |