Skip to content
Developer API

The terminal's data, by API.

REST, WebSocket and MCP access to the same flow, exposure and order-flow analytics as the terminal.

$ curl -sS --get https://api.ordermap.si/v1/options/flow \
    -H "Authorization: Bearer $ORDERMAP_API_KEY" \
    --data-urlencode underlying_symbol=SPXW \
    --data-urlencode contract_type=call \
    --data-urlencode trade_type=sweep \
    --data-urlencode min_premium=100000 \
    --data-urlencode limit=25

{
  "data": [ { "underlying_symbol": "SPXW", "strike": 6050, "contract_type": "call",
              "side": "ask", "size": 600, "premium": 202800, "trade_type": "sweep", … } ],
  "meta": { "source": "opra", "delayed": false, "coverage": { "complete": true } },
  "pagination": { "has_more": true, "next_cursor_id": "…" }
}
REST endpoints
149
paginated
52
WebSocket streams
17
MCP tools
48
requests a minute
250
usage is limited by rate limits
No credits

Getting started

Three steps from a new key to your first response.

  1. 01

    Create a key

    Make a project and a key in the Developers tab of the terminal. A key starts with om_ and is shown once.

  2. 02

    Export the key and the base URL

    Keep the key in an environment variable, never in a URL or a public page.

    export ORDERMAP_API_KEY='om_...'
    export ORDERMAP_URL='https://api.ordermap.si'
  3. 03

    Call the account and flow endpoints

    The first call shows your plan and limits. The second returns up to 100 recent SPXW call sweeps with at least $100,000 of premium.

    curl -sS "$ORDERMAP_URL/v1/account" \
      -H "Authorization: Bearer $ORDERMAP_API_KEY"
    
    curl -sS --get "$ORDERMAP_URL/v1/options/flow" \
      -H "Authorization: Bearer $ORDERMAP_API_KEY" \
      --data-urlencode underlying_symbol=SPXW \
      --data-urlencode contract_type=call \
      --data-urlencode trade_type=sweep \
      --data-urlencode min_premium=100000 \
      --data-urlencode limit=100

GET /v1/status and GET /v1/openapi.json need no key.

Base URLs and versioning

/v1 is the version. Additive changes can appear at any time; breaking changes would be published as /v2.

Base URLs
SurfaceAddress
REST and MCPhttps://api.ordermap.si (/v1/… and /mcp)
WebSocketswss://api.ordermap.si/v1/ws/…
SpecificationGET https://api.ordermap.si/v1/openapi.json (no key needed)
  • Ignore response fields you do not know: new fields can appear in /v1 at any time.
  • Every REST endpoint is GET. The two exceptions are POST /mcp and POST /v1/exports; any other method answers 405 method_not_allowed.

Authentication

Send the key in a header on every request, in one of two forms.

Authorization: Bearer om_...
X-API-Key: om_...
  • A key is om_ followed by 64 hexadecimal characters. Only a hash is stored, so a lost key cannot be recovered: create a new one.
  • A key in the query string is rejected with 400 api_key_in_query. Never put a key in a URL.
  • Revoking a key or deleting its project takes effect at once.
  • Accounts hold projects (5 by default), and projects hold keys (10 active per project, and 20 key creations a day by default).
  • Browsers cannot set headers on a WebSocket. They send the key as a subprotocol instead, described under WebSockets. Keep keys out of public pages.

Conventions

Strict, explicit inputs, so a typo never silently changes what you asked for.

Strict parametersAn unknown or duplicate parameter is an error (unknown_parameter, duplicate_parameter), so a typo never changes what you asked for.
Unix millisecondsEvery timestamp is a Unix millisecond integer in UTC. start_time is inclusive and end_time is exclusive.
DatesDates are YYYY-MM-DD and follow the exchange's trading date (America/New_York).
Option contractsA contract is four fields: underlying_symbol, contract_type, strike and date_of_expiry. Responses name it with an OCC-style option_symbol, such as SPXW 261016C05800000.
FuturesGive a product root such as ES or a dated contract such as ESZ6. Without a contract, the front month is used and echoed back.
Large integersNative 64-bit values, such as tick counts, are returned as strings so JavaScript clients keep their precision.

Response envelope

Every successful response is JSON in one envelope: data, meta and, on paginated endpoints, pagination.

{
  "data": [ { "option_symbol": "SPXW  261016C05800000", "timestamp": 1792157400123, "price": 12.4, "size": 25 } ],
  "meta": {
    "request_id": "0199f0c2-5a1e-7c3b-9d4e-2b6f8a1c3d5e",
    "as_of": 1792157400200,
    "source": "opra",
    "delayed": false,
    "delay_ms": 0,
    "coverage": { "complete": true },
    "warnings": []
  },
  "pagination": { "limit": 1000, "count": 1, "has_more": false, "next_cursor_id": null, "next_url": null }
}
  • data is an array on list endpoints, and [] when empty, never null. Single-object endpoints return one object.
  • Missing values are null, never 0. An unknown trade direction stays unknown; nothing is guessed.
  • meta.delayed and meta.delay_ms say whether data is late. Some stock data is 15 minutes delayed, and the flag says so.
  • meta.coverage.complete is false when data is partial. Treat it as a reason to look, not as an error.
  • meta.source names the venue or feed. meta.request_id repeats the X-Request-ID response header.
  • Responses are Cache-Control: no-store. Send Accept-Encoding: gzip (curl --compressed) to receive gzip for bodies of 1 KiB and more.

Pagination

Paginated endpoints take limit and cursor_id, and add a pagination object to the response.

