agentsvc.io

69 pay-per-call tools for AI agents: web pages to Markdown, screenshots, PDF, OCR, web and discussion search, crypto and market data, Polymarket, DeFi yields, validation, charts. Paid per call in USDC on Base or Solana via x402 inside the MCP tool call. No account, no API key. Free sample on every tool.

Hosted MCP Server

npx add-mcp 'https://agentsvc.io/mcp'

Installs into Claude Code, Codex, Cursor and more

Documentation

agentsvc.io: complete guide for AI agents

Pay-per-call API marketplace for AI agents. 70 services (web scraping and site crawling to Markdown, search plus content, screenshots, PDF, OCR, document conversion, charts and Mermaid diagrams, text-to-speech, embeddings; crypto prices, token security, perp funding, DeFi TVL and yields, Polymarket, onchain lookups; SEC filings, macro data, company LEI, VAT and IBAN validation, sanctions screening; papers, developer and trending search, CVEs, domain and email security, holidays, weather, geocoding, validation and codes). Paid per request with USDC on Base or Solana via the x402 protocol. No account, no API key, no subscription. Prices from $0.002 per call. Free trial calls on every service.

1. Payment (x402)

  • protocol: x402
  • x402_versions_accepted: [1,2]
  • scheme: exact
  • network: eip155:8453
  • network_v1: base
  • chain_id: 8453
  • asset: USDC
  • asset_contract: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
  • asset_decimals: 6
  • eip712_domain: {"name":"USD Coin","version":"2","chainId":8453,"verifyingContract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"}
  • pay_to: 0x622efA6Ceb83a5b6EdBC931332f4db68B7f74F27
  • facilitator: https://api.cdp.coinbase.com/platform/v2/x402
  • request_header_v2: PAYMENT-SIGNATURE
  • request_header_v1: X-PAYMENT
  • requirements_v2: base64 JSON in the PAYMENT-REQUIRED response header of the 402
  • requirements_v1: JSON body of the 402 (accepts[0])
  • receipt_header: PAYMENT-RESPONSE (and X-PAYMENT-RESPONSE): base64 JSON with transaction hash
  • accounts_required: false
  • api_keys_required: false
  • settlement: per call, on-chain, after the service succeeded. Failed calls are never charged.
  • also_accepted: [{"network":"solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp","network_v1":"solana","asset":"USDC","asset_mint":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","pay_to":"5JzPS5qpEwUM1vTC9GG7uqvwJdHzbEwfoPHf2Ki977tg","note":"Solana option is accepts[1] in the 402. The facilitator pays the transaction fee (extra.feePayer); the payer needs only USDC, no SOL."}]

Flow

  1. Request without payment → HTTP 402. Body (x402 v1): {"x402Version":1,"accepts":[{scheme:"exact",network:"base",maxAmountRequired,asset,payTo,resource,maxTimeoutSeconds,extra:{name:"USD Coin",version:"2"}}]}. Header PAYMENT-REQUIRED (x402 v2): base64 JSON {"x402Version":2,"resource":{url},"accepts":[{scheme:"exact",network:"eip155:8453",amount,asset,payTo,maxTimeoutSeconds,extra}]}.
  2. Sign an EIP-3009 TransferWithAuthorization (EIP-712, domain name "USD Coin" version "2", chainId 8453, verifyingContract 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913) for exactly the amount, to payTo, with a random 32-byte nonce and validBefore at least 60 s ahead.
  3. Retry the same request with header PAYMENT-SIGNATURE (v2) or X-PAYMENT (v1) = base64 JSON PaymentPayload.
  4. We verify with the facilitator, run the service, then settle on-chain. 200 response: {"success":true,"data":{...},"payment":{"settled":true,"transaction":"0x…","payer":"0x…"}} and header PAYMENT-RESPONSE.
  5. If verification fails you get 402 again with "error" (machine code) and "hint" (what to fix). Input errors return 400 with example_input and are never charged. 5xx are never charged.

Client code

JavaScript:

npm i @x402/fetch @x402/evm viem
import { wrapFetchWithPayment, x402Client } from "@x402/fetch";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.EVM_PRIVATE_KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);
const res = await payFetch("https://agentsvc.io/api/v1/proxy/web-scrape", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ url: "https://example.com" }) });
console.log(await res.json());

Python:

pip install "x402[httpx]" eth_account
from eth_account import Account
from x402 import x402Client
from x402.http.clients import x402HttpxClient
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact.register import register_exact_evm_client
client = x402Client(); register_exact_evm_client(client, EthAccountSigner(Account.from_key(PRIVATE_KEY)))
async with x402HttpxClient(client) as http:
    r = await http.post("https://agentsvc.io/api/v1/proxy/web-scrape", json={"url": "https://example.com"}); await r.aread(); print(r.text)

Free sample with the example input (no wallet needed):

curl -X POST https://agentsvc.io/api/v1/try/ip-lookup -H "Content-Type: application/json" -d '{"ip":"8.8.8.8"}'

Wallet: Any EVM wallet with USDC on Base mainnet (chain 8453) or a Solana wallet with USDC on Solana mainnet. $1 USDC covers roughly 300 to 500 calls. No ETH or SOL for gas needed: the facilitator pays the fees.

2. Response format

Success: {"success":true,"data":,"payment":{...}}. Error: {"success":false,"error":"","message":"","hint":"","charged":false}. Binary outputs (PNG, PDF) are base64 strings in data.image_base64 / data.pdf_base64.

Error codes: service_not_found (404), invalid_input (400), payment_required / wrong_network / amount_too_low / authorization_expired / insufficient_funds / invalid_signature / payment_already_used / settlement_failed (402), trial_limit_reached (429, trial endpoint only), facilitator_unavailable (503), internal_error (500).

3. Services (70)

screenshot ($0.005 USDC)

Capture any URL as a PNG screenshot. Returns image_base64 (base64 PNG; decode to get raw bytes). Full JS rendering via Playwright, works on SPAs and dynamic content. Params: url (required), width px (default 1280), height px (default 800), full_page boolean, wait_ms.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/screenshot
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/screenshot
  • Example input: {"url":"https://example.com","width":1280,"height":800}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"The URL to capture"},"width":{"type":"integer","default":1280,"description":"Viewport width in pixels"},"height":{"type":"integer","default":800,"description":"Viewport height in pixels"},"full_page":{"type":"boolean","default":false,"description":"Capture full page height"},"wait_ms":{"type":"integer","default":1000,"description":"Wait time after page load in ms"}}}
  • Example output: {"image_base64":"iVBORw0KGgoAAAANSUhEUgAABQAAAASwCAYAAACPT...","width":1280,"height":800,"url":"https://example.com","captured_at":"2026-04-07T12:00:00.000Z"}

weather ($0.002 USDC)

Current weather plus daily forecast up to 16 days and optional hourly forecast up to 48 hours, worldwide. Current: temperature, feels like, humidity, wind and gusts, precipitation, cloud cover, pressure, conditions text. Daily: min/max, conditions, precipitation sum and probability, max wind, UV index, sunrise/sunset. Params: location (city name like 'Berlin' or 'lat,lon'), days (1 to 16, default 3), hours (0 to 48 hourly steps, default 0), units ('metric' default or 'imperial'). forecast_3d is kept for older clients.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/weather
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/weather
  • Example input: {"location":"Berlin"}
  • Input schema: {"type":"object","required":["location"],"properties":{"location":{"type":"string","description":"City name (e.g. 'Berlin'), or lat,lon string (e.g. '52.52,13.41'). Default: Berlin","default":"Berlin"},"days":{"type":"integer","minimum":1,"maximum":16,"default":3,"description":"Days of daily forecast"},"hours":{"type":"integer","minimum":0,"maximum":48,"default":0,"description":"Hourly forecast steps (0 = none)"},"units":{"type":"string","enum":["metric","imperial"],"default":"metric"}}}
  • Example output: {"location":{"name":"Berlin","lat":52.52,"lon":13.41},"current":{"temp_c":12.5,"feels_like_c":10.2,"humidity_pct":71,"wind_kph":14.8,"weather_code":3},"forecast_3d":[{"date":"2026-04-07","temp_max_c":14,"temp_min_c":8.2,"weather_code":1},{"date":"2026-04-08","temp_max_c":16.5,"temp_min_c":9,"weather_code":2},{"date":"2026-04-09","temp_max_c":13,"temp_min_c":7.8,"weather_code":61}]}

exchange-rates ($0.002 USDC)

Live forex rates from European Central Bank (ECB), updated hourly. Returns rates object mapping currency codes to rates relative to base. Pass symbols array to filter (e.g. ['USD','CHF','GBP']). Empty symbols = all 30+ currencies. Use for currency conversion in invoices, pricing, or financial calculations.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/exchange-rates
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/exchange-rates
  • Example input: {"base":"EUR","symbols":["USD","CHF","GBP"]}
  • Input schema: {"type":"object","properties":{"base":{"type":"string","default":"EUR","description":"Base currency (e.g. USD, EUR, GBP)"},"symbols":{"type":"array","items":{"type":"string"},"description":"Target currencies to return. Empty = all."}}}
  • Example output: {"base":"EUR","date":"2026-04-07","rates":{"USD":1.0892,"CHF":0.9242,"GBP":0.8594,"JPY":161.32},"source":"European Central Bank via frankfurter.dev"}

html-to-pdf ($0.008 USDC)

Render a URL or raw HTML string to PDF. Returns pdf_base64 (base64 PDF; decode to get raw bytes) and page_count. Provide url OR html, never both. Supports format (A4/Letter/Legal), landscape boolean, and margin settings (top/bottom/left/right in CSS units). Use for invoices, reports, or printable document generation.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/html-to-pdf
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/html-to-pdf
  • Example input: {"html":"<h1>Invoice #123</h1><p>Total: $42.00</p>"}
  • Input schema: {"type":"object","description":"Provide either 'url' OR 'html' (not both). Common fields (format, landscape, margin) apply to both.","oneOf":[{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"URL to render as PDF (must be publicly accessible)"},"format":{"type":"string","enum":["A4","Letter","Legal"],"default":"A4","description":"Page format"},"landscape":{"type":"boolean","default":false,"description":"Landscape orientation"},"margin":{"type":"object","description":"Page margins (CSS units, e.g. '1cm', '10mm', '0.5in')","properties":{"top":{"type":"string","default":"1cm"},"bottom":{"type":"string","default":"1cm"},"left":{"type":"string","default":"1cm"},"right":{"type":"string","default":"1cm"}}}}},{"type":"object","required":["html"],"properties":{"html":{"type":"string","description":"Raw HTML string to render as PDF"},"format":{"type":"string","enum":["A4","Letter","Legal"],"default":"A4","description":"Page format"},"landscape":{"type":"boolean","default":false,"description":"Landscape orientation"},"margin":{"type":"object","description":"Page margins (CSS units, e.g. '1cm', '10mm', '0.5in')","properties":{"top":{"type":"string","default":"1cm"},"bottom":{"type":"string","default":"1cm"},"left":{"type":"string","default":"1cm"},"right":{"type":"string","default":"1cm"}}}}}]}
  • Example output: {"pdf_base64":"JVBERi0xLjQKJeLjz9MKMyAwIG9iago8PC9...","page_count":2,"file_size_bytes":14867,"generated_at":"2026-04-07T12:00:00.000Z"}

ip-lookup ($0.002 USDC)

Resolve any IPv4 or IPv6 address to location and network data. Returns country, country_code, city, region, postal, lat/lon, timezone, ISP, org, and ASN. Use for fraud detection, geolocation enrichment, or access log analysis.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/ip-lookup
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/ip-lookup
  • Example input: {"ip":"8.8.8.8"}
  • Input schema: {"type":"object","required":["ip"],"properties":{"ip":{"type":"string","description":"IPv4 or IPv6 address to look up (e.g. '8.8.8.8' or '2001:4860:4860::8888')"}}}
  • Example output: {"ip":"8.8.8.8","country":"United States","country_code":"US","region":"Virginia","city":"Ashburn","postal":"20149","lat":39.0438,"lon":-77.4874,"timezone":"America/New_York","isp":"Google LLC","org":"Google Public DNS","asn":"AS15169"}

webpage-reader ($0.006 USDC)

Read ONE JavaScript-heavy page (single-page apps, dashboards, content loaded after page load) in a real Chromium browser and get the rendered text with title, description, word_count and optional links. Slower and pricier than web-scrape: use it only when web-scrape returns little or no content. Params: url (required), include_links, max_chars (default 8000).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/webpage-reader
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/webpage-reader
  • Example input: {"url":"https://example.com","max_chars":4000}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"The URL to read and extract content from"},"include_links":{"type":"boolean","default":false,"description":"If true, include up to 50 links found on the page"},"max_chars":{"type":"integer","default":8000,"description":"Maximum characters of text to return (truncated with …)"}}}
  • Example output: {"url":"https://example.com","title":"Example Domain","description":"This domain is for use in illustrative examples in documents.","text":"Example Domain\n\nThis domain is for use in illustrative examples in documents. You may use this domain in literature without prior coordination or asking for permission.\n\nMore information...","word_count":34,"fetched_at":"2026-04-07T12:00:00.000Z","http_status":200}

dns-lookup ($0.002 USDC)

