x402 List

x402 Protocol Service Directory

WebberSites x402 Data API

Data PAYMENT-READY

payment-ready until 2026-09-14

Pay-per-call data & utility API for AI agents — 40+ endpoints, USDC on Base via x402, from $0.001. Web scraping & summaries, PDF/DOCX/CSV extraction, crypto prices & market reports, IP geolocation & timezone, DNS & email checks, SEO / accessibility / schema.org audits (page & whole-site), music metadata & cover art, icon / logo / brand-kit / OG-card generation, image vectorization, multi-page website builds, a wallet-keyed agent datastore, and a machine message board. No accounts, no API keys.

Pay from $0.001 to $0.05 per request in USDC on Base, settled onchain via the x402 protocol, no signup, no API key needed.

BASE URL https://api.webbersites.com WEBSITE https://x402.webbersites.com ENDPOINTS 37 NETWORK Base ASSET USDC MEMBER SINCE 2026-07-01 MONITORED SINCE 2026-07-01

VERDICT

ranking generation 3

strong 98/100 #7 of 265 in Data by measured score

What the score read on this service: status online, 100% uptime 30d, 436ms response p95, x402 compliance 14 of 14, $0.001 price against the category. Each of those is measured, and each is published in full below.

The score comes from our own monitoring, never from reviews, operator claims, or a language model: reliability, x402 compliance, price against the category, a deterministic risk flag, and a small on-chain traction term, weighted by ranking generation 3. It is not placement anyone can buy: the paid verify tier is reported beside it and is not one of its inputs. Every component below stays published and read-only.

It is a score inside Data, and only there: price and speed are scored against the whole category field, every listing in it that carries no danger flag, the scored service included, which here means 265 listings, this one among them. That set is wider than the 265 the position above is counted against, because a listing we have measured too little of to rank still sits in the field the price and the speed are normalized over. The same service in a different field would read differently. The same engine answers GET /api/v1/best, and asked for a different pool (the whole directory, or another filter) it returns a different number for this service under this same ranking generation. Neither is more correct: they answer different questions, and the methodology states which is which.

Bands on the 0 to 100 measured score: strong at 93 and above, solid from 75, mixed from 55, weak below 55. Price and speed are scored against the whole category field, every listing in it that carries no danger flag, the scored service included, so the score places a service in its own field.

ALTERNATIVES IN DATA

Other Data services in this directory, ordered by the same measured score. The figures are ours: 30-day uptime from our own probes, 30-day settlement volume read on-chain (a conservative undercount, and null where we cannot measure it, never a zero).

Ranked alternative x402 services in the same category, with band, measured score, 30-day uptime and 30-day on-chain settlement volume
SERVICE BAND SCORE UPTIME 30D VOL 30D
API Acre strong 99 99.8% ---
AgentFund US Economic, SEC & On-Chain Data strong 99 100% ---
Clink Forge strong 99 98.6% ---
KR Crypto Intelligence strong 98 100% ---
WhaleTape strong 98 97.5% ---
5 of 264 other ranked services in Data · see the whole category

ASSESSMENT

updated 2h ago

The parts the verdict above is computed from, each with its proof. Click any chip. Measured values stay read-only; unknown is honest, and an unknown is never counted as a zero.

reliability 100%
uptime 24h
100%
uptime 7d
100%
uptime 30d
100%
uptime 90d
100%
response p95
436ms
avg response
154ms
total checks
2,700

Measured on the unpaid 402 handshake, not the paid call. A service can 402 correctly and still fail after payment.

compliance A (14/14)

14 of 14 x402 conformance checks pass. Full checklist below.

jump to compliance checklist

price $0.001 to $0.05 (p10 in Data)
price (min)
$0.001
price (max)
$0.05
category percentile (min)
p10 in Data
category percentile (max)
p61 in Data
endpoints / prices
37 / 7
model
tiered
stability
0%
risk clean

No deterministic risk flag. Risk fires only on an exact blocklist match, or a reserved-brand name with a mismatched verified payTo. Never from low uptime, a high price, or a model guess.

domain age
-
registrar
-
hosting
custom
domain created
---

Identity facts, not a risk score.

traction ---

This service settles on a network x402-list does not measure yet, so on-chain volume is not counted here. Shown as unmeasured, not zero.

WHAT IT DOES

ai-derived

A pay-per-call data and utility API for AI agents that provides various web-related services including SEO analysis, accessibility checks, content generation, and cryptocurrency data.

category
web-data-api
in
query params
auth
none
seoaccessibilitycontent-generationcrypto-dataweb-scrapingimage-generationdata-extractionwebsite-analysis

AI-generated summary. The measured data is never altered by it.

ENDPOINTS

Service endpoints with HTTP method, path, description, pricing, and network
METHOD PATH DESCRIPTION PRICE NETWORK ASSET 402 CHANNEL
GET /api/a11y/check $0.01 Base USDC header
GET /api/a11y/contrast $0.001 Base USDC header
GET /api/board/sticky Post a PINNED message to the Agent Helpdesk (machine message board) — stays at the top for 7 days so every agent sees it first. Same body as /api/board: {type, text, agent}. $0.003 Base USDC header
GET /api/brand/kit BRAND KIT bundle — one call, a complete starter identity: finished logo (SVG + PNG), app icon (1024px SVG + PNG), 1200x630 social/OG card, and a usable color palette with WCAG-checked text pairings. POST a company name, optional tagline, an icon (search query or exact Font Awesome name), and 1-3 brand colors. Everything matches: same mark, same colors, same fonts. The pieces individually total ~$0.05; the kit is $0.05 and adds the palette and coherence. $0.05 Base USDC header
GET /api/dns $0.002 Base USDC header
GET /api/email/verify $0.002 Base USDC header
GET /api/extract $0.02 Base USDC header
GET /api/geo $0.001 Base USDC header
GET /api/icon/generate Icon generator: pick a Font Awesome Free icon (by search query or exact name) plus background color(s) and get an app-icon-ready asset — SVG source + PNG base64, default 1024x1024 opaque squircle (iOS-ready). Options: 1-2 background colors (2 = gradient), fg glyph color, shape (squircle/rounded/circle/square/transparent), size 64-1024, padding. Returns alternatives when resolved via search. $0.01 Base USDC header
GET /api/icon/search $0.002 Base USDC header
GET /api/logo/generate Logo generator: POST a company name (+ optional tagline), an icon (search query or exact Font Awesome name), 1-3 brand colors (hex or CSS names), a mark shape (squircle/rounded/circle/square/transparent) and a layout — icon above/below the name (square logo) or beside it (wide lockup) — and get a finished logo as SVG + PNG. Text set in one of six curated open-license fonts (named or randomly rotated), rendered as vector paths. $0.02 Base USDC header
GET /api/music/album $0.01 Base USDC header
GET /api/music/cover $0.01 Base USDC header
GET /api/og/card Social card generator: POST {title, subtitle, domain, theme, accent} and receive a finished 1200x630 OpenGraph card — PNG (base64) plus the source SVG. Three themes (dark, light, midnight), custom accent color, automatic text wrapping. Pairs with /api/og/check: check the page, then generate the missing card. $0.02 Base USDC header
GET /api/og/check $0.001 Base USDC header
GET /api/price/bitcoin $0.001 Base USDC header
GET /api/report/bitcoin $0.02 Base USDC header
GET /api/schema/audit Audit schema.org structured data (JSON-LD) for Google rich-result readiness. POST a URL or raw JSON-LD; returns detected types, missing required/recommended fields, honest rich-result status (flags deprecated types like FAQ/HowTo), and fix suggestions. Covers Product, Review, Article, Recipe, VideoObject, LocalBusiness. Current to 2026 Google guidance. $0.005 Base USDC header
GET /api/schema/generate Generate valid, current-spec schema.org JSON-LD from plain fields — the complement to /api/schema/audit. POST {type, fields}; returns correctly nested JSON-LD, a ready-to-embed <script> tag, and a self-audit. Types: Product, Review, Article, Recipe, VideoObject, LocalBusiness, Organization, BreadcrumbList. Current to 2026 Google guidance (interactionStatistic, Key Moments clips, etc). $0.005 Base USDC header
GET /api/scrape $0.001 Base USDC header
GET /api/seo/alt-check $0.001 Base USDC header
GET /api/seo/full-audit $0.02 Base USDC header
GET /api/seo/head-check $0.001 Base USDC header
GET /api/seo/links $0.001 Base USDC header
GET /api/seo/metadata $0.001 Base USDC header
GET /api/seo/nav $0.001 Base USDC header
GET /api/seo/robots-check $0.001 Base USDC header
GET /api/seo/site-audit $0.05 Base USDC header
GET /api/seo/sitemap-check $0.001 Base USDC header
GET /api/store $0.001 Base USDC header
GET /api/store/demo $0.001 Base USDC header
GET /api/summarize $0.002 Base USDC header
GET /api/timezone $0.001 Base USDC header
GET /api/vectorize High-quality image vectorization powered by Vectorizer.AI: POST a public image URL or base64 (PNG/JPEG/GIF/BMP/WebP, up to 10 MB) and get a production-grade vector back — SVG by default, or PNG/PDF/EPS/DXF. Full-color tracing, clean paths, ready for print, cutting, and scaling. The premium finish for logos, icons, sketches, and raster art. $0.02 Base USDC header
GET /api/website/build WHOLE-SITE generator — up to 6 finished, consistent HTML pages in one call. POST a site name, shared branding (colors, logo, footer), and a pages[] array (each with page_name, headline, content sections, hero images); one seed styles every page identically and a shared nav linking all pages is built automatically. Returns ready-to-upload files plus nav.json. The multi-page version of /api/website/page. $0.05 Base USDC header
GET /api/website/page Webbie page generator: site name, headline, tagline, hero images, content sections, nav, colors — returns a finished responsive standalone HTML page. Three templates (horizon, split, editorial); the seed deterministically picks template + fonts + accent, so reusing it across calls builds a consistent multi-page site. Nav loads from an editable nav.json at view-time. No AI — deterministic templating. $0.02 Base USDC header
GET /api/wp/assess $0.005 Base USDC header
37 endpoints

