# GEDX402 — hub > https://gedx402.com x402 APIs on Cloudflare Workers AI — pay USDC per call, no API keys. **Default:** GET /.well-known/agents.json?bundle=winners · full catalog ?full=1. Copy AM-winning shapes: OpenAI chat/completions, Tavily /search, Firecrawl scrape, translate. Payments: USDC on Base, Polygon, Arbitrum, World, Solana (x402 v2, Coinbase CDP). ## Winner endpoints (start here) - **Inference** — POST https://chat.gedx402.com/v1/chat/completions { model?, messages[], max_tokens? } — OpenAI-compatible (Venice/Hyperbolic shape) - **Search (revenue target)** — POST https://search.gedx402.com/v1/search { query, max_results? } — Tavily shape ($0.01); AM #1 gedx402 L30D - **Scrape** — POST https://browser.gedx402.com/v1/firecrawl/scrape { url } — Firecrawl shape ($0.01–$0.02) - **Translate (proven revenue)** — POST https://embed.gedx402.com/v1/translate { text, source_lang, target_lang } - **Manifest** — GET https://gedx402.com/.well-known/agents.json?bundle=winners - **Models** — GET https://gedx402.com/v1/models?bundle=winners ## Integrate (@x402/fetch) npm install @x402/fetch @x402/core @x402/evm viem · fund USDC on Base ```typescript import { wrapFetchWithPayment } from "@x402/fetch"; import { x402Client } from "@x402/core/client"; import { ExactEvmScheme } from "@x402/evm/exact/client"; import { privateKeyToAccount } from "viem/accounts"; const signer = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`); const client = new x402Client(); client.register("eip155:*", new ExactEvmScheme(signer)); const fetchWithPayment = wrapFetchWithPayment(fetch, client); const res = await fetchWithPayment("https://chat.gedx402.com/v1/chat/completions", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ "messages": [ { "role": "user", "content": "Hello" } ], "max_tokens": 128 }), }); ``` ```typescript import { wrapFetchWithPayment } from "@x402/fetch"; import { x402Client } from "@x402/core/client"; import { ExactEvmScheme } from "@x402/evm/exact/client"; import { privateKeyToAccount } from "viem/accounts"; const signer = privateKeyToAccount(process.env.PRIVATE_KEY as `0x${string}`); const client = new x402Client(); client.register("eip155:*", new ExactEvmScheme(signer)); const fetchWithPayment = wrapFetchWithPayment(fetch, client); const res = await fetchWithPayment("https://search.gedx402.com/v1/search", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ "query": "x402 API pricing", "max_results": 5 }), }); ``` ## Hero pages Index: GET https://gedx402.com/heroes — outcome-first landing pages with @x402/fetch, awal, and curl examples per SKU. - **Entry probe ($0.0036)** — POST https://embed.gedx402.com/v1/embed/ping { text: "ping" } — cheapest real x402 settlement; hero GET https://gedx402.com/heroes/embed-ping - **Translate ($0.013)** — POST https://embed.gedx402.com/v1/translate { text, source_lang, target_lang } — M2M100 machine translation; proven external revenue; competitive discovery (not in five-step AOV ladder); hero GET https://gedx402.com/heroes/translate - **Scrape Lite ($0.082)** — POST https://browser.gedx402.com/v1/firecrawl/scrape { url } or GET ?url= — clean Markdown (Firecrawl scrape parity); hero GET https://gedx402.com/heroes/scrape-lite - **Search ($0.020)** — POST https://search.gedx402.com/v1/search { query, max_results?: 5 } — Tavily web search (AM winner); hero GET https://gedx402.com/heroes/search - **Batch Scrape ($8.200)** — POST https://browser.gedx402.com/v1/firecrawl/batch/scrape { urls: string[] } — parallel scrape, one x402; hero GET https://gedx402.com/heroes/batch-scrape - **Site map ($0.018)** — POST https://browser.gedx402.com/v1/firecrawl/map { url } — discovered links[] + count; hero GET https://gedx402.com/heroes/site-map - **Schema extract ($0.322)** — POST https://browser.gedx402.com/v1/firecrawl/extract { urls, prompt, schema? } — structured JSON; hero GET https://gedx402.com/heroes/schema-extract - **RAG answer ($0.625)** — POST https://rag.gedx402.com/v1/aisearch/outcome/answer { url, question, budget? } — index + hybrid query + cited chat/fast answer; hero GET https://gedx402.com/heroes/rag-answer - **Voice turn** — GET https://media.gedx402.com/v1/asr/flux (WebSocket) → POST https://media.gedx402.com/v1/asr/smart-turn-v2 → POST https://chat.gedx402.com/v1/chat/fast → POST https://media.gedx402.com/v1/tts/aura-2-en ## Advanced — prepaid session bundles Not in the default competitive funnel: - **Memory session ($0.690)** — POST https://db.gedx402.com/v1/memory/sessions { budget? } → session_token for sql/exec + sql/query; hero GET https://gedx402.com/heroes/memory-session - **Managed RAG session ($0.620)** — POST https://rag.gedx402.com/v1/aisearch/sessions { initial_index?, query?, budget? } → session_token for index/query; hero GET https://gedx402.com/heroes/rag-session - **Voice session ($28.110, budget caps apply)** — POST https://media.gedx402.com/v1/voice/sessions { budget? } → session_token for flux + smart-turn + chat/fast + TTS; hero GET https://gedx402.com/heroes/voice-session ## Bundles - GET https://gedx402.com/v1/models?bundle=winners — AM-winning shapes (chat/completions, /search, scrape, translate) - GET https://gedx402.com/v1/models?shard=gateway&bundle=frontier — OpenAI/Anthropic/Google on gateway.gedx402.com (per-model x402) - GET https://gedx402.com/v1/models?bundle=competitive — atom research funnel (embed ping, scrape, search, rag answer) - GET https://gedx402.com/v1/models?bundle=browser — Firecrawl hero routes - GET https://gedx402.com/v1/models?bundle=social — SociaVault profile, posts, transcript + full /v1/sociavault/* catalog - GET https://gedx402.com/v1/models?bundle=managed-rag — managed RAG create/index/query/MCP - GET https://gedx402.com/v1/models?bundle=voice — flux, smart-turn, TTS, fast chat - GET https://gedx402.com/v1/models?bundle=rag — embed + vector search (self-managed namespace) - GET https://gedx402.com/v1/models?prominence=hero — hero SKUs only (outcome-first sort) ## Catalog - GET https://gedx402.com/v1/models — full catalog with shard + origin per route - GET https://gedx402.com/openapi.json — hub OpenAPI (x-shards) - GET https://gedx402.com/.well-known/x402.json — extended discovery + pricing ## Shards Competitive funnel shards first; chat/llm below are full :action wildcard catalogs (demoted — use heroes + `?bundle=competitive`). - **GEDX402 Knowledge** — https://embed.gedx402.com (starter: POST /v1/translate) - **GEDX402 Firecrawl** — https://browser.gedx402.com (starter: POST /v1/firecrawl/scrape) - **GEDX402 Social** — https://social.gedx402.com (starter: POST /v1/social/outcome/profile) - **GEDX402 Search** — https://search.gedx402.com (starter: POST /v1/search) - **GEDX402 AI Search** — https://rag.gedx402.com (starter: POST /v1/aisearch/outcome/answer) - **GEDX402 Images API** — https://images-api.gedx402.com (starter: POST /v1/images/transform) - **GEDX402 Storage** — https://storage.gedx402.com (starter: GET /v1/objects/:key) - **GEDX402 Memory** — https://db.gedx402.com (starter: POST /v1/sql/query) - **GEDX402 Media** — https://media.gedx402.com (starter: GET /v1/asr/flux) - **GEDX402 Image** — https://image.gedx402.com (starter: POST /v1/image/flux-1-schnell) - **GEDX402 Jobs** — https://jobs.gedx402.com (starter: POST /v1/jobs/browser) - **GEDX402 Agents** — https://agents.gedx402.com (starter: POST /v1/agents/sessions) - **GEDX402 Gateway** — https://gateway.gedx402.com (starter: POST /v1/chat/completions) - **GEDX402 Verify** — https://verify.gedx402.com (starter: POST /v1/turnstile/verify) - **GEDX402 Chat** — https://chat.gedx402.com (starter: POST /v1/chat/completions) — demoted :action wildcard catalog; use winner routes - **GEDX402 LLM** — https://llm.gedx402.com (starter: POST /v1/llm/qwen3-30b-a3b-fp8) — demoted :action wildcard catalog; use winner routes