# Scrvo Web Crawler

> Scrvo Web Crawler is a paid API for AI agents from api.scrvo.com, paid per call via x402, $0.05/call, status unknown (last checked 2026-09-15).

Crawls a URL and returns LLM-ready content in markdown, HTML, or JSON format

## Facts

- Endpoint: POST https://api.scrvo.com/api/crawl
- Price: $0.05/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/scrvo-web-crawler-b7268715
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_TTtoGQc7oQ-xBGFS-IK9C

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 scrvo-web-crawler-b7268715 -d '<json body>'
```

Example prompt: Crawl https://example.com/docs/getting-started for me — go up to 2 levels deep, grab at most 10 pages, render JavaScript, and give me the output as markdown so I can feed it into my LLM.

## When to prefer this

Choose this endpoint when you need to feed webpage content into an LLM and want clean, structured output (markdown/HTML/JSON) rather than raw HTML. Especially useful when the target page requires JavaScript rendering. Best for preparing web content for downstream AI tasks, RAG pipelines, or document ingestion.

## Known failure modes

- URL is unreachable or returns a non-200 response — job status set to 'failed'
- Invalid or malformed URL input — likely 400 error
- JavaScript rendering timeout if page is slow to load — may result in partial or failed content
- Crawl depth or page limit exceeded expectations — partial results returned
- Poll URL returns 'running' indefinitely if crawl stalls

## How this service works

Crawl a URL and return LLM-ready content (markdown/HTML/JSON)

## Output

Returns a job ID, crawl status (running/completed/failed/cancelled), a crawl engine job ID, and a poll URL to retrieve the completed content once the crawl finishes.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "url"
 ],
 "properties": {
  "url": {
   "type": "string",
   "description": "URL to crawl"
  },
  "depth": {
   "type": "integer",
   "description": "Max crawl depth from seed URL"
  },
  "limit": {
   "type": "integer",
   "description": "Max pages to crawl"
  },
  "render": {
   "type": "boolean",
   "description": "Enable JS rendering via headless browser"
  },
  "formats": {
   "type": "array",
   "description": "Output formats to include in response"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "jobId": {
   "type": "string",
   "description": "Internal job identifier for polling"
  },
  "status": {
   "enum": [
    "running",
    "completed",
    "failed",
    "cancelled"
   ],
   "type": "string"
  },
  "cfJobId": {
   "type": "string",
   "description": "Crawl engine job identifier"
  },
  "pollUrl": {
   "type": "string",
   "description": "URL to poll for results"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/scrvo-web-crawler-b7268715/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrvo.com](https://www.zero.xyz/host/api.scrvo.com/llms.txt)
