# Puptra PDF Snapshot – Extract Page Links

> Puptra PDF Snapshot – Extract Page Links is a paid API for AI agents from puptra-pdf-snapshot.saastemly.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-11).

Extracts every hyperlink from a rendered web page as absolute URLs, with optional filters for same-domain-only or visible-links-only.

## Facts

- Endpoint: POST https://puptra-pdf-snapshot.saastemly.com/v1/links?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-11
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/puptra-pdf-snapshot-extract-page-links-ece72ac4
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_hY-sDFFZhjUagxAlRESqC

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 puptra-pdf-snapshot-extract-page-links-ece72ac4 -d '<json body>'
```

Example prompt: Can you extract all the links from https://example.com — only same-domain URLs, and only the ones that are actually visible on the page?

## When to prefer this

Choose this endpoint when you need a complete, rendered list of hyperlinks from a page that relies on JavaScript to inject links — unlike static HTML parsers, this uses a real headless browser (Puppeteer) so all dynamic links are captured. Prefer it over generic scrapers when you need absolute URL normalization and built-in same-domain or visibility filtering without writing your own post-processing logic.

## Known failure modes

- Invalid or unreachable URL returns an error with a non-200 status
- JavaScript-heavy pages that delay link injection may miss dynamically added links if render timeout is too short
- Same-domain filter may behave unexpectedly if the page uses subdomains ambiguously
- Pages behind authentication walls will return no or partial links
- Rate limiting or bot-detection on target pages may cause empty or partial results

## How this service works

Every link on the page as absolute URLs, with optional same-domain-only and visible-only filters.

## Output

A list of absolute URLs representing every hyperlink found on the rendered page, optionally filtered to same-domain links only and/or only links visible in the viewport, returned as a JSON array.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "description": "The page (https). Set url or html, not both."
  },
  "html": {
   "type": "string",
   "description": "HTML to render instead of a URL."
  },
  "cookies": {
   "type": "array"
  },
  "viewport": {
   "type": "object"
  },
  "userAgent": {
   "type": "string"
  },
  "addStyleTag": {
   "type": "array"
  },
  "bestAttempt": {
   "type": "boolean"
  },
  "gotoOptions": {
   "type": "object"
  },
  "addScriptTag": {
   "type": "array"
  },
  "authenticate": {
   "type": "object"
  },
  "waitForTimeout": {
   "type": "number"
  },
  "waitForSelector": {
   "type": "object"
  },
  "emulateMediaType": {
   "type": "string"
  },
  "visibleLinksOnly": {
   "type": "boolean",
   "description": "Only links visible on the page (default false)"
  },
  "allowResourceTypes": {
   "type": "array"
  },
  "allowRequestPattern": {
   "type": "array"
  },
  "rejectResourceTypes": {
   "type": "array"
  },
  "setExtraHTTPHeaders": {
   "type": "object"
  },
  "excludeExternalLinks": {
   "type": "boolean",
   "description": "Only same-origin links (default false)"
  },
  "rejectRequestPattern": {
   "type": "array"
  },
  "setJavaScriptEnabled": {
   "type": "boolean"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/puptra-pdf-snapshot-extract-page-links-ece72ac4/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from puptra-pdf-snapshot.saastemly.com](https://www.zero.xyz/host/puptra-pdf-snapshot.saastemly.com/llms.txt)
