# readable /links — Extract All Links from a Web Page

> readable /links — Extract All Links from a Web Page is a paid API for AI agents from readable.x.c00l.site, paid per call via x402, $0.002/call, status unknown (last checked 2026-09-15).

Fetches a URL and returns a structured list of all hyperlinks found on the page, with metadata such as link text, type, region, and internal/external classification.

## Facts

- Endpoint: POST https://readable.x.c00l.site/links
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/readable-links-extract-all-links-from-a-web-page-71af3030
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_zvfGAjBQDHpICV-as1jGC

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 readable-links-extract-all-links-from-a-web-page-71af3030 -d '<json body>'
```

Example prompt: Pull all the links from https://news.ycombinator.com/ and tell me which ones are internal versus external, including the link text and where on the page they appear.

## When to prefer this

Choose this endpoint when you specifically need to enumerate and classify hyperlinks on a web page — internal vs external, by region, with link text — rather than extracting the full readable content. It is purpose-built for link graph analysis, SEO auditing, navigation mapping, and crawl seed generation, and returns structured link metadata rather than prose Markdown.

## Known failure modes

- Target URL is unreachable or returns a non-200 status — link list may be empty or error returned
- Dynamically rendered pages (heavy JavaScript SPA) may yield incomplete link extraction
- Payment not included or insufficient — 402 Payment Required response with x402 payment details
- Malformed or missing URL parameter — request rejected with 4xx error
- Rate limiting or bot-blocking by target site — partial or empty results

## How this service works

A paid HTTP API that turns any web page into clean, LLM-ready Markdown. Boilerplate removal, GFM tables, fenced code, absolute links. $0.004 per call, paid in USDC on Base via x402.

## Output

A JSON object containing the source URL, an array of link objects (each with url, text, type, count, region, and internal flag), and aggregate counts of total, external, internal, and nofollow links.

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "url": "https://news.ycombinator.com/",
  "links": [
   {
    "url": "https://news.ycombinator.com/newest",
    "text": "new",
    "type": "link",
    "count": 1,
    "region": "body",
    "internal": true,
    "nofollow": false
   },
   {
    "url": "https://example.com/story",
    "text": "A story",
    "type": "link",
    "count": 1,
    "region": "body",
    "internal": false,
    "nofollow": true
   }
  ],
  "counts": {
   "total": 2,
   "skipped": 0,
   "external": 1,
   "internal": 1,
   "nofollow": 0,
   "occurrences": 2
  },
  "finalUrl": "https://news.ycombinator.com/"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/readable-links-extract-all-links-from-a-web-page-71af3030/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from readable.x.c00l.site](https://www.zero.xyz/host/readable.x.c00l.site/llms.txt)