Resolve DNS records for any domain. Supports A, AAAA, MX, TXT, CNAME, NS. Returns records object with array per type. Default: A records only. Use to verify mail server setup (MX), check domain ownership (TXT), or debug DNS propagation.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/dns-lookup
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/dns-lookup
  • Example input: {"domain":"github.com","types":["A","MX"]}
  • Input schema: {"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain name to look up (e.g. 'example.com', 'mail.google.com')"},"types":{"type":"array","items":{"type":"string","enum":["A","AAAA","MX","TXT","CNAME","NS"]},"default":["A"],"description":"DNS record types to resolve. Default: [\"A\"]. Supported: A, AAAA, MX, TXT, CNAME, NS"}}}
  • Example output: {"domain":"example.com","records":{"A":["93.184.216.34"],"MX":[{"priority":10,"exchange":"mail.example.com"}]},"resolved_at":"2026-04-07T12:00:00.000Z"}

qr-code ($0.002 USDC)

Generate a QR code for any text or URL. Returns image_base64 (base64 PNG; decode to get raw bytes). Params: text (required), size in px (64-1024, default 256), error_correction (L/M/Q/H, default M). H = highest redundancy, survives up to 30% damage.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/qr-code
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/qr-code
  • Example input: {"text":"https://agentsvc.io","size":256}
  • Input schema: {"type":"object","required":["text"],"properties":{"text":{"type":"string","description":"The text or URL to encode in the QR code"},"size":{"type":"integer","default":256,"description":"Output image size in pixels (width and height). Min: 64, Max: 1024."},"error_correction":{"type":"string","enum":["L","M","Q","H"],"default":"M","description":"Error correction level: L=7%, M=15%, Q=25%, H=30% data recovery. Higher = bigger QR code."}}}
  • Example output: {"image_base64":"iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAA...","width":256,"height":256,"text":"https://agentsvc.io","generated_at":"2026-04-07T12:00:00.000Z"}

web-search ($0.003 USDC)

Quick factual lookup: a plain-language summary (abstract) plus up to 5 relevant links from DuckDuckGo instant answers and Wikipedia. Best for people, places, concepts, history and science. Returns links, not page content: to get the content of the top results in the same call, use search-read. Not for breaking news: use news-search. Params: query (required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/web-search
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/web-search
  • Example input: {"query":"x402 payment protocol"}
  • Input schema: {"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"Search query string (e.g. 'current Bitcoin price', 'capital of France', 'Next.js 15 release date')"}}}
  • Example output: {"query":"capital of France","heading":"Paris","abstract":"Paris is the capital and most populous city of France. With an official estimated population of 2,102,650 residents as of 1 January 2023 in an area of more than 105 km²...","abstract_url":"https://en.wikipedia.org/wiki/Paris","abstract_source":"Wikipedia","results":[{"text":"Paris — Wikipedia","url":"https://en.wikipedia.org/wiki/Paris"},{"text":"Visit Paris — Official Tourism Site","url":"https://www.parisinfo.com/"}],"answer":""}

translate ($0.002 USDC)

Translate text between 100+ languages. Max 500 characters per call. Returns translated_text and confidence (0-1). Set target_lang to IETF code: 'de' (German), 'fr' (French), 'es' (Spanish), 'ja' (Japanese), 'zh-CN' (Chinese Simplified), 'ar' (Arabic), 'pt' (Portuguese), 'it' (Italian), 'nl' (Dutch). source_lang defaults to auto-detect.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/translate
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/translate
  • Example input: {"text":"Hello, how are you?","target_lang":"de"}
  • Input schema: {"type":"object","required":["text","target_lang"],"properties":{"text":{"type":"string","description":"Text to translate (max 500 characters per call)"},"target_lang":{"type":"string","description":"Target language code (e.g. 'de' for German, 'fr' for French, 'es' for Spanish, 'ja' for Japanese, 'zh' for Chinese). Use ISO 639-1 codes."},"source_lang":{"type":"string","default":"auto","description":"Source language code. Default: 'auto' (auto-detect). Use ISO 639-1 codes."}}}
  • Example output: {"original_text":"Hello, how are you?","translated_text":"Hallo, wie geht es Ihnen?","source_lang":"en","target_lang":"de","confidence":1,"service":"MyMemory"}

email-validate ($0.002 USDC)

Validate an email address: RFC 5322 format check, domain MX record lookup, disposable provider detection, and role address detection (e.g. info@, admin@). Returns is_valid boolean and granular checks object. Use before storing or sending to email addresses to prevent bounces.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/email-validate
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/email-validate
  • Example input: {"email":"support@github.com"}
  • Input schema: {"type":"object","required":["email"],"properties":{"email":{"type":"string","format":"email","description":"The email address to validate (e.g. 'user@example.com')"}}}
  • Example output: {"email":"user@example.com","is_valid":true,"local_part":"user","domain":"example.com","checks":{"format_valid":true,"domain_has_mx":true,"is_disposable":false,"is_role_address":false},"mx_records":["mail.example.com"]}

ssl-check ($0.002 USDC)

Inspect SSL/TLS certificate for any domain. Returns valid boolean, days_remaining, issuer, valid_from, valid_to, subject_alt_names (SANs), fingerprint_sha256, and protocol version. Default port 443. Use for certificate expiry monitoring, security audits, or HTTPS verification.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/ssl-check
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/ssl-check
  • Example input: {"domain":"github.com"}
  • Input schema: {"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain to check SSL for (e.g. 'github.com', 'api.example.com'). Do not include https://"},"port":{"type":"integer","default":443,"description":"Port to check (default: 443)"}}}
  • Example output: {"domain":"github.com","port":443,"valid":true,"subject":"CN=github.com","subject_alt_names":["github.com","www.github.com"],"issuer":"DigiCert Inc","valid_from":"2024-03-07T00:00:00.000Z","valid_to":"2025-03-07T23:59:59.000Z","days_remaining":156,"serial_number":"0a:bc:12:...","fingerprint_sha256":"AB:CD:EF:...","protocol":"TLSv1.3"}

whois ($0.002 USDC)

Domain registration lookup via RDAP (modern WHOIS). Returns registrar, registrar_url, created_at, updated_at, expires_at, days_until_expiry, name_servers array, status array, and registrant_country. Clean JSON, no raw WHOIS text to parse. Covers all major TLDs.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/whois
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/whois
  • Example input: {"domain":"github.com"}
  • Input schema: {"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain to look up (e.g. 'github.com', 'openai.com'). Include TLD, exclude https://"}}}
  • Example output: {"domain":"github.com","registrar":"MarkMonitor Inc.","registrar_url":"http://www.markmonitor.com","status":["clientDeleteProhibited","clientTransferProhibited","clientUpdateProhibited"],"created_at":"2007-10-09T18:20:50.000Z","updated_at":"2024-09-08T09:18:28.000Z","expires_at":"2026-10-09T18:20:50.000Z","days_until_expiry":548,"name_servers":["dns1.p08.nsone.net","dns2.p08.nsone.net","ns-1283.awsdns-32.org","ns-1707.awsdns-21.co.uk"],"dnssec":"unsigned","registrant_country":"US"}

crypto-prices ($0.002 USDC)

