> ## Documentation Index
> Fetch the complete documentation index at: https://docs.polaris.supply/llms.txt
> Use this file to discover all available pages before exploring further.

# SDK Method Map

> One table mapping each Polaris workflow to the matching Python, TypeScript, and Rust SDK method, with links to field-level schema pages.

Every Polaris SDK exposes the same workflows under language-idiomatic names. Use this page to find the method for the job, then open the linked schema page for parameters, return types, and fields.

| Workflow | Python | TypeScript | Rust | Fields and usage |
| - | - | - | - | - |
| Confirm availability | `health()` | `health()` | `health()` | No schema; returns a JSON status object |
| Discover sources and market IDs | `catalog(...)` | `catalog(...)` | `catalog(CatalogQuery)` | [Catalog](/endpoints/catalog) |
| Realtime updates | `stream(...)` | `stream(...)` | `stream(StreamQuery)` | [Events](/schemas/events) |
| Mixed historical events | `events(...)` | `events(...)` | `events(HistoricalQuery)` | [Events](/schemas/events) |
| Exact stored-order replay | `replay(...)` | `replay(...)` | `replay(ReplayQuery)` | [Snapshot-first replay](/sdks/python#snapshot-first-replay) |
| Executions and trade flow | `trades(...)` | `trades(...)` | `trades(HistoricalQuery)` | [Trades](/schemas/trades) |
| Intents and RFQ lifecycles | `intents(...)` | `intents(...)` | `intents(HistoricalQuery)` | [Intents and RFQs](/schemas/intents-and-rfqs) |
| Option chains and contracts | `option_tickers(...)` | `optionTickers(...)` | `option_tickers(OptionTickerQuery)` | [Option tickers](/schemas/option-tickers) |
| Perpetual ticker state | `perpetual_tickers(...)` | `perpetualTickers(...)` | `perpetual_tickers(HistoricalQuery)` | [Perpetual tickers](/schemas/perpetual-tickers) |
| Interval bars from trades | `ohlcv(...)` | `ohlcv(...)` / `ohlcvTradingView(...)` | `ohlcv(OhlcvQuery)` | [SDK-derived bars](/endpoints/ohlcv#sdk-derived-bars) |
| Funding rate series | `funding_rates(...)` | `fundingRates(...)` | `funding_rates(HistoricalQuery)` | [Funding rates](/schemas/funding-rates) |
| Mark price series | `mark_prices(...)` | `markPrices(...)` | `mark_prices(HistoricalQuery)` | [Mark prices](/schemas/mark-prices) |
| Bucketed volume series | `volume(...)` | `volume(...)` | `volume(...)` | [Volume](/schemas/volume) |
| Bucketed VWAP series | `vwap(...)` | `vwap(...)` | `vwap(...)` | [VWAP](/schemas/vwap) |
| Realized volatility series | `volatility(...)` | `volatility(...)` | `volatility(...)` | [Volatility](/schemas/volatility) |
| Top-of-book spreads | `bbo(...)` | `bbo(...)` | `bbo(...)` | [BBO](/schemas/bbo) |
| Depth, imbalance, slippage | `depth_metrics(...)` | `depthMetrics(...)` | `depth_metrics(...)` | [Depth metrics](/schemas/depth-metrics) |
| Complete reconstructed books | `l2_snapshots(...)` | `l2Snapshots(...)` | `l2_snapshots(HistoricalQuery)` | [L2 snapshots](/schemas/l2-snapshots) |
| Raw snapshots and deltas | `l2_updates(...)` | `l2Updates(...)` | `l2_updates(HistoricalQuery)` | [L2 Deltas](/endpoints/l2-updates) |
| Application-managed books | `OrderbookBuilder` | `OrderbookBuilder` | `OrderbookBuilder` | [L2 snapshots and updates](/schemas/l2-snapshots) |
| PropAMM quote ladders | `propamm_quote_ladders(...)` | `events(...)` filtered on `data.series` | `events(...)` filtered on `data.series` | [Quote ladders](/endpoints/quotes#sdk-quote-ladders) |
| Venue-native payloads | `raw(...)` | Not exposed | `raw(RawQuery)` | [Raw data](/endpoints/raw) |

## Language differences

* **Time arguments**: Python uses `from_` and `to`; TypeScript uses `from` and `to`; Rust packs them into query structs (`HistoricalQuery`, `ReplayQuery`, `StreamQuery`). All accept ISO 8601 strings, native date types, or epoch milliseconds. In every language, `from` is inclusive and `to` is exclusive.
* **Output shape**: Python and Rust stream single-pass iterators; TypeScript materializes arrays. Python adds `output="batches"` (PyArrow) and `output="dataframe"` (pandas) on the methods that support it.
* **Omitted boundaries**: historical methods resolve the most recent available window, up to the last 7 days of data or the public cutoff date for preview datasets.
* **Realtime**: `stream(...)` yields live standardized events; every historical method has the same field semantics as its streamed counterpart.

For installation, authentication, storage locations, and error types, open the page for your language: [Python](/sdks/python), [TypeScript](/sdks/typescript), or [Rust](/sdks/rust).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.