# AgentDiet Web Distillation API

> AgentDiet Web Distillation API is a paid API for AI agents from llms-generator.agentdiet.dev, paid per call via MPP, $0.001/call, status unknown (last checked 2026-10-21).

Fetches a URL or raw HTML and compresses it into compact, agent-ready tokens using selectable distillation modes and BM25 budget control

## Facts

- Endpoint: GET https://llms-generator.agentdiet.dev/v1/web-scrape?utm_source=zero.xyz
- Price: $0.001/call
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-21
- Activations on Zero: 0
- Provider: llms-generator.agentdiet.dev
- Website: https://llms-generator.agentdiet.dev
- Canonical page: https://www.zero.xyz/c/llms-generator-agentdiet-dev-agentdiet-web-distillation-api-4d896452
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_B1WW4OLFfCa4cCbuI7tam

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 llms-generator-agentdiet-dev-agentdiet-web-distillation-api-4d896452
```

Example prompt: Fetch https://stripe.com/docs/payments and distill it into compact markdown, keeping it under 2000 tokens focused on the query 'payment intents'.

## When to prefer this

Use this endpoint when an AI agent needs to ingest web content but must stay within a token budget, when you want structured or markdown-clean output rather than raw HTML, or when you need BM25-focused excerpts from a long page. Prefer this over generic scrapers when token economy and LLM cost reduction are priorities, or when you need ROI proof of how many tokens were saved. The built-in support for x402 micropayments makes it ideal for autonomous agent pipelines that handle billing programmatically.

## Known failure modes

- Invalid or unreachable URL returns an error status
- max_tokens set below minimum of 20 causes validation failure
- mode=budget without a query may produce unfocused results
- Paywalled or bot-blocked pages may return incomplete or empty content
- Raw HTML input larger than server limits may be rejected
- x402 payment failure results in 402 response and no content returned

## How this service works

Distill a URL or raw HTML payload with BM25 budget control (Live x402 v2, IETF MPP & MCP endpoint at https://llms-generator.agentdiet.dev/v1/web-scrape)

## Output

Returns a distilled representation of the webpage in the chosen format (Markdown, structured JSON, skeleton outline, or BM25 budget excerpt), along with ROI proof metrics showing raw vs. distilled token counts, tokens saved, compression ratio, LLM cost saved in USD, and optional billing and cache status details.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "url"
 ],
 "properties": {
  "url": {
   "type": "string",
   "minLength": 1,
   "description": "Target webpage URL to fetch and distill (or builtin://stripe-docs)"
  },
  "html": {
   "type": "string",
   "description": "Optional raw HTML string to distill directly without fetching"
  },
  "mode": {
   "enum": [
    "markdown",
    "structured",
    "skeleton",
    "budget"
   ],
   "type": "string",
   "default": "markdown",
   "description": "Distillation mode"
  },
  "query": {
   "type": "string",
   "description": "BM25 focus query when mode=budget"
  },
  "max_tokens": {
   "type": "integer",
   "minimum": 20,
   "description": "Strict token budget ceiling when mode=budget"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "status",
  "roi_proof",
  "data"
 ],
 "properties": {
  "data": {
   "type": "object",
   "description": "Distilled Markdown, structured JSON tables/metadata, skeleton outline, or BM25 budget excerpt."
  },
  "cache": {
   "type": "object",
   "properties": {
    "status": {
     "enum": [
      "HIT",
      "MISS"
     ],
     "type": "string"
    },
    "cache_key": {
     "type": "string"
    },
    "latency_ms": {
     "type": "number"
    }
   }
  },
  "status": {
   "type": "string",
   "description": "Execution status ('ok')"
  },
  "billing": {
   "type": "object",
   "properties": {
    "agent_id": {
     "type": "string"
    },
    "payment_method": {
     "type": "string"
    },
    "fee_charged_usd": {
     "type": "number"
    }
   }
  },
  "roi_proof": {
   "type": "object",
   "properties": {
    "raw_tokens": {
     "type": "integer"
    },
    "tokens_saved": {
     "type": "integer"
    },
    "roi_multiplier": {
     "type": "number"
    },
    "distilled_tokens": {
     "type": "integer"
    },
    "llm_cost_saved_usd": {
     "type": "number"
    },
    "compression_ratio_pct": {
     "type": "number"
    }
   }
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/llms-generator-agentdiet-dev-agentdiet-web-distillation-api-4d896452/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from llms-generator.agentdiet.dev](https://www.zero.xyz/host/llms-generator.agentdiet.dev/llms.txt)
