US Options Trade and NBBO Quote
The U.S. Options Trade and NBBO Quote dataset provides tick-level options trade data and National Best Bid and Offer (NBBO) quotes, derived from the consolidated OPRA trade and quote (TAQ) feed. This dataset is a filtered subset of full Options TAQ, in which non-NBBO quote updates are removed, retaining only NBBO quotes and executed trades. This significantly reduces data volume and complexity while preserving the most relevant market context for execution analysis, best-price evaluation, and NB
GEThttps://api.devalgoseek.com/api/v1/data/us-equity-opt/opt-tanq/:trade_date/:ticker#
The U.S. Options Trade and NBBO Quote dataset provides tick-level options trade data and National Best Bid and Offer (NBBO) quotes, derived from the consolidated OPRA trade and quote (TAQ) feed. This dataset is a filtered subset of full Options TAQ, in which non-NBBO quote updates are removed, retaining only NBBO quotes and executed trades. This significantly reduces data volume and complexity while preserving the most relevant market context for execution analysis, best-price evaluation, and NBBO-based research. In addition to consolidated last-sale trades and NBBO bid/ask quotes, the dataset includes rich event metadata such as trade and quote condition codes and flags (e.g., complex order indicators, Intermarket Sweep Orders (ISO)). Supplementary reference events, including open interest and end-of-day summary attributes, are included to support downstream analytics and validation workflows. Coverage spans all U.S. equity options exchanges reporting via OPRA.
For more details, please refer to the dataset documentation: US Options Trade and NBBO Quote Guide.
Advanced Filtering
You can provide one or multiple filter expressions based on the dataset's columns to narrow down the results. For example, StartDate.gt=2023-01-01&StartDate.lt=2023-12-31, Ticker=AAPL.
Please refer to the Advanced Filtering Guide for the extensive reference.
Request#
Path Parameters#
Trading date in YYYY-MM-DD format
2024-01-15Dataset's security identifier
AAPLQuery Parameters#
- JSON
- CSV Gzip
Sorting criteria for the results. Provide a column name with optional prefix '+' for ascending order, or prefix with '-' for descending order. Multiple sorting fields may be supported depending on the dataset. If sort prefix is not provided, the ascending order is applied.
A comma-separated list of columns to include in the response. Use this parameter to select only specific fields from the dataset. If not provided, all available columns will be returned.
Possible values: >= 0
Number of records to skip before returning results. To be used with the limit parameter for pagination. If not provided, defaults to 0.
0100Possible values: >= 0 and <= 100000
Maximum number of records to return. Used to control response size and pagination. If not provided, a default limit is applied by the server.
10000100Possible values: [json, csv, csv_gzip]
The type of the data to return
jsonJSON format (default)
jsonCompressed CSV format
csv_gzipResponses#
- 200
- 403
- 422
- 429
JSON, CSV file, or gzip-compressed CSV file, depending on the value of response_format query parameter
- application/json
- text/csv
- application/gzip
- Schema
- Example (auto)
Schema
- Array [
- ]
data object[]required
The trading day
2024-06-26Event timestamp (EST) with a millisecond resolution
2024-06-26 08:15:02.007000000Symbol name
NDXPOption contract class: "C" for Call or "P" for Put
COption contract strike price
15950Expiration date of the option contract
2024-06-26Byte code applicable to the event. It is translated into text in the Action column
38EventType and Side as text
RFor quotes it is "B" for Bid or "A" for Ask. Field is empty for a Trade
AThe price of Bid, Ask, or Trade. Can be up to 4 decimal places for sub-penny prices
0The number contracts
0Exchange Acronymn, eg BATS
NPSingle letter for Trade or Quote Condition
RUnderlying Ticker NBBO Bid price at time of the event
0Underlying Ticker NBBO Ask price at time of the event
0pagination objectrequired
The number of records skipped to fetch the current page
0The maximum number of records in the current page
The number of records to skip to fetch the next page
{
"data": [
{
"TradeDate": "2024-06-26",
"EventDateTime": "2024-06-26 08:15:02.007000000",
"Ticker": "NDXP",
"CallPut": "C",
"Strike": 15950,
"ExpirationDate": "2024-06-26",
"EventType": 38,
"Action": "R",
"Side": "A",
"Price": 0,
"Quantity": 0,
"Exchange": "NP",
"Conditions": "R",
"UnderBidPrice": 0,
"UnderAskPrice": 0
}
],
"pagination": {
"limit": 1000,
"next_offset": 2000,
"offset": 1000
}
}
- Schema
- Example (auto)
Schema
"string"
- Schema
- Example (auto)
Schema
"string"
Forbidden
- application/json
Validation Error
- application/json
- Schema
- Example (auto)
Schema
- Array [
- Array [anyOf
- string
- integer
- ]
- ]
detail object[]
loc object[]required
{
"detail": [
{
"loc": [
"string",
0
],
"msg": "string",
"type": "string",
"ctx": {}
}
]
}
Request rejected because the identity or team exceeded a configured monthly or per-minute usage quota. When available, the response includes rate-limit headers describing the current quota.
Response Headers
Configured quota limit for the resource that was exceeded.
Remaining quota before the limit is reached. This is 0 when the request is rejected.
Number of seconds left in the current quota period before usage resets.
- application/json
- csharp
- curl
- dart
- go
- http
- java
- javascript
- kotlin
- c
- nodejs
- objective-c
- ocaml
- php
- postman-cli
- powershell
- python
- r
- ruby
- rust
- shell
- swift
- HTTPCLIENT
- RESTSHARP
var client = new HttpClient();
var request = new HttpRequestMessage(HttpMethod.Get, "https://api.devalgoseek.com/api/v1/data/us-equity-opt/opt-tanq/:trade_date/:ticker");
request.Headers.Add("Accept", "application/json");
request.Headers.Add("X-API-KEY", "<X-API-KEY>");
var response = await client.SendAsync(request);
response.EnsureSuccessStatusCode();
Console.WriteLine(await response.Content.ReadAsStringAsync());
Click the Send API Request button above and see the response here!