# kepler-ops x402 tools > Pay-per-call utility and data API for AI agents. Eight routes, $0.001-$0.02 USDC on Base, > settled via x402 (EIP-3009 transferWithAuthorization). No account, no API key - wallet is auth. ## How to pay - Request any /v1/* route unpaid; it answers HTTP 402 with payment requirements (accepts: USDC on base, payTo in the challenge). - Sign the payment per the x402 v1 spec and resend the request with the X-PAYMENT header. - v2 clients: payment requirements also ship in the PAYMENT-REQUIRED header with a bazaar discovery extension. ## Routes - POST /v1/hash ($0.001 USDC): Hash or HMAC a string: sha256, sha512, sha1, md5, sha3-256, blake2b512. Input {algorithm, data, hmacKey?} -> {algorithm, digest_hex}. - POST /v1/encode ($0.001 USDC): Encode/decode: base64, base64url, hex, url-component. Input {op: encode|decode, format: base64|base64url|hex|url, data} -> {result}. - POST /v1/jwt ($0.001 USDC): Decode a JWT without verification: header, payload, expiry/iat times, seconds-to-expiry. Input {token}. - GET /v1/price ($0.002 USDC): Live crypto prices from CoinGecko. Query ?ids=bitcoin,ethereum,solana&vs=usd. 60s cache. - POST /v1/fetch ($0.005 USDC): Fetch a public URL and return title + cleaned readable text (scripts/styles/nav stripped). Input {url, maxChars?}. - POST /v1/search ($0.01 USDC): Live web search: ranked results with title, url, domain and query-relevant excerpts. Input {query, limit?}. - POST /v1/no-kyc-rails ($0.02 USDC): Tested database of 40+ no-KYC online earning rails (Sept 2026). Every rail personally signed up, worked and taken to its withdrawal step. Graded A (paid us, no approval) to D (dead end, exact wall). Input {grade?: A|B|C|D, category?, payout?, query?, limit?} -> matching rails with payout path, gate, verdict and test evidence. Free sample at GET /v1/no-kyc-rails/sample. - POST /v1/rail-check ($0.01 USDC): Live status check of no-KYC earning rails: fetches each rail site server-side and reports reachability, HTTP status, latency and KYC-language signals on the page, matched to our tested A-D dataset. Input {rail?: } or {all: true} -> per-rail {url, reachable, http_status, ms, kyc_signals[], grade, verdict}. Checked live at request time. ## Docs and discovery - [x402 manifest](/.well-known/x402): machine-readable route catalog and payment terms - [OpenAPI](/openapi.json): full request/response schemas - [Service metadata](/.well-known/x402-service.json): provider, payment address, facilitator - [Free dataset sample](/v1/no-kyc-rails/sample): no payment required - [Health](/health): liveness and request stats ## Contact - pn@mail.instinct.com