heroes · gedx402
Scrape Lite
Recommended scrape — clean Markdown in one x402 payment. linkedin.com, lnkd.in, x.com, twitter.com, and private/loopback/link-local hosts are refused before payment (400, not quoted). Response: { success, markdown, metadata }. For static HTML only, see page-markdown.
$0.042 live 402 quote
POST https://browser.gedx402.com/v1/firecrawl/scrape
@x402/fetch (TypeScript)
standard x402 client — fund USDC on Base, set PRIVATE_KEY. integrator quickstart
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://browser.gedx402.com/v1/firecrawl/scrape", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
url: "https://example.com"
}),
});
const data = await res.json();
awal (agent convenience)
Coinbase Agentic Wallet CLI — no private key in code. external payer guide
npx awal@2.12.0 x402 pay \
--url https://browser.gedx402.com/v1/firecrawl/scrape \
--method POST \
--body '{"url":"https://example.com"}'
curl (discovery)
unauthenticated POST returns 402 + payment-required — inspect pricing before paying.
curl -X POST https://browser.gedx402.com/v1/firecrawl/scrape \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'