{"openapi":"3.1.0","info":{"title":"GEDX402 Firecrawl","version":"6","description":"Firecrawl v2 on x402 — scrape, search, crawl, map, batch, extract, agent, parse, interact, monitor at /v1/firecrawl/*.","contact":{"email":"jvalamis@gmail.com","url":"https://browser.gedx402.com"},"x-guidance":"Pay per request with USDC on Base via x402 v2 (Coinbase CDP facilitator). Choose any listed network in the 402 accepts[] response. 1 routes on this shard (competitive heroes default; ?full=1 for all). Full catalog: GET https://gedx402.com/v1/models Start here: POST /v1/firecrawl/scrape","x-service":{"serviceName":"GEDX402 Firecrawl","tags":["firecrawl","scrape","crawl","search","extract","browser","usdc","multi-chain"],"iconUrl":"https://browser.gedx402.com/favicon.svg"},"x-hub":"https://gedx402.com","x-payments":[{"x402":{"network":"eip155:8453","asset":"USDC","label":"Base"}}],"x-openapi-scope":"competitive","full_catalog":"https://browser.gedx402.com/openapi.json?full=1"},"servers":[{"url":"https://browser.gedx402.com"}],"paths":{"/v1/firecrawl/scrape":{"post":{"operationId":"firecrawl_scrape","summary":"Firecrawl Inference","description":"Run Firecrawl inference (firecrawl) via POST JSON. Pay per request with USDC on Base, Polygon, Arbitrum, World, or Solana (x402 v2); see x-payment-info for price bounds and accepted networks.","tags":["Firecrawl"],"security":[{"x402":[]}],"x-payment-info":{"protocols":[{"x402":{"network":"eip155:8453","asset":"USDC","label":"Base"}}],"price":{"mode":"dynamic","currency":"USD","min":"0.010000","max":"0.042000"}},"responses":{"200":{"description":"Inference result","content":{"application/json":{"schema":{"type":"object"},"example":{"success":true,"markdown":"# Example\n\nPage content as Markdown.","metadata":{"sourceURL":"https://example.com","statusCode":200,"browser_ms":1200},"action":"outcome/scrape"}}}},"400":{"description":"Invalid or over-limit payload"},"402":{"description":"Payment required (x402 v2 USDC on Base). Unpaid 402 includes PAYMENT-REQUIRED. After a rejected PAYMENT-SIGNATURE the JSON body is { reason_code, detail, next_step }.","headers":{"PAYMENT-REQUIRED":{"description":"Base64-encoded x402 v2 PaymentRequired with accepts[] per network","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{}}}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"url":{"type":"string","description":"HTTPS URL to scrape as clean Markdown."},"html":{"type":"string","description":"Raw HTML to render instead of fetching a URL."},"gotoOptions":{"type":"object","description":"Puppeteer goto options (e.g. waitUntil)."},"viewport":{"type":"object","description":"Browser viewport width/height/deviceScaleFactor."}},"required":["url"]},"example":{"url":"https://example.com"}}}},"servers":[{"url":"https://browser.gedx402.com"}],"x-resource-url":"https://browser.gedx402.com/v1/firecrawl/scrape"}},"/v1/models":{"get":{"operationId":"models","summary":"Shard route catalog","description":"Free catalog for this shard with pricing and descriptions.","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Catalog JSON"}}}},"/v1/demo":{"get":{"operationId":"demo_index","summary":"Response shape previews","description":"Free cached JSON examples (not charged).","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Demo index"}}}},"/v1/health":{"get":{"operationId":"health","summary":"Service health","tags":["Catalog"],"security":[],"responses":{"200":{"description":"Health JSON"}}}}},"x-agentcash-guidance":{"llmsTxtUrl":"https://browser.gedx402.com/llms.txt"},"x-agentcash-provenance":{"ownershipProofs":["0xb3C2776cE3F99cb3366520c27b4aC5D436942Ab6","9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"]},"x-discovery":{"ownershipProofs":["0xb3C2776cE3F99cb3366520c27b4aC5D436942Ab6","9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin"]},"components":{"securitySchemes":{"x402":{"type":"apiKey","in":"header","name":"PAYMENT-SIGNATURE","description":"x402 v2. First POST without this header returns 402 + PAYMENT-REQUIRED. Sign the Base accept (eip155:8453) with @x402/fetch and retry once. After a rejected signature the 402 body is { reason_code, detail, next_step }."}}}}