ExchangeRebel Resolution Data API
The Resolution Data API from ExchangeRebel — 7 operation(s) for resolution data.
The Resolution Data API from ExchangeRebel — 7 operation(s) for resolution data.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/exchangerebel-com:exchangerebel-com-resolution-data-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: ExchangeRebel — pay-per-call APIs for AI agents (x402 on…
version: 1.0.0
contact:
name: 'ExchangeRebel (operator: Rebel Data)'
url: https://exchangerebel.com
email: sound.money.investing@gmail.com
x-guidance: 'All paid operations use x402 on Solana: call without payment to get a 402 challenge (SOL recipient + USDC token account + fresh memo), pay with the memo attached via the Solana Memo program, then retry with header X-Payment-Tx: <signature> and ?toll_memo=<memo>. Challenges are dual-version: the PAYMENT-REQUIRED header carries the x402 v2 PaymentRequired object and the response body carries the same challenge in x402 v1 form for compatibility. Free operations (security: []) include each service''s /health catalog with full response shapes. Prices in x-payment-info are USD per call unless the summary says otherwise (RPC is per 1,000-request block; Telegram provisioning is per bot-month; transcription is per minute of audio).'
description: '67 data and utility APIs behind x402 tolls, settled in SOL or USDC on Solana. Call a paid endpoint without payment to receive a 402 x402 challenge (recipient + fresh memo), pay with the memo attached via the Solana Memo program, then retry with the X-Payment-Tx header and toll_memo query parameter. Free catalog/health endpoints are marked without x-payment-info. Full catalogs: GET /toll/discovery and each service''s /health.'
servers:
- url: https://exchangerebel.com
tags:
- name: Resolution Data
paths:
/toll/resolve/consensus:
get:
tags:
- Resolution Data
summary: Check resolutions across three platforms
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
question: Mavericks beat Grizzlies
platforms:
polymarket:
question: Will the Mavericks beat the Grizzlies by more than 5.5 points?
outcome: prices=0.62,0.38
resolved: true
event_id: evt1
kalshi:
question: Mavericks vs Grizzlies game ends in a tie
result: 'no'
settled: 0
ticker: BBALL-26OCT09-DALMEM-TIE
manifold:
question: Will the Mavericks win tonight?
resolution: 'YES'
resolved_at: 1791550000000
agreement: 2+ platforms returned a candidate — compare outcomes above
data_health:
as_of: '2026-10-21T21:23:04.559Z'
sources:
- polymarket
- kalshi
- manifold
license: Platform public APIs; factual outcomes only
checks_passed:
- schema
error_budget: critical fields <0.1%, other fields <1%
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: question
in: query
required: true
schema:
type: string
description: Question text (min 4 chars)
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveConsensus
x-operation-id-source: derived
/toll/resolve/crypto:
get:
tags:
- Resolution Data
summary: Fetch the crypto reference price composite
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
asset: BTC
observed_at: '2026-10-21T21:23:04.554Z'
constituents:
- venue: coinbase
price: 82699.28
- venue: kraken
price: 82679.8
composite: 82689.54
trimmed_mean: 82689.54
high: 82699.28
low: 82679.8
methodology: coinbase-kraken spot composite; trimmed mean drops top/bottom 20% (Kalshi-style). v1 spot — settlement-window TWAP on the roadmap.
data_health:
as_of: '2026-10-21T21:23:04.554Z'
source: coinbase-kraken
license: Exchange public market data (composite methodology is ours)
attribution: 'Price constituents: Coinbase Exchange public API and Kraken public API. Composite trimmed-mean methodology by datatolls (Kalshi-style).'
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
quality:
rejected: 0
error_rate: 0
note: 2/2 constituents reporting.
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: asset
in: query
required: false
schema:
type: string
description: BTC | ETH | SOL (default BTC)
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveCrypto
x-operation-id-source: derived
/toll/resolve/econ:
get:
tags:
- Resolution Data
summary: Fetch US economic indicator values (BLS)
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
series: cpi
label: CPI-U (all items, 1982-84=100)
unit: index
period: 2025-12
value: 22060
change_vs_prev: 5
revision_note: null
data_health:
as_of: '2026-10-21T21:23:04.539Z'
source: bls
license: US federal public domain (BLS)
attribution: 'Source: U.S. Bureau of Labor Statistics, public domain under 17 U.S.C. § 105.'
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
quality:
rejected: 0
error_rate: 0
note: BLS first-print values; revisions tracked via footnotes.
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: series
in: query
required: false
schema:
type: string
description: cpi | unrate | payrolls (default cpi)
- name: period
in: query
required: false
schema:
type: string
description: Optional YYYY-MM
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveEcon
x-operation-id-source: derived
/toll/resolve/election:
get:
tags:
- Resolution Data
summary: Look up FEC federal candidates by name
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
query: Smith
cycle: '2026'
key_mode: demo (rate-limited)
candidates:
- candidate_id: H0OH01087
name: SMITH, JOHN
office: House
office_state: null
party: Democratic Party
state: OH
district: '01'
active_through: 2026
incumbent_challenge: Challenger
- candidate_id: null
name: null
office: null
office_state: null
party: null
state: null
district: null
active_through: null
incumbent_challenge: null
count: 2
note: 'Demo key: strict rate limits. Store a free api.data.gov key as Worker secret FEC_API_KEY for production.'
data_health:
as_of: '2026-10-21T21:23:04.563Z'
source: fec
license: US public domain (U.S. federal government work — FEC)
attribution: FEC bulk downloads via fec.gov — public domain (U.S. federal government work).
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: q
in: query
required: true
schema:
type: string
description: Candidate name search (min 2 chars)
- name: cycle
in: query
required: false
schema:
type: string
description: Election cycle (default 2026)
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveElection
x-operation-id-source: derived
/toll/resolve/govaction:
get:
tags:
- Resolution Data
summary: Fetch US government actions (Federal Register)
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
type: executive_order
date: null
count: 2
documents:
- title: Emergency Tax Relief on Diesel Fuel
document_number: 2026-20855
presidential_document_number: '10999'
publication_date: '2026-10-09'
signing_date: '2026-10-07'
url: https://www.federalregister.gov/documents/2026/10/09/2026-20855/test
- title: null
document_number: null
presidential_document_number: null
publication_date: null
signing_date: null
url: null
data_health:
as_of: '2026-10-21T21:23:04.550Z'
source: federal-register
license: US federal public domain (Federal Register)
attribution: 'Source: FederalRegister.gov — Office of the Federal Register, National Archives. U.S. public domain.'
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
quality:
rejected: 0
error_rate: 0
note: Official Federal Register records as published.
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: type
in: query
required: false
schema:
type: string
description: executive_order | proclamation | rule | proposed_rule | notice (default executive_order)
- name: date
in: query
required: false
schema:
type: string
description: Optional YYYY-MM-DD
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveGovaction
x-operation-id-source: derived
/toll/resolve/sports:
get:
tags:
- Resolution Data
summary: Fetch sports resolution outcomes by league
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
league: nfl
season: null
competition: null
team: null
date: null
count: 2
total_matching: 2
outcomes:
- game_id: 2026_05_DAL_PHI
league: NFL
season: 2026
game_date: '2026-10-04'
home_team: PHI
away_team: DAL
home_score: 27
away_score: 24
winner: PHI
status: final
source: nflverse
source_url: https://github.com/nflverse/nflverse-data/releases/download/schedules/games.csv
license: CC BY 4.0
coverage: NFL final scores 1999–present
retrieved_at: '2026-10-21T21:23:04.567Z'
- game_id: 2026_04_OAK_DEN
league: NFL
season: 2026
game_date: '2026-09-28'
home_team: DEN
away_team: LV
home_score: 20
away_score: 17
winner: DEN
status: final
source: nflverse
source_url: https://github.com/nflverse/nflverse-data/releases/download/schedules/games.csv
license: CC BY 4.0
coverage: NFL final scores 1999–present
retrieved_at: '2026-10-21T21:23:04.567Z'
source_updated: Thu, 08 Oct 2026 12:00:00 GMT
attribution: 'Game data: nflverse (nflverse-data), CC BY 4.0.'
data_health:
as_of: '2026-10-21T21:23:04.567Z'
source: nflverse-schedules
license: CC BY 4.0 (nflverse)
attribution: 'Source: nflverse (nflverse-data, github.com/nflverse/nflverse-data) — schedules/games data, licensed CC BY 4.0.'
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
quality:
rejected: 0
adversarial_sample: 0/2 favorite-agreement mismatches
note: Final scores only — resolution rows. Closing lines available on /toll/sports/nfl/games.
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: league
in: query
required: false
schema:
type: string
description: nfl | soccer | mlb (default nfl)
- name: season
in: query
required: false
schema:
type: string
description: YYYY
- name: competition
in: query
required: false
schema:
type: string
description: Soccer competition (default bl1)
- name: team
in: query
required: false
schema:
type: string
description: Team filter
- name: date
in: query
required: false
schema:
type: string
description: YYYY-MM-DD
- name: limit
in: query
required: false
schema:
type: string
description: 1-100 (default 20)
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveSports
x-operation-id-source: derived
/toll/resolve/weather:
get:
tags:
- Resolution Data
summary: Fetch weather observations by station
responses:
'200':
description: Success. Response shape is documented in the service catalog (GET /health on the service).
content:
application/json:
example:
station: KNYC
observed_at: '2026-10-09T15:51:00+00:00'
temp_c: 19.4
temp_f: 66.9
humidity_pct: 62
wind_mps: 4.1
precipitation_mm_1h: 0
text_description: Partly Cloudy
data_health:
as_of: '2026-10-21T21:23:04.544Z'
source: nws
license: US federal public domain (NOAA/NWS)
attribution: 'Source: National Weather Service, National Oceanic and Atmospheric Administration (NOAA) — U.S. public domain.'
commercial_ok: true
checks_passed:
- license
- schema
- freshness
error_budget: critical fields <0.1%, other fields <1%
quality:
rejected: 0
error_rate: 0
note: Latest METAR observation as published by NWS.
paid: true
'402':
description: 'Payment Required (x402). The PAYMENT-REQUIRED response header carries the x402 v2 PaymentRequired object (base64 JSON: scheme, CAIP-2 network, amount, asset, payTo, plus the bazaar discovery extension); the response body carries the same challenge in x402 v1 form for compatibility, naming the SOL recipient and USDC token account on Solana plus a fresh memo. To pay on this service''s rail: pay with the memo attached (Solana Memo program), then retry with header ''X-Payment-Tx: <transaction signature>'' and query parameter ''toll_memo=<memo>''.'
parameters:
- name: station
in: query
required: true
schema:
type: string
description: 4-letter ICAO station, e.g. KNYC
x-payment-info:
protocols:
- x402
price:
mode: fixed
currency: USD
amount: '0.05'
security:
- x402Payment: []
operationId: getTollResolveWeather
x-operation-id-source: derived
components:
securitySchemes:
x402Payment:
type: apiKey
in: header
name: X-Payment-Tx
description: 'x402 toll payment proof: the Solana transaction signature of a payment carrying the memo from the 402 challenge; send together with ?toll_memo=<memo>. Payment itself is made on-chain in SOL or USDC to the recipient named in the challenge.'