changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "description": "Response for ``POST /dex-price``.",
+ "properties": {
+ "asset": {
+ "properties": {
+ "address": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Address"
+ },
+ "name": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Name"
+ },
+ "symbol": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Symbol"
+ }
+ },
+ "title": "DexToken",
+ "type": "object"
+ },
+ "chain": {
+ "title": "Chain",
+ "type": "string"
+ },
+ "cost_usdc": {
+ "description": "Price charged in stablecoin units (USDC/USDT 1:1); 0 on the free tier.",
+ "title": "Cost Usdc",
+ "type": "number"
+ },
+ "fdv": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Fdv"
+ },
+ "fetched_at": {
+ "description": "UTC timestamp when the data was fetched.",
+ "format": "date-time",
+ "title": "Fetched At",
+ "type": "string"
+ },
+ "freshness_seconds": {
+ "description": "Age of the underlying data in seconds (0 = fetched live).",
+ "title": "Freshness Seconds",
+ "type": "integer"
+ },
+ "liquidity_usd": {
+ "title": "Liquidity Usd",
+ "type": "number"
+ },
+ "market_cap": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Market Cap"
+ },
+ "pair_count": {
+ "title": "Pair Count",
+ "type": "integer"
+ },
+ "pairs": {
+ "items": {
+ "properties": {
+ "dex": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Dex"
+ },
+ "liquidity_usd": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Liquidity Usd"
+ },
+ "pair": {
+ "title": "Pair",
+ "type": "string"
+ },
+ "pair_address": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Pair Address"
+ },
+ "price_change_24h": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Price Change 24H"
+ },
+ "price_native": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Price Native"
+ },
+ "price_usd": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Price Usd"
+ },
+ "url": {
+ "anyOf": [
+ {
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Url"
+ },
+ "volume_24h": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Volume 24H"
+ }
+ },
+ "required": [
+ "pair"
+ ],
+ "title": "DexPair",
+ "type": "object"
+ },
+ "title": "Pairs",
+ "type": "array"
+ },
+ "price_change_24h": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Price Change 24H"
+ },
+ "price_usd": {
+ "anyOf": [
+ {
+ "type": "number"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "default": null,
+ "title": "Price Usd"
+ },
+ "routing": {
+ "description": "How the request was routed (provider, fallback, cache, latency).",
+ "properties": {
+ "cache_hit": {
+ "default": false,
+ "description": "True if the result was served from cache.",
+ "title": "Cache Hit",
+ "type": "boolean"
+ },
+ "fallback_used": {
+ "default": false,
+ "description": "True if the primary provider failed and a fallback served the result.",
+ "title": "Fallback Used",
+ "type": "boolean"
+ },
+ "latency_ms": {
+ "default": 0,
+ "description": "End-to-end routing latency in milliseconds.",
+ "title": "Latency Ms",
+ "type": "integer"
+ },
+ "provider": {
+ "description": "Name of the upstream provider that served the result.",
+ "title": "Provider",
+ "type": "string"
+ },
+ "providers_tried": {
+ "description": "Providers attempted, in order.",
+ "items": {
+ "type": "string"
+ },
+ "title": "Providers Tried",
+ "type": "array"
+ }
+ },
+ "required": [
+ "provider"
+ ],
+ "title": "RoutingMeta",
+ "type": "object"
+ },
+ "source": {
+ "title": "Source",
+ "type": "string"
+ },
+ "token": {
+ "default": "USDC",
+ "description": "Token actually used for payment (USDC, USDT or FREE).",
+ "title": "Token",
+ "type": "string"
+ },
+ "volume_24h": {
+ "title": "Volume 24H",
+ "type": "number"
+ },
+ "x_payment_response": {
+ "description": "Base64-encoded x402 settlement receipt (mirrors the X-PAYMENT-RESPONSE header). Only present when the call was paid with `x_payment`.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "freshness_seconds",
+ "cost_usdc",
+ "routing",
+ "asset",
+ "chain",
+ "volume_24h",
+ "liquidity_usd",
+ "pair_count",
+ "pairs",
+ "source"
+ ],
+ "type": "object"
+}