Crypto prices in USD and other currencies. Three modes: (1) coins as CoinGecko IDs or tickers (up to 50) for live price, 24h change and market cap in the requested currencies; (2) tokens as chain:address (e.g. base:0x833589fC…, ethereum:0x6982…) for any DEX-traded token; (3) at (past ISO date or unix seconds) for historical USD prices of coins and tokens. Params: coins, tokens, currencies (default ['usd']), at.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/crypto-prices
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/crypto-prices
  • Example input: {"coins":["bitcoin","ethereum"],"currencies":["usd"]}
  • Input schema: {"type":"object","properties":{"tokens":{"type":"array","items":{"type":"string"},"description":"Tokens as chain:address, e.g. base:0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},"at":{"type":"string","description":"Past ISO date or unix seconds for historical USD prices"},"coins":{"type":"array","items":{"type":"string"},"description":"List of coin IDs or ticker symbols. Accepts CoinGecko IDs (e.g. 'bitcoin', 'ethereum') or common tickers (e.g. 'BTC', 'ETH', 'SOL'). Max 25 coins per call.","examples":[["bitcoin","ethereum"],["BTC","ETH","SOL"],["bitcoin","BNB","cardano"]]},"currencies":{"type":"array","items":{"type":"string"},"default":["usd"],"description":"Target fiat currencies. Default: ['usd']. Supported: usd, eur, gbp, jpy, chf, aud, cad, btc, eth."}}}
  • Example output: {"prices":{"bitcoin":{"name":"Bitcoin","symbol":"BTC","usd":71923,"usd_24h_change":1.42,"usd_market_cap":1419000000000},"ethereum":{"name":"Ethereum","symbol":"ETH","usd":2188,"usd_24h_change":0.41,"usd_market_cap":263000000000}},"fetched_at":"2026-04-10T14:00:00.000Z","source":"CoinGecko","not_found":[]}

pdf-extract ($0.004 USDC)

Extract all text from a PDF. Send as pdf_base64 (base64-encoded PDF, max ~10 MB decoded). Returns text (full concatenated text), pages array (per-page text + char_count), page_count, and metadata (title, author, creator). Encode with: Buffer.from(pdfBytes).toString('base64'). Ideal for RAG pipelines, document QA, or LLM ingestion.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/pdf-extract
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/pdf-extract
  • Example input: {"pdf_base64":"<base64 of a PDF>","max_pages":10}
  • Input schema: {"type":"object","required":["pdf_base64"],"properties":{"pdf_base64":{"type":"string","description":"Base64-encoded PDF file content. Decode a PDF file to base64 and pass it here. Max ~10 MB (unencoded)."},"max_pages":{"type":"integer","default":50,"description":"Maximum number of pages to extract. Default: 50. Use to limit processing time for large PDFs."}}}
  • Example output: {"text":"Quarterly Financial Report Q1 2026\n\nExecutive Summary\nTotal revenue increased by 23% year-over-year...","page_count":12,"pages":[{"page":1,"text":"Quarterly Financial Report Q1 2026\n\nExecutive Summary","char_count":54},{"page":2,"text":"Table of Contents\n1. Revenue Overview\n2. Cost Analysis","char_count":58}],"metadata":{"title":"Q1 2026 Financial Report","author":"Finance Department","creator":"Adobe Acrobat"},"file_size_bytes":245760,"extracted_at":"2026-04-10T14:00:00.000Z"}

phone-validate ($0.002 USDC)

Parse and validate any phone number worldwide using libphonenumber. Returns is_valid, e164 (canonical international format e.g. '+4917612345678'), national_format, country_code (ISO alpha-2), and line_type (MOBILE/FIXED_LINE/VOIP/TOLL_FREE). Provide country_code hint (e.g. 'DE') for local numbers without country prefix.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/phone-validate
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/phone-validate
  • Example input: {"phone":"+41 44 668 18 00"}
  • Input schema: {"type":"object","required":["phone"],"properties":{"phone":{"type":"string","description":"Phone number to validate. Can be in any format: E.164 ('+4915123456789'), national ('015123456789'), or international ('0049 151 23456789'). Include country code (+ prefix) for best results."},"country_code":{"type":"string","description":"ISO 3166-1 alpha-2 country code hint for parsing national numbers without country prefix (e.g. 'DE' for Germany, 'US' for United States). Optional if number includes country code (+...)."}}}
  • Example output: {"phone":"+49 151 23456789","is_valid":true,"e164":"+4915123456789","national_format":"0151 23456789","international_format":"+49 151 23456789","country_code":"DE","country_calling_code":"49","line_type":"MOBILE","checks":{"is_possible":true,"is_valid":true}}

stock-prices ($0.002 USDC)

Real-time stock data via Yahoo Finance. Returns price, change, change_pct, previous_close, market_cap, pe_ratio, week_52_high, week_52_low, volume, and market_state. Max 10 symbols per call. Non-US exchange suffixes: 'SAP.DE' (Xetra), 'VOD.L' (London LSE), 'AIR.PA' (Paris Euronext), 'ASML.AS' (Amsterdam).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/stock-prices
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/stock-prices
  • Example input: {"symbols":["AAPL","MSFT"]}
  • Input schema: {"type":"object","required":["symbols"],"properties":{"symbols":{"type":"array","items":{"type":"string"},"description":"List of stock ticker symbols. Max 10 per call. Examples: ['AAPL', 'MSFT', 'NVDA'] for US stocks, ['SAP.DE', 'BAYN.DE'] for German XETRA stocks, ['TSLA', 'GOOGL', 'AMZN']. Use the exchange suffix for non-US stocks (e.g. .DE, .L, .PA)."}}}
  • Example output: {"stocks":{"AAPL":{"symbol":"AAPL","name":"Apple Inc.","exchange":"NMS","currency":"USD","price":260.49,"change":1.59,"change_pct":0.61,"previous_close":258.9,"open":259.5,"day_high":261.2,"day_low":258.75,"volume":48200000,"market_cap":3910000000000,"pe_ratio":32.4,"week_52_high":273.59,"week_52_low":169.21,"market_state":"REGULAR"},"MSFT":{"symbol":"MSFT","name":"Microsoft Corporation","exchange":"NMS","currency":"USD","price":373.07,"change":1.43,"change_pct":0.38,"previous_close":371.64,"market_state":"REGULAR"}},"not_found":[],"fetched_at":"2026-04-10T14:00:00.000Z","source":"Yahoo Finance"}

geocode ($0.002 USDC)

Forward geocoding: address string → lat/lon. Reverse geocoding: lat/lon → human-readable address. Powered by OpenStreetMap Nominatim. Returns results array with display_name, lat, lon, type, and structured address object. Provide address (string) for forward, or lat + lon (numbers) for reverse.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/geocode
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/geocode
  • Example input: {"address":"Brandenburger Tor, Berlin"}
  • Input schema: {"type":"object","description":"Provide either 'address' for forward geocoding, or both 'lat' + 'lon' for reverse geocoding.","oneOf":[{"required":["address"],"properties":{"address":{"type":"string","description":"Address string to geocode (e.g. 'Eiffel Tower, Paris', '1600 Pennsylvania Ave NW, Washington DC', 'Marienplatz 1, Munich')"},"limit":{"type":"integer","default":1,"description":"Max number of results to return (default: 1, max: 5)"}}},{"required":["lat","lon"],"properties":{"lat":{"type":"number","description":"Latitude for reverse geocoding (e.g. 48.8566)"},"lon":{"type":"number","description":"Longitude for reverse geocoding (e.g. 2.3522)"}}}]}
  • Example output: {"mode":"forward","results":[{"display_name":"Eiffel Tower, 5, Avenue Anatole France, Quartier du Gros-Caillou, Paris, Île-de-France, France","lat":48.8583736,"lon":2.2922926,"type":"tourism","address":{"road":"Avenue Anatole France","city":"Paris","state":"Île-de-France","postcode":"75007","country":"France","country_code":"fr"},"osm_type":"way","place_id":158515771}],"source":"OpenStreetMap Nominatim"}

news-search ($0.003 USDC)

Recent news articles by keyword with title, url, source, published_at and snippet, from Hacker News (tech) and BBC feeds (general, world, business, science, health, politics). Use for current events and topic monitoring. For crypto news use crypto-news, for what people say about a topic discussion-search, and for full article text pass the URLs to web-read-batch. Params: query (required), limit (max 30), category.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/news-search
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/news-search
  • Example input: {"query":"AI agents","limit":5}
  • Input schema: {"type":"object","required":["query"],"properties":{"query":{"type":"string","description":"Search query (e.g. 'artificial intelligence', 'climate change 2026', 'Apple earnings')"},"limit":{"type":"integer","default":10,"description":"Number of articles to return (default: 10, max: 30)"},"category":{"type":"string","enum":["general","tech","business","science","health","politics"],"default":"general","description":"News category filter. 'tech' searches HackerNews for developer/tech news. Others search BBC + general news feeds."}}}
  • Example output: {"query":"artificial intelligence","articles":[{"title":"OpenCode – Open source AI coding agent","url":"https://github.com/opencode-ai/opencode","source":"Hacker News","published_at":"2026-04-10T08:32:00Z","snippet":"","score":1274},{"title":"AI breakthroughs in 2026: what's next","url":"https://www.bbc.co.uk/news/technology-67890123","source":"BBC News","published_at":"2026-04-10T06:15:00Z","snippet":"Scientists and engineers are pushing the boundaries..."}],"total_found":48,"sources_queried":["Hacker News","BBC News"]}

ocr ($0.008 USDC)

Extract text from images using Tesseract OCR. Send image as image_base64 (PNG/JPEG/WebP/TIFF/BMP, max 10 MB decoded). Returns text and confidence (0-100, where 80+ is reliable). Set language to Tesseract code: 'eng' (default), 'deu' (German), 'fra' (French), 'chi_sim' (Chinese Simplified), 'jpn' (Japanese), 'ara' (Arabic). Use for invoices, receipts, scanned documents, or screenshots with text.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/ocr
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/ocr
  • Example input: {"image_base64":"<base64 of a PNG/JPG>","language":"eng"}
  • Input schema: {"type":"object","required":["image_base64"],"properties":{"image_base64":{"type":"string","description":"Base64-encoded image. Supported formats: PNG, JPEG, WebP, TIFF, BMP. Max 10 MB decoded. For best results use high-contrast images with clear text."},"language":{"type":"string","default":"eng","description":"Tesseract language code. Default: 'eng' (English). Other supported: 'deu' (German), 'fra' (French), 'spa' (Spanish), 'ita' (Italian), 'por' (Portuguese), 'rus' (Russian), 'chi_sim' (Chinese Simplified), 'jpn' (Japanese), 'ara' (Arabic), 'kor' (Korean), 'nld' (Dutch), 'pol' (Polish). Use '+' to combine: 'eng+deu'."},"psm":{"type":"integer","default":3,"description":"Page Segmentation Mode. 3 = fully automatic (default, best for most images). 6 = single uniform block of text. 7 = single text line. 11 = sparse text (find text anywhere). 13 = raw line (no line ordering). Use 6 or 7 for forms/labels."}}}
  • Example output: {"text":"Invoice #12345\nDate: April 10, 2026\n\nBill To:\nJohn Smith\n123 Main Street\n\nTotal Due: $1,250.00","confidence":94,"language":"eng","word_count":18,"char_count":72,"processing_ms":1840,"processed_at":"2026-04-10T14:00:00.000Z"}

web-scrape ($0.004 USDC)

Default tool for reading ONE web page whose URL you have: returns clean Markdown (title, meta description, main content with headings, lists and links). The fastest and cheapest way to give an LLM the content of a page. If a JavaScript app comes back nearly empty, set render:true (real browser, slower, plain text) or use webpage-reader. For 2 to 5 URLs use web-read-batch, for a whole site site-crawl, and if you have a question but no URL search-read. Params: url (required), max_chars (default 8000, max 60000), include_links, render.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/web-scrape
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/web-scrape
  • Example input: {"url":"https://example.com","max_chars":8000}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Public http(s) URL to scrape"},"max_chars":{"type":"integer","default":8000,"maximum":60000,"description":"Truncate Markdown after this many characters"},"include_links":{"type":"boolean","default":false,"description":"Also return up to 100 absolute links found on the page"},"render":{"type":"boolean","default":false,"description":"Render with a headless browser (for JavaScript-heavy pages). Returns plain text instead of Markdown."}}}
  • Example output: {"url":"https://example.com/","status":200,"title":"Example Domain","description":"","markdown":"# Example Domain\n\nThis domain is for use in illustrative examples in documents.\n\n[More information...](https://www.iana.org/domains/example)","word_count":21,"truncated":false,"rendered":false,"fetch_ms":312,"fetched_at":"2026-09-09T12:00:00.000Z"}

rss-fetch ($0.002 USDC)

Fetch an RSS 2.0, RSS 1.0 or Atom feed and return normalized JSON items (title, link, published_at ISO 8601, summary without HTML, author, guid). Use for monitoring blogs, news sites, GitHub releases, podcasts or any feed URL without writing an XML parser. Params: url (required), limit (default 20, max 100).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/rss-fetch
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/rss-fetch
  • Example input: {"url":"https://hnrss.org/frontpage","limit":10}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Feed URL (RSS or Atom)"},"limit":{"type":"integer","default":20,"maximum":100,"description":"Maximum number of items to return"}}}
  • Example output: {"feed":{"title":"Hacker News: Front Page","link":"https://news.ycombinator.com/","description":"Hacker News RSS","format":"rss","url":"https://hnrss.org/frontpage"},"items":[{"title":"Show HN: An x402 marketplace for agents","link":"https://news.ycombinator.com/item?id=1","published_at":"2026-09-09T10:12:00.000Z","summary":"Article URL: https://agentsvc.io","author":"jakob","guid":"https://news.ycombinator.com/item?id=1"}],"item_count":1,"total_in_feed":30,"fetched_at":"2026-09-09T12:00:00.000Z"}

url-status ($0.002 USDC)

Check whether a URL is reachable and what it returns: final status code, full redirect chain, response time, content-type, server header and content length. Use for link validation, uptime checks, canonical URL resolution or before spending money on a scrape/screenshot. Params: url (required), method (GET default, or HEAD).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/url-status
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/url-status
  • Example input: {"url":"https://example.com"}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"URL to check"},"method":{"type":"string","enum":["GET","HEAD"],"default":"GET"}}}
  • Example output: {"url":"http://github.com","final_url":"https://github.com/","status":200,"ok":true,"reachable":true,"redirect_count":1,"redirects":[{"url":"http://github.com/","status":301,"location":"https://github.com/","ms":48},{"url":"https://github.com/","status":200,"ms":210}],"response_ms":258,"content_type":"text/html; charset=utf-8","content_length":284421,"server":"GitHub.com","https":true,"checked_at":"2026-09-09T12:00:00.000Z"}

evm-balance ($0.002 USDC)

Read the ETH and USDC balance of any address on Base mainnet (chain 8453) straight from the chain, plus transaction count and how many x402 calls the USDC covers. Use it to check your own agent wallet before a paid workflow, to verify a counterparty was paid, or to monitor treasury addresses. Params: address (required, 0x...).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/evm-balance
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/evm-balance
  • Example input: {"address":"0x622efA6Ceb83a5b6EdBC931332f4db68B7f74F27"}
  • Input schema: {"type":"object","required":["address"],"properties":{"address":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"EVM address on Base"}}}
  • Example output: {"address":"0x622efA6Ceb83a5b6EdBC931332f4db68B7f74F27","network":"base","chain_id":8453,"eth":"0.0041","eth_wei":"4100000000000000","usdc":"12.5","usdc_atomic":"12500000","usdc_contract":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","tx_count":17,"block_number":41234567,"x402_calls_affordable":{"at_0_002":6250,"at_0_005":2500},"checked_at":"2026-09-09T12:00:00.000Z"}

barcode ($0.002 USDC)

Generate a barcode as PNG (base64): code128 (default), ean13, ean8, upca, upce, code39, itf14, gs1_128, isbn, datamatrix, pdf417, aztec or qr. Validates check digits for EAN/UPC. Use for labels, shipping, inventory, tickets or invoices. Params: text (required), type, scale (1-8, default 3), include_text boolean (human-readable text under the bars).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/barcode
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/barcode
  • Example input: {"text":"4006381333931","type":"ean13"}
  • Input schema: {"type":"object","required":["text"],"properties":{"text":{"type":"string","maxLength":500,"description":"Data to encode"},"type":{"type":"string","default":"code128","enum":["code128","ean13","ean8","upca","upce","code39","itf14","gs1_128","isbn","datamatrix","pdf417","aztec","qr"]},"scale":{"type":"integer","default":3,"minimum":1,"maximum":8},"include_text":{"type":"boolean","default":true}}}
  • Example output: {"image_base64":"iVBORw0KGgoAAAANSUhEUgAAAM...","format":"png","type":"ean13","text":"4006381333931","width":342,"height":132,"size_bytes":1840}

image-resize ($0.003 USDC)

Resize, crop-fit and convert images (PNG, JPEG, WebP, AVIF, GIF, TIFF, SVG input) to webp, png, jpeg or avif. Auto-rotates by EXIF. Use to shrink screenshots before sending them to a vision model, create thumbnails, or convert formats. Params: image_base64 or image_url (one required), width, height (max 4096), fit (inside default | cover | contain | fill), format (webp default), quality (1-100, default 80).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/image-resize
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/image-resize
  • Example input: {"image_url":"https://agentsvc.io/sample.png","width":130,"format":"webp"}
  • Input schema: {"type":"object","properties":{"image_base64":{"type":"string","description":"Base64 image data (data: URI prefix allowed)"},"image_url":{"type":"string","format":"uri","description":"Public URL of the image (max 15 MB)"},"width":{"type":"integer","maximum":4096},"height":{"type":"integer","maximum":4096},"fit":{"type":"string","enum":["inside","cover","contain","fill"],"default":"inside"},"format":{"type":"string","enum":["webp","png","jpeg","avif"],"default":"webp"},"quality":{"type":"integer","minimum":1,"maximum":100,"default":80}}}
  • Example output: {"image_base64":"UklGRiQAAABXRUJQVlA4...","format":"webp","width":320,"height":200,"size_bytes":6120,"original":{"width":1280,"height":800,"format":"png","size_bytes":214000}}

timezone ($0.002 USDC)

Resolve a city name or coordinates to its IANA timezone and return the current local time, UTC offset, DST flag and weekday. Use for scheduling across regions, 'what time is it in X', or normalizing timestamps. Params: location (required, e.g. 'Tokyo' or '35.68,139.69').

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/timezone
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/timezone
  • Example input: {"location":"Tokyo"}
  • Input schema: {"type":"object","required":["location"],"properties":{"location":{"type":"string","description":"City name or 'lat,lon'"}}}
  • Example output: {"location":{"name":"Tokyo","country":"Japan","lat":35.6895,"lon":139.6917},"timezone":"Asia/Tokyo","abbreviation":"JST","utc_offset":"+09:00","utc_offset_seconds":32400,"is_dst":false,"local_time":"2026-09-09T21:00:00+09:00","local_date":"2026-09-09","weekday":"Wednesday","utc_time":"2026-09-09T12:00:00.000Z","unix_time":1788955200}

web-read-batch ($0.008 USDC)

Read 2 to 5 pages whose URLs you already know in one call, each as clean Markdown with title and description, fetched in parallel. Cheaper and faster than calling web-scrape once per URL. A failed page is reported with its error while the others still return; charged only if at least one page was read. To find URLs first, use site-map (one site) or search-read (a question). Params: urls (1 to 5, required), max_chars per page (500 to 30000, default 6000).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/web-read-batch
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/web-read-batch
  • Example input: {"urls":["https://agentsvc.io/","https://agentsvc.io/docs"],"max_chars":3000}
  • Input schema: {"type":"object","required":["urls"],"properties":{"urls":{"type":"array","items":{"type":"string","format":"uri"},"minItems":1,"maxItems":5,"description":"1 to 5 http(s) URLs"},"max_chars":{"type":"integer","minimum":500,"maximum":30000,"default":6000,"description":"Maximum Markdown characters per page"}}}
  • Example output: {"pages":[{"url":"https://agentsvc.io/","ok":true,"final_url":"https://agentsvc.io/","status":200,"title":"agentsvc.io","description":"Pay-per-call web services for AI agents","markdown":"# Web services your agent can buy per call.\n\n…","word_count":412,"truncated":true},{"url":"https://nonexistent.invalid/","ok":false,"error":"fetch failed"}],"ok_count":1,"failed_count":1,"fetched_at":"2026-10-06T12:00:00.000Z"}

prediction-markets ($0.004 USDC)

Live Polymarket prediction markets: outcome probabilities, 24h volume, liquidity, 24h price change and end date. Search by topic (query, e.g. 'bitcoin', 'election', 'fed rate') or omit query to get the markets with the highest 24h volume. Only open markets. Params: query (optional), limit (1 to 25, default 10).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/prediction-markets
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/prediction-markets
  • Example input: {"query":"bitcoin","limit":5}
  • Input schema: {"type":"object","properties":{"query":{"type":"string","description":"Topic to search, e.g. 'bitcoin' or 'election'. Omit for top markets by 24h volume."},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10}}}
  • Example output: {"source":"Polymarket","query":"bitcoin","count":1,"markets":[{"question":"Will the price of Bitcoin be above $82,000 on October 6?","event":"Bitcoin above ___ on October 6?","outcomes":[{"name":"Yes","probability":0.9975},{"name":"No","probability":0.0025}],"volume_24h_usd":86277.68,"volume_total_usd":129904.32,"liquidity_usd":46546.4,"price_change_24h":0.011,"end_date":"2026-10-06T16:00:00Z","url":"https://polymarket.com/event/bitcoin-above-on-october-6-2026"}],"fetched_at":"2026-10-06T12:00:00.000Z"}