Pagination members
MemberMeaning
limitThe page size that was applied
countRows in this page
has_moretrue when another page exists
next_cursor_idOpaque token for the next page, null on the last page
next_urlThe same request with cursor_id set, ready to call; null on the last page
  • Repeat the call with cursor_id set to pagination.next_cursor_id (or request next_url) until next_cursor_id is null.
  • Stop on a null cursor, not on a short page: a page can hold fewer rows than limit while more remain.
  • Cursors last 24 hours and are bound to your account, the endpoint and the query. Keep the other parameters the same.
# Walk every page of the same query
cursor=""
while :; do
  page=$(curl -sS --get "$ORDERMAP_URL/v1/options/flow" \
    -H "Authorization: Bearer $ORDERMAP_API_KEY" \
    --data-urlencode underlying_symbol=SPXW --data-urlencode limit=1000 \
    --data-urlencode "cursor_id=$cursor")
  echo "$page" | jq -c '.data[]'
  cursor=$(echo "$page" | jq -r '.pagination.next_cursor_id')
  [ "$cursor" = "null" ] && break
done

Errors

Every error on a /v1 path uses one body, and the HTTP status is the real status.

{
  "error": {
    "code": "invalid_parameter",
    "message": "One or more parameters are invalid.",
    "request_id": "0199f0c2-5a1e-7c3b-9d4e-2b6f8a1c3d5e",
    "details": [ { "param": "limit", "message": "Must be at most 500." } ]
  }
}
The most common error codes
CodeStatusWhat to do
invalid_parameter400A value is malformed or out of range. details names the parameters.
unknown_parameter400A parameter is not part of the endpoint. The response lists the valid names.
api_key_in_query400A key was sent in the URL. Send it in a header.
invalid_cursor400The cursor expired, is garbled, or belongs to another query or account.
invalid_api_key401The key is unknown or revoked, or its project is inactive.
api_subscription_required403The account has no active API subscription.
overnight_required403Overnight (gth) data needs API Pro.
history_limit_exceeded403The times reach further back than your plan's history window.
streaming_not_in_plan403WebSockets need API Pro.
range_too_large413The window or result is larger than the endpoint allows. Narrow it.
data_unavailable422The request is valid but there is no data for it, such as a holiday.
rate_limited, burst_limited429Over the per-minute or per-second limit, or too many requests in flight. Wait for Retry-After.
data_pending503The requested range is being prepared. Retry after Retry-After.
upstream_timeout504The request exceeded its 20-second budget. Narrow the range or retry.
  • Retry 429, 500, 503 and 504 with exponential backoff and jitter, honouring Retry-After when it is present.
  • Do not retry other 4xx errors unchanged: they will fail the same way. Branch on code, not on the message.
  • A GET is always safe to retry.

Rate limits

Limits are per account, shared by every key and project. REST, MCP, exports and WebSocket upgrades all count.

  • 250 requests per rolling minute and 30 requests per rolling second, the same on every plan.
  • At most 4 requests in flight per account. A fifth at the same time is answered 429 rate_limited with Retry-After: 1.
  • Each request has a 20-second budget. Sustained requests after 429 responses can trigger a temporary cooldown.
Rate limit headers
HeaderValue
X-RateLimit-LimitRequests allowed per minute (250)
X-RateLimit-RemainingRequests left in the current minute window
X-RateLimit-ResetUnix milliseconds when one more request is allowed in the minute window
X-RateLimit-Burst-LimitRequests allowed per second (30)
X-RateLimit-Burst-RemainingRequests left in the current one-second window

There are no credits, no monthly quota and no per-endpoint prices. The limits are the same on both plans.

Plans and entitlements

API plans are separate subscriptions from the terminal. A terminal plan includes no API keys.

REST · MCP · EXPORTS

API Developer

$149.99/ month · monthly only

  • REST access to 149 endpoints across options, futures, indices and stocks
  • MCP server with 48 read-only tools for AI assistants
  • Background JSON exports of up to 100,000 rows
  • 30-day history window
  • 250 requests a minute, 30 a second, 4 in flight
  • Projects with named, revocable keys
  • No credits and no overage charges
REST · MCP · WEBSOCKET

API Pro

$249.99/ month · monthly only

  • Everything in API Developer
  • WebSocket streams for options, futures and indices
  • Analytics snapshots of 43 endpoints over WebSocket (20 subscriptions)
  • Overnight (Cboe GTH) option data
  • 365-day history window
  • One connection per stream
API plan comparison
EntitlementAPI DeveloperAPI Pro
Price$149.99 / month$249.99 / month
REST and MCPYesYes
ExportsYesYes
WebSocket streamsNoYes, one connection per stream
Overnight (gth) dataNoYes
History window30 days365 days
Rate limits250 a minute, 30 a second250 a minute, 30 a second

Data is grouped into options, futures, indices and equities datasets. The deployment enables each one separately, and an endpoint of a disabled dataset answers 403 dataset_release_restricted.

WebSockets

Live data is delivered one event per message, as it happens. WebSocket streams need API Pro.

  • One connection per account per stream. A second connection on the same stream is refused with 409 stream_connection_limit.
  • The key goes in the Authorization or X-API-Key header of the upgrade. Browsers send it as a subprotocol: new WebSocket(url, ["ordermap.v1", "ordermap.key.om_..."]).
  • Keepalive: the server pings every 10 seconds and closes a connection that has not answered within 20 seconds.
  • Limits: at most 100 symbols per connection (fewer on some streams), and 4 KiB and 10 messages a second from the client. A client that falls behind is closed with 4008 slow_consumer.
  • After a disconnect there is no replay. Reconnect, resubscribe, and use REST for anything you missed.

