{"uid":"cap_Dd539VqQZcuTO17_ma9pE","slug":"x402-doctor-endpoint-diagnostics-75be1301","name":"x402 Doctor – Endpoint Diagnostics","description":"Why is my x402 endpoint broken? Diagnose and debug an x402 payment endpoint (or MCP server) when payments fail: checks the 402 challenge, accepts[] (network, payTo, amount, asset), resource URL, Solana settlement readiness, which wallets and agents can pay, Bazaar/OpenAPI discovery and the browser paywall. Returns every check with a fix hint. Read-only: never pays.","url":"https://x402-doctor.onrender.com/api/v1/diagnose?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"],"type":"string"},"queryParams":{"type":"object","required":["url"],"properties":{"url":{"type":"string","description":"The x402 endpoint to diagnose (public http(s) URL)."},"method":{"enum":["GET","POST"],"type":"string","description":"HTTP method of the endpoint. Default: try GET, then POST."}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","required":["url","overall","checks"],"properties":{"url":{"type":"string"},"checks":{"type":"array","items":{"type":"object","required":["id","status","message"],"properties":{"id":{"type":"string"},"hint":{"type":"string"},"group":{"enum":["challenge","accepts","resource","settlement","wallets","discovery","browser"],"type":"string"},"status":{"enum":["pass","warn","fail","info","skip"],"type":"string"},"message":{"type":"string"}}}},"method":{"enum":["GET","POST",null],"type":["string","null"]},"overall":{"enum":["pass","warn","fail"],"type":"string"},"wallets":{"type":"array","items":{"type":"object","properties":{"no":{"type":"array","items":{"type":"object","properties":{"reason":{"type":"string"},"network":{"type":"string"}}}},"yes":{"type":"array","items":{"type":"string"}},"agent":{"type":"boolean"},"wallet":{"type":"string"}}},"description":"Which wallets can pay: per wallet, the networks where payment works (yes) and where it fails, with the reason (no)."},"challenge":{"type":["object","null"]}}}}}}},"responseSchema":{"type":"json","example":{"url":"https://ichimoku-signal.onrender.com/signal/BTC-USDT","checks":[{"id":"returns-402","group":"challenge","status":"pass","message":"Endpoint returns 402 Payment Required for GET."}],"method":"GET","overall":"pass","challenge":null}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.01","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.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ratAvFzlRz4EyRT5vu2sm","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Diagnoses an x402 payment-gated endpoint by running a full suite of checks covering challenge format, accepted payment methods, resource URL, Solana settlement readiness, Bazaar/OpenAPI discoverability, and browser paywall behavior, returning each check's pass/warn/fail status with a fix hint.","exampleAgentPrompt":"Can you run a full x402 diagnostic on https://ichimoku-signal.onrender.com/signal/BTC-USDT using GET — I want to see every check with its pass/fail status and any hints for fixing issues?","exampleUseCases":[{"title":"Pre-launch x402 endpoint audit","prompt":"Before I go live, can you diagnose my x402 endpoint at https://my-api.example.com/data to check that the 402 challenge format is correct, the accepts field is right, and it's discoverable on Bazaar?"},{"title":"Debug failing Solana settlement","prompt":"My x402 endpoint at https://payments.myapp.io/report keeps failing for users trying to settle on Solana — can you run a diagnostic on it with a GET and tell me exactly what's wrong and how to fix it?"},{"title":"Verify browser paywall compatibility","prompt":"I want to make sure https://api.newssite.io/premium/article responds correctly as a browser paywall under x402 — can you check all the challenge and browser paywall checks and show me what passes or needs fixing?"}],"resultDescription":"A JSON object containing the diagnosed endpoint URL, the HTTP method used, an overall status (pass/warn/fail), the raw 402 challenge object if present, and an array of individual check results each with an id, group (challenge/accepts/resource/settlement/discovery/browser), status (pass/warn/fail/skip), a human-readable message, and an optional fix hint.","failureModes":["URL is not publicly reachable — endpoint returns a network error or times out","Target URL does not return a 402 status — check marked as fail with hint to add x402 payment gating","Malformed or missing query parameter 'url' — request rejected with validation error","Endpoint behind authentication or firewall — diagnostic cannot reach it","Transient server error on x402-doctor.onrender.com — retry recommended"],"whenToPreferThis":"Use this endpoint when you need a comprehensive, multi-dimensional audit of an x402-gated URL covering all aspects of the protocol (challenge format, accepts[], settlement, discovery, browser paywall) in a single call. It is purpose-built for the x402 protocol and returns actionable fix hints per check, making it more useful than a generic HTTP probe or a payment-execution endpoint when the goal is debugging or pre-launch validation.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-12T21:40:48.584Z","isFirstParty":false,"canonicalSlug":"x402-doctor-endpoint-diagnostics-75be1301"}