Resource / 314
healthycrypto-market-signal.
Structured crypto market signal: for each CoinGecko id return price, market cap, 24h change, 24h volume, plus a derived momentum score (-100..100), a bullish/neutral/bearish signal, and a volatility flag — enriched data an agent ingests in a trading/research loop without computing it itself. Input: ids (comma-separated).
| State | Network | Scheme | Atomic amount | Asset | payTo / untrusted |
|---|---|---|---|---|---|
| active | eip155:8453 | exact | 5000 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | 0x435afaC555fe115f18e657E49960063c12C6AEd0 |
All advertised payment options are stored. Base (`eip155:8453`) is the operational network for ranking and canaries; non-Base options remain visible for transparency.
healthy 2026-08-12 22:05:10 UTC GET · HTTP 402 · 56ms · accepts 1 · base 1 ok
Accepts snapshot
[
{
"amount": "5000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"assetTransferMethod": null,
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x435afaC555fe115f18e657E49960063c12C6AEd0",
"paymentFlow": null,
"raw": {
"amount": "5000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"max_timeout_seconds": 60,
"network": "eip155:8453",
"payTo": "0x435afaC555fe115f18e657E49960063c12C6AEd0",
"pay_to": "0x435afaC555fe115f18e657E49960063c12C6AEd0",
"scheme": "exact"
},
"scheme": "exact"
}
]
PaymentRequired raw
{
"accepts": [
{
"amount": "5000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x435afaC555fe115f18e657E49960063c12C6AEd0",
"scheme": "exact"
}
],
"error": "Payment required",
"extensions": {
"bazaar": {
"info": {
"input": {
"method": "GET",
"queryParams": {
"ids": "bitcoin,ethereum,solana"
},
"type": "http"
},
"output": {
"example": {
"assets": [
{
"change_24h_pct": 1.6,
"id": "bitcoin",
"momentum": 31,
"price_usd": 65000,
"signal": "neutral",
"volatility": "calm"
}
],
"count": 1,
"source": "coingecko"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"method": {
"enum": [
"GET"
],
"type": "string"
},
"queryParams": {
"properties": {
"ids": {
"description": "Comma-separated CoinGecko ids, max 25",
"type": "string"
}
},
"required": [
"ids"
],
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"properties": {
"assets": {
"items": {
"type": "object"
},
"type": "array"
},
"count": {
"type": "number"
},
"source": {
"type": "string"
}
},
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"resource": {
"description": "Structured crypto market signal: for each CoinGecko id return price, market cap, 24h change, 24h volume, plus a derived momentum score (-100..100), a bullish/neutral/bearish signal, and a volatility flag — enriched data an agent ingests in a trading/research loop without computing it itself. Input: ids (comma-separated).",
"mimeType": "application/json",
"serviceName": "crypto-market-signal",
"tags": [
"crypto",
"market-data",
"price",
"signal",
"trading",
"data",
"agent-tools"
],
"url": "https://x402.charliemorrison.dev/signal"
},
"x402Version": 2
}
Response headers
{
"alt-svc": "h3=\":443\"; ma=2592000",
"content-length": "2",
"content-type": "application/json; charset=utf-8",
"date": "Wed, 12 Aug 2026 22:05:10 GMT",
"etag": "W/\"2-vyGp6PvFo4RvsFtPoIWeCReyIC8\"",
"payment-required": "eyJ4NDAyVmVyc2lvbiI6MiwiZXJyb3IiOiJQYXltZW50IHJlcXVpcmVkIiwicmVzb3VyY2UiOnsidXJsIjoiaHR0cHM6Ly94NDAyLmNoYXJsaWVtb3JyaXNvbi5kZXYvc2lnbmFsIiwiZGVzY3JpcHRpb24iOiJTdHJ1Y3R1cmVkIGNyeXB0byBtYXJrZXQgc2lnbmFsOiBmb3IgZWFjaCBDb2luR2Vja28gaWQgcmV0dXJuIHByaWNlLCBtYXJrZXQgY2FwLCAyNGggY2hhbmdlLCAyNGggdm9sdW1lLCBwbHVzIGEgZGVyaXZlZCBtb21lbnR1bSBzY29yZSAoLTEwMC4uMTAwKSwgYSBidWxsaXNoL25ldXRyYWwvYmVhcmlzaCBzaWduYWwsIGFuZCBhIHZvbGF0aWxpdHkgZmxhZyDigJQgZW5yaWNoZWQgZGF0YSBhbiBhZ2VudCBpbmdlc3RzIGluIGEgdHJhZGluZy9yZXNlYXJjaCBsb29wIHdpdGhvdXQgY29tcHV0aW5nIGl0IGl0c2VsZi4gSW5wdXQ6IGlkcyAoY29tbWEtc2VwYXJhdGVkKS4iLCJtaW1lVHlwZSI6ImFwcGxpY2F0aW9uL2pzb24iLCJzZXJ2aWNlTmFtZSI6ImNyeXB0by1tYXJrZXQtc2lnbmFsIiwidGFncyI6WyJjcnlwdG8iLCJtYXJrZXQtZGF0YSIsInByaWNlIiwic2lnbmFsIiwidHJhZGluZyIsImRhdGEiLCJhZ2VudC10b29scyJdfSwiYWNjZXB0cyI6W3sic2NoZW1lIjoiZXhhY3QiLCJuZXR3b3JrIjoiZWlwMTU1Ojg0NTMiLCJhbW91bnQiOiI1MDAwIiwiYXNzZXQiOiIweDgzMzU4OWZDRDZlRGI2RTA4ZjRjN0MzMkQ0ZjcxYjU0YmRBMDI5MTMiLCJwYXlUbyI6IjB4NDM1YWZhQzU1NWZlMTE1ZjE4ZTY1N0U0OTk2MDA2M2MxMkM2QUVkMCIsIm1heFRpbWVvdXRTZWNvbmRzIjo2MCwiZXh0cmEiOnsibmFtZSI6IlVTRCBDb2luIiwidmVyc2lvbiI6IjIifX1dLCJleHRlbnNpb25zIjp7ImJhemFhciI6eyJpbmZvIjp7ImlucHV0Ijp7InR5cGUiOiJodHRwIiwibWV0aG9kIjoiR0VUIiwicXVlcnlQYXJhbXMiOnsiaWRzIjoiYml0Y29pbixldGhlcmV1bSxzb2xhbmEifX0sIm91dHB1dCI6eyJ0eXBlIjoianNvbiIsImV4YW1wbGUiOnsic291cmNlIjoiY29pbmdlY2tvIiwiY291bnQiOjEsImFzc2V0cyI6W3siaWQiOiJiaXRjb2luIiwicHJpY2VfdXNkIjo2NTAwMCwiY2hhbmdlXzI0aF9wY3QiOjEuNiwic2lnbmFsIjoibmV1dHJhbCIsIm1vbWVudHVtIjozMSwidm9sYXRpbGl0eSI6ImNhbG0ifV19fX0sInNjaGVtYSI6eyIkc2NoZW1hIjoiaHR0cHM6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQvMjAyMC0xMi9zY2hlbWEiLCJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJpbnB1dCI6eyJ0eXBlIjoib2JqZWN0IiwicHJvcGVydGllcyI6eyJ0eXBlIjp7InR5cGUiOiJzdHJpbmciLCJjb25zdCI6Imh0dHAifSwibWV0aG9kIjp7InR5cGUiOiJzdHJpbmciLCJlbnVtIjpbIkdFVCJdfSwicXVlcnlQYXJhbXMiOnsidHlwZSI6Im9iamVjdCIsInByb3BlcnRpZXMiOnsiaWRzIjp7InR5cGUiOiJzdHJpbmciLCJkZXNjcmlwdGlvbiI6IkNvbW1hLXNlcGFyYXRlZCBDb2luR2Vja28gaWRzLCBtYXggMjUifX0sInJlcXVpcmVkIjpbImlkcyJdfX0sInJlcXVpcmVkIjpbInR5cGUiLCJtZXRob2QiXSwiYWRkaXRpb25hbFByb3BlcnRpZXMiOmZhbHNlfSwib3V0cHV0Ijp7InR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7InR5cGUiOnsidHlwZSI6InN0cmluZyJ9LCJleGFtcGxlIjp7InR5cGUiOiJvYmplY3QiLCJwcm9wZXJ0aWVzIjp7InNvdXJjZSI6eyJ0eXBlIjoic3RyaW5nIn0sImNvdW50Ijp7InR5cGUiOiJudW1iZXIifSwiYXNzZXRzIjp7InR5cGUiOiJhcnJheSIsIml0ZW1zIjp7InR5cGUiOiJvYmplY3QifX19fX0sInJlcXVpcmVkIjpbInR5cGUiXX19LCJyZXF1aXJlZCI6WyJpbnB1dCJdfX19fQ==",
"via": "1.1 Caddy",
"x-powered-by": "Express"
}
Response body
{}
Request headers
{
"accept": "*/*",
"user-agent": "Fetch402Bot/0.1 (+https://fetch402.com/crawler; contact: crawler@fetch402.com)"
}
Machine contract
Schemas.
{
"method": "GET",
"queryParams": {
"ids": "bitcoin,ethereum,solana"
},
"type": "http"
}
{
"example": {
"assets": [
{
"change_24h_pct": 1.6,
"id": "bitcoin",
"momentum": 31,
"price_usd": 65000,
"signal": "neutral",
"volatility": "calm"
}
],
"count": 1,
"source": "coingecko"
},
"type": "json"
}