Messages

WebSocket messages
DirectionTypeMeaning
serverhelloFirst message: protocol, heartbeat, the stream's limits and filters.
serversubscribedCurrent subscription, sent after every change (* for a wildcard).
serverstatusstate is live, degraded or unavailable for a symbol.
servergapContinuity was lost while connected: refetch the missed range over REST.
servererrorA request message was refused, with a code such as invalid_symbol.
servereventOne event with a seq counter. Events are never batched.
clientsubscribe / unsubscribeAdds or removes symbols. Filters, when sent, replace the previous filters.

Close codes

WebSocket close codes
CodeReasonMeaning
1000 / 1001server_shutdownNormal close, or the service is restarting: reconnect.
1008inbound_rate_limitedMore than 10 client messages a second.
1009message_too_bigA client message larger than 4 KiB.
4008slow_consumerThe connection fell too far behind and was closed instead of losing events.
4401unauthorizedThe key was revoked or the account became unavailable.
4403forbidden, plan_changed, account_suspendedThe plan, a dataset release or the account no longer allows the stream.

Streams

Stock streams are enabled per deployment and may answer 503 stream_unavailable.

WebSocket streams
StreamEventSymbols
/v1/ws/options/flowoptions.flowup to 100
/v1/ws/options/tradesoptions.tradesup to 100, or *
/v1/ws/options/unusualoptions.unusualup to 100
/v1/ws/futures/barsfutures.barsup to 25
/v1/ws/futures/depthfutures.depthup to 10
/v1/ws/futures/quotesfutures.quotesup to 25
/v1/ws/futures/tradesfutures.tradesup to 25
/v1/ws/indices/basisindices.basisup to 10
/v1/ws/indices/valuesindices.valuesup to 100
/v1/ws/stocks/barsstocks.barsup to 100
/v1/ws/stocks/blocksstocks.blocksup to 100
/v1/ws/stocks/dark-poolstocks.dark_poolup to 100
/v1/ws/stocks/imbalancesstocks.imbalancesup to 100, or *
/v1/ws/stocks/luldstocks.luldup to 100
/v1/ws/stocks/quotesstocks.quotesup to 50
/v1/ws/stocks/tradesstocks.tradesup to 50
/v1/ws/analyticsanalyticsby subscription
import WebSocket from "ws";

const ws = new WebSocket(
  "wss://api.ordermap.si/v1/ws/options/flow?symbols=SPXW&min_premium=250000",
  { headers: { Authorization: `Bearer ${process.env.ORDERMAP_API_KEY}` } },
);

ws.on("message", (raw) => {
  const msg = JSON.parse(raw);
  if (msg.type === "event") console.log(msg.seq, msg.data);
  if (msg.type === "gap") console.warn("continuity lost: refetch the range over REST");
});

MCP

A stateless Streamable HTTP MCP server with the same key, plan and limits as REST.

  • 48 read-only tools, one per major endpoint, named after it: /v1/options/flow/stats is options_flow_stats.
  • Every HTTP request to /mcp counts against the rate limit, including initialize and tools/list. Batches are rejected: send one message per request.
  • A message may be 256 KiB and a result 2 MiB. The tools never place orders and expose no account or billing data.
{
  "mcpServers": {
    "ordermap": {
      "url": "https://api.ordermap.si/mcp",
      "headers": { "Authorization": "Bearer <your key>" }
    }
  }
}
curl -sS "https://api.ordermap.si/mcp" \
  -H "Authorization: Bearer $ORDERMAP_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"options_flow_stats","arguments":{"underlying_symbol":"SPXW","date":"2026-10-16"}}}'

The screener, ticker search and bulk or reference endpoints are REST-only.

Exports

Exports write the result of any data endpoint to one JSON file in the background, following its pages for you.

# 1. Queue the export: any catalog path plus the query you would send to it
curl -sS -X POST "$ORDERMAP_URL/v1/exports" \
  -H "Authorization: Bearer $ORDERMAP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"path":"/v1/options/trades","query":{"underlying_symbol":"SPXW","date":"2026-10-16","limit":50000}}'

# 2. Poll until data.status is "ready"
curl -sS "$ORDERMAP_URL/v1/exports/$EXPORT_ID" -H "Authorization: Bearer $ORDERMAP_API_KEY"

# 3. Download the file (data.download_url)
curl -sS --compressed -o export.json "$ORDERMAP_URL/v1/exports/$EXPORT_ID/download" \
  -H "Authorization: Bearer $ORDERMAP_API_KEY"
  • Per file: 100,000 rows, 64 MiB, 1,000 pages and about 35 seconds of reading. A file cut at a limit says so with truncated: true.
  • Per account: at most 5 exports queued or running. The sixth is answered 429 export_limit.
  • Overnight exports need API Pro. Download a file soon after it is ready: files are not kept indefinitely.

Data coverage

What the API returns is only as complete as the data OrderMap holds. These are the limits that matter in practice.

Data coverage and limits
AreaWhat to know
Request shapeQuery at most 2,048 bytes and 32 parameters. Cursors last 24 hours. Each request has a 20-second budget.
Plan history30 days on API Developer, 365 days on API Pro. The window applies to start_time, end_time, timestamp and date.
Option flow and tradesRoughly the last five sessions. Overnight prints cover the most recent session.
Open interestPublished once a day before the open. It reflects the previous close.
Futures trades and quotesThe current and previous trading session.
Futures and index history barsThe most recent 90 days.
Stock delayTrades, quotes, last trade and snapshots can be 15 minutes delayed, and meta.delayed says so.
Dark pool levels, flow and large printsServed from OrderMap's own capture. Data starts when capture began (captured_since).
HolidaysUpcoming closures only.
  • Delayed or unavailable data is flagged, not hidden: meta.delayed, meta.coverage.complete, missing, withheld and warnings say what you did not get.
  • Classification and models are labelled. Aggressor sides are inferred from the quote at execution; exposure, walls and the gamma flip are model outputs, not exchange-confirmed facts or forecasts.

