{
  "x402Version": 2,
  "id": 756,
  "slug": "756",
  "resource": "https://minifetch.com/api/v1/x402/extract/url-metadata",
  "description": "For technical SEO & metadata indexing: Extracts rich structured metadata from your URL (favicons, title, description, canonical, meta tags, Open Graph, Twitter Card, JSON-LD, redirects, headers, performance, headings, images). Returns all by default; query param narrows response (pass atomic field names, ex: ?fields=title,description or named groups: network,meta,og,twitter). ?omitEmpty=true trims tokens for AI agents. Supports GET & POST",
  "type": "http",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xffA9155A0e4B3d8d42351Da226cC1feEe449686f",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "2000",
      "maxTimeoutSeconds": 300
    },
    {
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "payTo": "46vMcwuC4sK11sB3gkLhyA7J7GEwfkhn5rFyDtihBwqe",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "amount": "2000",
      "maxTimeoutSeconds": 300
    }
  ],
  "outputSchema": {
    "bazaar": {
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "url": "https://github.com"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "queryParameters": {
              "fields": "title,description,canonical,og:title,performance",
              "includeResponseBody": false,
              "omitEmpty": false
            },
            "results": [
              {
                "data": {
                  "canonical": "https://github.com",
                  "description": "Join the world's most widely adopted, AI-powered developer platform where millions of developers, businesses, and the largest open source community build software that advances humanity.",
                  "minifetchCache": {
                    "cachedAt": "2026-08-03T00:51:41.760Z",
                    "expiresAt": "2026-08-03T00:53:41.760Z",
                    "hit": false
                  },
                  "og:title": "GitHub · Change is constant. GitHub keeps you ahead.",
                  "performance": {
                    "responseTimeMs": 195,
                    "ttfbMs": 113
                  },
                  "proxy": {
                    "proxyType": "minifetch",
                    "proxyUrl": null,
                    "robotsTxt": {
                      "allowed": true
                    },
                    "userAgent": "minifetch/1.0 (+https://minifetch.com/site-owner-faq)"
                  },
                  "title": "GitHub · Change is constant. GitHub keeps you ahead. · GitHub"
                }
              }
            ],
            "success": true
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "properties": {
                  "fields": {
                    "description": "Optional. Comma-separated selection to narrow the response to only the fields you need: comma-separated atomic field names (e.g. title, description), named groups (network, meta, og, twitter), and/or meta:tag-name for a specific page meta tag. Returns all fields when omitted; an unknown field returns 400.",
                    "type": "string"
                  },
                  "includeResponseBody": {
                    "description": "Optional. If set to true, includes the full HTML response body as a string in the result.",
                    "type": "boolean"
                  },
                  "omitEmpty": {
                    "description": "Optional. If true, drops empty fields (empty string, [], {}) from the response for token efficiency.",
                    "type": "boolean"
                  },
                  "url": {
                    "description": "The URL from which to extract metadata.",
                    "type": "string"
                  }
                },
                "required": [
                  "url"
                ],
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "properties": {
                  "queryParameters": {
                    "type": "object"
                  },
                  "results": {
                    "items": {
                      "properties": {
                        "data": {
                          "description": "Flat metadata: beyond the structured fields below, every standard HTML <meta>, Open Graph (og:*), Twitter Card (twitter:*) and Dublin Core tag found on the page appears as a top-level string key. response with ?fields= (atomic names, the network|meta|og|twitter groups, or meta:<name>); proxy and minifetchCache are always returned, outside the fields selection.",
                          "properties": {
                            "canonical": {
                              "type": "string"
                            },
                            "canonicalUrls": {
                              "items": {
                                "type": "string"
                              },
                              "type": "array"
                            },
                            "description": {
                              "type": "string"
                            },
                            "favicons": {
                              "description": "Discovered icon entries",
                              "type": "array"
                            },
                            "headings": {
                              "type": "array"
                            },
                            "imgTags": {
                              "type": "array"
                            },
                            "jsonld": {
                              "description": "Parsed JSON-LD blocks",
                              "type": "array"
                            },
                            "minifetchCache": {
                              "description": "Metadata cache state (~2-min TTL)",
                              "properties": {
                                "cachedAt": {
                                  "type": "string"
                                },
                                "expiresAt": {
                                  "type": "string"
                                },
                                "hit": {
                                  "type": "boolean"
                                }
                              },
                              "type": "object"
                            },
                            "performance": {
                              "properties": {
                                "responseTimeMs": {
                                  "type": "number"
                                },
                                "ttfbMs": {
                                  "type": "number"
                                }
                              },
                              "type": "object"
                            },
                            "proxy": {
                              "description": "Fetch provenance",
                              "properties": {
                                "proxyType": {
                                  "type": "string"
                                },
                                "proxyUrl": {
                                  "type": [
                                    "string",
                                    "null"
                                  ]
                                },
                                "robotsTxt": {
                                  "properties": {
                                    "allowed": {
                                      "type": "boolean"
                                    }
                                  },
                                  "type": "object"
                                },
                                "userAgent": {
                                  "type": "string"
                                }
                              },
                              "type": "object"
                            },
                            "redirects": {
                              "description": "Redirect hops followed",
                              "properties": {
                                "chain": {
                                  "type": "array"
                                },
                                "count": {
                                  "type": "integer"
                                }
                              },
                              "type": "object"
                            },
                            "requestUrl": {
                              "description": "URL as requested, before redirects",
                              "type": "string"
                            },
                            "responseBody": {
                              "description": "Raw HTML; only when ?includeResponseBody=true",
                              "type": "string"
                            },
                            "responseHeaders": {
                              "description": "Selected response headers",
                              "type": "object"
                            },
                            "responseStatusCode": {
                              "type": "integer"
                            },
                            "title": {
                              "type": "string"
                            },
                            "url": {
                              "description": "Final URL after redirects",
                              "type": "string"
                            }
                          },
                          "type": "object"
                        }
                      },
                      "type": "object"
                    },
                    "type": "array"
                  },
                  "success": {
                    "type": "boolean"
                  }
                },
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "bazaar"
  ],
  "sourceHost": "minifetch.com",
  "lastUpdated": "2026-09-16T23:06:02.793Z",
  "quality": {
    "calls30d": 21,
    "uniquePayers30d": 5,
    "lastCalledAt": "2026-09-16T23:06:02.35Z"
  },
  "liveness": {},
  "verified": false,
  "featured": false,
  "provider": {
    "host": "minifetch.com",
    "manifest_name": "minifetch.com",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-09-18T22:00:31.484Z"
  }
}