# 1gateway Web Metadata Extractor

> 1gateway Web Metadata Extractor is a paid API for AI agents from 1gateway.dev, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-10).

Fetches and parses metadata from any public URL — returning title, description, Open Graph tags, favicon, feeds, JSON-LD, and more without executing JavaScript.

## Facts

- Endpoint: GET https://1gateway.dev/v1/web/metadata?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/1gateway-web-metadata-extractor-5c460f99
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_W0ITHcpeXXFtkgXBIYC3q

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 1gateway-web-metadata-extractor-5c460f99
```

Example prompt: Before I share this link in my newsletter, can you pull the metadata for https://developer.mozilla.org/en-US/ — I want to know the title, description, preview image, and where the canonical URL points?

## When to prefer this

Choose this endpoint when you need lightweight, structured metadata from a public URL without executing JavaScript — ideal for link previews, citation generation, redirect resolution, SEO inspection, and content-type checks. It is faster and cheaper than a full browser-based scraper and returns a rich, normalized set of fields in one call. Prefer it over full-page scrapers when you only need head-level metadata, Open Graph tags, or feed discovery rather than the full page body.

## Known failure modes

- Private or internal IP addresses return 400 and are not charged
- URLs that return non-200 status codes still return the status but may have empty metadata fields
- Pages with no meta tags return empty/null fields for title, description, image, etc.
- Very large pages may be truncated (truncated field set to true)
- Non-HTML content types (PDF, images) return content type but minimal metadata
- Network timeouts or unreachable hosts return an error response

## How this service works

Use when an agent needs to know what a URL is before reading it, or to build a link preview or citation. Input: url (public http/https). Output: JSON with final URL after redirects, HTTP status, content type, title, description, site name, language, canonical, preview image, favicon, Open Graph and Twitter tags, RSS/Atom feeds, hreflang alternates, JSON-LD types, robots, first H1. No JavaScript is run. Example: ?url=https://developer.mozilla.org/en-US/

## Output

A JSON object containing: final URL after any redirects, HTTP status code, content type, page title, meta description, site name, language, canonical URL, preview image URL, favicon URL, Open Graph key-value pairs, Twitter card key-value pairs, RSS/Atom feed links, hreflang alternate links, JSON-LD types found on the page, robots meta, first H1 heading, redirect chain, and cache/notes fields. No JavaScript is executed — only static HTML is parsed.

## 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"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "pattern": "^https?://",
       "examples": [
        "https://developer.mozilla.org/en-US/"
       ],
       "maxLength": 2048,
       "description": "Public http(s) URL; private/internal addresses → 400 (not charged)"
      }
     },
     "additionalProperties": false
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "url",
      "finalUrl",
      "status",
      "contentType",
      "redirects",
      "truncated",
      "title",
      "description",
      "siteName",
      "lang",
      "canonical",
      "image",
      "favicon",
      "type",
      "author",
      "publishedTime",
      "modifiedTime",
      "keywords",
      "robots",
      "themeColor",
      "generator",
      "openGraph",
      "twitter",
      "icons",
      "feeds",
      "alternates",
      "jsonLdTypes",
      "headingH1",
      "cache",
      "notes"
     ],
     "properties": {
      "url": {
       "type": "string"
      },
      "lang": {
       "type": "string"
      },
      "type": {
       "type": "null"
      },
      "cache": {
       "type": "string"
      },
      "feeds": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "href": {
          "type": "string"
         },
         "type": {
          "type": "string"
         },
         "title": {
          "type": "string"
         }
        }
       }
      },
      "icons": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "rel": {
          "type": "string"
         },
         "href": {
          "type": "string"
         },
         "sizes": {
          "type": [
           "string",
           "null"
          ]
         }
        }
       }
      },
      "image": {
       "type": "string"
      },
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/1gateway-web-metadata-extractor-5c460f99/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 1gateway.dev](https://www.zero.xyz/host/1gateway.dev/llms.txt)