Endpoint catalog

Every REST endpoint, WebSocket stream and MCP tool, generated from the OpenAPI document of this release.

217 endpoints

Options

67

Options reference data, contracts, chains, flow and analytics

GET/v1/options/contracts

Contracts

Contracts of an underlying: those listed now, or those quoted on a past date.

  • Paginated
  • Streamable
GET/v1/options/expirations

Expirations

Listed expirations of an underlying.

GET/v1/options/sessions

Sessions

Trading sessions of an underlying and the history recorded for them.

  • Overnight · Pro
  • History
GET/v1/options/strikes

Strikes

Listed strikes of one expiration.

GET/v1/options/underlyings

Underlyings

Underlyings that have listed options.

  • Paginated
GET/v1/options/contract/bars

Contract bars

Candles of one contract: open, high, low, close, volume and trade count.

  • Paginated
  • Overnight · Pro
GET/v1/options/contract/eod

Contract EOD

End-of-day record of one contract for each trading date in a range.

  • History
GET/v1/options/contract/flow

Contract flow

Classified prints of one contract: side, sentiment, premium and type.

  • Paginated
  • Overnight · Pro
GET/v1/options/contract/greeks

Contract greeks

Greeks and implied volatility of one contract at an interval.

  • Paginated
GET/v1/options/contract/greeks-eod

Contract greeks EOD

End-of-day Greeks, implied volatility and prices of one contract by trading date.

  • History
GET/v1/options/contract/implied-volatility

Contract implied volatility

Implied volatility of one contract at an interval, from the bid, midpoint and ask.

  • Paginated
GET/v1/options/contract/open-interest

Contract open interest

Open interest of one contract for each trading date in a range.

  • History
GET/v1/options/contract/price-history

Contract price history

Candles of one contract from the platform's own trade record.

  • Overnight · Pro
  • History
GET/v1/options/contract/quote-at-time

Contract quote at time

The best bid and offer of one contract at an instant.

  • Overnight · Pro
  • History
GET/v1/options/contract/quotes

Contract quotes

Best bid and offer of one contract: every change, or sampled at an interval.

  • Paginated
  • Overnight · Pro
GET/v1/options/contract/snapshot

Contract snapshot

Current quote, day statistics, open interest and Greeks of one contract.

  • Overnight · Pro
GET/v1/options/contract/stats

Contract stats

Print statistics of one contract on a trading session.

  • Overnight · Pro
  • History
GET/v1/options/contract/trade-at-time

Contract trade at time

The last trade of one contract at an instant.

  • Overnight · Pro
  • History
GET/v1/options/contract/trade-greeks

Contract trade greeks

Greeks and implied volatility of one contract at each trade.

  • Paginated
GET/v1/options/contract/trade-quotes

Contract trade quotes

Every trade of one contract with the best bid and offer at the trade.

  • Paginated
  • Overnight · Pro
GET/v1/options/contract/trades

Contract trades

Every trade of one contract in a time range.

  • Paginated
  • Overnight · Pro
GET/v1/options/chain

Chain

The option chain: quotes, day statistics, open interest and Greeks of every contract.

  • Paginated
  • Streamable
  • Overnight · Pro
GET/v1/options/chain/eod

Chain EOD

End-of-day record of every contract of an underlying on a trading date.

  • Paginated
GET/v1/options/chain/greeks

Chain greeks

Greeks and implied volatility of every contract of an underlying.

  • Paginated
  • Overnight · Pro
GET/v1/options/chain/implied-volatility

Chain implied volatility

Implied volatility of every contract of an underlying.

  • Paginated
  • Overnight · Pro
GET/v1/options/chain/ohlc

Chain OHLC

Trading day so far of every contract of an underlying: open, high, low, last and volume.

  • Paginated
  • Overnight · Pro
GET/v1/options/chain/open-interest

Chain open interest

Open interest of every contract of an underlying.

  • Paginated
  • Overnight · Pro
GET/v1/options/chain/open-interest-history

Chain open interest history

Open interest of every contract of an underlying on a trading date.

  • Paginated
GET/v1/options/chain/quotes

Chain quotes

Best bid and offer of every contract of an underlying.

  • Paginated
  • Overnight · Pro
GET/v1/options/flow

Flow

Consolidated option orders: sweeps, splits, blocks and single prints.

  • Paginated
  • Overnight · Pro
GET/v1/options/flow/by-expiration

Flow by expiration

Call and put premium, volume and net flow for each expiration.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/by-strike

Flow by strike

Call and put premium and volume at every strike, by aggressor class.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/exchanges

Flow exchanges

Market share of option premium, volume and trades by exchange.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/leaders

Flow leaders

Underlyings or contracts leading option flow: top premium, bullish, bearish and movers.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/net-drift

Flow net drift

Net call and put premium per bucket and cumulatively over the session.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/net-flow

Flow net flow

Net premium or net volume per bucket for calls, puts and overall.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/overnight

Flow overnight

Overnight (global trading hours) option prints.

  • Paginated
  • Streamable
  • Overnight · Pro
GET/v1/options/flow/premium-drift

Flow premium drift

Cumulative signed premium of calls, puts and net sentiment over the session.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/put-call-ratio