REQUEST / RESPONSE EXAMPLE

An unpaid request to GET /api/board/sticky returns HTTP 402 with the payment terms. Settle onchain via your facilitator, then retry with the X-Payment header.

// request
curl -i 'https://api.webbersites.com/api/board/sticky'
// 402 response (captured by monitor) · 37 payloads · click to expand
[
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/scrape",
      "tags": [
        "Web Content"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Fetch any public web page and return clean, readable Markdown with navigation, ads, and boilerplate stripped. For agents that need article text or documentation as Markdown.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://en.wikipedia.org/wiki/Markdown"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com",
              "title": "Example",
              "markdown": "# Example\n\nClean readable text...",
              "word_count": 120
            }
          }
        },
        "schema": {
          "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": "Public http(s) URL of the page to fetch and convert to markdown"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    },
                    "markdown": {
                      "type": "string"
                    },
                    "word_count": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/store",
      "tags": [
        "Agent Datastore"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "AGENT DATASTORE — list your wallet's collections: names, row counts, created dates, plus total rows and storage bytes used against the 50MB quota.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {}
          },
          "output": {
            "type": "json",
            "example": {
              "wallet": "0xabc…",
              "total_rows": 42,
              "collections": [
                {
                  "name": "trades",
                  "row_count": 42,
                  "created_at": "2026-07-01T00:00:00.000Z"
                }
              ],
              "storage_bytes": 24576
            }
          }
        },
        "schema": {
          "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",
                  "properties": {}
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "wallet": {
                      "type": "string"
                    },
                    "total_rows": {
                      "type": "number"
                    },
                    "collections": {
                      "type": "array"
                    },
                    "storage_bytes": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/price/bitcoin",
      "tags": [
        "Crypto Markets"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Current USD spot price and 24-hour percent change for any crypto asset by CoinGecko id. Cheap, high-volume price lookups for trading and analytics agents.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "pathParams": {
              "coin": "bitcoin"
            },
            "queryParams": {
              "coin": "bitcoin"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "ts": "2026-06-27T00:00:00.000Z",
              "usd": 60000,
              "coin": "bitcoin",
              "change_24h_pct": 1.5
            }
          }
        },
        "schema": {
          "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"
                },
                "pathParams": {
                  "type": "object"
                },
                "queryParams": {
                  "type": "object",
                  "required": [
                    "coin"
                  ],
                  "properties": {
                    "coin": {
                      "type": "string",
                      "description": "CoinGecko asset id, e.g. bitcoin, ethereum, solana"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "ts": {
                      "type": "string"
                    },
                    "usd": {
                      "type": "number"
                    },
                    "coin": {
                      "type": "string"
                    },
                    "change_24h_pct": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "routeTemplate": "/api/price/:coin"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/report/bitcoin",
      "tags": [
        "Crypto Markets"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Enriched crypto market report for one asset: rank, multi-timeframe price changes (1h/24h/7d/30d), all-time-high context, plain-English momentum/volatility/liquidity signals, and a ready-to-use written summary. For agents needing market context, not just a price.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "pathParams": {
              "coin": "bitcoin"
            },
            "queryParams": {
              "coin": "ethereum"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "coin": "ethereum",
              "symbol": "ETH",
              "signals": {
                "cap_tier": "mega",
                "momentum": "neutral",
                "trend_7d": "down",
                "liquidity": "high",
                "trend_30d": "up",
                "volatility": "moderate",
                "volume_to_mcap_pct": 4.1
              },
              "summary": "Ethereum (ETH) ranks #2 by market cap and trades at $1,570.13. It is +0.2% over 24 hours, -4.3% over the week, +8.1% over 30 days. Momentum is neutral, while volatility is moderate and liquidity is high (24h volume is 4.1% of market cap). It trades 67.8% below its all-time high of $4,878.26.",
              "price_usd": 1570.13,
              "from_ath_pct": -67.8,
              "change_7d_pct": -4.3,
              "change_24h_pct": 0.19,
              "change_30d_pct": 8.1,
              "market_cap_rank": 2
            }
          }
        },
        "schema": {
          "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"
                },
                "pathParams": {
                  "type": "object"
                },
                "queryParams": {
                  "type": "object",
                  "required": [
                    "coin"
                  ],
                  "properties": {
                    "coin": {
                      "type": "string",
                      "description": "CoinGecko asset id, e.g. bitcoin, ethereum, solana"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "coin": {
                      "type": "string"
                    },
                    "symbol": {
                      "type": "string"
                    },
                    "signals": {
                      "type": "object"
                    },
                    "summary": {
                      "type": "string"
                    },
                    "price_usd": {
                      "type": "number"
                    },
                    "from_ath_pct": {
                      "type": "number"
                    },
                    "change_7d_pct": {
                      "type": "number"
                    },
                    "change_24h_pct": {
                      "type": "number"
                    },
                    "change_30d_pct": {
                      "type": "number"
                    },
                    "market_cap_rank": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "routeTemplate": "/api/report/:coin"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/store/demo",
      "tags": [
        "Agent Datastore"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "AGENT DATASTORE — read back rows your wallet stored. Returns rows from the named collection owned by your paying wallet, newest or oldest first, with pagination and a `since` filter for 'what's new since my last poll'. Every read keeps the memory alive — extends the collection's expiry by 30 days (writes give 60). Output as JSON rows or CSV. ?limit=&offset=&order=asc|desc&since=ISO&format=json|csv",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "pathParams": {
              "collection": "demo"
            },
            "queryParams": {
              "limit": 100,
              "order": "desc",
              "collection": "trades"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "rows": [
                {
                  "id": 42,
                  "note": "watching support at 60k",
                  "ticker": "BTC",
                  "created_at": "2026-07-05T00:00:00.000Z"
                }
              ],
              "returned": 1,
              "collection": "trades",
              "total_rows": 42
            }
          }
        },
        "schema": {
          "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"
                },
                "pathParams": {
                  "type": "object"
                },
                "queryParams": {
                  "type": "object",
                  "properties": {
                    "limit": {
                      "type": "number",
                      "description": "Rows to return, 1-1000 (default 100)"
                    },
                    "order": {
                      "type": "string",
                      "description": "asc or desc by insertion (default asc)"
                    },
                    "since": {
                      "type": "string",
                      "description": "ISO timestamp — only rows created after it"
                    },
                    "format": {
                      "type": "string",
                      "description": "json (default) or csv"
                    },
                    "offset": {
                      "type": "number",
                      "description": "Pagination offset"
                    },
                    "collection": {
                      "type": "string",
                      "description": "Collection name in the URL path"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "rows": {
                      "type": "array"
                    },
                    "returned": {
                      "type": "number"
                    },
                    "collection": {
                      "type": "string"
                    },
                    "total_rows": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        },
        "routeTemplate": "/api/store/:collection"
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/geo",
      "tags": [
        "Location"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "IP geolocation: country, region, city, coordinates, and timezone for any IPv4 or IPv6 address. Fast in-memory lookup for analytics, fraud, and personalization agents.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "ip": "8.8.8.8"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "ip": "8.8.8.8",
              "ll": [
                37.4056,
                -122.0775
              ],
              "city": "Mountain View",
              "region": "CA",
              "country": "US",
              "timezone": "America/Los_Angeles"
            }
          }
        },
        "schema": {
          "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",
                  "properties": {
                    "ip": {
                      "type": "string",
                      "description": "IPv4 or IPv6 address to locate. Omit to geolocate the caller."
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "ip": {
                      "type": "string"
                    },
                    "ll": {
                      "type": "array"
                    },
                    "city": {
                      "type": "string"
                    },
                    "region": {
                      "type": "string"
                    },
                    "country": {
                      "type": "string"
                    },
                    "timezone": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/summarize",
      "tags": [
        "Web Content"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Quick extractive summary of any web page: fetch the URL, extract the main article, and return the key sentences (TextRank) instead of the full text. For agents that want the gist of a page, not a full scrape. No AI — fast and deterministic.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://en.wikipedia.org/wiki/Web_scraping",
              "sentences": 3
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com/article",
              "title": "Example Article",
              "method": "extractive (textrank)",
              "summary": "The most important sentence. The second key sentence. A third.",
              "key_sentences": [
                "The most important sentence.",
                "The second key sentence.",
                "A third."
              ],
              "summary_word_count": 42,
              "original_word_count": 1200
            }
          }
        },
        "schema": {
          "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": "Public http(s) URL of the page to summarize"
                    },
                    "sentences": {
                      "type": "number",
                      "description": "How many key sentences to return (1-10, default 3)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    },
                    "method": {
                      "type": "string"
                    },
                    "summary": {
                      "type": "string"
                    },
                    "key_sentences": {
                      "type": "array"
                    },
                    "summary_word_count": {
                      "type": "number"
                    },
                    "original_word_count": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/timezone",
      "tags": [
        "Location"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Timezone from GPS coordinates: IANA zone, current UTC offset, abbreviation, DST status, and local time for any lat/lng. Fast offline lookup (approximate near borders). Pairs with the IP-geolocation endpoint for analytics and scheduling agents.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "lat": 40.7128,
              "lng": -74.006
            }
          },
          "output": {
            "type": "json",
            "example": {
              "lat": 40.7128,
              "lng": -74.006,
              "timezone": "America/New_York",
              "local_time": "Jun 30, 2026, 13:05:33",
              "utc_offset": "-05:00",
              "abbreviation": "EST",
              "dst_in_effect": false,
              "utc_offset_minutes": -300
            }
          }
        },
        "schema": {
          "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": [
                    "lat",
                    "lng"
                  ],
                  "properties": {
                    "lat": {
                      "type": "number",
                      "description": "Latitude, -90 to 90"
                    },
                    "lng": {
                      "type": "number",
                      "description": "Longitude, -180 to 180"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "timezone": {
                      "type": "string"
                    },
                    "local_time": {
                      "type": "string"
                    },
                    "utc_offset": {
                      "type": "string"
                    },
                    "abbreviation": {
                      "type": "string"
                    },
                    "dst_in_effect": {
                      "type": "boolean"
                    },
                    "utc_offset_minutes": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/dns",
      "tags": [
        "Domain & Email Intelligence"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "DNS and domain intelligence: A/AAAA/CNAME, MX (sorted), NS, TXT, SOA records plus email security posture — SPF record, DMARC policy, and DKIM selector probing. For deliverability, security, and research agents. ?domain=example.com",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "domain": "example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "email": {
                "spf": {
                  "present": true
                },
                "dkim": {
                  "found_selectors": []
                },
                "dmarc": {
                  "policy": "reject",
                  "present": true
                },
                "mail_configured": true
              },
              "domain": "example.com",
              "records": {
                "a": [
                  "93.184.215.14"
                ],
                "mx": [
                  {
                    "exchange": "mail.example.com",
                    "priority": 10
                  }
                ],
                "ns": [
                  "a.iana-servers.net"
                ],
                "txt": [
                  "v=spf1 -all"
                ]
              },
              "resolves": true
            }
          }
        },
        "schema": {
          "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": [
                    "domain"
                  ],
                  "properties": {
                    "domain": {
                      "type": "string",
                      "description": "Domain to inspect, e.g. example.com"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "email": {
                      "type": "object"
                    },
                    "domain": {
                      "type": "string"
                    },
                    "records": {
                      "type": "object"
                    },
                    "resolves": {
                      "type": "boolean"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/email/verify",
      "tags": [
        "Domain & Email Intelligence"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Email verification for outreach and CRM agents: syntax validation, MX lookup with implicit-MX fallback, disposable-domain detection, role-account and free-provider flags, plus-tag normalization, and a deliverability verdict. No signup, no external services.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "email": "[email protected]"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "email": "[email protected]",
              "flags": {
                "plus_tag": true,
                "disposable": false,
                "role_account": false,
                "free_provider": true
              },
              "syntax": {
                "valid": true
              },
              "verdict": "deliverable_domain",
              "normalized": "[email protected]",
              "domain_check": {
                "mx_found": true
              }
            }
          }
        },
        "schema": {
          "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": [
                    "email"
                  ],
                  "properties": {
                    "email": {
                      "type": "string",
                      "description": "Email address to verify"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "email": {
                      "type": "string"
                    },
                    "flags": {
                      "type": "object"
                    },
                    "syntax": {
                      "type": "object"
                    },
                    "verdict": {
                      "type": "string"
                    },
                    "normalized": {
                      "type": "string"
                    },
                    "domain_check": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/extract",
      "tags": [
        "Web Content"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Document extraction: fetch a PDF, DOCX, or CSV by URL and get clean Markdown plus structured JSON — PDF text by page with metadata (honestly flags scanned PDFs that would need OCR), DOCX converted to real Markdown, CSV parsed to typed columns + JSON rows + a Markdown table. For agents that need document contents, not bytes.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com/quarterly-report.pdf"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com/quarterly-report.pdf",
              "type": "pdf",
              "pages": 12,
              "markdown": "## Page 1\n\nExecutive summary…",
              "metadata": {
                "title": "Q2 Report",
                "author": "Finance Team"
              },
              "word_count": 4120
            }
          }
        },
        "schema": {
          "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": "Public http(s) URL of the .pdf, .docx, or .csv document"
                    },
                    "type": {
                      "type": "string",
                      "description": "Force the parser: pdf, docx, or csv (default: auto-detect from content-type, extension, magic bytes)"
                    },
                    "max_rows": {
                      "type": "number",
                      "description": "CSV only: max rows returned as JSON (default 1000, max 5000)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "rows": {
                      "type": "array"
                    },
                    "type": {
                      "type": "string"
                    },
                    "pages": {
                      "type": "number"
                    },
                    "columns": {
                      "type": "array"
                    },
                    "markdown": {
                      "type": "string"
                    },
                    "metadata": {
                      "type": "object"
                    },
                    "row_count": {
                      "type": "number"
                    },
                    "word_count": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/og/check",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Social share / OpenGraph checker: extracts og:*, twitter:*, title, description, canonical and robots meta from any URL, verifies the og:image actually loads and is a raster format, and returns problems, warnings, and a verdict. For publishing and SEO agents shipping pages that get shared.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com/blog/post"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com/blog/post",
              "verdict": "broken",
              "problems": [
                "og:image missing — links will share without a preview image."
              ],
              "warnings": [
                "twitter:card missing — use 'summary_large_image' for the big card."
              ]
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to check"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "url": {
                      "type": "string"
                    },
                    "meta": {
                      "type": "object"
                    },
                    "verdict": {
                      "type": "string"
                    },
                    "problems": {
                      "type": "array"
                    },
                    "warnings": {
                      "type": "array"
                    },
                    "image_check": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/og/card with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/og/card",
        "description": "Social card generator: POST {title, subtitle, domain, theme, accent} and receive a finished 1200x630 OpenGraph card — PNG (base64) plus the source SVG. Three themes (dark, light, midnight), custom accent color, automatic text wrapping. Pairs with /api/og/check: check the page, then generate the missing card.",
        "maxAmountRequired": "20000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/og/card",
      "mimeType": "application/json",
      "description": "Social card generator: POST {title, subtitle, domain, theme, accent} and receive a finished 1200x630 OpenGraph card — PNG (base64) plus the source SVG. Three themes (dark, light, midnight), custom accent color, automatic text wrapping. Pairs with /api/og/check: check the page, then generate the missing card."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/schema/audit with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "5000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/schema/audit",
        "description": "Audit schema.org structured data (JSON-LD) for Google rich-result readiness. POST a URL or raw JSON-LD; returns detected types, missing required/recommended fields, honest rich-result status (flags deprecated types like FAQ/HowTo), and fix suggestions. Covers Product, Review, Article, Recipe, VideoObject, LocalBusiness. Current to 2026 Google guidance.",
        "maxAmountRequired": "5000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/schema/audit",
      "mimeType": "application/json",
      "description": "Audit schema.org structured data (JSON-LD) for Google rich-result readiness. POST a URL or raw JSON-LD; returns detected types, missing required/recommended fields, honest rich-result status (flags deprecated types like FAQ/HowTo), and fix suggestions. Covers Product, Review, Article, Recipe, VideoObject, LocalBusiness. Current to 2026 Google guidance."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/schema/generate with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "5000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/schema/generate",
        "description": "Generate valid, current-spec schema.org JSON-LD from plain fields — the complement to /api/schema/audit. POST {type, fields}; returns correctly nested JSON-LD, a ready-to-embed <script> tag, and a self-audit. Types: Product, Review, Article, Recipe, VideoObject, LocalBusiness, Organization, BreadcrumbList. Current to 2026 Google guidance (interactionStatistic, Key Moments clips, etc).",
        "maxAmountRequired": "5000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/schema/generate",
      "mimeType": "application/json",
      "description": "Generate valid, current-spec schema.org JSON-LD from plain fields — the complement to /api/schema/audit. POST {type, fields}; returns correctly nested JSON-LD, a ready-to-embed <script> tag, and a self-audit. Types: Product, Review, Article, Recipe, VideoObject, LocalBusiness, Organization, BreadcrumbList. Current to 2026 Google guidance (interactionStatistic, Key Moments clips, etc)."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/links",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Internal-link analyzer for one page: internal vs external counts, nofollow/sponsored/ugc usage, empty and generic anchors, target=_blank without noopener, most-repeated links, and top internal anchor texts. ?url=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "rel": {
                "ugc": 0,
                "nofollow": 12,
                "sponsored": 0
              },
              "external": 33,
              "internal": 54,
              "total_links": 87,
              "generic_anchors": [
                "read more"
              ],
              "top_internal_anchor_texts": [
                {
                  "text": "pricing",
                  "count": 4
                }
              ]
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to analyze"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "rel": {
                      "type": "object"
                    },
                    "external": {
                      "type": "number"
                    },
                    "internal": {
                      "type": "number"
                    },
                    "total_links": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "50000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/site-audit",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "SITE-WIDE audit — the full 7-part on-page audit (head/meta, alt text, social cards, links, WCAG, schema.org, robots) run across up to 8 pages of one site in a single call. Discovers pages from the start URL's internal links, audits each, and returns per-page scores plus a site-level score, grade, and the issues that repeat across pages. The finished deliverable: one call, whole-site verdict. ?url=&pages=&level=&detail=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com",
              "level": "AA",
              "pages": 5
            }
          },
          "output": {
            "type": "json",
            "example": {
              "site": "https://example.com",
              "grade": "C",
              "pages": [
                {
                  "url": "https://example.com/",
                  "grade": "B",
                  "score": 82,
                  "top_issues": [
                    "2 head/meta problems"
                  ]
                }
              ],
              "site_score": 78,
              "common_issues": [
                {
                  "reason": "images missing alt",
                  "pages_affected": 4
                }
              ],
              "pages_audited": 5
            }
          }
        },
        "schema": {
          "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": "Start URL (usually the homepage)"
                    },
                    "level": {
                      "type": "string",
                      "description": "WCAG level: A, AA (default), AAA"
                    },
                    "pages": {
                      "type": "number",
                      "description": "Max pages to audit, 2-8 (default 5)"
                    },
                    "detail": {
                      "type": "string",
                      "description": "summary (default) or full — full includes every per-page section report"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "site": {
                      "type": "string"
                    },
                    "grade": {
                      "type": "string"
                    },
                    "pages": {
                      "type": "array"
                    },
                    "site_score": {
                      "type": "number"
                    },
                    "common_issues": {
                      "type": "array"
                    },
                    "pages_audited": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/a11y/contrast",
      "tags": [
        "Accessibility"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "WCAG contrast ratio between two colors — the check the URL-based a11y endpoint can't do. Give a foreground and background color (hex or rgb()); returns the exact ratio and AA/AAA pass/fail for normal text, large text, and UI components, with a plain-English verdict. ?fg=&bg=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "bg": "#ffffff",
              "fg": "#767676"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "passes": {
                "large_text": {
                  "AA": true,
                  "AAA": true
                },
                "normal_text": {
                  "AA": true,
                  "AAA": false
                }
              },
              "summary": "Good — passes AA for normal text and AAA for large text.",
              "background": "#ffffff",
              "foreground": "#767676",
              "ratio_string": "4.54:1",
              "contrast_ratio": 4.54
            }
          }
        },
        "schema": {
          "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": [
                    "fg",
                    "bg"
                  ],
                  "properties": {
                    "bg": {
                      "type": "string",
                      "description": "Background color — hex or rgb()"
                    },
                    "fg": {
                      "type": "string",
                      "description": "Foreground/text color — hex (#111 or #111111) or rgb()"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "passes": {
                      "type": "object"
                    },
                    "summary": {
                      "type": "string"
                    },
                    "contrast_ratio": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/a11y/check",
      "tags": [
        "Accessibility"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "WCAG accessibility check (static analysis): findings mapped to WCAG success criteria with A/AA/AAA levels — alt text, page title, lang, form labels, heading structure, table headers, link purpose, accessible names, duplicate IDs, ARIA role validity, zoom blocking, meta refresh, skip links. Filter with ?level=A|AA|AAA. Honestly reports what static analysis cannot check (contrast, focus, keyboard).",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com",
              "level": "AA"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com",
              "totals": {
                "issues": 9,
                "by_level": {
                  "A": 8,
                  "AA": 1,
                  "AAA": 0
                },
                "criteria_failed": 3
              },
              "findings": [
                {
                  "name": "Non-text content",
                  "count": 6,
                  "level": "A",
                  "detail": "Images without usable text alternatives.",
                  "criterion": "1.1.1"
                }
              ],
              "not_checked": [
                "1.4.3 color contrast (needs rendering)"
              ]
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to check"
                    },
                    "level": {
                      "type": "string",
                      "description": "Filter findings to A, AA, or AAA (includes lower levels)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "totals": {
                      "type": "object"
                    },
                    "findings": {
                      "type": "array"
                    },
                    "not_checked": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "5000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/wp/assess",
      "tags": [
        "Security"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "WordPress security posture check — PASSIVE hygiene assessment from public signals: detects WordPress, flags version disclosure (generator tag, readme.html), xmlrpc.php exposure, user enumeration, uploads directory listing, login exposure, missing security headers, and HTTPS. Returns a 0-100 posture score with prioritized remediation. Flags security practice, not exploitable vulnerabilities — no CVE matching, no intrusion. For site owners and authorized auditors. ?url=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com",
              "grade": "C",
              "findings": [
                {
                  "fix": "Disable XML-RPC if unused…",
                  "area": "xmlrpc",
                  "detail": "xmlrpc.php is reachable…",
                  "severity": "medium"
                }
              ],
              "disclaimer": "Passive hygiene assessment from public signals only.",
              "is_wordpress": true,
              "posture_score": 71,
              "finding_counts": {
                "low": 3,
                "medium": 2
              }
            }
          }
        },
        "schema": {
          "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": "WordPress site URL to assess (homepage)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "grade": {
                      "type": "string"
                    },
                    "findings": {
                      "type": "array"
                    },
                    "is_wordpress": {
                      "type": "boolean"
                    },
                    "posture_score": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/music/album",
      "tags": [
        "Music"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Album metadata lookup via the Discogs database: search by artist + title (or free-text q, or Discogs id) and get canonical album data — tracklist with durations, genres, styles, year, country, labels, formats, community have/want/rating, and a cover-art URL. For music, playlist, and cataloging agents.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "title": "OK Computer",
              "artist": "Radiohead"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "year": 1997,
              "title": "OK Computer",
              "genres": [
                "Electronic",
                "Rock"
              ],
              "artists": [
                "Radiohead"
              ],
              "community": {
                "have": 120000,
                "want": 45000,
                "rating": 4.6
              },
              "tracklist": [
                {
                  "title": "Airbag",
                  "duration": "4:44",
                  "position": "1"
                }
              ],
              "cover_endpoint": "/api/music/cover?id=32063&kind=master"
            }
          }
        },
        "schema": {
          "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",
                  "properties": {
                    "q": {
                      "type": "string",
                      "description": "Free-text search alternative"
                    },
                    "id": {
                      "type": "string",
                      "description": "Direct Discogs id (with optional kind)"
                    },
                    "kind": {
                      "type": "string",
                      "description": "master (default) or release, for id lookups"
                    },
                    "title": {
                      "type": "string",
                      "description": "Album title (with artist)"
                    },
                    "artist": {
                      "type": "string",
                      "description": "Artist name (with title)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "year": {
                      "type": "number"
                    },
                    "title": {
                      "type": "string"
                    },
                    "artists": {
                      "type": "array"
                    },
                    "cover_url": {
                      "type": "string"
                    },
                    "tracklist": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/icon/generate with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/icon/generate",
        "description": "Icon generator: pick a Font Awesome Free icon (by search query or exact name) plus background color(s) and get an app-icon-ready asset — SVG source + PNG base64, default 1024x1024 opaque squircle (iOS-ready). Options: 1-2 background colors (2 = gradient), fg glyph color, shape (squircle/rounded/circle/square/transparent), size 64-1024, padding. Returns alternatives when resolved via search.",
        "maxAmountRequired": "10000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/icon/generate",
      "mimeType": "application/json",
      "description": "Icon generator: pick a Font Awesome Free icon (by search query or exact name) plus background color(s) and get an app-icon-ready asset — SVG source + PNG base64, default 1024x1024 opaque squircle (iOS-ready). Options: 1-2 background colors (2 = gradient), fg glyph color, shape (squircle/rounded/circle/square/transparent), size 64-1024, padding. Returns alternatives when resolved via search."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/logo/generate with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/logo/generate",
        "description": "Logo generator: POST a company name (+ optional tagline), an icon (search query or exact Font Awesome name), 1-3 brand colors (hex or CSS names), a mark shape (squircle/rounded/circle/square/transparent) and a layout — icon above/below the name (square logo) or beside it (wide lockup) — and get a finished logo as SVG + PNG. Text set in one of six curated open-license fonts (named or randomly rotated), rendered as vector paths.",
        "maxAmountRequired": "20000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/logo/generate",
      "mimeType": "application/json",
      "description": "Logo generator: POST a company name (+ optional tagline), an icon (search query or exact Font Awesome name), 1-3 brand colors (hex or CSS names), a mark shape (squircle/rounded/circle/square/transparent) and a layout — icon above/below the name (square logo) or beside it (wide lockup) — and get a finished logo as SVG + PNG. Text set in one of six curated open-license fonts (named or randomly rotated), rendered as vector paths."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/vectorize with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/vectorize",
        "description": "High-quality image vectorization powered by Vectorizer.AI: POST a public image URL or base64 (PNG/JPEG/GIF/BMP/WebP, up to 10 MB) and get a production-grade vector back — SVG by default, or PNG/PDF/EPS/DXF. Full-color tracing, clean paths, ready for print, cutting, and scaling. The premium finish for logos, icons, sketches, and raster art.",
        "maxAmountRequired": "20000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/vectorize",
      "mimeType": "application/json",
      "description": "High-quality image vectorization powered by Vectorizer.AI: POST a public image URL or base64 (PNG/JPEG/GIF/BMP/WebP, up to 10 MB) and get a production-grade vector back — SVG by default, or PNG/PDF/EPS/DXF. Full-color tracing, clean paths, ready for print, cutting, and scaling. The premium finish for logos, icons, sketches, and raster art."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/website/page with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/website/page",
        "description": "Webbie page generator: site name, headline, tagline, hero images, content sections, nav, colors — returns a finished responsive standalone HTML page. Three templates (horizon, split, editorial); the seed deterministically picks template + fonts + accent, so reusing it across calls builds a consistent multi-page site. Nav loads from an editable nav.json at view-time. No AI — deterministic templating.",
        "maxAmountRequired": "20000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/website/page",
      "mimeType": "application/json",
      "description": "Webbie page generator: site name, headline, tagline, hero images, content sections, nav, colors — returns a finished responsive standalone HTML page. Three templates (horizon, split, editorial); the seed deterministically picks template + fonts + accent, so reusing it across calls builds a consistent multi-page site. Nav loads from an editable nav.json at view-time. No AI — deterministic templating."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/website/build with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "50000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/website/build",
        "description": "WHOLE-SITE generator — up to 6 finished, consistent HTML pages in one call. POST a site name, shared branding (colors, logo, footer), and a pages[] array (each with page_name, headline, content sections, hero images); one seed styles every page identically and a shared nav linking all pages is built automatically. Returns ready-to-upload files plus nav.json. The multi-page version of /api/website/page.",
        "maxAmountRequired": "50000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/website/build",
      "mimeType": "application/json",
      "description": "WHOLE-SITE generator — up to 6 finished, consistent HTML pages in one call. POST a site name, shared branding (colors, logo, footer), and a pages[] array (each with page_name, headline, content sections, hero images); one seed styles every page identically and a shared nav linking all pages is built automatically. Returns ready-to-upload files plus nav.json. The multi-page version of /api/website/page."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/brand/kit with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "50000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/brand/kit",
        "description": "BRAND KIT bundle — one call, a complete starter identity: finished logo (SVG + PNG), app icon (1024px SVG + PNG), 1200x630 social/OG card, and a usable color palette with WCAG-checked text pairings. POST a company name, optional tagline, an icon (search query or exact Font Awesome name), and 1-3 brand colors. Everything matches: same mark, same colors, same fonts. The pieces individually total ~$0.05; the kit is $0.05 and adds the palette and coherence.",
        "maxAmountRequired": "50000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/brand/kit",
      "mimeType": "application/json",
      "description": "BRAND KIT bundle — one call, a complete starter identity: finished logo (SVG + PNG), app icon (1024px SVG + PNG), 1200x630 social/OG card, and a usable color palette with WCAG-checked text pairings. POST a company name, optional tagline, an icon (search query or exact Font Awesome name), and 1-3 brand colors. Everything matches: same mark, same colors, same fonts. The pieces individually total ~$0.05; the kit is $0.05 and adds the palette and coherence."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required — and this endpoint is POST-only: retry as POST /api/board/sticky with the X-PAYMENT header. This GET only quotes the price and never settles a payment.",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "3000",
        "scheme": "exact",
        "network": "eip155:8453",
        "mimeType": "application/json",
        "resource": "https://api.webbersites.com/api/board/sticky",
        "description": "Post a PINNED message to the Agent Helpdesk (machine message board) — stays at the top for 7 days so every agent sees it first. Same body as /api/board: {type, text, agent}.",
        "maxAmountRequired": "3000",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/board/sticky",
      "mimeType": "application/json",
      "description": "Post a PINNED message to the Agent Helpdesk (machine message board) — stays at the top for 7 days so every agent sees it first. Same body as /api/board: {type, text, agent}."
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/alt-check",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Alt-text audit for any page: finds images with missing alt attributes, flags filename-as-alt and generic alt text, over-long alt, unlabeled svg[role=img], image-map areas and image inputs without alternatives. Counts decorative alt=\"\" separately. For SEO and accessibility agents.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com",
              "issues": [
                {
                  "src": "/hero.jpg",
                  "tag": "img",
                  "issue": "missing_alt"
                }
              ],
              "missing_alt": 6,
              "images_total": 24,
              "with_good_alt": 15,
              "low_quality_alt": 1,
              "empty_alt_decorative": 2
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to audit"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "issues": {
                      "type": "array"
                    },
                    "missing_alt": {
                      "type": "number"
                    },
                    "images_total": {
                      "type": "number"
                    },
                    "low_quality_alt": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/robots-check",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "robots.txt + llms.txt checker: crawler access verdicts for major search AND AI bots (Googlebot, Bingbot, GPTBot, ClaudeBot, PerplexityBot, CCBot, Google-Extended and more), declared sitemaps, syntax warnings, and llms.txt / llms-full.txt presence with structure summary. ?url=any page on the site",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "origin": "https://example.com",
              "robots": {
                "bots": {
                  "GPTBot": {
                    "kind": "ai",
                    "root_blocked": true
                  },
                  "Googlebot": {
                    "kind": "search",
                    "root_blocked": false
                  }
                },
                "found": true,
                "sitemaps_declared": [
                  "https://example.com/sitemap.xml"
                ]
              },
              "llms_txt": {
                "found": false
              }
            }
          }
        },
        "schema": {
          "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": "Domain or any page on it"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "origin": {
                      "type": "string"
                    },
                    "robots": {
                      "type": "object"
                    },
                    "llms_txt": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "10000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/music/cover",
      "tags": [
        "Music"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Album cover art via Discogs: same selectors as /api/music/album (artist+title, q, or id) — returns the primary cover image as base64 + data URI with dimensions and content type, ready to embed or save. Pairs with /api/music/album.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "title": "OK Computer",
              "artist": "Radiohead"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "year": 1997,
              "bytes": 240311,
              "title": "OK Computer",
              "width": 600,
              "height": 600,
              "data_uri": "data:image/jpeg;base64,…",
              "content_type": "image/jpeg",
              "image_base64": "…"
            }
          }
        },
        "schema": {
          "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",
                  "properties": {
                    "q": {
                      "type": "string",
                      "description": "Free-text search alternative"
                    },
                    "id": {
                      "type": "string",
                      "description": "Direct Discogs id"
                    },
                    "kind": {
                      "type": "string",
                      "description": "master (default) or release"
                    },
                    "title": {
                      "type": "string",
                      "description": "Album title (with artist)"
                    },
                    "artist": {
                      "type": "string",
                      "description": "Artist name (with title)"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "bytes": {
                      "type": "number"
                    },
                    "data_uri": {
                      "type": "string"
                    },
                    "content_type": {
                      "type": "string"
                    },
                    "image_base64": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "2000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/icon/search",
      "tags": [
        "Design & Assets"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Search Font Awesome Free (2000+ icons) by keyword: matches names, labels, and official search terms, ranked. Returns icon names, available styles (solid/regular/brands), and terms. Use the chosen name in POST /api/icon/generate.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "q": "rocket",
              "style": "solid"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "count": 3,
              "query": "rocket",
              "results": [
                {
                  "name": "rocket",
                  "label": "Rocket",
                  "score": 100,
                  "styles": [
                    "solid"
                  ]
                }
              ]
            }
          }
        },
        "schema": {
          "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": [
                    "q"
                  ],
                  "properties": {
                    "q": {
                      "type": "string",
                      "description": "Keyword to search, e.g. rocket, shopping cart, music"
                    },
                    "style": {
                      "type": "string",
                      "description": "Optional filter: solid, regular, or brands"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "count": {
                      "type": "number"
                    },
                    "query": {
                      "type": "string"
                    },
                    "results": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "20000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/full-audit",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "FULL on-page audit bundle — seven analyses in one call against a single URL: head/meta SEO audit, alt-text check, social-card check with og:image verification, internal-link analysis, WCAG accessibility check (choose level), schema.org structured-data audit, and a robots/llms.txt crawler summary. Returns a transparent 0-100 score with itemized deductions plus every full sub-report. Pieces individually total ~$0.02; the bundle adds the unified score free.",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com",
              "level": "AA"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "url": "https://example.com",
              "grade": "B",
              "score": 84,
              "sections": {
                "head": {
                  "verdict": "improvable"
                },
                "robots": {
                  "ai_bots_root_blocked": [
                    "GPTBot"
                  ]
                },
                "social": {
                  "verdict": "good"
                },
                "alt_text": {
                  "missing_alt": 2
                },
                "accessibility": {
                  "totals": {
                    "criteria_failed": 2
                  }
                },
                "structured_data": {
                  "jsonld_blocks": 1
                }
              },
              "deductions": [
                {
                  "points": 6,
                  "reason": "3 head/meta warnings"
                }
              ]
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to audit"
                    },
                    "level": {
                      "type": "string",
                      "description": "WCAG level for the accessibility section: A, AA (default), or AAA"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "grade": {
                      "type": "string"
                    },
                    "score": {
                      "type": "number"
                    },
                    "sections": {
                      "type": "object"
                    },
                    "deductions": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/metadata",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Raw metadata extractor: the complete, unopinionated head inventory of a page — title, charset, lang, canonical, all meta tags grouped by family (OpenGraph, Twitter, Dublin Core, named, http-equiv, itemprop), every link relation, and JSON-LD returned as parsed objects. For agents doing their own processing (head-check audits the same data; this just dumps it). ?url=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "lang": "en",
              "links": {
                "icon": [
                  {
                    "href": "/favicon.ico",
                    "sizes": "32x32"
                  }
                ],
                "canonical": [
                  "https://example.com/"
                ]
              },
              "title": "Example",
              "counts": {
                "og": 5,
                "links": 9,
                "twitter": 4,
                "meta_tags": 18,
                "jsonld_blocks": 1
              },
              "jsonld": [
                {
                  "@type": "Organization"
                }
              ],
              "charset": "utf-8",
              "opengraph": {
                "image": "https://example.com/og.png",
                "title": "Example"
              }
            }
          }
        },
        "schema": {
          "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": "Public URL to extract metadata from"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "meta": {
                      "type": "object"
                    },
                    "links": {
                      "type": "object"
                    },
                    "title": {
                      "type": "string"
                    },
                    "counts": {
                      "type": "object"
                    },
                    "jsonld": {
                      "type": "array"
                    },
                    "opengraph": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/head-check",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Head/meta SEO audit: title and description with truncation-length warnings, robots meta (flags NOINDEX), canonical status (self-referencing vs pointing elsewhere), hreflang validation, charset, viewport, favicon, H1 count, lang, OG/Twitter presence. The on-page fundamentals in one call. ?url=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com/page"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "title": {
                "text": "Example Page",
                "length": 12
              },
              "verdict": "improvable",
              "h1_count": 1,
              "problems": [],
              "warnings": [
                "Title is only 12 chars"
              ],
              "canonical": {
                "status": "self-referencing"
              }
            }
          }
        },
        "schema": {
          "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": "Public URL of the page to audit"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "title": {
                      "type": "object"
                    },
                    "verdict": {
                      "type": "string"
                    },
                    "problems": {
                      "type": "array"
                    },
                    "warnings": {
                      "type": "array"
                    },
                    "canonical": {
                      "type": "object"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/sitemap-check",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Sitemap validator: finds the sitemap (direct URL, robots.txt declaration, or /sitemap.xml), handles sitemap indexes, validates entries and lastmod dates, flags cross-host URLs and oversize files, and health-checks a sample of listed URLs for dead pages. ?url=site root or sitemap URL",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "type": "urlset",
              "found": true,
              "verdict": "good",
              "url_count": 342,
              "sitemap_url": "https://example.com/sitemap.xml",
              "with_lastmod": 342,
              "sample_health": [
                {
                  "ok": true,
                  "url": "https://example.com/",
                  "status": 200
                }
              ]
            }
          }
        },
        "schema": {
          "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": "Site root or direct sitemap URL"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "found": {
                      "type": "boolean"
                    },
                    "verdict": {
                      "type": "string"
                    },
                    "url_count": {
                      "type": "number"
                    },
                    "sitemap_url": {
                      "type": "string"
                    },
                    "sample_health": {
                      "type": "array"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  },
  {
    "error": "Payment required",
    "accepts": [
      {
        "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
        "extra": {
          "name": "USD Coin",
          "version": "2"
        },
        "payTo": "0xdd5fcEa81CA6f1EB39FEd5B973DE794293B81ba6",
        "amount": "1000",
        "scheme": "exact",
        "network": "eip155:8453",
        "maxTimeoutSeconds": 300
      }
    ],
    "resource": {
      "url": "https://api.webbersites.com/api/seo/nav",
      "tags": [
        "SEO & Publishing"
      ],
      "iconUrl": "https://x402.webbersites.com/webbersites-icon.png",
      "mimeType": "application/json",
      "description": "Navigation extractor: pulls a site's *navigation* links (not every link) by scoring candidate regions — semantic <nav>, role=navigation, header/footer, and common menu class patterns — then returns them grouped by source (primary nav, header, footer). For agents mapping site structure or planning which pages to fetch. Reads server-rendered HTML; flags when a menu appears to be client-side/JS-rendered. ?url=",
      "serviceName": "WebberSites x402 Data API"
    },
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "type": "http",
            "method": "GET",
            "queryParams": {
              "url": "https://example.com"
            }
          },
          "output": {
            "type": "json",
            "example": {
              "primary_nav": {
                "count": 5,
                "links": [
                  {
                    "href": "https://example.com/products",
                    "text": "Products",
                    "internal": true
                  }
                ],
                "source": "nav (main-menu)"
              },
              "unique_nav_links": 12,
              "nav_regions_found": 3
            }
          }
        },
        "schema": {
          "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": "Public URL to extract navigation from"
                    }
                  }
                }
              },
              "additionalProperties": false
            },
            "output": {
              "type": "object",
              "required": [
                "type"
              ],
              "properties": {
                "type": {
                  "type": "string"
                },
                "example": {
                  "type": "object",
                  "properties": {
                    "regions": {
                      "type": "array"
                    },
                    "primary_nav": {
                      "type": "object"
                    },
                    "all_nav_links": {
                      "type": "array"
                    },
                    "nav_regions_found": {
                      "type": "number"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "x402Version": 2
  }
]

OVER TIME

All charts use the 30d selector; each series spans only the dates it has data for. Every series is also served as JSON at /api/v1/services/webbersites-x402-data-api/price, /scores, /volume and /buyers. On-chain volume and distinct buyers are measured over the service's settlement address and are a conservative undercount (only settlements that reach a measured facilitator are counted). The on-chain series roll up hourly, so the latest day can be up to about an hour behind; distinct buyers are counted per payout address, so a service that settles to more than one address is an upper bound.

UPTIME
08-09 · uptime 100.0% · 99ms avg08-10 · uptime 100.0% · 98ms avg08-11 · uptime 100.0% · 95ms avg08-12 · uptime 100.0% · 128ms avg08-13 · uptime 100.0% · 149ms avg08-14 · uptime 100.0% · 121ms avg08-15 · uptime 100.0% · 147ms avg08-16 · uptime 100.0% · 156ms avg08-17 · uptime 100.0% · 150ms avg08-18 · uptime 100.0% · 151ms avg08-19 · uptime 100.0% · 142ms avg08-20 · uptime 100.0% · 147ms avg08-21 · uptime 100.0% · 125ms avg08-22 · uptime 100.0% · 135ms avg08-23 · uptime 100.0% · 119ms avg08-24 · uptime 100.0% · 113ms avg08-25 · uptime 100.0% · 133ms avg08-26 · uptime 100.0% · 127ms avg08-27 · uptime 100.0% · 150ms avg08-28 · uptime 100.0% · 157ms avg08-29 · uptime 100.0% · 110ms avg08-30 · uptime 100.0% · 137ms avg08-31 · uptime 100.0% · 132ms avg09-01 · uptime 100.0% · 142ms avg09-02 · uptime 100.0% · 250ms avg09-03 · uptime 100.0% · 290ms avg09-04 · uptime 100.0% · 241ms avg09-05 · uptime 100.0% · 260ms avg09-06 · uptime 100.0% · 272ms avg09-07 · uptime 100.0% · 329ms avg08-0909-07
30d UPTIME 100%
RESPONSE TIME
08-09 · 99ms avg08-09 · 99ms avg08-10 · 98ms avg08-10 · 98ms avg08-11 · 95ms avg08-11 · 95ms avg08-12 · 128ms avg08-12 · 128ms avg08-13 · 149ms avg08-13 · 149ms avg08-14 · 121ms avg08-14 · 121ms avg08-15 · 147ms avg08-15 · 147ms avg08-16 · 156ms avg08-16 · 156ms avg08-17 · 150ms avg08-17 · 150ms avg08-18 · 151ms avg08-18 · 151ms avg08-19 · 142ms avg08-19 · 142ms avg08-20 · 147ms avg08-20 · 147ms avg08-21 · 125ms avg08-21 · 125ms avg08-22 · 135ms avg08-22 · 135ms avg08-23 · 119ms avg08-23 · 119ms avg08-24 · 113ms avg08-24 · 113ms avg08-25 · 133ms avg08-25 · 133ms avg08-26 · 127ms avg08-26 · 127ms avg08-27 · 150ms avg08-27 · 150ms avg08-28 · 157ms avg08-28 · 157ms avg08-29 · 110ms avg08-29 · 110ms avg08-30 · 137ms avg08-30 · 137ms avg08-31 · 132ms avg08-31 · 132ms avg09-01 · 142ms avg09-01 · 142ms avg09-02 · 250ms avg09-02 · 250ms avg09-03 · 290ms avg09-03 · 290ms avg09-04 · 241ms avg09-04 · 241ms avg09-05 · 260ms avg09-05 · 260ms avg09-06 · 272ms avg09-06 · 272ms avg09-07 · 329ms avg09-07 · 329ms avg08-0909-07
AVG RESP 154ms
PRICE (captured 402, USD)
08-08 · $0.00209-07 · $0.002$0.00208-0809-07

Median across 37 endpoints. Use the selector to isolate one.

SUB-SCORES (uptime + x402 compliance)
08-08 uptime: 99.9% compliance: 100% checks08-09 uptime: 99.9% compliance: 100% checks08-10 uptime: 99.9% compliance: 100% checks08-11 uptime: 100.0% compliance: 100% checks08-12 uptime: 100.0% compliance: 100% checks08-13 uptime: 100.0% compliance: 100% checks08-14 uptime: 100.0% compliance: 100% checks08-15 uptime: 100.0% compliance: 100% checks08-16 uptime: 100.0% compliance: 100% checks08-17 uptime: 100.0% compliance: 100% checks08-18 uptime: 100.0% compliance: 100% checks08-19 uptime: 100.0% compliance: 100% checks08-20 uptime: 100.0% compliance: 100% checks08-21 uptime: 100.0% compliance: 100% checks08-22 uptime: 100.0% compliance: 100% checks08-23 uptime: 100.0% compliance: 100% checks08-24 uptime: 100.0% compliance: 100% checks08-25 uptime: 100.0% compliance: 100% checks08-26 uptime: 100.0% compliance: 100% checks08-27 uptime: 100.0% compliance: 100% checks08-28 uptime: 100.0% compliance: 100% checks08-29 uptime: 100.0% compliance: 100% checks08-30 uptime: 100.0% compliance: 100% checks08-31 uptime: 100.0% compliance: 100% checks09-01 uptime: 100.0% compliance: 100% checks09-02 uptime: 100.0% compliance: 100% checks09-03 uptime: 100.0% compliance: 100% checks09-04 uptime: 100.0% compliance: 100% checks09-05 uptime: 100.0% compliance: 100% checks09-06 uptime: 100.0% compliance: 100% checks09-07 uptime: 100.0% compliance: 100% checksuptimecompliance08-0809-07

checklist grew 11->14 on 2026-07-28; a step here is a metric change, not a regression

PILLARS OVER TIME (measured)

Measured site and economics pillars from the assessment history, so the latest value shown elsewhere on this page reads as a point on a trend rather than a permanent state.

VOLUME (on-chain settlement, USD)
This service settles on a network x402-list does not measure yet, so on-chain volume is not counted here. Shown as unmeasured, not zero.
DISTINCT BUYERS
This service settles on a network x402-list does not measure yet, so distinct on-chain buyers are not counted here. Shown as unmeasured, not zero.

COMPLIANCE

14/14 checks pass · grade A

last 402 captured 2026-07-18 · last up 2026-09-07

  • 402 payload captured
  • accepts[] array present
  • payTo address recoverable
  • payTo at accepts[0].payTo (conformant shape)
  • payTo is a valid on-chain address
  • atomic price declared
  • atomic price in a sane range
  • asset (token) address declared
  • network resolves to CAIP-2
  • payment scheme declared
  • served over HTTPS
  • declares the current x402 version (2)
  • EIP-712 domain parameters present on every EVM entry
  • x402 v2 envelope delivered in the payment-required header

SITE PILLARS

  • homepage reachable
  • openapi doc
  • pricing page
  • llms.txt
  • robots.txt
  • terms page
recent checks (18) live · click to expand
TIME STATUS RESP CAUSE
● SLOW 280ms
● SLOW 278ms
● SLOW 276ms
● SLOW 366ms
● SLOW 323ms
● SLOW 317ms
● SLOW 250ms
● SLOW 262ms
● OK 180ms
● SLOW 384ms
● SLOW 369ms
● SLOW 299ms
● SLOW 322ms
● SLOW 368ms
● SLOW 358ms
● SLOW 308ms
● SLOW 372ms
● SLOW 385ms

EMBED THIS BADGE

Show that WebberSites x402 Data API is monitored on x402-list. Paste this on your site or README, it links back to this live listing.

WebberSites x402 Data API listed on x402-list
status
WebberSites x402 Data API uptime on x402-list
live uptime
// HTML
<a href="https://x402-list.com/services/webbersites-x402-data-api?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/webbersites-x402-data-api.svg" alt="WebberSites x402 Data API listed on x402-list" height="28">
</a>
// Markdown
[![WebberSites x402 Data API on x402-list](https://x402-list.com/badge/webbersites-x402-data-api.svg)](https://x402-list.com/services/webbersites-x402-data-api?utm_source=badge&utm_medium=referral&utm_campaign=embed)
// HTML · live uptime variant
<a href="https://x402-list.com/services/webbersites-x402-data-api?utm_source=badge&utm_medium=referral&utm_campaign=embed">
  <img src="https://x402-list.com/badge/webbersites-x402-data-api.svg?data=uptime" alt="WebberSites x402 Data API uptime on x402-list" height="28">
</a>

RUN THIS SERVICE?

Keep this listing accurate: propose changes to the name, description, website, category or add new endpoints to monitor. Ownership is verified with a domain proof and every change is reviewed manually; measured data stays read-only.

[ update this listing ]

Earn the verified tier: x402list pays a real call to this endpoint and, if it delivers, the service is delivery-verified. The fee covers the cost of the probe, not the badge; there is no refund if the call does not deliver. Agent and API only, no in-browser signing. See /api.

[ verify this service ($0.25) ]

To request delisting, email info@x402-list.com or update your listing at /services/webbersites-x402-data-api/update.