{
  "x402Version": 1,
  "seller": "0x9Fd25b6be40aECEA5eB5Eceea31d6c0Ac9c83e11",
  "network": "eip155:8453",
  "routes": [
    {
      "resource": "https://pastable-x402.pages.dev/bazaar/seller",
      "method": "GET",
      "price_usd": 0.05,
      "description": "Every listing a seller wallet has on the Bazaar, with prices and staleness",
      "input": {
        "wallet": "string, 0x address"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/bazaar/price-bands",
      "method": "GET",
      "price_usd": 0.05,
      "description": "How the whole Bazaar is priced, so a seller can see where their price sits",
      "input": {}
    },
    {
      "resource": "https://pastable-x402.pages.dev/bazaar/competition",
      "method": "GET",
      "price_usd": 0.05,
      "description": "Listings whose description matches a term, with their prices: what a new route is up against",
      "input": {
        "q": "string, search term"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/evm/checksum",
      "method": "GET",
      "price_usd": 0.02,
      "description": "EIP-55 checksum an address, and say whether the input was already correct",
      "input": {
        "address": "string"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/evm/units",
      "method": "GET",
      "price_usd": 0.02,
      "description": "Convert between wei, gwei and ether with no floating point error",
      "input": {
        "amount": "string",
        "from": "wei|gwei|ether",
        "to": "wei|gwei|ether"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/evm/keccak",
      "method": "GET",
      "price_usd": 0.02,
      "description": "keccak256 of a string or hex payload, plus its 4-byte function selector",
      "input": {
        "data": "string",
        "encoding": "utf8|hex"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/data/csv-to-json",
      "method": "GET",
      "price_usd": 0.02,
      "description": "Parse CSV into JSON rows, honouring quoted fields and embedded commas",
      "input": {
        "csv": "string",
        "delimiter": "string, default ,"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/data/json-diff",
      "method": "GET",
      "price_usd": 0.05,
      "description": "Structural difference between two JSON documents, as a list of paths",
      "input": {
        "a": "json",
        "b": "json"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/data/url-canonical",
      "method": "GET",
      "price_usd": 0.02,
      "description": "Canonicalise a URL: lowercase host, strip default port, sort query, drop tracking parameters",
      "input": {
        "url": "string"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/text/hash",
      "method": "GET",
      "price_usd": 0.02,
      "description": "sha256, sha512 and md5 of a payload, plus its byte length",
      "input": {
        "data": "string",
        "encoding": "utf8|base64|hex"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/text/jwt-decode",
      "method": "GET",
      "price_usd": 0.02,
      "description": "Decode a JWT header and payload without verifying, and report expiry",
      "input": {
        "token": "string"
      }
    },
    {
      "resource": "https://pastable-x402.pages.dev/time/cron-next",
      "method": "GET",
      "price_usd": 0.02,
      "description": "The next N times a 5-field cron expression fires, in UTC",
      "input": {
        "expr": "string",
        "count": "number, default 5"
      }
    }
  ]
}