Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.
/api/v1/public/rates/{id}GET
Response
200 · Rate detail
rate_id?string
Stable identifier for the reference rate (for example adj_redp). Use it as the {id} path parameter on the rate detail and price endpoints.
name?string
Full display name of the reference rate.
description?stringnull
Free-text description of the rate. Omitted for rates created without one.
methodology?string
How the rate blends its source market prices into a single value: volume_weighted_average, simple_average, or median.
sources?object[]
Source markets for this rate: legs that entered the latest computed value, plus configured markets the print omitted. Ordered by descending weight. A source that did not enter the print has no latest_price. Empty when the rate has no configured sources and has never been computed.
Show item properties
market_id?string
Identifier of the source market, prefixed with its venue (for example kalshi:KXPRESPARTY-2028-R). Use it to look the market up on the markets endpoints.
display_ticker?string
Human-readable market label, Polymarket market slug when present, else the raw ticker.
platform?string
Venue the source market trades on, lowercase: kalshi, polymarket, polymarket-us, or gemini. Identical on both tiers.
weight?number
This market's share of the latest computed rate value, as a fraction summing to 1 across sources that entered that print. For claim-price / NTI sleeve rates this is lifetime volume over total volume of those in-print sources, not the catalog 1.0/1.0 split. For volume_weighted_average it is configured weight times volume. Otherwise it is the configured weight. A configured source that did not enter the print still appears, with print share 0 and no latest_price.
volume?numbernull
Lifetime venue volume that entered the latest print, in the market's native unit (contracts or shares). Omitted on older snapshots.
question?stringnull
The source market's question text. Omitted when no question is available for the market.
latest_price?numbernull
The source market's price as it entered the latest computed rate value, on the 0-100 scale. This is the price the rate actually used, which can lag the market's current price. Omitted when this source did not enter the print, and when the rate's last print is older than seven days, matching the rate's own latest_price window.
end_date?string,null (date-time)
When the source market's contract expires or settles. Omitted when the market has no end date.
is_active?booleannull
Whether the source market's contract is still open, derived from end_date at read time. A source with no end date is open-ended and reports true. Identical on both tiers.
latest_price?numbernull
Most recent rate value on the 0-100 scale, where 52.4 means 52.4 percent. Null when the rate has never been computed, or when its last print is older than seven days (below now on the authenticated detail, below the public snapshot pin on the public detail).
spread?numbernull
Dispersion across the rate's source markets at the latest computed value: the highest source price minus the lowest, in points on the 0-100 scale. This is a measure of source disagreement, not a bid/ask spread. Null under the same window as latest_price.
price_change_1d?numbernull
Absolute change in points on the 0-100 scale (not a percent) from the previous daily close to latest_price. The baseline is the last completed daily close before the current day in US Eastern time, not a rolling 24-hour window.
price_change_7d?numbernull
Absolute change in points on the 0-100 scale (not a percent) from the daily close seven days before the current day in US Eastern time to latest_price. Null when the rate has no daily close that far back.
previous_close_1d?numbernull
The rate value at the previous daily close, meaning the last completed daily close before the current day in US Eastern time, not a rolling 24-hour window. Returned by GET /api/v1/public/rates/{id}; omitted on GET /api/v1/rates/{id}.
previous_close_7d?numbernull
The rate value at the daily close seven days before the current day in US Eastern time, the baseline price_change_7d is measured against. Returned by GET /api/v1/public/rates/{id}; omitted on GET /api/v1/rates/{id}.
stats?object | null
Trailing returns and risk statistics computed from the rate's daily close series over roughly the trailing 400 days. Returned by GET /api/v1/public/rates/{id} only; always omitted on GET /api/v1/rates/{id}.
404 · Rate not found
error?string
Stable, machine-readable code identifying the failure; branch on this rather than on message. One of bad_request, unauthorized, forbidden, not_found, conflict, service_unavailable, upstream_error, service_error, or internal_error.
message?string
Human-readable explanation, safe to show to a user. For client errors it names the specific problem; for server-side failures it is a generic notice and the underlying detail is deliberately withheld.
Request example
curl -X GET "https://api.adjacent.markets/api/v1/public/rates/<id>"
Response example
{ "rate_id": "adj_bluh", "name": "Democratic House", "description": "Rolling rate from contract chain 'bluh_chain'", "methodology": "simple_average", "sources": [ { "market_id": "kalshi:CONTROLH-2026-D", "display_ticker": "CONTROLH-2026-D", "platform": "kalshi", "weight": 1, "question": "Will Democrats win the House in 2026?", "latest_price": 83.5, "end_date": "2027-02-01T15:00:00Z", "is_active": true } ], "latest_price": 83.5, "price_change_1d": 0, "price_change_7d": 1, "previous_close_1d": 83.5, "previous_close_7d": 82.5, "spread": 0, "stats": { "trailing_returns": [ { "label": "1D", "value": 0 }, { "label": "1W", "value": 1.2121212121212122 } ] } }