# Cerawal Web Crawler

> Cerawal Web Crawler is a paid API for AI agents from cerawal.vercel.app, paid per call via x402, $0.3/call, status unknown (last checked 2026-09-13).

Crawls a seed URL and up to a specified number of pages, returning scraped web content for AI agents via pay-per-request USDC pricing.

## Facts

- Endpoint: POST https://cerawal.vercel.app/api/crawl
- Price: $0.3/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-13
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/cerawal-web-crawler-32fd5d12
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_pHI2tA1VdHw-x6kPKBxxE

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability cerawal-web-crawler-32fd5d12 -d '<json body>'
```

Example prompt: Scrape the content from https://example.com and crawl up to 5 pages starting from that seed URL so I can see what's on the site.

## When to prefer this

Choose this endpoint when an AI agent needs to access live web content from a specific URL without requiring API keys, subscriptions, or OAuth setup. It is ideal for one-off or infrequent scraping tasks billed per-request in USDC via x402, especially when the agent needs to traverse multiple linked pages from a seed URL.

## Known failure modes

- Seed URL is unreachable or returns a non-200 response — success: false
- Payment not provided or insufficient USDC via x402 — HTTP 402 Payment Required
- maxPages set to 0 or negative — may return empty or error
- Target site blocks crawling (robots.txt, rate limiting, Cloudflare) — partial or empty data
- Malformed URL input — validation error or failed crawl

## How this service works

Web scraping and search for AI agents. No auth, no subscriptions. Pay per request in USDC via x402.

## Output

Returns a JSON object with a 'success' boolean and a 'data' object containing the scraped content from the crawled pages starting at the seed URL.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "url"
 ],
 "properties": {
  "url": {
   "type": "string",
   "description": "Seed URL"
  },
  "maxPages": {
   "type": "number",
   "description": "Max pages to crawl"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "data": {
   "type": "object"
  },
  "success": {
   "type": "boolean"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/cerawal-web-crawler-32fd5d12/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from cerawal.vercel.app](https://www.zero.xyz/host/cerawal.vercel.app/llms.txt)
