# Web Page to Markdown

> Web Page to Markdown is a paid API for AI agents from api.stablecoingateways.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-30).

Fetches a public URL and returns its main content as clean Markdown, stripping navigation, footers, and scripts, along with metadata like title, language, publish date, and links.

## Facts

- Endpoint: GET https://api.stablecoingateways.com/v1/page-to-markdown?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/web-page-to-markdown-175417d4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_lG3asu7UrgZRJ0pb0fWac

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 web-page-to-markdown-175417d4
```

Example prompt: Can you fetch https://www.bbc.com/news/technology-68123456 and give me the main article content as clean markdown so I can summarize it?

## When to prefer this

Use this endpoint when an agent needs to read, quote, or summarize a single public web page and wants clean, LLM-ready Markdown output with structured metadata. It is ideal for news articles, blog posts, documentation pages, and any public HTML page where stripping navigation and boilerplate matters. Prefer this over raw HTML fetching when you need publisher-policy compliance (robots.txt/noai respected), a signed receipt for auditability, and consistent metadata extraction. Not suitable for paywalled content, entire site crawls, or structured data extraction from pages with non-HTML content types.

## Known failure modes

- URL is blocked by robots.txt or noai directives — returns refusal without charge
- URL is behind a paywall — content extraction is refused, no bypass attempted
- URL is malformed or unreachable — returns HTTP error status
- Page has no extractable main content — markdown may be empty or minimal
- URL exceeds 2048 character limit — validation error returned
- Non-public or local URLs rejected — schema enforces http(s) format

## How this service works

Web page to markdown: give a public URL, get its main content as clean Markdown for LLMs (navigation, footers and scripts removed) with title, canonical URL, language, publish date and links. Use when an agent needs to read, quote or summarise a page. Respects robots.txt, ai.txt and noai; no paywall bypass; refusals are not charged. Signed receipt.

## Output

A JSON object with a 'data' field containing the page's main content as clean Markdown (navigation, footers, scripts removed), plus the page title, original URL, canonical URL, final redirected URL, language code, publish date, word count, truncation flag, content type, robots/noai policy status, and an array of extracted links. Also includes an Ed25519-signed receipt with endpoint ID, timestamp, price paid, transaction hash, and request/response hashes for auditability.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "headers": {
     "type": "object",
     "additionalProperties": {
      "type": "string"
     }
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "format": "uri",
       "maxLength": 2048,
       "description": "Public http(s) URL of one page"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "data",
      "receipt"
     ],
     "properties": {
      "data": {
       "type": "object",
       "$schema": "https://json-schema.org/draft/2020-12/schema",
       "properties": {
        "url": {
         "type": "string"
        },
        "lang": {
         "type": "string"
        },
        "links": {
         "type": "array",
         "items": {}
        },
        "notes": {
         "type": "string"
        },
        "title": {
         "type": "string"
        },
        "robots": {
         "type": "string"
        },
        "status": {
         "type": "integer"
        },
        "markdown": {
         "type": "string"
        },
        "canonical": {},
        "final_url": {
         "type": "string"
        },
        "published": {},
        "truncated": {
         "type": "boolean"
        },
        "fetched_at": {
         "type": "string"
        },
        "provenance": {
         "type": "object",
         "description": "Additive evidence block (sg-provenance/1): per-fact source, retrieval time, limits; no score or verdict. Full schema in OpenAPI."
        },
        "word_count": {
         "type": "integer"
        },
        "description": {},
        "content_type": {
         "type": "string"
        },
        "publisher_policy_checks": {
         "type": "array",
         "items": {
          "type": "string"
         }
        }
       },
       "description": "Main page content as Markdown with title, canonical U
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "data": {
   "url": "https://example.org/",
   "lang": "en",
   "links": [],
   "title": "Example Domain",
   "robots": "allowed",
   "status": 200,
   "markdown": "This domain is for use in documentation examples without needing permission. This is no...",
   "canonical": null,
   "final_url": "https://example.org/",
   "published": null,
   "truncated": false,
   "word_count": 25,
   "description": null,
   "content_type": "text/html"
  },
  "receipt": {
   "v": 1,
   "ts": "2026-10-22T09:00:00Z",
   "sig": "hex",
   "price": {
    "asset": "USDC",
    "amount": "2000",
    "network": "eip155:84532"
   },
   "log_seq": 1,
   "tx_hash": "0x..",
   "endpoint_id": "page-to-markdown-v1",
   "request_hash": "hex",
   "response_hash": "hex"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/web-page-to-markdown-175417d4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.stablecoingateways.com](https://www.zero.xyz/host/api.stablecoingateways.com/llms.txt)
