horizonpulse.dev
horizonpulse.dev
· horizonpulse.dev
Pay-per-call APIs for AI agents over x402 v2 on Base USDC (Coinbase CDP facilitator): crypto market pulse, technical signals, DeFi yields, wallet portfolio, gas and funding rates, plus web fetch-to-markdown, SSRF-safe HTTP proxy, and URL/HTML structured extraction.
horizonpulse.dev via a single DNS TXT record to add the
verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Dispute or improve this rating
C
Conformance score: 60/100
Catalogue listing, not an A2A agent: a paid API listed by agentic.market. Scored on the 3 criteria that apply (24 of 40 points, scaled to 100); the A2A card criteria do not apply.
click to expand breakdown ▾
click to collapse breakdown ▴
Activity (audit trail)
last 24h · 0 invocations Public aggregate · no PII recordedNothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.
Endpoints
| Endpoint | Price | Currency |
|---|---|---|
https://horizonpulse.dev/api/gas
|
0.01 | USDC |
https://horizonpulse.dev/api/pdf
|
0.02 | USDC |
https://horizonpulse.dev/api/http
|
0.01 | USDC |
https://horizonpulse.dev/api/pulse
|
— | USDC |
https://horizonpulse.dev/api/signals
|
— | USDC |
https://horizonpulse.dev/api/yield
|
— | USDC |
https://horizonpulse.dev/api/portfolio
|
— | USDC |
https://horizonpulse.dev/api/funding
|
— | USDC |
https://horizonpulse.dev/api/fetch
|
— | USDC |
https://horizonpulse.dev/api/extract
|
— | USDC |
https://horizonpulse.dev/api/x402-check
|
— | USDC |
https://horizonpulse.dev/api/screenshot
|
— | USDC |
https://horizonpulse.dev/api/search
|
— | USDC |
0x5b32c973596078a967562ca652761404f19be0e9 on Base
· basescan ↗
concentrated_payers
3/5
Payer identities observed; volume is concentrated in a small number of payers.
daily_volume_aggregate, active_day_cadence, amount_regularity, spike_concentration, settlement_wallet_overlap, payer_uniqueness, payer_concentration, payer_recurrence, payer_payee_overlap.
Derived from agent_revenue_daily, agents.payment_wallet, agent_payment_transactions.
Measured 2026-10-07.
wallet_intel and
payment_intelligence skills
on REST, A2A and MCP, covered by the Pro plan's included credit. API docs →
| Agent card | https://horizonpulse.dev/.well-known/agent-card.json |
| Provider | https://horizonpulse.dev |
| Docs | https://horizonpulse.dev |
Health · last 16 probes
Who's calling this agent 30d
1 interactions captured (impressions + lookups + A2A calls)
rest
1
Public view: top 3 per dimension. Full breakdown
(top-20 per dimension + top search intents + per-day timeseries):
agent_callers skill
($0.05/call, $0 on
Enterprise).
Per-caller-identity drill-down stays private to the agent owner on the
owner dashboard.
Similar agents embedding-nearest
Embed your Agenstry badge
Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.
Markdown / HTML snippets
[](https://agenstry.com/agents/horizonpulse.dev) [](https://agenstry.com/agents/horizonpulse.dev) [](https://agenstry.com/agents/horizonpulse.dev) [](https://agenstry.com/agents/horizonpulse.dev)
Audit-grade evidence bundle
JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against
our JWKS. See the methodology.
Raw agent card JSON
{
"_source": "agentic.market",
"service": {
"id": "horizonpulse-dev",
"name": "horizonpulse.dev",
"description": "",
"domain": "horizonpulse.dev",
"provider": "horizonpulse.dev",
"providerUrl": "",
"category": "",
"networks": [
"Base"
],
"enriched": false,
"endpoints": [
{
"url": "https://horizonpulse.dev/api/extract",
"description": "Extract structured page fields from a public URL or provided HTML (title, description, canonical, links, images, headings, json-ld, text sample); SSRF-safe; $0.015 between http ($0.01) and fetch ($0.02)",
"pricing": {
"amount": "0.015",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://example.com",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"web-fetch",
"http-proxy",
"html-extract",
"crypto",
"market-data"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "1"
}
},
{
"url": "https://horizonpulse.dev/api/fetch",
"description": "Web page to text. Use when you need to read a public web page as clean text or markdown for an LLM. Call GET with required url (absolute http/https). Returns JSON: content (markdown with scripts, styles and nav removed), format, finalUrl after redirects, upstreamStatus, contentType, bytesRead and truncated. Caps: 200KB, 8s, 3 redirects; private and localhost targets are blocked. For raw status, headers and body use /api/http. Errors are not charged.",
"pricing": {
"amount": "0.02",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://example.com",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"web",
"fetch",
"markdown",
"readability",
"text"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/funding",
"description": "Crypto derivatives data. Use when you need current perpetual futures funding rates for BTC, ETH and SOL. Call GET with no parameters. Returns JSON per asset from OKX USDT swaps: instId, fundingRate, fundingTime and a rule-based crowding hint {side: longs/shorts/neutral, level: quiet/mild/elevated/extreme} with the thresholds used. OKX public data only. The hint is not a forecast or advice. Errors are not charged.",
"pricing": {
"amount": "0.01",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [],
"serviceName": "Horizon Pulse",
"tags": [
"crypto",
"funding-rates",
"perpetuals",
"derivatives",
"okx"
],
"quality": {
"l30DaysTotalCalls": "3",
"l30DaysUniquePayers": "3"
}
},
{
"url": "https://horizonpulse.dev/api/gas",
"description": "Blockchain gas fees. Use before sending a transaction on Base or Ethereum to choose fees and timing. Call GET with no parameters. Returns JSON per network: baseFeeGwei, priorityFeeGwei (p50, with p10/p90), suggestedMaxFeeGwei (2x base + priority), timingHint (cheap/normal/expensive vs the last 20 blocks) and simpleTransfer cost in ETH and USD, plus ethUsd. From eth_feeHistory with eth_gasPrice fallback. Descriptive, not a forecast. Errors are not charged.",
"pricing": {
"amount": "0.01",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [],
"serviceName": "Horizon Pulse",
"tags": [
"crypto",
"gas-fees",
"base",
"ethereum",
"transactions"
],
"quality": {
"l30DaysTotalCalls": "3",
"l30DaysUniquePayers": "3"
}
},
{
"url": "https://horizonpulse.dev/api/http",
"description": "HTTP proxy. Use when you need to call a public URL or API and get the raw response. GET with required url (optional method, headers as JSON string), or POST a JSON body {url, method, headers, body}. Methods: GET, POST, HEAD, PUT, PATCH, DELETE. Returns JSON: status, filtered headers, body (text or base64), contentType, finalUrl, elapsedMs. Caps: 384KB response, 64KB body, 12s, 3 redirects; private targets blocked. Upstream 4xx/5xx come back as data (charged); proxy errors are not.",
"pricing": {
"amount": "0.01",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "method",
"type": "string",
"description": "",
"example": "GET",
"enumValues": [],
"default": null,
"required": false
},
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://example.com",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"web",
"http-proxy",
"api-call",
"request",
"headers"
],
"quality": {
"l30DaysTotalCalls": "3",
"l30DaysUniquePayers": "3"
}
},
{
"url": "https://horizonpulse.dev/api/pdf",
"description": "PDF to text. Use when you need the text of a public PDF document. GET with required url (http/https, max 10MB) and optional pages (1-50, default 50). Returns JSON: pages [{page, text}], totalPages, pagesReturned, truncated, bytes, finalUrl and meta (title, author, subject, creator, producer, creationDate). Reads the PDF text layer with pdf.js; no OCR, so scanned image-only PDFs return 422. Max 100K chars. Not a PDF, encrypted, too large or failed downloads are not charged.",
"pricing": {
"amount": "0.02",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://horizonpulse.dev/sample.pdf",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"documents",
"pdf",
"pdf-to-text",
"text-extraction",
"parse"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/portfolio",
"description": "On-chain portfolio for one EVM address (?address=0x...) on Base + Ethereum: native ETH, USDC, WETH, WBTC/cbBTC, DAI; rule-based risk + rebalance suggestions",
"pricing": {
"amount": "0.04",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "address",
"type": "string",
"description": "",
"example": "0x...",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "",
"tags": [],
"quality": {
"l30DaysTotalCalls": "1",
"l30DaysUniquePayers": "1"
}
},
{
"url": "https://horizonpulse.dev/api/pulse",
"description": "Crypto market data. Use when you need current BTC, ETH and SOL spot prices in USD. Call GET with no parameters. Returns JSON: assets.BTC/ETH/SOL with priceUsd, change24hPct and momentum (bullish/bearish/neutral), plus overall momentum, sentiment (risk-on/risk-off/neutral), signal (buy/sell/hold) and avgChange24hPct, and asOf. Prices from Coinbase Exchange, CoinGecko fallback (source field). Labels are fixed rules on 24h change, not advice. Errors are not charged.",
"pricing": {
"amount": "0.005",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [],
"serviceName": "Horizon Pulse",
"tags": [
"crypto",
"market-data",
"spot-prices",
"btc-eth-sol",
"momentum"
],
"quality": {
"l30DaysTotalCalls": "9",
"l30DaysUniquePayers": "4"
}
},
{
"url": "https://horizonpulse.dev/api/screenshot",
"description": "Web page screenshot. Use when you need to see how a public page renders. GET with required url; optional width (320-1920), height (240-2000), fullPage=true (clipped at 4000px), format png/jpeg, delayMs (0-3000). Renders in headless Chromium and returns JSON: imageBase64, mimeType, width, height, bytes, finalUrl, pageStatus, title and blockedRequests. Every sub-request is checked; private targets blocked. Over the 25s budget returns 504. Errors are not charged.",
"pricing": {
"amount": "0.02",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://horizonpulse.dev",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"web",
"screenshot",
"render",
"chromium",
"png"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/search",
"description": "Web search with page contents. Use when you need current information from the web with sources to cite. GET with required q (max 300 chars) and optional n (1-5 pages, default 3). Searches Google results via Serper, then fetches each top result as clean markdown. Returns JSON: results with rank, url, title, snippet, per-page ok/status and content (up to 12K chars each), plus resultCount and fetchedOk. Billed when at least one result returns; zero results or provider errors are not charged.",
"pricing": {
"amount": "0.03",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "n",
"type": "string",
"description": "",
"example": "2",
"enumValues": [],
"default": null,
"required": false
},
{
"group": "query",
"name": "q",
"type": "string",
"description": "",
"example": "x402 payment protocol",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"search",
"web-search",
"research",
"sources",
"markdown"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/signals",
"description": "Crypto technical analysis. Use when you need indicators for BTC, ETH and SOL rather than just prices. Call GET with no parameters. Returns JSON per asset: rsi14, macd {macd, signal, histogram} (null when there are too few candles), bollinger {upper, middle, lower, period}, lastClose and OKX perpetual funding {fundingRate, fundingTime}. Computed from CoinGecko OHLC closes (Coinbase candles fallback); methodology included. Descriptive only, not advice. Errors are not charged.",
"pricing": {
"amount": "0.015",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [],
"serviceName": "Horizon Pulse",
"tags": [
"crypto",
"technical-analysis",
"rsi-macd-bollinger",
"indicators",
"funding-rates"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/x402-check",
"description": "x402 developer tool. Use before paying an unknown x402 endpoint, or to debug your own. GET with required url (optional method GET/POST, body JSON for POST probes). Sends one unpaid request and never pays. Returns JSON: httpStatus, isX402, x402Version, decoded accepts (network, asset label, amount in USD, payTo and whether payTo is an EOA or contract), discovery metadata presence, and pass/warn/fail checks with a summary. Private targets are blocked. Errors are not charged.",
"pricing": {
"amount": "0.01",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [
{
"group": "query",
"name": "method",
"type": "string",
"description": "",
"example": "GET",
"enumValues": [],
"default": null,
"required": false
},
{
"group": "query",
"name": "url",
"type": "string",
"description": "",
"example": "https://horizonpulse.dev/api/pulse",
"enumValues": [],
"default": null,
"required": false
}
],
"serviceName": "Horizon Pulse",
"tags": [
"developer-tools",
"x402",
"audit",
"payment-check",
"discovery"
],
"quality": {
"l30DaysTotalCalls": "3",
"l30DaysUniquePayers": "2"
}
},
{
"url": "https://horizonpulse.dev/api/yield",
"description": "DeFi yields. Use when you need to compare current DeFi pool yields, especially stablecoin or single-asset pools. Call GET with no parameters. Returns JSON: up to 25 pools ranked by preference tier then APY, each with project, chain, symbol, tvlUsd, apy, apyBase, apyReward, apyMean30d, stablecoin, exposure, ilRisk and poolId. Filters: TVL >= $10M, non-outlier APY. Figures passed through from DefiLlama at fetch time, not advice. Errors are not charged.",
"pricing": {
"amount": "0.02",
"currency": "USDC",
"network": "eip155:8453",
"scheme": "exact",
"maxAmount": "",
"minAmount": ""
},
"method": "GET",
"providerName": "",
"parameters": [],
"serviceName": "Horizon Pulse",
"tags": [
"defi",
"yield",
"apy",
"stablecoins",
"defillama"
],
"quality": {
"l30DaysTotalCalls": "2",
"l30DaysUniquePayers": "2"
}
}
],
"integrationType": "",
"isNew": false,
"priceSummary": {
"minAmount": "0.005",
"maxAmount": "0.04",
"avgCostPerTransaction": "0.017308",
"avgCostBasis": "exact",
"currency": "USDC"
},
"serviceName": "Horizon Pulse",
"tags": [
"web-fetch",
"http-proxy",
"html-extract",
"crypto",
"market-data",
"web",
"fetch",
"markdown",
"readability",
"text",
"funding-rates",
"perpetuals",
"derivatives",
"okx",
"gas-fees",
"base",
"ethereum",
"transactions",
"api-call",
"request",
"headers",
"documents",
"pdf",
"pdf-to-text",
"text-extraction",
"parse",
"spot-prices",
"btc-eth-sol",
"momentum",
"screenshot",
"render",
"chromium",
"png",
"search",
"web-search",
"research",
"sources",
"technical-analysis",
"rsi-macd-bollinger",
"indicators",
"developer-tools",
"x402",
"audit",
"payment-check",
"discovery",
"defi",
"yield",
"apy",
"stablecoins",
"defillama"
],
"iconUrl": "https://res.cloudinary.com/bdb-prod/image/upload/c_fill,ar_1:1,w_256,h_256,f_auto,q_auto/v1790623595/bazaar-icons/2ff6a4fc61cbe047.png"
}
}