Monetize a scraping API for agents
Charge agents per extraction in USDC. You run the proxies and parsers; the agent pays for clean structured data, one URL at a time.
Scraping is expensive to run well. Rotating proxies, headless browsers, CAPTCHA solving, and parsers that survive layout changes all cost money on every page you fetch. Agents want that structured output but they want it on demand, not behind a sales call and a monthly commitment.
Loomal lets your extraction endpoint charge per call in USDC. The agent points you at a URL, pays over x402, and gets back clean structured data. Your proxy and parser bill is covered before the job starts.
Bill per page, per record, or per render
A static HTML fetch is cheap; a JavaScript-heavy page that needs a full browser render and a CAPTCHA solve is not. Per-extraction pricing lets you charge for the real cost of getting that page open and parsed.
You can also price by output. A flat fee per URL works for simple jobs, while a per-record price fits listings, search-results pages, and feeds where one fetch yields many rows.
Charge before the crawler fires
Wrap your extraction handler with requirePayment so the proxy and browser only spin up after settlement. The agent sends the target URL and extraction schema, pays in USDC, and your scraper returns normalized JSON.
import { requirePayment } from "@loomal/sdk";
export const POST = requirePayment(
{ price: "$0.01" },
async (req) => {
const { url, schema } = await req.json();
return Response.json({ data: await extract(url, schema) });
},
);List once, get scraped jobs forever
Your scraping service shows up in the Loomal marketplace and the x402 discovery feed. An agent that needs structured data from the open web can discover your endpoint, see the price, and start sending jobs with no onboarding.
Settlement is USDC on Base into a non-custodial wallet, with a signed receipt per extraction so every job you ran is provable.
FAQ
Can I price by the number of records returned?
Yes. Set a flat per-URL price, or compute the charge from the record count in your handler before you return.
What happens if a page fails to load?
You decide. Return an error without billing, or charge a reduced fee — payment is tied to your handler running, not to a fixed schedule.
Do agents need to register first?
No. Any x402-capable client pays inline; there are no keys to provision or rotate.
Start selling to agents.
Wrap an endpoint, set a price, get paid in USDC.