Flow put call ratio

Put/call volume and premium ratios per bucket and cumulatively.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/stats

Flow stats

Premium, volume and trades of a filtered option print set, by contract type and aggressor side.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/flow/strike-activity

Flow strike activity

Executed premium and trade counts per strike (SPX and SPXW).

  • Streamable
  • History
GET/v1/options/flow/unusual

Flow unusual

Unusual option activity as consolidated orders.

  • Paginated
  • Overnight · Pro
GET/v1/options/trades

Trades

Unconsolidated option prints with aggressor side, sentiment and context.

  • Paginated
  • Overnight · Pro
GET/v1/options/exposure/by-expiration

Exposure by expiration

Modeled dealer gamma, delta, vanna or charm exposure by expiration.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/by-strike

Exposure by strike

Modeled dealer gamma, delta, vanna or charm exposure by strike.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/forecast

Exposure forecast

Modeled levels repriced at intraday horizons with a statistical cone.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/heatmap

Exposure heatmap

Strike by expiration grid of modeled exposure, open interest or flow.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/history

Exposure history

Net modeled gamma exposure through time (SPX and SPXW).

  • Overnight · Pro
  • History
GET/v1/options/exposure/intervals

Exposure intervals

Modeled exposure by strike at every interval of a session.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/profile

Exposure profile

Modeled exposure repriced over a sweep of underlying prices, with zero crossings.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/exposure/surface

Exposure surface

Dense strike by expiration surface of net modeled exposure for 3D views.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/levels

Levels

Key levels of the modeled dealer exposure: walls, gamma flip, largest cell, max pain, expected move.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/levels/history

Levels history

Key levels of the modeled gamma exposure through a session.

  • Overnight · Pro
  • History
GET/v1/options/market-map

Market map

Modeled exposure and executed flow by strike for SPX and SPXW.

  • Streamable
GET/v1/options/max-pain

Max pain

Max pain strike of an expiration, its payout curve and the max pain of every expiration.

  • History
GET/v1/options/open-interest

Open interest

Open interest by strike or by expiration.

  • Streamable
  • History
GET/v1/options/open-interest/change

Open interest change

Change in open interest per contract between the two latest open interest dates.

  • Paginated
GET/v1/options/open-interest/history

Open interest history

Open interest per stored date for a selection of contracts.

  • History
GET/v1/options/screener

Screener

Screen contracts or underlyings by flow, open interest, volatility and modeled exposure.

  • Paginated
  • Overnight · Pro
GET/v1/options/volatility/drift

Volatility drift

Intraday implied volatility against adjusted realized volatility.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/volatility/expected-move

Volatility expected move

One-standard-deviation expected move to each expiration from at-the-money implied volatility.

  • Overnight · Pro
  • History
GET/v1/options/volatility/history

Volatility history

Daily history of a constant-maturity implied volatility.

  • History
GET/v1/options/volatility/rank

Volatility rank

Implied volatility rank and percentile of a constant-maturity volatility.

  • History
GET/v1/options/volatility/skew

Volatility skew

Implied volatility smile by strike and delta, with risk reversals and butterflies.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/volatility/surface

Volatility surface

Implied volatility surface by strike and expiration.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/volatility/surface-slice

Volatility surface slice

One strike across expirations, or one expiration across strikes, of the volatility surface.

  • Streamable
  • Overnight · Pro
  • History
GET/v1/options/volatility/term-structure

Volatility term structure

At-the-money implied volatility by expiration, constant-maturity points and forward volatilities.

  • Streamable
  • Overnight · Pro
  • History

Futures

18

Futures products, bars, trades, quotes and order flow

GET/v1/futures/contracts

Contracts

Dated contracts of a futures product, front month first.

GET/v1/futures/products

Products

Futures products with tick size, point value and exchange.

GET/v1/futures/sessions

Sessions

Trading session windows of a trading date.

GET/v1/futures/bars

Bars

OHLCV bars of a futures contract, one minute to one day.

  • Paginated
GET/v1/futures/book

Book

The current displayed depth of a futures contract.

  • Streamable
GET/v1/futures/liquidity

Liquidity

Spread and displayed liquidity of a futures contract.

  • Streamable
GET/v1/futures/liquidity-heatmap

Liquidity heatmap

Historical displayed liquidity by price and time (up to 5 minutes).

  • History
GET/v1/futures/quotes

Quotes

Retained best bid and ask samples of a futures contract.

  • Paginated
GET/v1/futures/snapshot

Snapshot

Last trade, top of book and session OHLCV of a futures contract.

  • Streamable
GET/v1/futures/trades

Trades

Retained trade prints of a futures contract.

  • Paginated
GET/v1/futures/cvd

CVD

Cumulative volume delta of a futures session.

  • Streamable
  • History
GET/v1/futures/delta-bars

Delta bars

Buy, sell and net volume per bar.

  • Streamable
  • History
GET/v1/futures/flow

Flow

Large and aggressive futures prints with notional value.

  • Paginated
GET/v1/futures/footprint

Footprint

Footprint bars: volume by price inside each bar, with imbalances.

  • Streamable
  • History
GET/v1/futures/order-flow

Order flow

Aggregated futures prints (order-flow bubbles) for a window.

  • Streamable
  • History
GET/v1/futures/session-profile

Session profile

Volume profile of the whole current trading session (POC, VAH, VAL).

  • Streamable
  • History
GET/v1/futures/signals

Signals

Bursts of one-sided aggressive trading found in captured prints.

  • History
GET/v1/futures/volume-profile

Volume profile

