# X402 Site Map Discovery

> X402 Site Map Discovery is a paid API for AI agents from x402.feld-feder.at, paid per call via x402, $0.004/call, status down (last checked 2026-09-15).

Fetches a URL and extracts its sitemap URLs, feed URLs, page URLs, and robots.txt metadata for web discovery.

## Facts

- Endpoint: POST https://x402.feld-feder.at/v1/site/map
- Price: $0.004/call
- Payment: x402
- Status: down
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/x402-site-map-discovery-cbfd4228
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_JQtbTyG7URkIRFAFXLDEC

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 x402-site-map-discovery-cbfd4228 -d '<json body>'
```

Example prompt: Can you discover all the sitemaps, RSS feeds, and page URLs available on https://example.com, and check whether robots.txt allows crawling?

## When to prefer this

Use this endpoint when you need to programmatically discover a website's structure — sitemaps, feeds, and page links — without running a full crawl. It is ideal for pre-indexing checks, feed discovery, SEO audits, and robots.txt compliance checks. Prefer it over full crawlers when you only need discovery metadata from the root URL, not full page content. The pay-per-request x402 micropayment model makes it cost-effective for on-demand, agent-driven lookups.

## Known failure modes

- URL is unreachable or returns a non-2xx status code — endpoint may return an error or warnings array
- URL redirects too many times — redirect_count may exceed limits
- robots.txt is missing or malformed — robots_allowed may default or warnings may be populated
- HTML parsing fails due to non-HTML content type — response may contain empty URL arrays
- URL is malformed or too long (over 4096 chars) — schema validation error

## How this service works

Pay-per-request data tools for AI agents.

## Output

Returns a structured SiteDiscoveryResult containing: the final resolved URL (after redirects), HTTP status code, content type, content hash, retrieval timestamp, redirect count, the robots.txt URL, whether robots allow crawling, a list of sitemap URLs, feed URLs, page URLs, and any warnings encountered during discovery.

## 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",
    "bodyType",
    "body"
   ],
   "properties": {
    "body": {
     "type": "object",
     "title": "WebUrlRequest",
     "required": [
      "url"
     ],
     "properties": {
      "url": {
       "type": "string",
       "title": "Url",
       "maxLength": 4096,
       "minLength": 1
      }
     },
     "additionalProperties": false
    },
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "POST",
      "PUT",
      "PATCH"
     ],
     "type": "string"
    },
    "bodyType": {
     "enum": [
      "json",
      "form-data",
      "text"
     ],
     "type": "string"
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "title": "ResponseEnvelope[SiteDiscoveryResult]",
     "required": [
      "data"
     ],
     "properties": {
      "ok": {
       "type": "boolean",
       "const": true,
       "title": "Ok",
       "default": true
      },
      "data": {
       "type": "object",
       "title": "SiteDiscoveryResult",
       "required": [
        "source",
        "robots_url",
        "robots_allowed",
        "feed_urls",
        "sitemap_urls",
        "page_urls",
        "warnings"
       ],
       "properties": {
        "source": {
         "type": "object",
         "title": "SiteDiscoverySource",
         "required": [
          "requested_url",
          "final_url",
          "retrieved_at",
          "status_code",
          "content_type",
          "content_hash",
          "redirect_count"
         ],
         "properties": {
          "final_url": {
           "type": "string",
           "title": "Final Url"
          },
          "status_code": {
           "type": "integer",
           "title": "Status Code",
           "maximum": 299,
           "minimum": 200
          },
          "content_hash": {
           "type": "string",
           "title": "Content Hash",
           "pattern": "^sha256:[0-9a-f]{64}$"
          },
          "content_type": {
           "enum": [
            "application/xhtml+xml",
            "text/html"
           ],
           "type": "string",
           "title": "Content Type"
 
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "ok": true,
  "data": {
   "source": {
    "final_url": "https://example.com",
    "status_code": 200,
    "content_hash": "sha256:0000000000000000000000000000000000000000000000000000000000000000",
    "content_type": "text/html",
    "retrieved_at": "2026-01-01T00:00:00Z",
    "requested_url": "https://example.com",
    "redirect_count": 0
   },
   "warnings": [],
   "feed_urls": [],
   "page_urls": [],
   "robots_url": "https://example.com/robots.txt",
   "sitemap_urls": [],
   "robots_allowed": true
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/x402-site-map-discovery-cbfd4228/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.feld-feder.at](https://www.zero.xyz/host/x402.feld-feder.at/llms.txt)
