Market data
Market depth order book
Return the aggregated order book for a single security, with pending bids and asks collapsed into price levels within the day's price band.
Requires scopemarket.depth.order.book
This endpoint does not use the standard envelopeFor efficiency the order book is returned as a top-level object with symbol, timestamp, status and order_book keys, not wrapped in { success, message, data }. Branch on the shape accordingly.
Query parameters
| Parameter | Description |
|---|---|
security string required | Security symbol to fetch the book for, for example SDNASDPLC. |
Response fields
| Field | Description |
|---|---|
symbol string | The security requested. |
timestamp string | ISO 8601 time the book was computed. |
status string | Ok when the book was built successfully. |
order_book.asks array | Sell levels, ascending by price. Each has price, quantity and orders. |
order_book.bids array | Buy levels, descending by price. Each has price, quantity and orders. |
Request
curl "https://stagingmobile.nasdng.com/v2/vendor/market-depth/order-book?security=SDNASDPLC" \ -H "Authorization: Bearer sk_test_xxxxxxxxxxxxxxxxxxxxxxxx"
const params = new URLSearchParams({ security: "SDNASDPLC" }); const res = await fetch( `https://stagingmobile.nasdng.com/v2/vendor/market-depth/order-book?${params}`, { headers: { Authorization: "Bearer sk_test_xxxxxxxxxxxxxxxxxxxxxxxx" } } ); const { data } = await res.json();
import requests res = requests.get( "https://stagingmobile.nasdng.com/v2/vendor/market-depth/order-book", params={"security": "SDNASDPLC"}, headers={"Authorization": "Bearer sk_test_xxxxxxxxxxxxxxxxxxxxxxxx"}, ) data = res.json()
Response 200 OK
{ "symbol": "SDNASDPLC", "timestamp": "2026-07-06T13:20:11.482Z", "status": "Ok", "order_book": { "asks": [ { "price": "40.20", "quantity": "1000", "orders": 3 }, { "price": "40.35", "quantity": "500", "orders": 1 } ], "bids": [ { "price": "40.10", "quantity": "1500", "orders": 4 }, { "price": "39.95", "quantity": "800", "orders": 2 } ] } }