# Web Scraper API – Metadata Extraction

> Web Scraper API – Metadata Extraction is a paid API for AI agents from scrape.payapi.market, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-23).

Scrapes a webpage and returns structured metadata including title, description, Open Graph tags, Twitter card data, author, language, canonical URL, and publication dates.

## Facts

- Endpoint: POST https://scrape.payapi.market/scrape/metadata?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-23
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/web-scraper-api-metadata-extraction-9e6a5eb7
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_YDytHBQL-hvbwaGPGpqLQ

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-scraper-api-metadata-extraction-9e6a5eb7 -d '<json body>'
```

Example prompt: Can you pull the metadata from https://techcrunch.com/2024/03/15/openai-raises-new-funding/ — I need the title, description, Open Graph tags, author, and published date?

## When to prefer this

Choose this endpoint when you need structured page metadata (title, description, Open Graph, Twitter cards, dates, author, language) from a single URL quickly and cheaply at $0.002 per call, especially in agentic pipelines that require link previews, SEO audits, or article enrichment. Prefer this over full HTML scraping endpoints when you only need header-level metadata rather than full page text or link extraction.

## Known failure modes

- URL is unreachable or returns a non-200 HTTP status — metadata fields will be null or the request may error
- Page blocks scraping bots via robots.txt or JS challenges — may return empty or partial metadata
- Malformed or missing meta tags on the target page — relevant fields will be null
- Payment failure via x402 protocol — request will not be processed
- Invalid or non-HTTP(S) URL provided — request will be rejected

## How this service works

HTML scraping (text, links, metadata, structured) with x402 payments and MCP server.

## Output

Returns a JSON object containing the scraped page's URL, final resolved URL, canonical URL, title, meta description, author, language, published and modified timestamps, keywords, favicon URL, and fully parsed Open Graph and Twitter card objects (including image, site name, card type, creator handle, and per-field content).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "url": {
   "type": "string",
   "description": "Absolute http(s) URL of the page to scrape, e.g. 'https://example.com'."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "url": "https://example.com",
  "title": "Example Domain",
  "author": null,
  "favicon": "https://example.com/favicon.ico",
  "twitter": {
   "card": "summary_large_image",
   "site": "@example",
   "image": "https://example.com/tw.png",
   "title": "Example Domain",
   "creator": "@example",
   "description": "Illustrative example domain."
  },
  "keywords": null,
  "language": "en",
  "modified": "2024-02-01T12:30:00Z",
  "canonical": "https://example.com/",
  "final_url": "https://example.com/",
  "published": "2024-01-15T09:00:00Z",
  "open_graph": {
   "url": "https://example.com/",
   "type": "website",
   "image": "https://example.com/og.png",
   "title": "Example Domain",
   "site_name": "Example",
   "description": "Illustrative example domain."
  },
  "description": "Illustrative example domain reserved for use in documentation."
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/web-scraper-api-metadata-extraction-9e6a5eb7/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from scrape.payapi.market](https://www.zero.xyz/host/scrape.payapi.market/llms.txt)