Volume by price for a window, with point of control and value area.

  • Streamable
  • History

Indices

11

Index values, bars, indicators and futures-implied basis

GET/v1/indices/bars

Bars

OHLC bars of an index, one minute to one month.

  • Paginated
GET/v1/indices/list

List

The indices the API serves.

GET/v1/indices/previous-close

Previous close

The previous trading day's bar of an index.

GET/v1/indices/snapshot

Snapshot

Current value and session range of up to 50 indices.

  • Streamable
GET/v1/indices/indicators/ema

Indicators EMA

EMA of an index.

  • History
GET/v1/indices/indicators/macd

Indicators MACD

MACD of an index.

  • History
GET/v1/indices/indicators/rsi

Indicators RSI

RSI of an index.

  • History
GET/v1/indices/indicators/sma

Indicators SMA

SMA of an index.

  • History
GET/v1/indices/basis

Basis

Basis, fair value and premium of an index's futures, bar by bar.

  • History
GET/v1/indices/basis/snapshot

Basis snapshot

Live basis, fair value and premium of up to 10 indices.

  • Streamable
GET/v1/indices/implied-price

Implied price

The index level implied by its futures, bar by bar, including off-hours.

  • Overnight · Pro
  • History

Stocks

40

Equity quotes, trades, bars, dark pool and reference data

GET/v1/stocks/bars

Bars

OHLCV bars from 1 second to 1 month.

  • Paginated
GET/v1/stocks/bars/grouped

Bars grouped

Daily bars of every US stock for one date.

  • Paginated
GET/v1/stocks/indicators/ema

Indicators EMA

Exponential moving average of a stock.

  • History
GET/v1/stocks/indicators/macd

Indicators MACD

MACD of a stock.

  • History
GET/v1/stocks/indicators/rsi

Indicators RSI

Relative strength index of a stock.

  • History
GET/v1/stocks/indicators/sma

Indicators SMA

Simple moving average of a stock.

  • History
GET/v1/stocks/last-quote

Last quote

The most recent NBBO quote of a stock.

GET/v1/stocks/last-trade

Last trade

The most recent trade of a stock.

GET/v1/stocks/movers

Movers

Top 20 gainers or losers of the day.

  • Streamable
GET/v1/stocks/open-close

Open close

Daily open, high, low, close with pre-market and after-hours prices.

  • History
GET/v1/stocks/previous-close

Previous close

The previous trading day's bar.

GET/v1/stocks/quotes

Quotes

Consolidated NBBO quotes of a stock, oldest first.

  • Paginated
GET/v1/stocks/snapshot

Snapshot

Current-day snapshot of up to 50 stocks.

  • Streamable
GET/v1/stocks/snapshot/all

Snapshot all

Current-day snapshot of every US stock.

  • Paginated
GET/v1/stocks/trades

Trades

Consolidated trades of a stock, oldest first.

  • Paginated
GET/v1/stocks/dark-pool/flow

Dark pool flow

Off-exchange dollar value, shares and trades per interval.

  • History
GET/v1/stocks/dark-pool/levels

Dark pool levels

Off-exchange price levels ranked by dollar value.

  • History
GET/v1/stocks/dark-pool/summary

Dark pool summary

Off-exchange share, notional and trade count of a stock for one date.

  • History
GET/v1/stocks/dark-pool/trades

Dark pool trades

Off-exchange (dark pool) prints of a stock, oldest first.

  • Paginated
GET/v1/stocks/imbalances

Imbalances

Captured NYSE auction imbalances.

  • Paginated
GET/v1/stocks/luld

LULD

Captured limit up-limit down bands and halts.

  • Paginated
GET/v1/stocks/prints/large

Prints large

Large equity prints, lit and off-exchange, newest first.

  • Paginated
GET/v1/stocks/conditions

Conditions

Trade and quote condition codes.

  • Paginated
GET/v1/stocks/dividends

Dividends

Cash dividends, newest first.

  • Paginated
GET/v1/stocks/exchanges

Exchanges

Trading venues and reporting facilities behind the exchange ids.

GET/v1/stocks/financials/balance-sheets

Financials balance sheets

Balance sheets of a company, newest period first.

  • Paginated
GET/v1/stocks/financials/cash-flow-statements

Financials cash flow statements

Cash flow statements of a company, newest period first.

  • Paginated
GET/v1/stocks/financials/income-statements

Financials income statements

Income statements of a company, newest period first.

  • Paginated
GET/v1/stocks/financials/ratios

Financials ratios

Valuation and financial ratios of a company, newest first.

  • Paginated
GET/v1/stocks/ipos

IPOs

Initial public offerings and direct listings, newest first.

  • Paginated
GET/v1/stocks/related

Related

Companies related to a stock.

GET/v1/stocks/short-interest

Short interest

Short interest settlements of a stock, newest first.

  • Paginated
GET/v1/stocks/short-volume

Short volume

Daily short sale volume of a stock, newest first.

  • Paginated
GET/v1/stocks/splits

Splits

Stock splits, newest first.

  • Paginated
GET/v1/stocks/ticker-details

Ticker details

Company details for a stock symbol.

GET/v1/stocks/ticker-events

Ticker events

Symbol changes of the company behind a ticker.

GET/v1/stocks/tickers

Tickers

Search and list tradable US securities.

  • Paginated
GET/v1/news

News

News articles, newest first. Alias of /v1/stocks/news.

  • Paginated
GET/v1/stocks/market-map

Market map

Price change, size and sector of the large-cap universe.

GET/v1/stocks/news

News

Ticker news, newest first.

  • Paginated

Market

7

Market status, sessions, calendar and rates

