Agent Fetch Hub
URL in, clean Markdown out. Every call is paid inside the request over x402. No signup, no API key, no dashboard.
Endpoints
| Route | Price | What it does |
|---|---|---|
POST /extract |
0.001 USDC | Fetch one URL and return clean article Markdown without navigation, ads or cookie banners. |
POST /metadata |
0.002 USDC | Return title, description, OpenGraph card, canonical URL, feeds, favicon and detected technologies for one URL. |
POST /structured |
0.005 USDC | Fill a caller supplied JSON Schema from one web page and report source and confidence for every field. |
POST /diff |
0.003 USDC 0.001 USDC for a baseline call |
Compare a page against its last stored state, or two supplied documents, and report only the content changes. |
POST /batch/extract |
0.008 USDC | Extract up to ten URLs in one paid call. |
POST /product |
0.005 USDC | Return the structured offer of one product page: identifiers, price, availability, shipping, variants, ratings, images and seller, each with its source. |
How a call works
curl -s -X POST https://fetch.halowerk.com/extract \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/article","format":"markdown"}'
The first call answers with HTTP 402 and the accepted payment terms. An x402 capable client signs the terms and repeats the request; the answer arrives in the same round trip. Any x402 client library, or an MCP client pointed at /mcp, handles this without further setup.
Rules we follow
- robots.txt of the target origin is respected. A disallowed path is refused and never charged.
- Paywalls and bot walls are not bypassed.
- Cached copies expire after at most 24 hours, product answers after 30 minutes.
- Product prices are parsed, never calculated or converted. Every field names its source and raw value.
- Private and link local address ranges are refused.
- A failed extraction is rejected before settlement.
Discovery
- /openapi.json
- /.well-known/x402
- /mcp — Model Context Protocol
- /pricing
- /llms.txt
- /health
Operational figures
Rolling 30 day window, updated live: 12 requests, 9 of them paid, 9 settlements, 0.027 USDC volume, 0 documents in cache.