{"uid":"cap_QReAgUFlrxsJzxJkn4kO-","slug":"base-reads-x402-preflight-check-452a9d83","name":"Base Reads x402 Preflight Check","description":"Pay-per-call read API for Base over x402 v2. Deterministic data, no advice.","url":"https://base-reads-api.rafliyaputra.deno.net/x402/preflight?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Full https URL of the x402 endpoint to check before paying it"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"facts":{"bazaar":{"listed":true,"available":true,"payer_trend":[{"calls30d":17,"snapshot":"2026-10-15","payers30d":4}],"listed_payTo":["0x742d35cc6634c0532925a3b844bc454e4438f44e"],"snapshot_date":"2026-10-15","last_called_at":"2026-10-14T12:00:00Z","host_listing_count":3,"payout_wallet_reuse":{}},"schema":"prepay-check/v1","target":"https://x402.org/protected","challenge":{"valid":true,"accepts":[],"problems":[]},"checked_at":"2026-10-15T00:00:00Z","disclaimer":"Deterministic observations only. Not advice to pay, buy or sell.","reachability":{"reachable":true,"latency_ms":180,"http_status":402}},"signature":{"alg":"Ed25519","key_id":"72cb9da845cc948f","value_b64":"base64 Ed25519 signature over the canonical facts","signed_over":"canonical JSON of facts (sorted keys, no whitespace)","public_key_b64":"C3wmUnTtL12LUfkfDCR0bIeUXjbfq+hde5OeQC+dUy0="}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_P06BPwJ6iN7RNXz6XWKjX","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Performs a preflight check on an x402-protected endpoint to verify its reachability, listing status, and payment challenge validity before committing to a pay-per-call transaction.","exampleAgentPrompt":"Before we pay for it, can you do a preflight check on the x402 endpoint at https://some-api.example.com/data to verify it's reachable, its payment challenge is valid, and see how many payers it's had in the last 30 days?","exampleUseCases":[{"title":"Pre-payment safety check for AI agent","prompt":"Before my agent pays for that x402 API at https://base-reads-api.rafliyaputra.deno.net/balance, run a preflight check to confirm it's reachable, the challenge is valid, and it's actually listed on bazaar."},{"title":"Vetting an unknown pay-per-call endpoint","prompt":"I found an x402 endpoint at https://unknown-api.example.com/prices — can you check if it's reachable, see what the latency is, and tell me whether the payout wallet has been reused across multiple listings before I spend any money?"},{"title":"Monitoring x402 API health and usage trends","prompt":"Check the x402 preflight for https://data-feed-api.example.com/crypto and tell me the last time it was called, how many unique payers it had in the last 30 days, and whether the payment challenge is currently valid."}],"resultDescription":"Returns a signed JSON object containing: reachability status and latency (ms), HTTP status code, bazaar listing details (listed, available, payer trend over 30 days, last called timestamp, host listing count, payout wallet reuse info), payment challenge validity with any problems flagged, and an Ed25519 signature over the canonical facts for tamper-evidence. Includes a disclaimer that all data is deterministic observation only.","failureModes":["Target URL is unreachable: reachability.reachable=false with no latency data","x402 challenge is invalid or malformed: challenge.valid=false with problems array populated","Endpoint not listed on bazaar: bazaar.listed=false","Missing required 'url' queryParam: 400 bad request","Non-x402 endpoint targeted (no 402 response): challenge may be empty or invalid","Network timeout reaching target endpoint: may return partial facts or error"],"whenToPreferThis":"Use this endpoint when an AI agent or user needs to safely vet an x402 pay-per-call URL before committing funds — especially to check reachability, challenge validity, bazaar listing status, and historical payer activity. Prefer this over directly calling a paid endpoint when trust in the endpoint is unknown, when payout wallet reuse is a concern, or when you need a cryptographically signed, tamper-evident report on the endpoint's current state.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-11-01T06:47:26.492Z","isFirstParty":false,"canonicalSlug":"base-reads-x402-preflight-check-452a9d83"}