US Options Security Master
The U.S. Options Security Master dataset provides a root-level reference catalog of all listed and delisted U.S. options disseminated via OPRA, covering options on equities, ETFs, ETNs, indexes, and currencies from 2012 to the present. Each record represents an option root security and includes summary attributes such as option type, settlement type, underlying symbol, and underlying security type. This dataset is designed to define the structural identity of an option root, rather than individu
GEThttps://api.devalgoseek.com/api/v1/data/us-equity-opt-ref/opt-sec-master#
The U.S. Options Security Master dataset provides a root-level reference catalog of all listed and delisted U.S. options disseminated via OPRA, covering options on equities, ETFs, ETNs, indexes, and currencies from 2012 to the present. Each record represents an option root security and includes summary attributes such as option type, settlement type, underlying symbol, and underlying security type. This dataset is designed to define the structural identity of an option root, rather than individual expirations or strikes. The security master is organized using algoseek’s persistent algoseek Security Identifier (ASID). The ASID remains stable throughout the lifecycle of an option root, even as individual contracts (strikes and expirations) are listed and expire. This enables consistent root-level mapping and simplifies integration across downstream options datasets. The dataset is delivered as a single, consolidated file and is updated daily. Companion lookup files are available to map ASID to option root symbols and underlying symbols, supporting efficient identifier resolution and cross-dataset joins.
For more details, please refer to the dataset documentation: US Options Security Master 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#
Query 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
algoseek unique option security identifier
1110000000001000Option root ticker
ATicker name for the underlying security
AIndicate underlying type: option on a stock, option on an index, etc
SIndicate option type: vanilla options, binary options, etc
VAOption style. A = American. E = European
AIndicate if the root option ticker covers only weekly options. Y = Yes, N = No
NMarket close time for this root symbol
16:00Settlement type of option
PMTicker that provides price value for calculating the exercise-settlement amount
Start and end dates for the option ASID. Enddate = 29991231 when the ticker is still being used
["20120103:29991231"]Current option root ticker list status. D = Delisted. L = Listed
Lalgoseek unique equity security identifier for the underlying security
32952Start and end dates for the underlying SecId. End date = 29991231 when the ticker is still being used
["20070103:29991231"]Indicate if algoseek provides analytics for a specific option ticker. Y = Yes, N = No
Ypagination 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": [
{
"ASID": 1110000000001000,
"OptionTicker": "A",
"UnderTicker": "A",
"UnderType": "S",
"OptionType": "VA",
"OptionStyle": "A",
"IsWeekly": "N",
"MarketClose": "16:00",
"SettlType": "PM",
"SettlTicker": "",
"OptionTradeDates": [
"20120103:29991231"
],
"OptionListStatus": "L",
"UnderSecId": 32952,
"UnderTradeDates": [
"20070103:29991231"
],
"GreeksCoverage": "Y"
}
],
"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-ref/opt-sec-master");
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!