GET/v1/market/calendar

Calendar

The equity market schedule of one date: open, early close or closed.

GET/v1/market/holidays

Holidays

Upcoming market closures and early closes.

GET/v1/market/interest-rates

Interest rates

The risk-free interest rate by date.

GET/v1/market/overview

Overview

One-call picture of the market: indexes, futures, volatility and breadth.

  • Streamable
GET/v1/market/sessions

Sessions

Trading sessions of an asset class on a date.

GET/v1/market/status

Status

Trading state of the US equity market and health of the data areas.

  • Streamable
GET/v1/status

Service status

Provider-neutral service health.

  • No key

WebSockets

17

WebSocket streams on API Pro, one connection per account per stream

WS/v1/ws/options/flow

Options flow

Consolidated sweeps, splits and blocks.

  • Pro
  • ≤100 symbols
WS/v1/ws/options/trades

Options trades

Every classified option print.

  • Pro
  • ≤100 symbols
  • Wildcard
WS/v1/ws/options/unusual

Options unusual

Unusual option activity.

  • Pro
  • ≤100 symbols
WS/v1/ws/futures/bars

Futures bars

Futures one-minute bars.

  • Pro
  • ≤25 symbols
WS/v1/ws/futures/depth

Futures depth

Futures market depth.

  • Pro
  • ≤10 symbols
WS/v1/ws/futures/quotes

Futures quotes

Futures best bid and offer.

  • Pro
  • ≤25 symbols
WS/v1/ws/futures/trades

Futures trades

Futures trades.

  • Pro
  • ≤25 symbols
WS/v1/ws/indices/basis

Indices basis

Index versus futures-implied value.

  • Pro
  • ≤10 symbols
WS/v1/ws/indices/values

Indices values

Cash index values.

  • Pro
  • ≤100 symbols
WS/v1/ws/stocks/bars

Stocks bars

Stock second and minute bars.

  • Pro
  • ≤100 symbols
WS/v1/ws/stocks/blocks

Stocks blocks

Large stock trades.

  • Pro
  • ≤100 symbols
WS/v1/ws/stocks/dark-pool

Stocks dark pool

Off-exchange stock trades.

  • Pro
  • ≤100 symbols
WS/v1/ws/stocks/imbalances

Stocks imbalances

Exchange auction imbalances.

  • Pro
  • ≤100 symbols
  • Wildcard
WS/v1/ws/stocks/luld

Stocks LULD

Limit up-limit down bands and halts.

  • Pro
  • ≤100 symbols
WS/v1/ws/stocks/quotes

Stocks quotes

Stock national best bid and offer.

  • Pro
  • ≤50 symbols
WS/v1/ws/stocks/trades

Stocks trades

Stock trades.

  • Pro
  • ≤50 symbols
WS/v1/ws/analytics

Analytics snapshots

Snapshots of streamable endpoints.

  • Pro

MCP

49

48 read-only tools for AI assistants at https://api.ordermap.si/mcp

POST/mcp

MCP server

Model Context Protocol endpoint.

  • MCP
MCP/v1/futures/bars

futures_bars

OHLCV bars of a futures contract, one minute to one day.

  • Paginated
  • MCP
MCP/v1/futures/flow

futures_flow

Large and aggressive futures prints with notional value.

  • Paginated
  • MCP
MCP/v1/futures/session-profile

futures_session_profile

Volume profile of the whole current trading session (POC, VAH, VAL).

  • MCP
  • Streamable
  • History
MCP/v1/futures/snapshot

futures_snapshot

Last trade, top of book and session OHLCV of a futures contract.

  • MCP
  • Streamable
MCP/v1/futures/volume-profile

futures_volume_profile

Volume by price for a window, with point of control and value area.

  • MCP
  • Streamable
  • History
MCP/v1/indices/bars

indices_bars

OHLC bars of an index, one minute to one month.

  • Paginated
  • MCP
MCP/v1/indices/basis/snapshot

indices_basis_snapshot

Live basis, fair value and premium of up to 10 indices.

  • MCP
  • Streamable
MCP/v1/indices/implied-price

indices_implied_price

The index level implied by its futures, bar by bar, including off-hours.

  • MCP
  • Overnight · Pro
  • History
MCP/v1/indices/snapshot

indices_snapshot

Current value and session range of up to 50 indices.

  • MCP
  • Streamable
MCP/v1/market/overview

market_overview

One-call picture of the market: indexes, futures, volatility and breadth.

  • MCP
  • Streamable
MCP/v1/market/status

market_status

Trading state of the US equity market and health of the data areas.

  • MCP
  • Streamable
MCP/v1/options/contract/price-history

options_contract_price_history

Candles of one contract from the platform's own trade record.

  • MCP
  • Overnight · Pro
  • History
MCP/v1/options/exposure/by-expiration

options_exposure_by_expiration

Modeled dealer gamma, delta, vanna or charm exposure by expiration.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/exposure/by-strike

options_exposure_by_strike

Modeled dealer gamma, delta, vanna or charm exposure by strike.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/exposure/heatmap

options_exposure_heatmap

Strike by expiration grid of modeled exposure, open interest or flow.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/exposure/intervals

options_exposure_intervals

Modeled exposure by strike at every interval of a session.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow

options_flow

Consolidated option orders: sweeps, splits, blocks and single prints.

  • Paginated
  • MCP
  • Overnight · Pro
MCP/v1/options/flow/by-strike

options_flow_by_strike

Call and put premium and volume at every strike, by aggressor class.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/exchanges

options_flow_exchanges

Market share of option premium, volume and trades by exchange.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/leaders

