Changelog and Versioning
How the API is versioned, what counts as a breaking change, and every change to the public contract, dated.
Versioning
- The major version is in the path: every public endpoint is under
/v1. The contract's own version is1.0.0, published at /openapi.json. - Within v1, changes are additive. The API's release process compares every change with the published contract and treats these as breaking: removing an operation, a channel, a response status, a schema or a field; adding a required input or field; changing a type; and narrowing an enum.
- Adding an optional field, a new endpoint or a new enum value is not breaking. Write clients that ignore fields they do not know and that handle enum values they have not seen.
- The entries marked breaking date from September 2026, when the development interface was replaced by the public contract and refined, and from 16 October 2026, when the issuer X feed preview was withdrawn.
Generating a Client
Generate clients from /openapi.json: every operation has a stable
operationId, which is what generators name methods after.Changes
: Market pairs from the requested asset's side
- Added
GET /v1/assets/market-pairs/latest:orientation=requestedreturns a pair whose quote is one ofids, and whose base is not, inverted: base and quote swapped, the price the reciprocal, base and quote volumes and bid and ask depth swapped. USD volume, liquidity, spread, score andactivity_24hstay the market's. The default,market, is unchanged. - Added Market pairs:
orientation(marketorinverted) andticker.price_usd, the USD price of one unit of the base as returned, through the quote's reference price;nullwhen the quote has none.
: Venue statistic times
- Added Venue statistics:
trade_count_24h_metadata, the trade count's ownas_ofand whether it wasretainedfrom an earlier refresh.last_updated_atis the latest statistics refresh.
: Fear & Greed Index, volume coverage and pair activity
- Added
GET /v1/fear-and-greed/latest: the latest published Canton Ecosystem Fear & Greed Index, a score from 0 to 100 with its classification and daily UTCupdate_time;dataisnullbefore the first publication. - Added
GET /v1/fear-and-greed/historical: the published index history, newest first, paged by a 1-basedstartoffset andlimitrather than a cursor. - Added Global metrics
volumeand asset quotevolume(VolumeMetrics):selection_method,methodology_version,interpretationandcoverage_detail. Venue statistics:volume_24h_usd_metadata, with the same fields and its ownas_of. - Added Activity measurements:
market_coverage, the eligible, included, missing, unvalued, partial and incomplete-time market counts behind a selected USD volume. - Added Market pairs:
activity_24h, the market's current 24-hour activity, selected as inGET /v1/activity/{entity_kind}/{entity_id}.
: Volume measurement time
- Added Global metrics
volumeand asset quotevolume:as_of, when the volume was measured, independent of the price's update time.
: Asset liquidity scores; issuer X feeds leave the public API
Breaking
- Added Assets and listings:
liquidity_score,liquidity_score_methodology(asset-top-three-liquidity-v1) andliquidity_score_updated_at. The score is the equal average of the asset's highest market liquidity scores, up to three, rounded to two decimals, andnullwhen no market is scored. - Removed
GET /v1/issuers/{issuer_id}/x-feedand theIssuerX*schemas. Issuer profile links remain.
: Batched market activity, issuer X feeds, pool-level fees
- Added
GET /v1/activity/markets/latest: the current activity snapshot for up to 100 markets in one request, in request order. - Added
GET /v1/issuers/{issuer_id}/x-feed: an issuer's cached X posts, withas_ofandvisible_until. The preview is disabled by default and answers503 source_unavailablewhile it is. - Added Asset
social_links; asset candlevolume_usdandvolume_coverage. - Added Market fees: pool-level rates with their own evidence and coverage, separately scoped charges with amounts, and
unpriced_poolsfor eligible pools without a valid fee.
: Supply history, rank, ratios, sourced fees and modelled pool depth
- Added
GET /v1/assets/{asset_id}/supply/historical: the reported total supply of one asset over time. - Added Listings:
rank,liquidity_to_fdv_ratioandvolume_24h_to_fdv_ratio, each ratio with its coverage object. - Added Markets:
fees, a sourced fee schedule with status, applicability, payment method and evidence, published beside the free-formfee_model. - Added Liquidity:
synthetic_depth, ±2% depth modelled from stored pool state, withdepth_originand the reason when it is unavailable. Activity measurements:as_of.
: Activity history; trade quotes leave the public API
Breaking
- Added
GET /v1/activity/{entity_kind}/{entity_id}: stored 24h, 7d and 30d volume and execution counts for a market, asset, venue or the whole network. - Added Asset
documentation_urlandcategories; issuerofficial_linksandlast_updated_at; venuedocumentation_url,social_linksandfee_documentation_url. - Removed
POST /v1/markets/{market_id}/quoteandPOST /v1/pools/{pool_id}/quote. Every public operation is now aGET.
: Liquidity scores and market categories
Breaking
- Added
categoryfilter on market pairs, markets and venue markets;market_categoryon markets, pools and tickers. - Added
liquidity_score,liquidity_score_methodologyandliquidity_score_updated_aton tickers and liquidity snapshots. - Changed
tvl_usdrenamed toliquidity_usdon listing liquidity, pools, liquidity snapshots and venue statistics.
: Public v1 contract
Breaking
- Changed The development interface was replaced in place by the public v1 contract: consumer models for assets, listings, quotes, candles, market pairs and venues, exact decimal strings throughout, and direct
last_updated_attimestamps instead of freshness wrappers. - Added
GET /v1/assets/{asset_id}/registry-configurations,GET /v1/issuers/{issuer_id}/evidenceandGET /v1/issuers/{issuer_id}/relationships. - Removed Administrative and internal operations moved to a separate contract, and per-figure provenance (constituents, exclusion reasons, calculation run IDs, confidence) left the public surface.