crypto-sentiment-x402.onrender.com
No description published for this endpoint.
The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.
Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.
Live 402 challenge
Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.
{
"error": "Payment required",
"accepts": [
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0xA6E10884a70D00DE8b8c5dfF0a2a9B1a821cE074",
"amount": "50000",
"scheme": "exact",
"network": "eip155:8453",
"maxTimeoutSeconds": 300
}
],
"resource": {
"url": "https://crypto-sentiment-x402.onrender.com/history/:symbol",
"mimeType": "application/json",
"description": "Hourly crypto news-sentiment readings for a ticker (e.g. BTC, ETH), recorded live at the top of every UTC hour and never backfilled. Each row: observed_at, average_compound (-1 to 1), sample_size, Fear & Greed value, matcher and the top 3 headlines behind it (title, link). Query start/end as ISO 8601; default last 7 days, max 30 days per call. See /archive for symbols and coverage."
},
"extensions": {
"bazaar": {
"info": {
"input": {
"type": "http",
"method": "GET",
"pathParams": {
"symbol": ":symbol"
}
},
"output": {
"type": "json",
"example": {
"end": "2026-10-04T02:00:00Z",
"rows": [
{
"window": null,
"drivers": null,
"matcher": "whole_word",
"observed_at": "2026-10-04T00:00:02.513104+00:00",
"sample_size": 52,
"average_compound": 0.1123,
"fear_greed_value": 41,
"effective_sample_size": null,
"unweighted_compound_72h": null,
"newest_headline_age_hours": null
},
{
"window": "72h-hl24",
"drivers": [
{
"link": "https://example.com/news/bitcoin-etf-inflows",
"score": 0.6249,
"title": "Bitcoin ETFs log fifth straight day of inflows",
"effect": 0.0221,
"source": "CoinDesk",
"weight": 0.8963,
"published": "2026-10-03T22:05:00Z"
}
],
"matcher": "whole_word",
"observed_at": "2026-10-04T01:00:02.209871+00:00",
"sample_size": 55,
"average_compound": 0.1388,
"fear_greed_value": 41,
"effective_sample_size": 31.7,
"unweighted_compound_72h": 0.1012,
"newest_headline_age_hours": 1.2
}
],
"count": 2,
"start": "2026-10-04T00:00:00Z",
"symbol": "BTC",
"recording": "Readings are recorded live at the top of every UTC hour and never backfilled. An hour the logger missed stays missing.",
"methodology": "Rows before 2026-10-03 were scored with substring headline matching (matcher null); later rows with whole-word matching (matcher \"whole_word\"). Drivers (the top headlines behind a reading) are stored from 2026-10-03 on; older rows have drivers null. See /validation for the methodology notes.",
"average_compound_note": "average_compound depends on the row's window column. window \"72h-hl24\" (from 2026-10-04): the recency-weighted score over headlines from the last 72 hours (weight halves every 24 hours), the same number the live API returns; unweighted_compound_72h, effective_sample_size and newest_headline_age_hours are filled in. window null (earlier rows): the plain average over every item the feeds held, however old, and those four columns are null."
}
}
},
"schema": {
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"input"
],
"properties": {
"input": {
"type": "object",
"required": [
"type",
"method"
],
"properties": {
"type": {
"type": "string",
"const": "http"
},
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"pathParams": {
"type": "object",
"required": [
"symbol"
],
"properties": {
"symbol": {
"type": "string",
"description": "Uppercase ticker symbol in the URL path, e.g. BTC in /history/BTC. See /archive for which symbols are logged."
}
}
},
"queryParams": {
"type": "object",
"properties": {
"end": {
"type": "string",
"description": "ISO 8601 end time, exclusive. Default: now. At most 30 days after start."
},
"start": {
"type": "string",
"description": "ISO 8601 start time (UTC if no offset). Default: end minus 7 days."
}
}
}
},
"additionalProperties": false
},
"output": {
"type": "object",
"required": [
"type"
],
"properties": {
"type": {
"type": "string"
},
"example": {
"type": "object",
"required": [
"symbol",
"start",
"end",
"count",
"rows"
],
"properties": {
"end": {
"type": "string"
},
"rows": {
"type": "array",
"items": {
"type": "object",
"required": [
"observed_at",
"average_compound",
"matcher",
"drivers"
],
"properties": {
"window": {
"type": [
"string",
"null"
]
},
"drivers": {
"anyOf": [
{
"type": "null"
},
{
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"source",
"link",
"published",
"score"
],
"properties": {
"link": {
"type": [
"string",
"null"
]
},
"score": {
"type": "number"
},
"title": {
"type": "string"
},
"effect": {
"type": "number"
},
"source": {
"type": "string"
},
"weight": {
"type": "number"
},
"published": {
"type": [
"string",
"null"
]
}
}
},
"maxItems": 5
}
]
},
"matcher": {
"type": [
"string",
"null"
]
},
"observed_at": {
"type": "string"
},
"sample_size": {
"type": [
"integer",
"null"
]
},
"average_compound": {
"type": [
"number",
"null"
]
},
"fear_greed_value": {
"type": [
"integer",
"null"
]
},
"effective_sample_size": {
"type": [
"number",
"null"
]
},
"unweighted_compound_72h": {
"type": [
"number",
"null"
]
},
"newest_headline_age_hours": {
"type": [
"number",
"null"
]
}
}
}
},
"count": {
"type": "integer"
},
"start": {
"type": "string"
},
"symbol": {
"type": "string"
},
"recording": {
"type": "string"
},
"methodology": {
"type": "string"
},
"average_compound_note": {
"type": "string"
}
}
}
}
}
}
},
"routeTemplate": "/history/:symbol"
}
},
"x402Version": 2
}Accepts
The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.
Pay 0.05 USDC on Base to 0xA6E1…cE074. The signed payment is good for 5 minutes.
- Paid to
- 0xA6E1…cE074
- USD Coin contract
- 0x8335…02913
- Payment window
- 5 minutes
- As published
- 50000 smallest units
- Returns
- application/json
The catalog’s raw entry
[
{
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"payTo": "0xA6E10884a70D00DE8b8c5dfF0a2a9B1a821cE074",
"scheme": "exact",
"network": "eip155:8453",
"mimeType": "application/json",
"resource": "https://crypto-sentiment-x402.onrender.com/history/:symbol",
"description": "",
"maxAmountRequired": "50000",
"maxTimeoutSeconds": 300
}
]Provenance
- Seen in the source catalog
- 2026-10-18 19:18Z
- Last indexed by Roundhouse
- 2026-10-25 08:46Z
- Last enriched (probe, favicon, geo)
- 2026-10-06 15:16Z
- x402 version
- 1
- Max timeout
- 300s
- Liveness probe
- HTTP 402
Hand this page to an agent
Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.
GET api.roundhouseai.io/v0/endpoints
This endpoint's own trailing-30-day call count, as published by the upstream catalog and snapshotted daily. 31 snapshots so far. Verified volume counts only settlements with an on-chain EIP-3009 marker.
Show the promptHide the prompt
Using Roundhouse, look up the x402 service crypto-sentiment-x402.onrender.com and tell me whether it is worth paying: what a call costs, whether the endpoint answered when last probed, and what its payment record actually shows. curl -s 'https://api.roundhouseai.io/v0/endpoints?q=crypto-sentiment-x402.onrender.com' curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>' Then call it: read the price from the live 402 at https://crypto-sentiment-x402.onrender.com/history/:symbol, never from a cached figure, and pay with an x402 client. The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except /v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further. If you do not have Roundhouse tools or skills installed, read https://roundhouseai.io/skill.md first — it is the whole procedure.