curl --request GET \
--url https://api.rook.pm/v1/coverage \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rook.pm/v1/coverage"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rook.pm/v1/coverage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"items": [
{
"input_id": "mkt_fed_dec_2026_cut",
"venue": "polymarket",
"family_id": "fam_fed_dec_2026",
"catalog_status": "KNOWN",
"analytical_status": "SUPPORTED",
"capabilities": [
"CONTRACT_DETAILS",
"RELATIONSHIPS",
"SCENARIOS",
"PAYOUTS",
"EXPOSURE",
"QUOTES",
"PRICE_HISTORY",
"ORDERBOOKS",
"TRADES"
],
"supported_convention_ids": [
"demo_all_legs_win_v1"
],
"history_start": "2026-10-01T00:00:00Z",
"available_intervals": [
"1m",
"1h"
],
"observed_at": "2026-10-19T12:00:00Z"
}
],
"next_page_token": null,
"snapshot_id": "snap_rates_20261019_120000",
"as_of": "2026-10-19T12:00:00Z"
}Get coverage
Check whether selected Rook markets, listings or a family support the capabilities your workflow needs. Supply one selector scope, or omit selectors for the coverage overview; venue can narrow the results.
Results distinguish catalog presence from analytical support and market-data availability. They disclose supported settlement conventions, history ranges, sampling intervals, freshness and service limits where applicable. A market may be known and have family membership while its payout analysis remains unsupported. Check coverage before selecting analysis inputs rather than treating missing support as a zero payout.
curl --request GET \
--url https://api.rook.pm/v1/coverage \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rook.pm/v1/coverage"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rook.pm/v1/coverage', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"items": [
{
"input_id": "mkt_fed_dec_2026_cut",
"venue": "polymarket",
"family_id": "fam_fed_dec_2026",
"catalog_status": "KNOWN",
"analytical_status": "SUPPORTED",
"capabilities": [
"CONTRACT_DETAILS",
"RELATIONSHIPS",
"SCENARIOS",
"PAYOUTS",
"EXPOSURE",
"QUOTES",
"PRICE_HISTORY",
"ORDERBOOKS",
"TRADES"
],
"supported_convention_ids": [
"demo_all_legs_win_v1"
],
"history_start": "2026-10-01T00:00:00Z",
"available_intervals": [
"1m",
"1h"
],
"observed_at": "2026-10-19T12:00:00Z"
}
],
"next_page_token": null,
"snapshot_id": "snap_rates_20261019_120000",
"as_of": "2026-10-19T12:00:00Z"
}Authorizations
Proposed server-to-server API key. No client request HMAC signing scheme is specified.
Headers
Caller correlation reference; not an idempotency guarantee.
Query Parameters
Rook listing IDs from /markets or /markets:resolve. Select the venue and outcome side explicitly; repeat the query parameter for multiple listings.
1Opaque text identifier. Preserve its exact value.
1Rook market IDs in this resource. On an event these reflect its source venue membership; on a family they identify the related market members.
1Opaque text identifier. Preserve its exact value.
1Rook family ID connecting related markets across original venue events. Narrows the selection to this resource. Opaque text identifier. Preserve its exact value.
1Venue identifier, such as polymarket or kalshi. Required when looking up a venue-native ID; never inferred from the ID.
Requested maximum items; service caps disclosed by coverage. Oversize requests fail explicitly.
x >= 1Opaque continuation; reuse the same filters/order. Cursor pins the original snapshot.