Statistical analysis of any segment of the x402 economy, computed over a merged index of C
Statistical analysis of any segment of the x402 economy, computed over a merged index of Coinbase Bazaar and 402index overlaid with our own unpaid 402 probes. Returns the full price distribution (min, p10, p25, median, p75, p90, max, mean), demand discounted by payer concentration, what share of the segment can actually be invoked, the network and asset split, host concentration, liveness, and — once history exists — the trend. Every figure is computed in code from named rows; the interpretation is written by Animica's own AICF inference network and every sentence containing a number not in the computed facts is deleted before delivery. Directories publish rows; this publishes the distribution.
Provider
animica.dev · discovered, not yet claimed by its owner
Payment (x402 accepts[])
[
{
"scheme": "exact",
"network": "eip155:8453",
"payTo": "0x5D17c40FD6b119dc6006C4Ab3C20a917FCaB2aCD",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "9278",
"maxTimeoutSeconds": 60
},
{
"scheme": "exact",
"network": "animica:1",
"payTo": "anim1zqpsmegc0qcvzjfukm89xs0zeu3eqyyyel7kelehuszvwfarqypky2gr946ga",
"asset": "ANM",
"amount": "110199556541",
"maxTimeoutSeconds": 60
}
]Output schema
{
"animica": {
"catalog": "https://animica.dev/.well-known/x402",
"content_type": "application/json",
"currency": "USDC",
"description": "Statistical analysis of any segment of the x402 economy, computed over a merged index of Coinbase Bazaar and 402index overlaid with our own unpaid 402 probes. Returns the full price distribution (min, p10, p25, median, p75, p90, max, mean), demand discounted by payer concentration, what share of the segment can actually be invoked, the network and asset split, host concentration, liveness, and — once history exists — the trend. Every figure is computed in code from named rows; the interpretation is written by Animica's own AICF inference network and every sentence containing a number not in the computed facts is deleted before delivery. Directories publish rows; this publishes the distribution.",
"documentation": "https://animica.dev/x402#product-analytics_market",
"free_trial": {
"endpoint": "POST /x402/analytics/market/trial",
"limit_per_day": 2,
"note": "Same code and same response shape as the paid endpoint. No payment, no payment headers. Quota is per client per UTC day; when it is spent this endpoint says so and points back here.",
"price": "0",
"url": "https://animica.dev/x402/analytics/market/trial"
},
"name": "x402 Analytics — the shape of a market segment",
"openapi": "https://animica.dev/x402/openapi.json",
"price": "0.009278",
"product": "analytics_market",
"provider": "Animica",
"terms": {
"amount_atomic": "9278",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"chain_id": 8453,
"network": "eip155:8453",
"pay_to": "0x5D17c40FD6b119dc6006C4Ab3C20a917FCaB2aCD",
"scheme": "exact"
},
"x402_version": 2
},
"bazaar": {
"discoverable": true,
"info": {
"input": {
"body": {
"narrative": false,
"segment": "random number generation",
"top": 1
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"properties": {
"body": {
"properties": {
"max_price_usd": {
"description": "restrict to services at or below this price per call",
"type": "number"
},
"narrative": {
"description": "include the AICF-written interpretation (default true)",
"type": "boolean"
},
"network": {
"description": "restrict to one settlement network, e.g. \"base\"",
"type": "string"
},
"require_callable": {
"description": "restrict to services that publish a call spec (default false)",
"type": "boolean"
},
"segment": {
"description": "words describing the segment to analyse, e.g. \"weather forecast data\". Omit to analyse the whole indexed economy",
"type": "string"
},
"top": {
"description": "how many example services to return, 0-25 (default 10)",
"type": "integer"
}
},
"type": "object"
},
"bodyType": {
"enum": [
"json"
],
"type": "string"
},
"method": {
"enum": [
"POST"
],
"type": "string"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
},
"discovery": {
"discoverable": true,
"info": {
"input": {
"bodyFields": {
"max_price_usd": {
"description": "restrict to services at or below this price per call",
"required": false,
"type": "number"
},
"narrative": {
"description": "include the AICF-written interpretation (default true)",
"required": false,
"type": "boolean"
},
"network": {
"description": "restrict to one settlement network, e.g. \"base\"",
"required": false,
"type": "string"
},
"require_callable": {
"description": "restrict to services that publish a call spec (default false)",
"required": false,
"type": "boolean"
},
"segment": {
"description": "words describing the segment to analyse, e.g. \"weather forecast data\". Omit to analyse the whole indexed economy",
"required": false,
"type": "string"
},
"top": {
"description": "how many example services to return, 0-25 (default 10)",
"required": false,
"type": "integer"
}
},
"bodyType": "json",
"method": "POST",
"type": "http"
},
"output": {
"description": "segment {matched, coverage_floor, filters}, price {min,p10,p25,median,p75,p90,max,mean}, demand, callability, verification, networks[], assets[], hosts, freshness, trend, examples[], narrative, inference {provenance, grounding}",
"type": "json"
}
}
}
}Use it
curl
curl "https://animica.dev/x402/analytics/market" # -> 402 Payment Required, accepts[] lists how to pay # retry with a PAYMENT-SIGNATURE (or PAYMENT header) once paid
JavaScript
const res = await fetch("https://animica.dev/x402/analytics/market");
if (res.status === 402) {
const { accepts } = await res.json();
// pay one of accepts[] via an x402 client, then retry with the payment header
}Python
import httpx
res = httpx.get("https://animica.dev/x402/analytics/market")
if res.status_code == 402:
accepts = res.json()["accepts"]
# pay one of accepts[] via an x402 client, then retry with the payment headerMachine-readable
Everything on this page is also available as clean JSON at /resources/7528.json, and this resource appears in /discovery/resources and /discovery/search.