options_flow_leaders

Underlyings or contracts leading option flow: top premium, bullish, bearish and movers.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/net-drift

options_flow_net_drift

Net call and put premium per bucket and cumulatively over the session.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/net-flow

options_flow_net_flow

Net premium or net volume per bucket for calls, puts and overall.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/put-call-ratio

options_flow_put_call_ratio

Put/call volume and premium ratios per bucket and cumulatively.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/stats

options_flow_stats

Premium, volume and trades of a filtered option print set, by contract type and aggressor side.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/flow/unusual

options_flow_unusual

Unusual option activity as consolidated orders.

  • Paginated
  • MCP
  • Overnight · Pro
MCP/v1/options/levels

options_levels

Key levels of the modeled dealer exposure: walls, gamma flip, largest cell, max pain, expected move.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/market-map

options_market_map

Modeled exposure and executed flow by strike for SPX and SPXW.

  • MCP
  • Streamable
MCP/v1/options/max-pain

options_max_pain

Max pain strike of an expiration, its payout curve and the max pain of every expiration.

  • MCP
  • History
MCP/v1/options/open-interest

options_open_interest

Open interest by strike or by expiration.

  • MCP
  • Streamable
  • History
MCP/v1/options/open-interest/change

options_open_interest_change

Change in open interest per contract between the two latest open interest dates.

  • Paginated
  • MCP
MCP/v1/options/open-interest/history

options_open_interest_history

Open interest per stored date for a selection of contracts.

  • MCP
  • History
MCP/v1/options/trades

options_trades

Unconsolidated option prints with aggressor side, sentiment and context.

  • Paginated
  • MCP
  • Overnight · Pro
MCP/v1/options/volatility/drift

options_volatility_drift

Intraday implied volatility against adjusted realized volatility.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/volatility/rank

options_volatility_rank

Implied volatility rank and percentile of a constant-maturity volatility.

  • MCP
  • History
MCP/v1/options/volatility/skew

options_volatility_skew

Implied volatility smile by strike and delta, with risk reversals and butterflies.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/options/volatility/term-structure

options_volatility_term_structure

At-the-money implied volatility by expiration, constant-maturity points and forward volatilities.

  • MCP
  • Streamable
  • Overnight · Pro
  • History
MCP/v1/stocks/bars

stocks_bars

OHLCV bars from 1 second to 1 month.

  • Paginated
  • MCP
MCP/v1/stocks/dark-pool/flow

stocks_dark_pool_flow

Off-exchange dollar value, shares and trades per interval.

  • MCP
  • History
MCP/v1/stocks/dark-pool/levels

stocks_dark_pool_levels

Off-exchange price levels ranked by dollar value.

  • MCP
  • History
MCP/v1/stocks/dark-pool/summary

stocks_dark_pool_summary

Off-exchange share, notional and trade count of a stock for one date.

  • MCP
  • History
MCP/v1/stocks/dark-pool/trades

stocks_dark_pool_trades

Off-exchange (dark pool) prints of a stock, oldest first.

  • Paginated
  • MCP
MCP/v1/stocks/market-map

stocks_market_map

Price change, size and sector of the large-cap universe.

  • MCP
MCP/v1/stocks/movers

stocks_movers

Top 20 gainers or losers of the day.

  • MCP
  • Streamable
MCP/v1/stocks/news

stocks_news

Ticker news, newest first.

  • Paginated
  • MCP
MCP/v1/stocks/prints/large

stocks_prints_large

Large equity prints, lit and off-exchange, newest first.

  • Paginated
  • MCP
MCP/v1/stocks/snapshot

stocks_snapshot

Current-day snapshot of up to 50 stocks.

  • MCP
  • Streamable
MCP/v1/stocks/ticker-details

stocks_ticker_details

Company details for a stock symbol.

  • MCP
MCP/v1/stocks/trades

stocks_trades

Consolidated trades of a stock, oldest first.

  • Paginated
  • MCP

Exports

3

Background JSON exports of any data endpoint

POST/v1/exports

Create export

Create an export job.

GET/v1/exports/{id}

Export status

Read an export job.

GET/v1/exports/{id}/download

Download export

Download a finished export.

Account

6

Your plan, limits, usage and the endpoint catalog

GET/v1/account

Account and plan

Your plan, entitlements and rate limits.

GET/v1/account/limits

Limits

Live state of your rate-limit windows.

GET/v1/account/requests

Requests

Your recent requests.

  • Paginated
GET/v1/account/usage

Usage

Your request counts over time.

GET/v1/catalog

Endpoint catalog

The endpoint catalog.

GET/v1/openapi.json

OpenAPI document

The OpenAPI 3.1 document of this API.

  • No key

The full parameter tables and response schemas are in the OpenAPI document: https://api.ordermap.si/v1/openapi.json

Where it runs.

API uptime target
99.99%Pending confirmation
Colocation sites, Chicago and New York
2Pending confirmation
Exchange feeds across options, futures and stocks
10Pending confirmation
Coverage, including the Cboe GTH session
24 hPending confirmation

System status

Illustrative
  • REST API
  • WebSocket streams
  • MCP server
  • Options feeds · OPRA, Cboe
  • Futures feeds · CME Group
  • Equities feeds · NYSE, Nasdaq
Developer API$149.99/ monthAPI Pro with WebSocket streams, overnight data and 365-day history is $249.99 / month.
Normalized feeds from
OPRAOptions
CboeOptions
CboeGTH · Overnight options
CME GroupFutures
CBOTFutures
NYMEXFutures
COMEXFutures
NYSEEquities
NasdaqEquities
NYSE AmericanEquities