Developers menu
Developers / LIVE
Markdown copyLIVE: Levels API
FirmTape's levels as JSON, for chart plugins and scripts: the volume book's zero-gamma flip, call wall, put wall and net gamma, every second for SPX and ES and every five minutes for the tickers, NQ and RTY. Included in LIVE.
This product serves
- LIVE: Levels API
- LIVE: Platform integrations
- LIVE: Walls and levels
- LIVE: Futures views: ES, NQ, RTY, GC, SI, ZB, CL
Plan: LIVE. LIVE: today's session every second, alerts, ASK, the levels API and the platform integrations, and 5 LAB credits a month. Every finished session is free in REPLAY. Pricing.
Every level is the volume book, the one the terminal draws; the open-interest book rides alongside under oi, named as such. Measurements of dealer positioning, never a trade call.
ES, NQ and RTY are the SPX, NDX and RUT books moved by the day's basis, the running median of the day's passes rounded to the future's tick (0.25 for ES and NQ, 0.1 for RTY), measured from put-call parity on the index options. MES, MNQ and M2K answer as ES, NQ and RTY.
A finished day answers with its closing levels: flip, call_wall and put_wall as they stood at the levels minute, 15:45 ET (12:45 on a 13:00 close), the same levels every FirmTape page quotes for that day. Two keys are added on a finished day only: levels_at (the minute) and last_second (the replaced fields as the last second had them).
Polling. Put every symbol of a chart in one levels call (up to 20), send the last ETag back as If-None-Match (an unchanged reading answers 304, which is not counted), and ask again after next_update_s.
Endpoints
| Request | What it gives | Plan | Key scope |
|---|---|---|---|
| GET /api/v1/levels | Get levels | LIVE | live |
| GET /api/v1/gamma | Gamma by strike | LIVE | live |
| GET /api/v1/history | Level history of a day | LIVE | live |
| GET /api/v1/symbols | Every symbol | Free | none |
| GET /api/v1/expected_move | Expected move and close odds | LIVE | live |
| GET /api/v1/levels.txt | Levels string (FT1) | LIVE | live |
| GET /api/v1/bookmap.csv | Bookmap Cloud Notes sheet | LIVE | live |
| GET /api/v1/key | Check a key | LIVE | live |
More
- Alert lines (session only): The price and level lines a trader sets on the chart.
/api/alertsanswers the signed-in terminal only, with the session cookie; it takes no API key. - Web push: Notifications on a phone or a desktop browser are a destination of the level alerts, switched on from the account page in the browser that should receive them. There is no developer interface: a program receives the same alerts through the webhook.
- Platform integrations: Ready-made plugins that read the levels API and draw FirmTape's levels on a customer's own chart: NinjaTrader 8, Sierra Chart, ATAS, Quantower, Bookmap, MotiveWave and TrendSpider, plus TradingView and thinkorswim scripts that read a pasted levels string. Beta, included in LIVE.
Webhook events
| Type | Sent when |
|---|---|
| flip_cross | Sent when the price of a symbol on your watchlist crosses the volume book's zero-gamma flip and holds the new side. |
| wall_break | Sent when the price breaks above the call wall or below the put wall and holds it. |
| regime_change | Sent when the volume book's net gamma changes sign and holds it. |
| wall_move | Sent when the call wall or the put wall stands on a new strike and holds it. |
| flip_move | Sent when the flip stands more than your chosen number of points from where it was at the session's first reading, or at its last alert. |
| level_near | Sent when the price comes within your chosen number of points of the flip, the call wall or the put wall, once per approach. |
| price_alert | Sent when the price crosses or touches a price line you set on the chart. |
| level_line | Sent when the price crosses a level line, a line that follows the flip, the call wall or the put wall wherever it stands. |
| order | Sent when a new order in today's SPX ledger matches one of your order rules. |
| test | Sent by Send test on Account, Level alerts: a sample flip cross on SPX, signed the same way, so you can check your end. |
Every event of LIVE · Signing, retries, test
Limits
| What | Limit | Notes |
|---|---|---|
| Levels API | 120 requests a minute per key | A 304 (If-None-Match) is not counted. A live key answers from at most 3 client addresses an hour. History: the last 90 days; older with DATASET. |
Measurements of dealer positioning, never a forecast or a trade call. This page is built from FirmTape's public contract, the same files the OpenAPI document is built from; the tests hold them against the route code. Markdown: /docs/developers/live.md.