hyperliquid ($0.002 USDC)

Hyperliquid perpetual futures market data: mark and oracle price, 24h change, hourly funding rate and funding APR, open interest (coins and USD), 24h volume, max leverage. Pass coins (e.g. ['BTC','ETH','SOL']) or omit them to get the top markets by open interest. Params: coins (optional, max 50), limit (1 to 50, default 10, used without coins).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/hyperliquid
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/hyperliquid
  • Example input: {"coins":["BTC","ETH","SOL"]}
  • Input schema: {"type":"object","properties":{"coins":{"type":"array","items":{"type":"string"},"maxItems":50,"description":"Coin tickers as listed on Hyperliquid, e.g. BTC, ETH, SOL, HYPE"},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10}}}
  • Example output: {"source":"Hyperliquid perpetuals","count":1,"markets":[{"coin":"BTC","mark_price":86327,"oracle_price":86341,"change_24h_pct":0.15,"funding_rate_hourly":0.0000125,"funding_apr_pct":10.95,"open_interest":40362.51,"open_interest_usd":3484374252,"volume_24h_usd":1925978629,"premium":-0.00015,"max_leverage":40,"delisted":false}],"not_found":[],"fetched_at":"2026-10-06T12:00:00.000Z"}

defi-yields ($0.003 USDC)

Find DeFi yield pools across 400+ protocols and 100+ chains (DefiLlama data): APY split into base and reward, 30-day mean APY, 7-day APY change, TVL, stablecoin flag, impermanent-loss risk. Filter by chain (e.g. 'Base', 'Ethereum'), project (e.g. 'aave'), token symbol (e.g. 'USDC'), stablecoin_only, min_tvl_usd (default 1,000,000); sort by 'apy' (default) or 'tvl'. Outliers (flagged by DefiLlama or above 500% APY) are excluded unless include_outliers is true.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/defi-yields
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/defi-yields
  • Example input: {"chain":"Base","symbol":"USDC","stablecoin_only":true,"limit":5}
  • Input schema: {"type":"object","properties":{"chain":{"type":"string","description":"Chain name as on DefiLlama, e.g. Base, Ethereum, Arbitrum, Solana"},"project":{"type":"string","description":"Protocol slug or part of it, e.g. aave, morpho, aerodrome"},"symbol":{"type":"string","description":"Token symbol contained in the pool, e.g. USDC, ETH"},"stablecoin_only":{"type":"boolean","default":false},"min_tvl_usd":{"type":"number","default":1000000},"sort":{"type":"string","enum":["apy","tvl"],"default":"apy"},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10},"include_outliers":{"type":"boolean","default":false}}}
  • Example output: {"source":"DefiLlama yields","filters":{"chain":"base","project":null,"symbol":"USDC","stablecoin_only":true,"min_tvl_usd":1000000,"sort":"apy","include_outliers":false},"matched":21,"pools":[{"project":"aerodrome-slipstream","chain":"Base","symbol":"EURC-USDC","pool_meta":"CL50 - 0.007%","apy_pct":40.797,"apy_base_pct":35.825,"apy_reward_pct":4.972,"apy_mean_30d_pct":27.341,"apy_change_7d_pct":6.399,"tvl_usd":1259471,"stablecoin":true,"il_risk":"yes","exposure":"multi","outlook":"Down","pool_id":"847c874f-d4e7-47ed-8870-97d2f24a8767","url":"https://defillama.com/yields/pool/847c874f-d4e7-47ed-8870-97d2f24a8767"}],"fetched_at":"2026-10-06T12:00:00.000Z"}

erc20-info ($0.002 USDC)

