# Minifetch Proxied URL Preview Extractor

> Minifetch Proxied URL Preview Extractor is a paid API for AI agents from minifetch.com, paid per call via x402, $0.002/call, status unknown (last checked 2026-10-14).

Extracts share-preview metadata (title, description, Open Graph, Twitter Card, favicons) from URLs that block standard crawlers, using an external rotating proxy that bypasses robots.txt restrictions.

## Facts

- Endpoint: GET https://minifetch.com/api/v1/x402/proxy/extract/url-preview?utm_source=zero.xyz
- Price: $0.002/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-14
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/minifetch-proxied-url-preview-extractor-9130eb48
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_IRAlikaJ3nvlGun_mRDnp

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 minifetch-proxied-url-preview-extractor-9130eb48
```

Example prompt: Grab the Open Graph title, description, and preview image from https://example.com — it blocks normal crawlers so use the rotating proxy to get through, and fetch from Germany.

## When to prefer this

Use this endpoint when the standard Minifetch proxy (which obeys robots.txt) gets blocked or returns incomplete data from a target URL. Prefer this over the standard /extract/url-preview when the site actively blocks crawlers or returns 403/empty to the native proxy. Use it over /proxy/render when the page does not require JavaScript execution (saving cost and latency). Use the optional country parameter when you need geographically localized metadata. Do not use this when robots.txt compliance is required.

## Known failure modes

- Invalid or unreachable target URL returns an error
- Invalid country code (not a 2-letter ISO 3166-1 code) returns HTTP 400
- Target page may still block the rotating proxy despite bypass attempt, yielding empty or partial fields
- No JavaScript rendering — dynamic pages will return pre-JS HTML metadata only; use /proxy/render for JS-rendered pages
- Network timeouts from the external proxy if the target is very slow

## How this service works

For pages blocking native Minifetch that obeys robots.txt: fetch thru external rotating proxy & extract same share-preview fields as /extract/url-preview (title, description, Open Graph, Twitter Card, favicons). No JavaScript rendering; use /proxy/render for that. Optional ?country= (2-letter code) to fetch from a specific country. Not cached. Does not obey robots.txt. Supports GET & POST

## Output

Returns a results array where each item contains: resolved URL (after redirects), page title, meta description, Open Graph fields (og:title, og:description, og:image, og:url, og:type, og:site_name), Twitter Card fields (twitter:card, twitter:title, twitter:image), an array of discovered favicons, proxy provenance metadata (provider, country, userAgent, robotsTxt.allowed=null since robots.txt not checked), and cache status (always hit:false since this route is not cached).

## 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",
       "description": "The target URL from which to extract the preview."
      },
      "country": {
       "type": "string",
       "description": "Optional. 2-letter ISO 3166-1 country code (ex: de, mx) to fetch from. Invalid code returns 400."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "results": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "data": {
          "type": "object",
          "properties": {
           "url": {
            "type": "string",
            "description": "Final URL after redirects"
           },
           "proxy": {
            "type": "object",
            "properties": {
             "render": {
              "type": "boolean",
              "description": "true if JS executed"
             },
             "country": {
              "type": [
               "string",
               "null"
              ]
             },
             "provider": {
              "type": "string"
             },
             "proxyUrl": {
              "type": [
               "string",
               "null"
              ]
             },
             "proxyType": {
              "type": "string",
              "description": "Always \"managed\" on proxy routes"
             },
             "robotsTxt": {
              "type": "object",
              "properties": {
               "allowed": {
                "type": [
                 "boolean",
                 "null"
                ]
               }
              }
             },
             "userAgent": {
              "type": "string"
             }
            },
            "description": "Fetch provenance. External proxy routes do not check robots.txt"
           },
           "title": {
            "t
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/minifetch-proxied-url-preview-extractor-9130eb48/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from minifetch.com](https://www.zero.xyz/host/minifetch.com/llms.txt)