Read an ERC20 token contract on Base or Ethereum mainnet: name, symbol, decimals, total supply, and optionally the balance of one holder address. Verifies that the address is a contract. Params: token (contract address, required), chain ('base' default or 'ethereum'), holder (optional address).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/erc20-info
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/erc20-info
  • Example input: {"token":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","chain":"base","holder":"0x622efA6Ceb83a5b6EdBC931332f4db68B7f74F27"}
  • Input schema: {"type":"object","required":["token"],"properties":{"token":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"ERC20 contract address"},"chain":{"type":"string","enum":["base","ethereum"],"default":"base"},"holder":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}$","description":"Optional address whose token balance to return"}}}
  • Example output: {"chain":"base","chain_id":8453,"token":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","name":"USD Coin","symbol":"USDC","decimals":6,"total_supply":"4422012871.202378","total_supply_raw":"4422012871202378","holder":{"address":"0x622efA6Ceb83a5b6EdBC931332f4db68B7f74F27","balance":"0.009","balance_raw":"9000"},"explorer":"https://basescan.org/token/0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","checked_at":"2026-10-06T12:00:00.000Z"}

evm-tx ($0.002 USDC)

Look up a transaction on Base or Ethereum mainnet: status (success, failed, pending or not_found), block, confirmations, timestamp, from, to, ETH value, gas used, fee, method id and decoded ERC20 transfers with symbols and amounts. Useful to confirm that a payment arrived. Params: hash (0x transaction hash, required), chain ('base' default or 'ethereum').

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/evm-tx
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/evm-tx
  • Example input: {"hash":"0x387b8fce2e62d9466a30840c5f391b7511968bca9b73280c17aefe29d63eb82c","chain":"base"}
  • Input schema: {"type":"object","required":["hash"],"properties":{"hash":{"type":"string","pattern":"^0x[0-9a-fA-F]{64}$","description":"Transaction hash"},"chain":{"type":"string","enum":["base","ethereum"],"default":"base"}}}
  • Example output: {"chain":"base","chain_id":8453,"hash":"0x387b8fce2e62d9466a30840c5f391b7511968bca9b73280c17aefe29d63eb82c","status":"success","block_number":52167015,"confirmations":82092,"timestamp":"2026-10-04T14:16:17.000Z","from":"0xc6699d2aada6c36dfea5c248dd70f9cb0235cb63","to":"0xca11bde05977b3631167028862be2a173976ca11","contract_created":null,"value_eth":"0","nonce":4469423,"method_id":"0x82ad56cb","gas_used":"92312","effective_gas_price_gwei":"0.007","fee_eth":"0.000000646184","token_transfers":[{"token":"0x833589fcd6edb6e08f4c7c32d4f71b54bda02913","symbol":"USDC","from":"0x6031551fc1fe26710fe4b20316d5dc91d9d6c2d1","to":"0x622efa6ceb83a5b6edbc931332f4db68b7f74f27","amount":"0.002","amount_raw":"20

holidays ($0.002 USDC)

Public and bank holidays for 200+ countries and their regions (states, cantons) for any year, with local names. Optionally check whether a given date is a holiday. Params: country (ISO 3166-1 alpha-2, required, e.g. DE, US, CH, JP), region (e.g. BY, CA, ZH), year (default current), date (YYYY-MM-DD to check), language (e.g. en), include_observances (default false).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/holidays
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/holidays
  • Example input: {"country":"DE","region":"BY","year":2026,"date":"2026-10-03"}
  • Input schema: {"type":"object","required":["country"],"properties":{"country":{"type":"string","description":"ISO 3166-1 alpha-2 country code"},"region":{"type":"string","description":"State/region code, e.g. BY, CA, ZH"},"year":{"type":"integer"},"date":{"type":"string","description":"YYYY-MM-DD to check"},"language":{"type":"string","description":"Language for holiday names, e.g. en"},"include_observances":{"type":"boolean","default":false}}}
  • Example output: {"country":"DE","region":"BY","year":2026,"count":14,"holidays":[{"date":"2026-01-01","name":"Neujahr","type":"public","substitute":false},{"date":"2026-01-06","name":"Heilige Drei Könige","type":"public","substitute":false}],"date_check":{"date":"2026-10-03","is_holiday":true,"name":"Tag der Deutschen Einheit","weekday":"Saturday"}}

vat-validate ($0.003 USDC)

Validate an EU VAT identification number live against the official EU VIES service, with registered company name and address where the member state discloses them. Checks the national format first. Not charged if the member state service is temporarily unavailable. Params: vat_number (with country prefix, e.g. NL004495445B01, DE811569869) or vat_number + country_code.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/vat-validate
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/vat-validate
  • Example input: {"vat_number":"NL004495445B01"}
  • Input schema: {"type":"object","required":["vat_number"],"properties":{"vat_number":{"type":"string","description":"VAT number, ideally with EU country prefix"},"country_code":{"type":"string","description":"Two-letter EU code if the number has no prefix (EL for Greece, XI for Northern Ireland)"}}}
  • Example output: {"valid":true,"format_valid":true,"country_code":"NL","vat_number":"004495445B01","full_vat_number":"NL004495445B01","name":"OPENJONGERENVERENIGING DE KOORNBEURS","address":"VOLDERSGRACHT 00001, 2611ET DELFT","source":"EU VIES","checked_at":"2026-10-06T14:17:43.626Z"}

iban-validate ($0.002 USDC)

Validate an IBAN (checksum, country length and structure), split it into bank code, branch and account number, report SEPA membership, and for DE, AT, CH, NL, BE, LU and LI add bank name, BIC and city. Params: iban (required, spaces allowed).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/iban-validate
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/iban-validate
  • Example input: {"iban":"DE89 3704 0044 0532 0130 00"}
  • Input schema: {"type":"object","required":["iban"],"properties":{"iban":{"type":"string","description":"IBAN, spaces allowed"}}}
  • Example output: {"iban":"DE89370400440532013000","valid":true,"formatted":"DE89 3704 0044 0532 0130 00","country_code":"DE","check_digits":"89","sepa":true,"expected_length":22,"bban":"370400440532013000","bank_code":"37040044","branch_code":null,"account_number":"0532013000","bank":{"name":"Commerzbank","bic":"COBADEFFXXX","city":"Köln","zip":"50447","source":"openiban.com"},"checked_at":"2026-10-06T14:17:43.668Z"}

company-lookup ($0.003 USDC)

Find companies worldwide in the Global LEI Index (GLEIF): legal name, LEI, jurisdiction, legal form, register number and authority, legal and headquarters address, status and founding date. Search by name (optionally filtered by country) or fetch one LEI. Params: name or lei (one required), country (ISO2), limit (1 to 20, default 5).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/company-lookup
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/company-lookup
  • Example input: {"name":"Siemens","country":"DE","limit":3}
  • Input schema: {"type":"object","properties":{"name":{"type":"string","description":"Company name to search"},"lei":{"type":"string","description":"20-character LEI"},"country":{"type":"string","description":"ISO2 country of the legal address"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":5}}}
  • Example output: {"query":"Siemens","country":"DE","total_matches":347,"count":1,"companies":[{"lei":"529900VGZ27M5ZHAEZ97","legal_name":"Siemens Advanta Solutions GmbH","other_names":[],"jurisdiction":"DE","legal_form":"2HBR","entity_status":"ACTIVE","category":"GENERAL","founded":"2013-10-14","register_id":"HRB 209510","register_authority":"RA000304","legal_address":{"lines":["Werner-von-Siemens-Str. 1, c/o Siemens Aktiengesellschaft"],"city":"München","region":"DE-BY","postal_code":"80333","country":"DE"},"headquarters_address":{"lines":["Werner-von-Siemens-Str. 1, c/o Siemens Aktiengesellschaft"],"city":"München","region":"DE-BY","postal_code":"80333","country":"DE"},"lei_status":"ISSUED","lei_registered

sec-filings ($0.003 USDC)

US public company data from SEC EDGAR: company profile, recent filings (10-K, 10-Q, 8-K, Form 4 insider trades, S-1 ...) with direct document links, and optionally the latest annual financials (revenue, net income, assets, liabilities, equity, operating cash flow, diluted EPS). Params: ticker or cik (one required), forms (filter, e.g. ['10-K','8-K']), limit (1 to 50, default 10), include_financials (default false).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/sec-filings
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/sec-filings
  • Example input: {"ticker":"AAPL","forms":["10-K","10-Q"],"limit":5,"include_financials":true}
  • Input schema: {"type":"object","properties":{"ticker":{"type":"string","description":"US ticker, e.g. AAPL"},"cik":{"type":"string","description":"SEC CIK number"},"forms":{"type":"array","items":{"type":"string"},"description":"Form types to include"},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10},"include_financials":{"type":"boolean","default":false}}}
  • Example output: {"cik":"0000320193","name":"Apple Inc.","tickers":["AAPL"],"exchanges":["Nasdaq"],"sic":"3571","industry":"Electronic Computers","state_of_incorporation":"CA","fiscal_year_end":"0926","filings":[{"form":"10-K","filing_date":"2025-10-31","report_date":"2025-09-27","description":"10-K","accession_number":"0000320193-25-000079","url":"https://www.sec.gov/Archives/edgar/data/320193/000032019325000079/aapl-20250927.htm"}],"source":"SEC EDGAR","checked_at":"2026-10-06T14:17:44.337Z","financials_latest_annual":{"revenue":{"value":62900000000,"period_end":"2018-09-29","fiscal_year":2018,"concept":"Revenues"},"net_income":{"value":112010000000,"period_end":"2025-09-27","fiscal_year":2025,"concept":"N

gas-price ($0.002 USDC)

Current gas prices on Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Chain and Avalanche: gas price, base fee, low/medium/high priority fee in gwei, native token USD price and estimated USD cost of an ETH transfer, ERC20 transfer and swap. Params: chains (optional list, default all).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/gas-price
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/gas-price
  • Example input: {"chains":["base","ethereum","arbitrum"]}
  • Input schema: {"type":"object","properties":{"chains":{"type":"array","items":{"type":"string","enum":["ethereum","base","arbitrum","optimism","polygon","bsc","avalanche"]}}}}
  • Example output: {"chains":[{"chain":"base","chain_id":8453,"gas_price_gwei":0.006,"base_fee_gwei":0.005,"priority_fee_gwei":{"low":0.00004,"medium":0.001059,"high":0.007469},"native_token":"ETH","native_usd":2710.355,"est_cost_usd":{"eth_transfer":0.000342,"erc20_transfer":0.001057,"swap":0.002927}},{"chain":"ethereum","chain_id":1,"gas_price_gwei":0.880105,"base_fee_gwei":0.854496,"priority_fee_gwei":{"low":0.2387,"medium":1.694767,"high":12.90606},"native_token":"ETH","native_usd":2710.355,"est_cost_usd":{"eth_transfer":0.050093,"erc20_transfer":0.155051,"swap":0.429372}}],"note":"L2 costs exclude the L1 data fee, which can dominate on rollups.","checked_at":"2026-10-06T14:17:44.635Z"}

product-lookup ($0.002 USDC)

Look up a product by EAN/UPC barcode in Open Food Facts, Open Beauty Facts and Open Products Facts: name, brand, quantity, categories, ingredients, allergens, labels, nutrition per 100 g, Nutri-Score, NOVA group and image URL. Params: barcode (8 to 14 digits, required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/product-lookup
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/product-lookup
  • Example input: {"barcode":"3017624010701"}
  • Input schema: {"type":"object","required":["barcode"],"properties":{"barcode":{"type":"string","description":"EAN-13, EAN-8 or UPC"}}}
  • Example output: {"found":true,"barcode":"3017624010701","source":"Open Food Facts","name":"Nutella","brand":"Ferrero","quantity":"400.0 g","categories":["Cocoa and hazelnuts spreads","de:Other"],"ingredients":"sugar, palm oil, hazelnuts, skimmed milk powder, fat reduced cocoa, emulsifier, vanillin","allergens":["nuts"],"labels":["no-gluten"],"nutrition_per_100g":{"energy_kcal":539,"fat_g":30.9,"saturated_fat_g":10.6,"carbohydrates_g":57.5,"sugars_g":56.3,"fiber_g":null,"proteins_g":6.3,"salt_g":0.1075},"nutriscore":"e","nova_group":null,"ecoscore":"d","image_url":"https://images.openfoodfacts.org/images/products/301/762/401/0701/front_en.100.400.jpg","url":"https://world.openfoodfacts.org/product/3017624010

language-detect ($0.002 USDC)

Detect the language of a text (80+ languages) with ISO 639-1 and 639-3 codes, confidence, a reliability flag and the top candidates. Runs locally, nothing is stored. Params: text (required, up to 20,000 characters), top (number of candidates, default 3).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/language-detect
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/language-detect
  • Example input: {"text":"Bonjour, je voudrais réserver une table pour deux personnes ce soir."}
  • Input schema: {"type":"object","required":["text"],"properties":{"text":{"type":"string"},"top":{"type":"integer","minimum":1,"maximum":10,"default":3}}}
  • Example output: {"language":"French","iso639_1":"fr","iso639_3":"fra","confidence":0.878,"reliable":true,"candidates":[{"iso639_3":"fra","iso639_1":"fr","name":"French","score":1},{"iso639_3":"spa","iso639_1":"es","name":"Spanish","score":0.622}],"characters":68}

useragent-parse ($0.002 USDC)

Parse a User-Agent string into browser, engine, OS, device type/vendor/model and CPU, and flag bots and AI crawlers (GPTBot, ClaudeBot, PerplexityBot ...). Params: user_agent (required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/useragent-parse
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/useragent-parse
  • Example input: {"user_agent":"Mozilla/5.0 (compatible; GPTBot/1.2; +https://openai.com/gptbot)"}
  • Input schema: {"type":"object","required":["user_agent"],"properties":{"user_agent":{"type":"string"}}}
  • Example output: {"user_agent":"Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Mobile/15E148 Safari/604.1","browser":{"name":"Mobile Safari","version":"17.5","major":"17"},"engine":{"name":"WebKit","version":"605.1.15"},"os":{"name":"iOS","version":"17.5"},"device":{"type":"mobile","vendor":"Apple","model":"iPhone"},"cpu":null,"is_bot":false,"is_ai_crawler":false,"is_mobile":true,"is_tablet":false}

macro-data ($0.003 USDC)

Macroeconomic indicators per country from World Bank Open Data with yearly history: inflation, GDP, GDP growth, GDP per capita, unemployment, population, government debt, current account, exports, lending rate. Optionally current ECB policy rates. Params: country (ISO2 or ISO3, required), indicators (default inflation, gdp, gdp_growth, unemployment, population), years (1 to 20, default 5), include_ecb_rates (default false).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/macro-data
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/macro-data
  • Example input: {"country":"DE","indicators":["inflation","unemployment","gdp_growth"],"years":3}
  • Input schema: {"type":"object","required":["country"],"properties":{"country":{"type":"string"},"indicators":{"type":"array","items":{"type":"string","enum":["inflation","gdp","gdp_growth","gdp_per_capita","unemployment","population","government_debt","current_account","exports","lending_rate"]}},"years":{"type":"integer","minimum":1,"maximum":20,"default":5},"include_ecb_rates":{"type":"boolean","default":false}}}
  • Example output: {"country":"DE","country_name":"Germany","indicators":[{"indicator":"inflation","code":"FP.CPI.TOTL.ZG","label":"Inflation, consumer prices (annual %)","country_name":"Germany","latest":{"year":2025,"value":2.17178770949721},"history":[{"year":2025,"value":2.17178770949721},{"year":2024,"value":2.2564981433876}]},{"indicator":"unemployment","code":"SL.UEM.TOTL.ZS","label":"Unemployment (% of labor force, ILO)","country_name":"Germany","latest":{"year":2025,"value":3.711},"history":[{"year":2025,"value":3.711},{"year":2024,"value":3.4}]}],"source":"World Bank Open Data","checked_at":"2026-10-06T14:17:45.054Z"}

sanctions-screen ($0.005 USDC)

Screen a person or company name against the official OFAC SDN list (with aliases), the EU consolidated financial sanctions list and the UN Security Council consolidated list. Fuzzy, word-order independent matching with scores, list, program and aliases. Lists refresh every 12 hours. A screening aid, not a legal determination. Params: name (required), type ('individual' or 'entity', optional), threshold (0.5 to 1, default 0.85), limit (default 10).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/sanctions-screen
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/sanctions-screen
  • Example input: {"name":"Banco Nacional de Cuba"}
  • Input schema: {"type":"object","required":["name"],"properties":{"name":{"type":"string"},"type":{"type":"string","enum":["individual","entity"]},"threshold":{"type":"number","minimum":0.5,"maximum":1,"default":0.85},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10}}}
  • Example output: {"query":"Banco Nacional de Cuba","threshold":0.85,"match_count":1,"is_potential_match":true,"matches":[{"score":1,"list":"OFAC SDN","id":"306","name":"BANCO NACIONAL DE CUBA","type":"entity","programs":"CUBA","aliases":["NATIONAL BANK OF CUBA"],"matched_on":"banco nacional de cuba"}],"lists":{"OFAC SDN":19363,"EU":6241,"UN":1010,"loaded_at":"2026-10-06T14:17:49.723Z","sources":["OFAC SDN + ALT (US Treasury)","EU Financial Sanctions consolidated list"]},"disclaimer":"Fuzzy name screening aid. A match is not a determination; verify identifiers (date of birth, nationality, addresses) against the official list before acting."}

site-map ($0.004 USDC)

List the URLs of a website without reading them: robots.txt, sitemaps and sitemap indexes plus homepage links, up to 1,000 same-site URLs with lastmod and source. A cheap first step to decide which pages to read with web-read-batch or site-crawl. Returns no page content. Params: url (site or domain, required), max_urls (1 to 1000, default 200).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/site-map
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/site-map
  • Example input: {"url":"https://agentsvc.io","max_urls":50}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"Site URL or domain"},"max_urls":{"type":"integer","minimum":1,"maximum":1000,"default":200}}}
  • Example output: {"site":"https://agentsvc.io","count":3,"sitemaps":["https://agentsvc.io/sitemap.xml"],"from_sitemap":3,"urls":[{"url":"https://agentsvc.io/","lastmod":"2026-10-06T14:17:50.554Z","source":"sitemap"},{"url":"https://agentsvc.io/services","lastmod":"2026-10-06T14:17:50.554Z","source":"sitemap"}],"robots_txt_found":true,"checked_at":"2026-10-06T14:17:50.557Z"}

site-crawl ($0.015 USDC)

Read a whole website or one section of it (for example every page under /docs) as clean Markdown: starts at a URL, follows same-site links breadth-first and returns up to 20 pages with title and description. Use for documentation, product catalogs or company sites. For one page use web-scrape, for a known list of URLs web-read-batch. Charged only if at least one page was read. Params: url (required), max_pages (1 to 20, default 5), max_chars per page (500 to 20000, default 4000), path_prefix (e.g. /docs).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/site-crawl
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/site-crawl
  • Example input: {"url":"https://agentsvc.io/docs","max_pages":3,"max_chars":2000}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string"},"max_pages":{"type":"integer","minimum":1,"maximum":20,"default":5},"max_chars":{"type":"integer","minimum":500,"maximum":20000,"default":4000},"path_prefix":{"type":"string","description":"Only follow links whose path starts with this, e.g. /docs"}}}
  • Example output: {"site":"https://agentsvc.io","pages_crawled":2,"ok_count":2,"skipped_non_html":2,"discovered_urls":37,"pages":[{"url":"https://agentsvc.io/docs","ok":true,"status":200,"title":"Docs: how agents pay per call with x402 · agentsvc.io","description":"Quickstart, payment protocol (x402 v1 and v2), free trial, error codes and the reference for every service on agentsvc.io.","markdown":"Documentation\n\n# Pay per call. Nothing else to set up.\n\nEvery service is a JSON endpoint behind HTTP 402. If you already use an x402 client, you are done: po…","word_count":104},{"url":"https://agentsvc.io/services/erc20-info","ok":true,"status":200,"title":"ERC20 Token Info: $0.002 USDC per call · agentsvc.io"

email-verify ($0.002 USDC)

Checks whether an email address really exists by asking its mail server (SMTP RCPT TO probe; no email is sent), on top of syntax, MX, disposable and role checks. Returns status deliverable, undeliverable (mailbox does not exist), catch_all (domain accepts any address), risky (disposable or mailbox full) or unknown (greylisting, server refused the check), plus the raw SMTP reply. Use it before sending outreach, to clean lead lists or to block fake sign-ups. Results are cached 6 hours. Params: email (required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/email-verify
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/email-verify
  • Example input: {"email":"support@github.com"}
  • Input schema: {"type":"object","required":["email"],"properties":{"email":{"type":"string","format":"email","description":"Email address to verify"}}}
  • Example output: {"email":"support@github.com","status":"deliverable","deliverable":true,"reason":"mailbox_exists","is_catch_all":null,"is_disposable":false,"is_role_address":true,"is_free_provider":false,"format_valid":true,"domain":"github.com","mx_records":["github-com.mail.protection.outlook.com"],"smtp":{"mx":"github-com.mail.protection.outlook.com","code":250,"message":"2.1.5 Recipient OK","catch_all_code":452},"note":"SMTP mailbox probe (RCPT TO). No email was sent.","checked_at":"2026-10-06T16:05:40.287Z"}

token-security ($0.010 USDC)

Risk check with grade A to F for a token before buying or accepting it, on Solana (SPL and Token-2022) and on Base, Ethereum, BNB Chain, Arbitrum or Polygon. Returns a verdict (low, medium, high, critical, or incomplete if the security feed is down), a one-sentence summary ready to show a user, and concrete flags. EVM: honeypot simulation, buy/sell tax, mintable, owner can change balances, hidden owner, blacklist, pausable transfers, proxy, unverified source, holder concentration, LP lock. Solana: freeze authority (the Solana honeypot pattern), mint authority, permanent delegate, transfer hook, transfer fee, non-transferable, frozen default state, malicious authorities, holder concentration. Both: DEX liquidity, pair age, 24h volume and price. Sources: GoPlus Security, DexScreener, on-chain RPC. Params: token (EVM contract address or Solana mint, required), chain (base default, solana, ethereum, bsc, arbitrum, polygon; a base58 mint is detected as Solana automatically).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/token-security
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/token-security
  • Example input: {"token":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","chain":"base"}
  • Input schema: {"type":"object","required":["token"],"properties":{"token":{"type":"string","description":"Token contract address (0x..., EVM) or Solana mint address (base58)","pattern":"^(0x[0-9a-fA-F]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$"},"chain":{"type":"string","enum":["base","solana","ethereum","bsc","arbitrum","polygon"],"default":"base"}}}
  • Example output: {"chain":"base","chain_id":8453,"token":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","verdict":"medium","summary":"Moderate risk for DEGEN: Supply can be increased; $1,055,064 DEX liquidity, listed 1003 days ago.","risk_flags":[{"severity":"medium","code":"mintable","detail":"Supply can be increased"},{"severity":"info","code":"owner_active","detail":"Owner 0x704ec5c12ca20a293c2c0b72b22619a4231f3c0d has not renounced ownership"}],"note":null,"token_info":{"name":"Degen","symbol":"DEGEN","decimals":18,"total_supply_raw":"36048175875914393891497109185","owner":"0x704ec5c12ca20a293c2c0b72b22619a4231f3c0d","owner_renounced":false,"bytecode_size":11608},"security":{"is_honeypot":false,"cannot_buy

perp-funding ($0.003 USDC)

Perpetual futures funding rates for up to 10 coins across Binance, Bybit, OKX and Hyperliquid in one call: funding rate per interval, interval hours, annualized APR, mark price, open interest in USD and next funding time per venue, plus average APR, total open interest, max/min venue and the funding spread as an arbitrage hint. Venues that are unreachable or do not list a coin are reported per venue. Params: coins (default BTC, ETH, SOL), venues (default all).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/perp-funding
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/perp-funding
  • Example input: {"coins":["BTC","ETH","SOL"]}
  • Input schema: {"type":"object","properties":{"coins":{"type":"array","items":{"type":"string"},"maxItems":10,"description":"Tickers, e.g. BTC, ETH, SOL, HYPE"},"venues":{"type":"array","items":{"type":"string","enum":["binance","bybit","okx","hyperliquid"]}}}}
  • Example output: {"markets":[{"coin":"BTC","venues":[{"venue":"binance","symbol":"BTCUSDT","funding_rate":0.00002614,"interval_hours":8,"apr_pct":2.86,"mark_price":86008.66819565,"open_interest_usd":8135786988,"next_funding_time":"2026-10-06T16:00:00.000Z"},{"venue":"bybit","symbol":"BTCUSDT","funding_rate":0.00006064,"interval_hours":8,"apr_pct":6.64,"mark_price":86005.8,"open_interest_usd":4930504638,"next_funding_time":"2026-10-06T16:00:00.000Z"}],"venues_ok":4,"avg_apr_pct":6.57,"total_open_interest_usd":19077640267,"max_apr":{"venue":"hyperliquid","apr_pct":10.95},"min_apr":{"venue":"binance","apr_pct":2.86},"spread_apr_pct":8.09,"arbitrage_hint":"Short perp on hyperliquid, long perp on binance to colle

defi-tvl ($0.003 USDC)

DeFi data from DefiLlama in four modes. protocol: TVL, 1d/7d change, category, market cap and chain breakdown of a protocol (slug or name, e.g. aave, uniswap, lido). top: largest protocols by TVL, optional category (e.g. Lending, Dexs, Liquid Staking) and chain filter. chains: chains ranked by TVL with share. dex_volume: 24h/7d/30d DEX volume and top DEXes, optionally for one chain. Params: mode (protocol, top, chains, dex_volume; default top, or protocol if protocol is given), protocol, category, chain, limit (1 to 50, default 10).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/defi-tvl
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/defi-tvl
  • Example input: {"mode":"protocol","protocol":"aave"}
  • Input schema: {"type":"object","properties":{"mode":{"type":"string","enum":["protocol","top","chains","dex_volume"]},"protocol":{"type":"string","description":"Protocol slug or name (mode protocol)"},"category":{"type":"string","description":"DefiLlama category (mode top)"},"chain":{"type":"string","description":"Chain name, e.g. Base, Ethereum (modes top, dex_volume)"},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10}}}
  • Example output: {"mode":"protocol","query":"aave","found":true,"protocols":[{"name":"Aave V3","slug":"aave-v3","symbol":"AAVE","category":"Lending","tvl_usd":18447878695,"change_1d_pct":-0.62,"change_7d_pct":0.2,"mcap_usd":null,"mcap_to_tvl":null,"chain_count":21,"top_chains":[{"chain":"Ethereum","tvl_usd":15545458426},{"chain":"Base","tvl_usd":574387153}],"url":"https://aave.com","defillama":"https://defillama.com/protocol/aave-v3"},{"name":"Aave V4","slug":"aave-v4","symbol":"AAVE","category":"Lending","tvl_usd":675107580,"change_1d_pct":-0.4,"change_7d_pct":3.07,"mcap_usd":null,"mcap_to_tvl":null,"chain_count":3,"top_chains":[{"chain":"Ethereum","tvl_usd":461813271},{"chain":"Arc","tvl_usd":183375728}],"

crypto-news ($0.003 USDC)

Latest crypto news from CoinDesk, Cointelegraph, Decrypt, The Block and Bitcoin Magazine, merged and ranked: the same story covered by several outlets is grouped and ranked higher, newer stories rank higher. Each article has title, source, URL, publish time, 300-character summary, mentioned tickers and which outlets covered it. Filter by coins (tickers) or keywords. Params: coins (e.g. ['BTC','ETH']), query (keywords), hours (lookback 1 to 168, default 48), limit (1 to 50, default 20), sources.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/crypto-news
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/crypto-news
  • Example input: {"coins":["BTC","ETH"],"limit":10}
  • Input schema: {"type":"object","properties":{"coins":{"type":"array","items":{"type":"string"},"description":"Tickers to filter by"},"query":{"type":"array","items":{"type":"string"},"description":"Keywords to filter by"},"hours":{"type":"integer","minimum":1,"maximum":168,"default":48},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20},"sources":{"type":"array","items":{"type":"string","enum":["CoinDesk","Cointelegraph","Decrypt","The Block","Bitcoin Magazine"]}}}}
  • Example output: {"count":2,"lookback_hours":48,"filters":{"query":[],"coins":["BTC"]},"articles":[{"title":"Self-styled 'Godfather' gets 6 years in prison for $37 million Meta fraud scheme","source":"CoinDesk","url":"https://www.coindesk.com/policy/2026/10/06/self-styled-crypto-godfather-gets-more-than-6-years-in-usd37-million-meta-fraud-case","published":"2026-10-06T12:31:51.000Z","summary":"Adam Iza’s sentence runs concurrently with a 15-year term imposed last month for his role in an attempted bitcoin robbery.","tickers":["BTC"],"covered_by":["CoinDesk","Decrypt"],"importance":2.46,"also":[{"source":"Decrypt","title":"Crypto 'Godfather' Gets Six Years for Hiring Sheriff's Deputies, $37M Meta Fraud","url"

search-read ($0.012 USDC)

Answer a question from the web when you have no URL yet: runs a web or news search and returns the top 1 to 5 result pages already read as clean Markdown, with title, URL and snippet. Replaces one search call plus several page reads. If links and a short summary are enough, web-search is cheaper. Charged only if at least one page was read. Params: query (required), source ('web' default or 'news'), count (1 to 5, default 3), max_chars per page (500 to 20000, default 4000).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/search-read
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/search-read
  • Example input: {"query":"x402 payment protocol","count":2,"max_chars":3000}
  • Input schema: {"type":"object","required":["query"],"properties":{"query":{"type":"string"},"source":{"type":"string","enum":["web","news"],"default":"web"},"count":{"type":"integer","minimum":1,"maximum":5,"default":3},"max_chars":{"type":"integer","minimum":500,"maximum":20000,"default":4000}}}
  • Example output: {"query":"x402 payment protocol","source":"web","summary":{"heading":"The Graph","abstract":"The Graph is an open-source, decentralized protocol that powers the indexing and querying of blockchain data. It enables developers to build scalable web3 de…","answer":null},"ok_count":1,"results":[{"rank":1,"title":"The Graph - Wikipedia","url":"https://en.wikipedia.org/wiki/The_Graph","snippet":" a platform designed to manage payments and policies for autonomous AI agents. It's built on Coinbase’s x402 protocol and Google’s agent-to-agent (A2A)","ok":true,"markdown":"[Jump to content](#bodyContent)\n\nFrom Wikipedia, the free encyclopedia\n\n![](//thumb.wikimedia.org/wikipedia/en/thumb/b/b4/Ambox_

paper-search ($0.004 USDC)

Search scientific papers across OpenAlex (250M works, all fields), arXiv (preprints) and PubMed (biomedicine) in one call. Returns title, up to 5 authors, year, venue, DOI, landing URL, open-access PDF URL, citation count and abstract (up to 600 chars), merged and deduplicated by DOI. Params: query (required), source ('all' default, 'openalex', 'arxiv', 'pubmed'), limit (1 to 25, default 10), year_from, open_access_only (default false).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/paper-search
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/paper-search
  • Example input: {"query":"retrieval augmented generation","limit":5}
  • Input schema: {"type":"object","required":["query"],"properties":{"query":{"type":"string"},"source":{"type":"string","enum":["all","openalex","arxiv","pubmed"],"default":"all"},"limit":{"type":"integer","minimum":1,"maximum":25,"default":10},"year_from":{"type":"integer","description":"Only papers published in or after this year"},"open_access_only":{"type":"boolean","default":false}}}
  • Example output: {"query":"retrieval augmented generation","count":2,"papers":[{"source":"openalex","title":"Active Retrieval Augmented Generation","authors":["Zhengbao Jiang","Frank F. Xu"],"year":2023,"venue":"Conference on Empirical Methods in Natural Language Processing (EMNLP)","doi":"10.18653/v1/2023.emnlp-main.495","url":"https://doi.org/10.18653/v1/2023.emnlp-main.495","pdf_url":"https://aclanthology.org/2023.emnlp-main.495.pdf","citations":457,"abstract":"Zhengbao Jiang, Frank Xu, Luyu Gao, Zhiqing Sun, Qian Liu, Jane Dwivedi-Yu, Yiming Yang, Jamie Callan, Graham Neubig. Proceedings of the 2023 Conference on E…"},{"source":"arxiv","title":"AR-RAG: Autoregressive Retrieval Augmentation for Image Gene

dev-search ($0.003 USDC)

Search developer sources in one call: Hacker News stories (Algolia), GitHub repositories (by stars), npm packages (with weekly downloads), PyPI (exact package lookup, PyPI has no search API) and Stack Overflow questions. Each source returns its own list; a source that is rate limited reports an error without failing the call. Params: query (required), sources (default all: hackernews, github, npm, pypi, stackoverflow), limit per source (1 to 20, default 5).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/dev-search
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/dev-search
  • Example input: {"query":"x402","limit":3}
  • Input schema: {"type":"object","required":["query"],"properties":{"query":{"type":"string"},"sources":{"type":"array","items":{"type":"string","enum":["hackernews","github","npm","pypi","stackoverflow"]}},"limit":{"type":"integer","minimum":1,"maximum":20,"default":5}}}
  • Example output: {"query":"x402","sources":{"hackernews":[{"title":"Monetization Gateway: Charge for any resource behind Cloudflare via x402","url":"https://blog.cloudflare.com/monetization-gateway/","discussion":"https://news.ycombinator.com/item?id=48746914","points":355,"comments":251,"author":"soheilpro","date":"2026-07-01"}],"npm":[{"name":"x402","version":"1.2.0","description":"x402 Payment Protocol","weekly_downloads":541785,"url":"https://www.npmjs.com/package/x402","repository":"git+https://github.com/x402-foundation/x402.git","updated":"2026-04-16"}]},"searched_at":"2026-10-06T14:30:55.176Z"}

trends-hot ($0.003 USDC)

What is trending right now: Hacker News top stories, GitHub trending repositories (stars today/week/month), most-read Wikipedia articles (any language edition), Google News top stories per country, Baidu realtime hot searches and Bilibili popular videos (China). Each item has rank, title, url and a score (points, stars, pageviews, heat, views). Params: sources (default all), limit per source (1 to 50, default 10), language (Wikipedia and Google News, default en), country (Google News, default US), since (GitHub: daily, weekly, monthly).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/trends-hot
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/trends-hot
  • Example input: {"sources":["hackernews","github","wikipedia"],"limit":5}
  • Input schema: {"type":"object","properties":{"sources":{"type":"array","items":{"type":"string","enum":["hackernews","github","wikipedia","google_news","baidu","bilibili"]}},"limit":{"type":"integer","minimum":1,"maximum":50,"default":10},"language":{"type":"string","default":"en"},"country":{"type":"string","default":"US"},"since":{"type":"string","enum":["daily","weekly","monthly"],"default":"daily"}}}
  • Example output: {"sources":{"hackernews":[{"rank":1,"title":"Mistral Large 4","url":"https://docs.mistral.ai/models/mistral-large-4-0","score":436,"extra":{"comments":208,"discussion":"https://news.ycombinator.com/item?id=49977979"}}],"baidu":[{"rank":1,"title":"下次回来就是2027年了","url":"https://www.baidu.com/s?wd=%E4%B8%8B%E6%AC%A1%E5%9B%9E%E6%9D%A5%E5%B0%B1%E6%98%AF2027%E5%B9%B4%E4%BA%86&sa=fyb_news&rsv_dl=fyb_news","score":7808307,"extra":{"description":"国庆假期即将结束,这次假期最后离家,下一趟再回家,就是2027年了。"}}],"github":[{"rank":1,"title":"tester-army/e2e","url":"https://github.com/tester-army/e2e","score":1720,"extra":{"description":"Next generation e2e testing framework for web and mobile apps.","language":"TypeScript","stars

cve-lookup ($0.003 USDC)

Look up a vulnerability by CVE or GHSA id (NVD: description, CVSS score and vector, CWE, CISA known-exploited flag; OSV: affected packages and fixed versions) or check a package version for known vulnerabilities via OSV.dev (npm, PyPI, Maven, Go, crates.io, RubyGems, NuGet, Packagist, Debian ...). Params: cve_id, or package + ecosystem (+ version, recommended), limit (default 20).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/cve-lookup
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/cve-lookup
  • Example input: {"cve_id":"CVE-2021-44228"}
  • Input schema: {"type":"object","properties":{"cve_id":{"type":"string","description":"CVE-2021-44228 or GHSA-xxxx-xxxx-xxxx"},"package":{"type":"string"},"ecosystem":{"type":"string","description":"OSV ecosystem name, case sensitive: npm, PyPI, Maven, Go, crates.io, RubyGems, NuGet, Packagist"},"version":{"type":"string"},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20}}}
  • Example output: {"query":{"package":"lodash","ecosystem":"npm","version":"4.17.15"},"count":6,"vulnerable":true,"vulnerabilities":[{"id":"GHSA-29mw-wpgm-hmr9","aliases":["CVE-2020-28500"],"summary":"Regular Expression Denial of Service (ReDoS) in lodash","severity":"MODERATE","cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L","cwe":["CWE-1333","CWE-400"],"published":"2022-01-06","affected":[{"ecosystem":"npm","package":"lodash","ranges":[{"introduced":"4.0.0","fixed":"4.17.21","last_affected":null}]},{"ecosystem":"npm","package":"lodash-es","ranges":[{"introduced":"4.0.0","fixed":"4.17.21","last_affected":null}]}],"references":["https://nvd.nist.gov/vuln/detail/CVE-2020-28500","https://github.com/

domain-check ($0.003 USDC)

Check a domain in one call: registration via RDAP (registered or likely available, registrar, created and expiry dates, status, nameservers; DNS fallback for TLDs without RDAP), DNS (A, NS, MX, CAA, DNSSEC) and email security (SPF, DMARC policy, DKIM on common selectors) with a 0 to 100 score, grade and findings. Params: domain (required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/domain-check
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/domain-check
  • Example input: {"domain":"github.com"}
  • Input schema: {"type":"object","required":["domain"],"properties":{"domain":{"type":"string","description":"Domain name, e.g. example.com"}}}
  • Example output: {"domain":"github.com","registration":{"registered":true,"likely_available":false,"method":"rdap","registrar":"MarkMonitor Inc.","created":"2007-10-09","expires":"2028-10-09","updated":"2026-09-07","status":["client delete prohibited","client transfer prohibited"],"nameservers":["dns1.p08.nsone.net","dns2.p08.nsone.net"]},"dns":{"a":["140.82.121.3"],"nameservers":["dns1.p08.nsone.net","dns2.p08.nsone.net"],"mx":[{"priority":0,"exchange":"github-com.mail.protection.outlook.com"}],"caa":[{"critical":0,"issue":"digicert.com"},{"critical":0,"issue":"globalsign.com"}],"dnssec":false},"email_security":{"spf":"v=spf1 ip4:192.30.252.0/22 include:spf.protection.outlook.com include:_netblocks.google.c

vin-decode ($0.002 USDC)

Decode a 17-character vehicle identification number with NHTSA vPIC: make, model, model year, trim, body, doors, engine (cylinders, displacement, hp, fuel, electrification), drive, transmission, manufacturer and plant. Validates format and the check digit (mandatory for North American VINs). Best coverage for vehicles sold in the US. Params: vin (required).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/vin-decode
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/vin-decode
  • Example input: {"vin":"1HGCM82633A004352"}
  • Input schema: {"type":"object","required":["vin"],"properties":{"vin":{"type":"string","description":"17-character VIN"}}}
  • Example output: {"vin":"1HGCM82633A004352","valid_format":true,"check_digit_valid":true,"check_digit_applies":true,"make":"HONDA","model":"Accord","model_year":2003,"trim":"EX-V6","series":null,"body_class":"Coupe","vehicle_type":"PASSENGER CAR","doors":2,"engine":{"cylinders":6,"displacement_l":3,"hp":240,"model":"J30A4","fuel":"Gasoline","electrification":null},"drive":null,"transmission":"Automatic","manufacturer":"AMERICAN HONDA MOTOR CO., INC.","plant":{"city":"MARYSVILLE","state":"OHIO","country":"UNITED STATES (USA)"},"gvwr":"Class 1C: 4,001 - 5,000 lb (1,814 - 2,268 kg)","error_code":"0","errors":null,"source":"NHTSA vPIC","note":null}

postal-code ($0.002 USDC)

Postal codes for 70 countries (GeoNames via zippopotam.us): postal code to place names, state and coordinates, or city + state to all its postal codes. For GB, CA and IE only the outward part (e.g. SW1A) is resolved. Params: country (ISO2, required), postal_code, or city + state (state abbreviation, e.g. CA, BY).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/postal-code
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/postal-code
  • Example input: {"country":"DE","postal_code":"80331"}
  • Input schema: {"type":"object","required":["country"],"properties":{"country":{"type":"string","description":"ISO 3166-1 alpha-2"},"postal_code":{"type":"string"},"city":{"type":"string"},"state":{"type":"string","description":"State abbreviation, required with city"}}}
  • Example output: {"country":"DE","postal_code":"80331","found":true,"places":[{"place":"München","state":"Bayern","state_code":"BY","lat":48.1345,"lon":11.571}],"source":"zippopotam.us (GeoNames)"}

airport-status ($0.002 USDC)

Live US airport disruptions from the FAA National Airspace System status: ground stops, ground delay programs (average and max delay), arrival and departure delays with trend, and closures. Pass airports (IATA like JFK or ICAO like KJFK) for a per-airport status (normal, delays, disrupted; general-aviation-only closures are listed as notices) or omit them to get all current events. US airports only. Params: airports (optional list).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/airport-status
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/airport-status
  • Example input: {"airports":["JFK","SFO","DEN"]}
  • Input schema: {"type":"object","properties":{"airports":{"type":"array","items":{"type":"string"},"description":"US airport codes, e.g. ['JFK','SFO']"}}}
  • Example output: {"airports":[{"airport":"JFK","status":"normal","events":[],"notices":[]},{"airport":"DEN","status":"disrupted","events":[{"airport":"DEN","type":"ground_stop","reason":"runway construction","end_time":"9:15 am MDT"}],"notices":[]}],"faa_updated":"Tue Oct 6 14:30:33 2026 GMT","coverage":"US airports in the FAA National Airspace System","source":"FAA NAS Status"}

satellite-image ($0.008 USDC)

Daily true-color satellite image of any area from NASA GIBS (MODIS Terra/Aqua or VIIRS, about 250 m per pixel, coastlines overlaid) as base64 JPEG. Useful to see clouds, smoke, snow, floods or fires on a given day. Params: bbox [min_lat, min_lon, max_lat, max_lon] or lat + lon + radius_km (5 to 500, default 50), date (YYYY-MM-DD, default yesterday), layer (modis_terra default, modis_aqua, viirs_snpp, viirs_noaa20), width (64 to 1024, default 512), height (default from aspect).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/satellite-image
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/satellite-image
  • Example input: {"lat":47.37,"lon":8.54,"radius_km":60,"width":512}
  • Input schema: {"type":"object","properties":{"bbox":{"type":"array","items":{"type":"number"},"minItems":4,"maxItems":4},"lat":{"type":"number"},"lon":{"type":"number"},"radius_km":{"type":"number","minimum":5,"maximum":500,"default":50},"date":{"type":"string"},"layer":{"type":"string","enum":["modis_terra","modis_aqua","viirs_snpp","viirs_noaa20"],"default":"modis_terra"},"width":{"type":"integer","minimum":64,"maximum":1024,"default":512},"height":{"type":"integer","minimum":64,"maximum":1024}}}
  • Example output: {"image_base64":"/9j/4AAQSkZJRgABAQAAAQAB…","mime_type":"image/jpeg","width":256,"height":173,"bbox":{"min_lat":46.8295,"min_lon":7.7419,"max_lat":47.9105,"max_lon":9.3381},"date":"2026-10-05","layer":"modis_terra","layer_id":"MODIS_Terra_CorrectedReflectance_TrueColor","size_bytes":14495,"attribution":"NASA EOSDIS GIBS / Worldview","note":"Daily true-color mosaic; clouds and swath gaps are normal. Resolution about 250 m per pixel at best."}

chart-render ($0.005 USDC)

Render a chart to PNG from JSON: bar, line, pie, doughnut, scatter, radar, polarArea or bubble. Pass a full Chart.js config (config) or the shortcut type + labels + datasets [{label, data}] + title. Rendered with Chart.js in headless Chromium, no external requests. Params: config or type/labels/datasets, title, width and height (100 to 2000 px, default 800x500), background (CSS color, default white). Returns image_base64 (PNG).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/chart-render
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/chart-render
  • Example input: {"type":"bar","labels":["Q1","Q2","Q3","Q4"],"datasets":[{"label":"Revenue","data":[12,19,14,23]}],"title":"Revenue 2026 (kUSD)"}
  • Input schema: {"type":"object","properties":{"config":{"type":"object","description":"Full Chart.js configuration {type, data, options}"},"type":{"type":"string","enum":["bar","line","pie","doughnut","scatter","radar","polarArea","bubble"]},"labels":{"type":"array","items":{"type":"string"}},"datasets":{"type":"array","items":{"type":"object","properties":{"label":{"type":"string"},"data":{"type":"array"}}}},"title":{"type":"string"},"width":{"type":"integer","minimum":100,"maximum":2000,"default":800},"height":{"type":"integer","minimum":100,"maximum":2000,"default":500},"background":{"type":"string","default":"white"}}}
  • Example output: {"format":"png","mime_type":"image/png","width":800,"height":450,"size_bytes":9732,"image_base64":"iVBORw0KGgoAAAANSUhEUgAAAyAAAAHC…","chart_type":"bar"}

diagram-render ($0.006 USDC)

Render Mermaid diagram code to SVG and/or PNG: flowchart, sequence, class, state, ER, gantt, pie, mindmap, timeline and more. Invalid syntax returns HTTP 400 with the Mermaid parse error (not charged), so an agent can fix and retry. Params: code (Mermaid source, required), format (svg default, png or both), theme (default, dark, neutral, forest, base), width (200 to 4000, default 1200), background.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/diagram-render
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/diagram-render
  • Example input: {"code":"flowchart LR\n A[Agent] -->|HTTP 402| B(agentsvc.io)\n B --> C{Paid?}\n C -->|yes| D[JSON result]","format":"svg"}
  • Input schema: {"type":"object","required":["code"],"properties":{"code":{"type":"string","description":"Mermaid diagram source"},"format":{"type":"string","enum":["svg","png","both"],"default":"svg"},"theme":{"type":"string","enum":["default","dark","neutral","forest","base"],"default":"default"},"width":{"type":"integer","minimum":200,"maximum":4000,"default":1200},"background":{"type":"string"}}}
  • Example output: {"diagram_type":"flowchart","theme":"default","svg":"<svg id=\"dccuoprioa\" width=\"100%\" xmlns=\"http://www.w3.org/2000/svg\" class=\"flowchart\" style=\"max-width: 948.234375px;\" …","svg_bytes":13690,"format":"svg"}

doc-convert ($0.006 USDC)

Convert documents between formats with pandoc: Markdown, HTML, DOCX, ODT, EPUB, RST, LaTeX, RTF, plain text and PDF. Input as text (content), file (file_base64, max 10 MB: docx, odt, epub, rtf) or url. Input format is detected automatically or set with from. Text outputs come back as content, binary outputs (docx, odt, epub, pdf) as file_base64. Local file includes and remote images are not loaded. Params: to (required), content or file_base64 or url, from, title.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/doc-convert
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/doc-convert
  • Example input: {"content":"# Quarterly Report\n\n| Quarter | Revenue |\n|---|---|\n| Q1 | 12 |","to":"docx"}
  • Input schema: {"type":"object","required":["to"],"properties":{"to":{"type":"string","enum":["markdown","html","docx","odt","epub","rst","latex","plain","rtf","pdf"]},"content":{"type":"string","description":"Document text (markdown, html, rst, latex, org, csv ...)"},"file_base64":{"type":"string","description":"Binary document (docx, odt, epub, rtf), base64"},"url":{"type":"string","description":"URL of the document (max 10 MB)"},"from":{"type":"string","description":"Input format, e.g. markdown, html, docx, rst, latex; detected if omitted"},"title":{"type":"string"}}}
  • Example output: {"from":"markdown","to":"html","mime_type":"text/html","size_bytes":3872,"content":"<!DOCTYPE html>\n<html xmlns=\"http://www.w3.org/1999/xhtml\" lang=\"\" xml:lang=\"\">\n<head>\n <meta charset=\"utf-8\" />\n <meta name=\"generator\" content=\"pandoc\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=yes\" />\n <title>document</title>\n <style>\n html…","source":"content"}

doc-parse ($0.006 USDC)

Turn a document into clean, agent-ready Markdown with metadata: DOCX, ODT, EPUB, RTF, HTML, RST, LaTeX and more. Returns title, author, date, language, word count, heading outline, table and image counts and the Markdown (headings and tables preserved). For PDF use pdf-extract; PPTX and XLSX are not supported. Params: file_base64 or url or content (one required), from (optional), max_chars (1000 to 200000, default 50000).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/doc-parse
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/doc-parse
  • Example input: {"url":"https://agentsvc.io/docs","max_chars":5000}
  • Input schema: {"type":"object","properties":{"file_base64":{"type":"string","description":"Document as base64 (max 10 MB)"},"url":{"type":"string"},"content":{"type":"string"},"from":{"type":"string"},"max_chars":{"type":"integer","minimum":1000,"maximum":200000,"default":50000}}}
  • Example output: {"format":"html","source":"https://agentsvc.io/docs","title":"Docs: how agents pay per call with x402 · agentsvc.io","author":null,"date":null,"language":"en","word_count":8068,"characters":2000,"heading_count":8,"table_count":0,"image_count":0,"outline":[{"level":1,"text":"Pay per call. Nothing else to set up."},{"level":2,"text":"Free trial, no wallet"},{"level":1,"text":"GET works too and uses the example input:"}],"markdown":"<div hidden=\"\">\n\n</div>\n\n<div style=\"border-bottom:1px solid var(--border);background-color:rgba(10, 14, 26, 0.92);backdrop-filter:blur(12px);position:sticky;top:0;z-index:50\">\n\n<div class=\"container\" style=\"display:flex;align-items:center;justify-conte

tech-stack ($0.005 USDC)

Detect the technologies a website uses (CMS, frameworks, analytics, CDN, web server, ecommerce, tag managers ...) from its HTML, headers, cookies, meta tags and script URLs, matched against 7,600+ open webappanalyzer fingerprints. Returns name, categories, version where visible, confidence and evidence, plus a by-category summary. Params: url (required), min_confidence (0 to 100, default 50).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/tech-stack
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/tech-stack
  • Example input: {"url":"https://wordpress.org"}
  • Input schema: {"type":"object","required":["url"],"properties":{"url":{"type":"string"},"min_confidence":{"type":"integer","minimum":0,"maximum":100,"default":50}}}
  • Example output: {"url":"https://wordpress.org/","status":200,"technology_count":9,"technologies":[{"name":"Google Tag Manager","categories":["Tag managers"],"version":null,"confidence":100,"website":"https://www.google.com/tagmanager","evidence":["html"]},{"name":"Gutenberg","categories":["WordPress plugins","Editors"],"version":null,"confidence":100,"website":"https://github.com/WordPress/gutenberg","evidence":["script https://wordpress.org/wp-content/plugins/gutenberg/build/modules/block-library/n"]},{"name":"HSTS","categories":["Security"],"version":null,"confidence":100,"website":"https://www.rfc-editor.org/rfc/rfc6797#section-6.1","evidence":["header Strict-Transport-Security"]}],"by_category":{"Tag ma

text-embed ($0.002 USDC)

Sentence embeddings (all-MiniLM-L6-v2, 384 dimensions, L2-normalized, multilingual input works best in English) for semantic search, clustering and deduplication, or rerank mode: pass query + documents to get documents sorted by cosine similarity. Runs locally, texts are not stored. Params: texts (1 to 32 strings, max 2000 chars each) for embed mode, or query + documents (up to 64) and top_k for rerank mode.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/text-embed
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/text-embed
  • Example input: {"query":"how do AI agents pay for APIs?","documents":["x402 lets agents pay per call with USDC","The cat sat on the mat","Weather in Berlin is sunny"]}
  • Input schema: {"type":"object","properties":{"texts":{"type":"array","items":{"type":"string"},"maxItems":32},"query":{"type":"string"},"documents":{"type":"array","items":{"type":"string"},"maxItems":64},"top_k":{"type":"integer","minimum":1,"maximum":64},"include_embeddings":{"type":"boolean","default":false}}}
  • Example output: {"mode":"rerank","model":{"name":"sentence-transformers/all-MiniLM-L6-v2","quantization":"int8","dimensions":384,"max_tokens":256,"normalized":true,"similarity":"cosine (dot product of normalized vectors)"},"query":"how do AI agents pay for APIs?","results":[{"index":0,"score":0.495209,"document":"x402 lets agents pay per call with USDC"},{"index":1,"score":0.005939,"document":"The cat sat on the mat"},{"index":2,"score":-0.050145,"document":"Weather in Berlin is sunny"}]}

tts ($0.010 USDC)

Convert text to natural speech audio (MP3, WAV or OGG) with neural Piper voices: en-female, en-male (US English) and de-male (German); all voices public domain or CC0, so the audio can be used commercially. Params: text (required, max 2000 characters), voice (default en-female, or picked from language), language (en or de), speed (0.5 to 2, default 1), format (mp3 default, wav, ogg). Returns audio_base64 and duration.

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/tts
  • Free sample with the example input (1/day per IP): POST https://agentsvc.io/api/v1/try/tts
  • Example input: {"text":"Hello from agentsvc. Your report is ready.","voice":"en-female"}
  • Input schema: {"type":"object","required":["text"],"properties":{"text":{"type":"string"},"voice":{"type":"string","enum":["en-female","en-male","de-male"]},"language":{"type":"string","enum":["en","de"]},"speed":{"type":"number","minimum":0.5,"maximum":2,"default":1},"format":{"type":"string","enum":["mp3","wav","ogg"],"default":"mp3"}}}
  • Example output: {"format":"mp3","mime_type":"audio/mpeg","duration_seconds":2.93,"size_bytes":23658,"voice":"en-female","language":"en-US","gender":"female","voice_license":"public domain","characters":42,"audio_base64":"SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2…"}

discussion-search ($0.003 USDC)

Find out what people say about a topic or a specific link. Searches Hacker News (stories with their top-ranked comments), Bluesky posts and Lemmy threads (with top comments) in one call, by keywords or by URL (finds every thread that shared that link, useful for product launches, articles and competitors). Each thread has title, text snippet, linked URL, discussion URL, author, points, comment count, date and up to 5 top comments; a summary gives total threads, points, comments and the most discussed thread. A source that is down reports an error without failing the call. Reddit and X are not included. Params: query or url (one required), sources (default all: hackernews, bluesky, lemmy), sort ('top' default or 'recent'), days (lookback 1 to 3650, optional), limit per source (1 to 20, default 5), comments per thread (0 to 5, default 2).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/discussion-search
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/discussion-search
  • Example input: {"query":"x402","limit":3,"comments":2}
  • Input schema: {"type":"object","properties":{"query":{"type":"string","description":"Keywords, e.g. 'x402' or 'rust async'. Required unless url is given."},"url":{"type":"string","description":"Find discussions that shared this link, e.g. https://blog.cloudflare.com/monetization-gateway/"},"sources":{"type":"array","items":{"type":"string","enum":["hackernews","bluesky","lemmy"]}},"sort":{"type":"string","enum":["top","recent"],"default":"top"},"days":{"type":"integer","minimum":1,"maximum":3650,"description":"Only threads from the last N days"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":5},"comments":{"type":"integer","minimum":0,"maximum":5,"default":2}}}
  • Example output: {"query":null,"url":"https://blog.cloudflare.com/monetization-gateway/","sort":"top","days":null,"summary":{"threads":3,"total_points":486,"total_comments":259,"most_discussed":{"source":"hackernews","title":"Monetization Gateway: Charge for any resource behind Cloudflare via x402","discussion_url":"https://news.ycombinator.com/item?id=48746914","comments":251}},"sources":{"hackernews":[{"source":"hackernews","title":"Monetization Gateway: Charge for any resource behind Cloudflare via x402","text":null,"url":"https://blog.cloudflare.com/monetization-gateway/","discussion_url":"https://news.ycombinator.com/item?id=48746914","author":"soheilpro","community":null,"points":355,"comments":251,"cr

token-verdict ($0.010 USDC)

Instant buy-or-avoid verdict for a token: send a contract address (Base, Ethereum, BSC, Arbitrum, Polygon) or a Solana mint, get a grade A to F, a label (SAFE, CAUTION, RISKY, DANGER), a 0 to 100 score and a one-line reason, built from real checks: honeypot sell simulation, buy and sell tax, mint, freeze and owner powers, holder concentration, DEX liquidity and token age. Young or illiquid tokens can never grade above C. Also returns key facts and a share_text. Params: token (address; tokenAddress also accepted), chain (default base; solana auto-detected).

  • Endpoint: POST https://agentsvc.io/api/v1/proxy/token-verdict
  • Free sample with the example input (3/day per IP): POST https://agentsvc.io/api/v1/try/token-verdict
  • Example input: {"token":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","chain":"base"}
  • Input schema: {"type":"object","properties":{"token":{"type":"string","description":"Token contract address (0x...) or Solana mint address. Alias: tokenAddress"},"chain":{"type":"string","enum":["base","ethereum","bsc","arbitrum","polygon","solana"],"default":"base"}}}
  • Example output: {"token":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","chain":"base","name":"Degen","symbol":"DEGEN","grade":"C","label":"CAUTION","score":69,"one_liner":"Caution with DEGEN: supply can be increased, $1M liquidity, 1004 days old.","reasons":["Supply can be increased"],"key_facts":["Liquidity $1M across 30 DEX pair(s), 24h volume $68K","First pair 1004 days old","1,182,465 holders, top 10 hold 61.9%","Sell simulation passed","Tax 0% buy / 0% sell"],"checks":{"honeypot":false,"buy_tax":0,"sell_tax":0,"mintable":true,"freezable":null,"owner_renounced":false,"liquidity_usd":1016493,"age_days":1003.8,"holder_count":1182465,"top10_holders_pct":61.9,"lp_locked_pct":0},"price_usd":0.001011,"market_c

4. Choosing a service

  • Read a web page as text for an LLM: web-scrape (Markdown, cheapest for content) or webpage-reader (rendered text with a real browser). Several pages: web-read-batch (up to 5 URLs), site-crawl (whole site), site-map (list a site's URLs). Search and read in one call: search-read.
  • Visual proof of a page: screenshot. Archive or invoice: html-to-pdf.
  • Extract text from files: pdf-extract (PDF), ocr (images), doc-parse (DOCX, ODT, EPUB, RTF, HTML to Markdown). Convert formats: doc-convert.
  • Facts and search: web-search (summary + links), news-search (recent articles), rss-fetch (any feed), paper-search (scientific papers), dev-search (GitHub, npm, PyPI, Stack Overflow, HN).
  • What people say about a topic or a link: discussion-search (Hacker News, Bluesky, Lemmy with top comments). What is trending now: trends-hot.
  • Crypto and DeFi: crypto-prices, crypto-news, token-verdict (grade A to F before buying a token), token-security (full risk report), defi-yields, defi-tvl, aave-v3, aave-v4, perp-funding, hyperliquid, prediction-markets, gas-price, evm-balance, erc20-info, evm-tx.
  • Markets and economy: stock-prices, sec-filings (US companies), exchange-rates, macro-data (World Bank).
  • Places and time: weather, timezone, geocode, postal-code, holidays, airport-status (US), satellite-image.
  • Companies and compliance: company-lookup (LEI), sanctions-screen (OFAC, EU, UN), vat-validate, iban-validate.
  • Validation and infrastructure: email-validate (format, MX), email-verify (mailbox exists via SMTP), phone-validate, dns-lookup, ssl-check, whois, domain-check, url-status, ip-lookup, tech-stack, cve-lookup, useragent-parse.
  • Lookups: vin-decode (vehicles), product-lookup (EAN/UPC barcodes).
  • Text: translate, language-detect, text-embed (embeddings), tts (speech).
  • Generate: qr-code, barcode, image-resize, chart-render (PNG charts), diagram-render (Mermaid).

5. Links