{
  "openapi": "3.1.0",
  "info": {
    "title": "FundingFeed — Cross-Exchange Funding Rate Arbitrage, Open Interest & Tempo Wallet Activity",
    "version": "3.0.1",
    "description": "Cross-exchange perpetual funding rate arbitrage, open interest, and best-execution for BTC/ETH/SOL. Aggregates live perpetual venues (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget, Kraken, Coinbase, MEXC) into one call: current funding rate per venue, min/max/mean annualized funding, the cross-venue funding arbitrage spread, next funding time per venue, total open interest in USD with a per-venue breakdown, and real top-of-book best bid/ask. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a specific coin, check annualized carry cost for a long/short funding arb, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences in crypto perpetuals, monitor funding spreads to time a cash-and-carry strategy, detect crowded positioning from open interest, and route orders to the venue with the best price. Paid per call: 0.005 USDC on Base, Polygon, Solana or Tempo (MPP, no gas). FIRST CALL FREE per wallet — send header \"X-WALLET: 0x<your Base address>\" and get the full feed with no payment. Try it before you pay.",
    "contact": {
      "name": "FundingFeed",
      "url": "https://funding-feed.kaminariouji.workers.dev",
      "email": "kaminariouji@users.noreply.github.com"
    },
    "x-guidance": "Call POST https://funding-feed.kaminariouji.workers.dev/feed with JSON body {\"symbol\":\"BTC\"} (symbol: BTC, ETH or SOL) — or GET https://funding-feed.kaminariouji.workers.dev/feed?symbol=BTC. Unpaid calls answer HTTP 402 with two offers in the SAME response: an x402 offer in the PAYMENT-REQUIRED header (base64 JSON; USDC on Base eip155:8453, Polygon eip155:137 or Solana) and an MPP offer in the WWW-Authenticate header (Payment scheme, method=\"tempo\", USDC.e on Tempo chain 4217). Pay either one; the paid response carries PAYMENT-RESPONSE (x402) or Payment-Receipt (MPP). First call per wallet is free: send header X-WALLET: 0x<your EVM address> and you get the full feed with no payment. Price is $0.005 USDC per call. Free index of endpoints and venues: https://funding-feed.kaminariouji.workers.dev/exchanges"
  },
  "servers": [
    {
      "url": "https://funding-feed.kaminariouji.workers.dev",
      "description": "Production (x402 on Base/Polygon/Solana + MPP tempo on chain 4217)"
    }
  ],
  "x-service-info": {
    "categories": [
      "data",
      "blockchain",
      "finance",
      "crypto",
      "analytics"
    ],
    "docs": {
      "homepage": "https://funding-feed.kaminariouji.workers.dev",
      "apiReference": "https://funding-feed.kaminariouji.workers.dev/openapi.json",
      "llms": "https://funding-feed.kaminariouji.workers.dev/llms.txt"
    }
  },
  "x-provider": {
    "category": "FINANCIAL_ANALYSIS",
    "networks": [
      "eip155:8453",
      "eip155:137",
      "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "eip155:4217"
    ],
    "priceUsd": 0.005,
    "payTo": "0x8c062Dc5D775B7D5efc168F75a875f392f53dCdf",
    "payToSolana": "4zS1zDo7bcYeUxdA1icrRbaT6YHkYRt2NUyXrz55DUeG",
    "freeTrial": "First call free per wallet via X-WALLET header"
  },
  "paths": {
    "/feed": {
      "post": {
        "operationId": "funding_rate_open_interest",
        "summary": "Cross-exchange perpetual funding rates, funding arbitrage spreads and open interest across 7 exchanges",
        "description": "Cross-exchange perpetual funding rate arbitrage, open interest and best-execution in one call. Live funding rates from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, aggregated with annualized funding rate (min, max, mean), the cross-venue funding spread that is the raw funding-rate arbitrage edge, and the next funding time per venue. Also returns perpetual open interest in USD per venue plus total, and real top-of-book best bid and best ask for smart order routing. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a specific coin, check the annualized carry cost of a long/short funding arb or cash-and-carry trade, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences, detect crowded positioning from open interest, and time entries around funding settlements. Supports BTC, ETH and SOL perpetuals. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Cross-exchange perpetual funding rate arbitrage, open interest and best-execution in one call. Live funding rates from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, aggregated with annualized funding rate (min, max, mean), the cross-venue funding spread that is the raw funding-rate arbitrage edge, and the next funding time per venue. Also returns perpetual open interest in USD per venue plus total, and real top-of-book best bid and best ask for smart order routing. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a specific coin, check the annualized carry cost of a long/short funding arb or cash-and-carry trade, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences, detect crowded positioning from open interest, and time entries around funding settlements. Supports BTC, ETH and SOL perpetuals.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Cross-exchange perpetual funding rate arbitrage, open interest and best-execution in one call. Live funding rates from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, aggregated with annualized funding rate (min, max, mean), the cross-venue funding spread that is the raw funding-rate arbitrage edge, and the next funding time per venue. Also returns perpetual open interest in USD per venue plus total, and real top-of-book best bid and best ask for smart order routing. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a specific coin, check the annualized carry cost of a long/short funding arb or cash-and-carry trade, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences, detect crowded positioning from open interest, and time entries around funding settlements. Supports BTC, ETH and SOL perpetuals.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/funding": {
      "post": {
        "operationId": "funding_rate_cross_exchange",
        "summary": "Cross-exchange perpetual funding rates, annualized, with funding arbitrage spread across 7 exchanges",
        "description": "Cross-exchange perpetual funding rates for funding-rate arbitrage and carry trades. Current funding rate per venue from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, annualized min/max/mean, the cross-venue funding spread, the arbitrage spread after fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a coin, check annualized carry cost for a long/short funding arb, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences in crypto perpetuals, monitor funding spreads to time a cash-and-carry strategy, or see net-of-fee funding arb spreads across venues at once. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Cross-exchange perpetual funding rates for funding-rate arbitrage and carry trades. Current funding rate per venue from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, annualized min/max/mean, the cross-venue funding spread, the arbitrage spread after fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a coin, check annualized carry cost for a long/short funding arb, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences in crypto perpetuals, monitor funding spreads to time a cash-and-carry strategy, or see net-of-fee funding arb spreads across venues at once.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Cross-exchange perpetual funding rates for funding-rate arbitrage and carry trades. Current funding rate per venue from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget, annualized min/max/mean, the cross-venue funding spread, the arbitrage spread after fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX for a coin, check annualized carry cost for a long/short funding arb, identify which exchange has the most negative funding rate right now, scan for cross-venue funding divergences in crypto perpetuals, monitor funding spreads to time a cash-and-carry strategy, or see net-of-fee funding arb spreads across venues at once.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/funding-arb": {
      "post": {
        "operationId": "funding_arb_cross_exchange",
        "summary": "Funding rate arbitrage across exchanges: funding spread, annualized carry cost and next funding time",
        "description": "Cross-exchange perpetual funding rate arbitrage. Returns the live funding rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean funding, the cross-venue funding spread, the arbitrage spread net of fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX, check annualized carry cost for a funding arb or cash-and-carry trade, or identify the most negative funding rate right now. BTC, ETH and SOL. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Cross-exchange perpetual funding rate arbitrage. Returns the live funding rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean funding, the cross-venue funding spread, the arbitrage spread net of fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX, check annualized carry cost for a funding arb or cash-and-carry trade, or identify the most negative funding rate right now. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Cross-exchange perpetual funding rate arbitrage. Returns the live funding rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean funding, the cross-venue funding spread, the arbitrage spread net of fees, and the next funding time per venue. Use it to find the best funding rate arbitrage opportunity across exchanges, compare funding rates between Bybit and OKX, check annualized carry cost for a funding arb or cash-and-carry trade, or identify the most negative funding rate right now. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/funding-rate": {
      "post": {
        "operationId": "funding_rate",
        "summary": "Funding rates across crypto perpetual futures exchanges, annualized",
        "description": "Funding rates across crypto perpetual futures exchanges. Current rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean, the cross-venue funding spread, and the next funding time per venue. Use it to check the current funding rate for a perp, compare funding rates across exchanges, find the best funding rate arbitrage, or time entries around funding settlements. BTC, ETH and SOL. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Funding rates across crypto perpetual futures exchanges. Current rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean, the cross-venue funding spread, and the next funding time per venue. Use it to check the current funding rate for a perp, compare funding rates across exchanges, find the best funding rate arbitrage, or time entries around funding settlements. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Funding rates across crypto perpetual futures exchanges. Current rate per venue (OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX, Bitget), annualized min/max/mean, the cross-venue funding spread, and the next funding time per venue. Use it to check the current funding rate for a perp, compare funding rates across exchanges, find the best funding rate arbitrage, or time entries around funding settlements. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/perp-oi": {
      "post": {
        "operationId": "open_interest",
        "summary": "Open interest for crypto perpetual futures across exchanges, in USD",
        "description": "Open interest for crypto perpetual futures across exchanges. Total open interest in USD plus a per-venue breakdown from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget. Use it to size crowded positioning, detect one-sided markets, or monitor open interest alongside funding rates. BTC, ETH and SOL. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Open interest for crypto perpetual futures across exchanges. Total open interest in USD plus a per-venue breakdown from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget. Use it to size crowded positioning, detect one-sided markets, or monitor open interest alongside funding rates. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Open interest for crypto perpetual futures across exchanges. Total open interest in USD plus a per-venue breakdown from OKX, Bybit, Gate.io, HTX, Hyperliquid, BingX and Bitget. Use it to size crowded positioning, detect one-sided markets, or monitor open interest alongside funding rates. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/best-exec": {
      "post": {
        "operationId": "best_execution",
        "summary": "Best execution: best bid and ask per exchange for smart order routing",
        "description": "Best execution quotes for crypto perpetuals and spot: real top-of-book best bid and best ask per venue, the venue to route to, and the cross-venue spread. Venues that only publish a mid price are excluded so every quote is executable. Use it for smart order routing and to compare liquidity across exchanges. BTC, ETH and SOL. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Best execution quotes for crypto perpetuals and spot: real top-of-book best bid and best ask per venue, the venue to route to, and the cross-venue spread. Venues that only publish a mid price are excluded so every quote is executable. Use it for smart order routing and to compare liquidity across exchanges. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Best execution quotes for crypto perpetuals and spot: real top-of-book best bid and best ask per venue, the venue to route to, and the cross-venue spread. Venues that only publish a mid price are excluded so every quote is executable. Use it for smart order routing and to compare liquidity across exchanges. BTC, ETH and SOL.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/open-interest": {
      "post": {
        "operationId": "open_interest_perpetual",
        "summary": "Perpetual futures open interest in USD across 7 exchanges",
        "description": "Perpetual futures open interest in USD across 7 exchanges, with total, mean and per-venue breakdown. Use it to size crowded positioning and detect one-sided markets. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Perpetual futures open interest in USD across 7 exchanges, with total, mean and per-venue breakdown. Use it to size crowded positioning and detect one-sided markets.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Perpetual futures open interest in USD across 7 exchanges, with total, mean and per-venue breakdown. Use it to size crowded positioning and detect one-sided markets.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/best-execution": {
      "post": {
        "operationId": "best_execution_bid_ask",
        "summary": "Best bid and ask across 7 exchanges for smart order routing",
        "description": "Real top-of-book best bid and best ask across 7 exchanges, with the venue to route to and the cross-venue spread. Venues that only publish a mid price are excluded, so every quote is executable. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Real top-of-book best bid and best ask across 7 exchanges, with the venue to route to and the cross-venue spread. Venues that only publish a mid price are excluded, so every quote is executable.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Real top-of-book best bid and best ask across 7 exchanges, with the venue to route to and the cross-venue spread. Venues that only publish a mid price are excluded, so every quote is executable.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/snapshot": {
      "post": {
        "operationId": "perp_market_snapshot",
        "summary": "Compact perpetual futures market snapshot: funding, open interest, best bid/ask",
        "description": "One compact derivatives market snapshot: funding summary, total open interest and the best bid/ask, across 7 exchanges. Smallest possible payload for agents that only need the headline numbers. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "One compact derivatives market snapshot: funding summary, total open interest and the best bid/ask, across 7 exchanges. Smallest possible payload for agents that only need the headline numbers.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "One compact derivatives market snapshot: funding summary, total open interest and the best bid/ask, across 7 exchanges. Smallest possible payload for agents that only need the headline numbers.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL"
                    ],
                    "default": "BTC",
                    "description": "Base asset symbol"
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/tempo": {
      "post": {
        "operationId": "tempo_wallet_activity",
        "summary": "Tempo wallet activity score, balances and transfer history",
        "description": "Tempo (chain 4217) wallet activity score and wallet snapshot for any address. Returns a 0-100 activity score, TIP-20 token balances (USDC.e and other Tempo stablecoins), inbound and outbound transfer counts over 24h and 7d, distinct counterparties, transfer volume, first and last transfer timestamps and per-token breakdown. Use it to check whether a Tempo wallet is active, to size airdrop or quest eligibility, or to audit an agent wallet before paying it. Data read live from Tempo's own transfer index and balances API. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Tempo (chain 4217) wallet activity score and wallet snapshot for any address. Returns a 0-100 activity score, TIP-20 token balances (USDC.e and other Tempo stablecoins), inbound and outbound transfer counts over 24h and 7d, distinct counterparties, transfer volume, first and last transfer timestamps and per-token breakdown. Use it to check whether a Tempo wallet is active, to size airdrop or quest eligibility, or to audit an agent wallet before paying it. Data read live from Tempo's own transfer index and balances API.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Tempo (chain 4217) wallet activity score and wallet snapshot for any address. Returns a 0-100 activity score, TIP-20 token balances (USDC.e and other Tempo stablecoins), inbound and outbound transfer counts over 24h and 7d, distinct counterparties, transfer volume, first and last transfer timestamps and per-token breakdown. Use it to check whether a Tempo wallet is active, to size airdrop or quest eligibility, or to audit an agent wallet before paying it. Data read live from Tempo's own transfer index and balances API.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "Tempo (chain 4217) wallet address to inspect"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/extract": {
      "post": {
        "operationId": "extract_web_page_text",
        "summary": "Extract clean readable text from any public web page URL for LLM context: title, headings, links and body text",
        "description": "Convert any public web page URL into clean, LLM-ready text plus structured metadata in one call. Returns the page title, meta/OpenGraph description, site name, language, word count, the heading outline, up to 100 extracted links with their anchor text, and the full readable body text with scripts, styles and navigation stripped. Use it to read a URL before answering, extract an article or docs page into context, scrape a page without building a scraper, summarize or fact-check a link, pull headings and links for research, or feed a web page into a model. No API key, no third-party scraper account, no rate-limit signup. Handles HTML and plain text; follows redirects and reports the final URL and HTTP status. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Convert any public web page URL into clean, LLM-ready text plus structured metadata in one call. Returns the page title, meta/OpenGraph description, site name, language, word count, the heading outline, up to 100 extracted links with their anchor text, and the full readable body text with scripts, styles and navigation stripped. Use it to read a URL before answering, extract an article or docs page into context, scrape a page without building a scraper, summarize or fact-check a link, pull headings and links for research, or feed a web page into a model. No API key, no third-party scraper account, no rate-limit signup. Handles HTML and plain text; follows redirects and reports the final URL and HTTP status.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Convert any public web page URL into clean, LLM-ready text plus structured metadata in one call. Returns the page title, meta/OpenGraph description, site name, language, word count, the heading outline, up to 100 extracted links with their anchor text, and the full readable body text with scripts, styles and navigation stripped. Use it to read a URL before answering, extract an article or docs page into context, scrape a page without building a scraper, summarize or fact-check a link, pull headings and links for research, or feed a web page into a model. No API key, no third-party scraper account, no rate-limit signup. Handles HTML and plain text; follows redirects and reports the final URL and HTTP status.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "format": "uri",
                    "description": "Public http(s) URL of the page to extract"
                  }
                },
                "required": [
                  "url"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/ip": {
      "post": {
        "operationId": "geolocate_ip_geolocation_lookup",
        "summary": "IP geolocation lookup: geolocate an IP address, what country is this IP from, city, region, coordinates, ASN lookup, ISP and timezone",
        "description": "Geolocate any IPv4 or IPv6 address and identify its network operator in one call. Answers which country is this IP from, what is the ASN of this IP, which ISP or company owns this IP address, is this IP from a hosting provider or a datacenter, and what timezone is this IP in. Returns the country, region, city, postal code, latitude/longitude, continent, EU membership, the calling code, flag, the connection details (ASN number, organisation, ISP and domain) and the timezone with UTC offset. Use it to geolocate a visitor IP, resolve which ASN or ISP owns an address, detect whether a request comes from a datacenter or a different country, enrich a log line with location, route traffic by region, screen signups for fraud, localize content per country, or check the timezone of a remote host. Omit the address to look up the caller IP. Works for IPv4 and IPv6; no API key, no signup, no rate-limit account. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Geolocate any IPv4 or IPv6 address and identify its network operator in one call. Answers which country is this IP from, what is the ASN of this IP, which ISP or company owns this IP address, is this IP from a hosting provider or a datacenter, and what timezone is this IP in. Returns the country, region, city, postal code, latitude/longitude, continent, EU membership, the calling code, flag, the connection details (ASN number, organisation, ISP and domain) and the timezone with UTC offset. Use it to geolocate a visitor IP, resolve which ASN or ISP owns an address, detect whether a request comes from a datacenter or a different country, enrich a log line with location, route traffic by region, screen signups for fraud, localize content per country, or check the timezone of a remote host. Omit the address to look up the caller IP. Works for IPv4 and IPv6; no API key, no signup, no rate-limit account.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Geolocate any IPv4 or IPv6 address and identify its network operator in one call. Answers which country is this IP from, what is the ASN of this IP, which ISP or company owns this IP address, is this IP from a hosting provider or a datacenter, and what timezone is this IP in. Returns the country, region, city, postal code, latitude/longitude, continent, EU membership, the calling code, flag, the connection details (ASN number, organisation, ISP and domain) and the timezone with UTC offset. Use it to geolocate a visitor IP, resolve which ASN or ISP owns an address, detect whether a request comes from a datacenter or a different country, enrich a log line with location, route traffic by region, screen signups for fraud, localize content per country, or check the timezone of a remote host. Omit the address to look up the caller IP. Works for IPv4 and IPv6; no API key, no signup, no rate-limit account.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 or IPv6 address to look up. Omit to look up the caller IP."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/audit": {
      "post": {
        "operationId": "website_audit",
        "summary": "Audit a web page: SEO, security headers, accessibility, performance and content with a score and prioritised fixes",
        "description": "Audit any public web page in one call and get a prioritised list of what to fix: SEO, security headers, accessibility, performance and content with a score and prioritised fixes. Checks SEO (title and meta description length, canonical link, H1 count, heading order, html lang, viewport, Open Graph, Twitter card, JSON-LD structured data, robots noindex, image alt coverage, content depth), security response headers (HTTPS, HSTS, Content-Security-Policy and whether it allows unsafe-inline, X-Content-Type-Options, clickjacking protection, Referrer-Policy, Permissions-Policy, technology disclosure), accessibility (page language, image alt text, accessible link names, form labels, iframe titles, pinch-zoom blocking, positive tabindex, heading order), performance (document size, render-blocking scripts, external request count, inline script and style weight, cache headers, compression, image dimensions) and content. Returns a 0-100 score, a letter grade, per-dimension findings with severity, and the top fixes in priority order. Use it before launching a page, to check a page you are about to cite, to screen a prospect site, or to audit a batch of URLs. Static analysis of the served HTML and HTTP headers — no API key, no signup, no third-party service. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.050 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "50000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Audit any public web page in one call and get a prioritised list of what to fix: SEO, security headers, accessibility, performance and content with a score and prioritised fixes. Checks SEO (title and meta description length, canonical link, H1 count, heading order, html lang, viewport, Open Graph, Twitter card, JSON-LD structured data, robots noindex, image alt coverage, content depth), security response headers (HTTPS, HSTS, Content-Security-Policy and whether it allows unsafe-inline, X-Content-Type-Options, clickjacking protection, Referrer-Policy, Permissions-Policy, technology disclosure), accessibility (page language, image alt text, accessible link names, form labels, iframe titles, pinch-zoom blocking, positive tabindex, heading order), performance (document size, render-blocking scripts, external request count, inline script and style weight, cache headers, compression, image dimensions) and content. Returns a 0-100 score, a letter grade, per-dimension findings with severity, and the top fixes in priority order. Use it before launching a page, to check a page you are about to cite, to screen a prospect site, or to audit a batch of URLs. Static analysis of the served HTML and HTTP headers — no API key, no signup, no third-party service.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "50000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Audit any public web page in one call and get a prioritised list of what to fix: SEO, security headers, accessibility, performance and content with a score and prioritised fixes. Checks SEO (title and meta description length, canonical link, H1 count, heading order, html lang, viewport, Open Graph, Twitter card, JSON-LD structured data, robots noindex, image alt coverage, content depth), security response headers (HTTPS, HSTS, Content-Security-Policy and whether it allows unsafe-inline, X-Content-Type-Options, clickjacking protection, Referrer-Policy, Permissions-Policy, technology disclosure), accessibility (page language, image alt text, accessible link names, form labels, iframe titles, pinch-zoom blocking, positive tabindex, heading order), performance (document size, render-blocking scripts, external request count, inline script and style weight, cache headers, compression, image dimensions) and content. Returns a 0-100 score, a letter grade, per-dimension findings with severity, and the top fixes in priority order. Use it before launching a page, to check a page you are about to cite, to screen a prospect site, or to audit a batch of URLs. Static analysis of the served HTML and HTTP headers — no API key, no signup, no third-party service.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.050000"
          },
          "minPrice": 0.05,
          "maxPrice": 0.05,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.050 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "url": {
                    "type": "string",
                    "format": "uri",
                    "description": "Public http(s) URL of the HTML page to audit."
                  }
                },
                "required": [
                  "url"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/token": {
      "post": {
        "operationId": "token_honeypot_check",
        "summary": "Token safety check and honeypot detector: is this token safe to buy? Verdict, 0-100 risk score and every itemised reason",
        "description": "Risk verdict for any EVM token contract address: is this token safe to buy, or is it a honeypot, rug pull or scam? Checks whether the token can be sold or is a cannot-sell honeypot, the buy tax, sell tax and transfer tax, whether the liquidity is locked, whether ownership was renounced or is hidden, whether supply is mintable, how many holders the token has, and the top-10 holder concentration. Give a contract address and a chain and get back a verdict (low-risk, caution, high-risk, likely-scam, or unverified when no security source answered), a 0-100 risk score, a confidence field saying how much data the verdict rests on, and every reason the score was reduced. Also reads mintable supply, self-destruct, pausable transfers, blacklisting, modifiable slippage, open-source and proxy status, creator and owner holding percentage, DEX pair count, liquidity in USD, price, fully diluted valuation and 24h volume and price change. Use it before buying or accepting a token, to screen a contract address an agent was told to pay in, to check whether a token is a honeypot, to review token taxes or liquidity locks, to judge rug-pull risk, or to vet a memecoin before aping in. Deterministic rule engine over live third-party contract-security and DEX data: no LLM, no API key, and every deduction is itemised. Not investment advice, and no guarantee — a high score means no red flag was found, not that the token is safe. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.020 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "20000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Risk verdict for any EVM token contract address: is this token safe to buy, or is it a honeypot, rug pull or scam? Checks whether the token can be sold or is a cannot-sell honeypot, the buy tax, sell tax and transfer tax, whether the liquidity is locked, whether ownership was renounced or is hidden, whether supply is mintable, how many holders the token has, and the top-10 holder concentration. Give a contract address and a chain and get back a verdict (low-risk, caution, high-risk, likely-scam, or unverified when no security source answered), a 0-100 risk score, a confidence field saying how much data the verdict rests on, and every reason the score was reduced. Also reads mintable supply, self-destruct, pausable transfers, blacklisting, modifiable slippage, open-source and proxy status, creator and owner holding percentage, DEX pair count, liquidity in USD, price, fully diluted valuation and 24h volume and price change. Use it before buying or accepting a token, to screen a contract address an agent was told to pay in, to check whether a token is a honeypot, to review token taxes or liquidity locks, to judge rug-pull risk, or to vet a memecoin before aping in. Deterministic rule engine over live third-party contract-security and DEX data: no LLM, no API key, and every deduction is itemised. Not investment advice, and no guarantee — a high score means no red flag was found, not that the token is safe.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "20000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Risk verdict for any EVM token contract address: is this token safe to buy, or is it a honeypot, rug pull or scam? Checks whether the token can be sold or is a cannot-sell honeypot, the buy tax, sell tax and transfer tax, whether the liquidity is locked, whether ownership was renounced or is hidden, whether supply is mintable, how many holders the token has, and the top-10 holder concentration. Give a contract address and a chain and get back a verdict (low-risk, caution, high-risk, likely-scam, or unverified when no security source answered), a 0-100 risk score, a confidence field saying how much data the verdict rests on, and every reason the score was reduced. Also reads mintable supply, self-destruct, pausable transfers, blacklisting, modifiable slippage, open-source and proxy status, creator and owner holding percentage, DEX pair count, liquidity in USD, price, fully diluted valuation and 24h volume and price change. Use it before buying or accepting a token, to screen a contract address an agent was told to pay in, to check whether a token is a honeypot, to review token taxes or liquidity locks, to judge rug-pull risk, or to vet a memecoin before aping in. Deterministic rule engine over live third-party contract-security and DEX data: no LLM, no API key, and every deduction is itemised. Not investment advice, and no guarantee — a high score means no red flag was found, not that the token is safe.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.020000"
          },
          "minPrice": 0.02,
          "maxPrice": 0.02,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.020 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "EVM token contract address to get a risk verdict for"
                  },
                  "chain": {
                    "type": "string",
                    "enum": [
                      "base",
                      "ethereum",
                      "polygon",
                      "arbitrum",
                      "optimism",
                      "bsc",
                      "avalanche"
                    ],
                    "default": "base",
                    "description": "Chain the token contract lives on"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/ip-geolocation-lookup": {
      "post": {
        "operationId": "ip_geolocation_lookup",
        "summary": "IP geolocation lookup: country, city, region, coordinates, ASN and ISP for an IPv4 or IPv6 address",
        "description": "IP geolocation lookup for any IPv4 or IPv6 address: country, region, city, postal code, coordinates, continent, ASN, ISP, organisation, timezone and UTC offset. Omit the address to look up the caller. No API key. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "IP geolocation lookup for any IPv4 or IPv6 address: country, region, city, postal code, coordinates, continent, ASN, ISP, organisation, timezone and UTC offset. Omit the address to look up the caller. No API key.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "IP geolocation lookup for any IPv4 or IPv6 address: country, region, city, postal code, coordinates, continent, ASN, ISP, organisation, timezone and UTC offset. Omit the address to look up the caller. No API key.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 or IPv6 address to look up. Omit to look up the caller IP."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/asn-lookup": {
      "post": {
        "operationId": "asn_lookup",
        "summary": "ASN lookup for an IP: autonomous system number, ASN organisation, owning ISP and domain",
        "description": "ASN lookup for any IPv4 or IPv6 address: which ASN is this IP in, what autonomous system number, which ISP, company or network operator owns this IP address, and what country is it from. Returns the ASN organisation name, the owning ISP and its domain, plus the address country and city. Use it to resolve which ASN or ISP owns an address, to attribute traffic to a network operator, or to enrich a log line. No API key. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "ASN lookup for any IPv4 or IPv6 address: which ASN is this IP in, what autonomous system number, which ISP, company or network operator owns this IP address, and what country is it from. Returns the ASN organisation name, the owning ISP and its domain, plus the address country and city. Use it to resolve which ASN or ISP owns an address, to attribute traffic to a network operator, or to enrich a log line. No API key.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "ASN lookup for any IPv4 or IPv6 address: which ASN is this IP in, what autonomous system number, which ISP, company or network operator owns this IP address, and what country is it from. Returns the ASN organisation name, the owning ISP and its domain, plus the address country and city. Use it to resolve which ASN or ISP owns an address, to attribute traffic to a network operator, or to enrich a log line. No API key.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 or IPv6 address to look up. Omit to look up the caller IP."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/datacenter-vpn-check": {
      "post": {
        "operationId": "datacenter_vpn_check",
        "summary": "Check if an IP is a datacenter or VPN: classify an address as hosting, residential, business or education",
        "description": "Is this IP a datacenter or VPN, or is it a residential address? Classify the network behind an IP address: datacenter and hosting range, consumer residential ISP, education network or government network. Returns the verdict with the ASN, organisation, ISP, country and city it was derived from, plus an explicit confidence and a note that the call is an inference from the ASN organisation name rather than a proxy/VPN registry lookup. Use it to detect bot traffic from datacenter IPs, to score a signup, gate a request, or flag an address for fraud review. No API key. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Is this IP a datacenter or VPN, or is it a residential address? Classify the network behind an IP address: datacenter and hosting range, consumer residential ISP, education network or government network. Returns the verdict with the ASN, organisation, ISP, country and city it was derived from, plus an explicit confidence and a note that the call is an inference from the ASN organisation name rather than a proxy/VPN registry lookup. Use it to detect bot traffic from datacenter IPs, to score a signup, gate a request, or flag an address for fraud review. No API key.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Is this IP a datacenter or VPN, or is it a residential address? Classify the network behind an IP address: datacenter and hosting range, consumer residential ISP, education network or government network. Returns the verdict with the ASN, organisation, ISP, country and city it was derived from, plus an explicit confidence and a note that the call is an inference from the ASN organisation name rather than a proxy/VPN registry lookup. Use it to detect bot traffic from datacenter IPs, to score a signup, gate a request, or flag an address for fraud review. No API key.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 or IPv6 address to look up. Omit to look up the caller IP."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/token-holders": {
      "post": {
        "operationId": "how_many_holders_does_this_token_have",
        "summary": "How many holders does this token have? Holder count and top-10 holder concentration for a contract address",
        "description": "How many holders does this token have, and is the supply concentrated in a few wallets? Give a contract address and get the holder count and the top-10 holder concentration percentage from live contract-security data, together with a full token safety verdict. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "How many holders does this token have, and is the supply concentrated in a few wallets? Give a contract address and get the holder count and the top-10 holder concentration percentage from live contract-security data, together with a full token safety verdict.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "How many holders does this token have, and is the supply concentrated in a few wallets? Give a contract address and get the holder count and the top-10 holder concentration percentage from live contract-security data, together with a full token safety verdict.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "EVM token contract address to get a risk verdict for"
                  },
                  "chain": {
                    "type": "string",
                    "enum": [
                      "base",
                      "ethereum",
                      "polygon",
                      "arbitrum",
                      "optimism",
                      "bsc",
                      "avalanche"
                    ],
                    "default": "base",
                    "description": "Chain the token contract lives on"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/liquidity-lock-check": {
      "post": {
        "operationId": "is_the_liquidity_locked",
        "summary": "Is the liquidity locked on this token? Locked-liquidity percentage, DEX pair count and liquidity in USD",
        "description": "Is the liquidity locked on this token, and what percentage of the DEX liquidity is locked? Give a contract address and get the locked-liquidity percentage, DEX pair count and liquidity in USD from live DEX data, with a full rug-pull safety verdict. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Is the liquidity locked on this token, and what percentage of the DEX liquidity is locked? Give a contract address and get the locked-liquidity percentage, DEX pair count and liquidity in USD from live DEX data, with a full rug-pull safety verdict.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Is the liquidity locked on this token, and what percentage of the DEX liquidity is locked? Give a contract address and get the locked-liquidity percentage, DEX pair count and liquidity in USD from live DEX data, with a full rug-pull safety verdict.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "EVM token contract address to get a risk verdict for"
                  },
                  "chain": {
                    "type": "string",
                    "enum": [
                      "base",
                      "ethereum",
                      "polygon",
                      "arbitrum",
                      "optimism",
                      "bsc",
                      "avalanche"
                    ],
                    "default": "base",
                    "description": "Chain the token contract lives on"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/can-token-be-sold": {
      "post": {
        "operationId": "check_if_a_token_can_be_sold",
        "summary": "Check if a token can be sold: is this a cannot-sell honeypot that blocks selling, plus tax and safety verdict",
        "description": "Check if a token can be sold or is a cannot-sell honeypot: whether a transfer out is blocked, whether it can be sold at all, plus the buy tax, sell tax and a full safety verdict. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Check if a token can be sold or is a cannot-sell honeypot: whether a transfer out is blocked, whether it can be sold at all, plus the buy tax, sell tax and a full safety verdict.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Check if a token can be sold or is a cannot-sell honeypot: whether a transfer out is blocked, whether it can be sold at all, plus the buy tax, sell tax and a full safety verdict.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "EVM token contract address to get a risk verdict for"
                  },
                  "chain": {
                    "type": "string",
                    "enum": [
                      "base",
                      "ethereum",
                      "polygon",
                      "arbitrum",
                      "optimism",
                      "bsc",
                      "avalanche"
                    ],
                    "default": "base",
                    "description": "Chain the token contract lives on"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/token-renounced": {
      "post": {
        "operationId": "has_the_token_owner_renounced_ownership",
        "summary": "Has the token owner renounced ownership? Check whether contract ownership was renounced or is hidden or reclaimable",
        "description": "Has the token owner renounced ownership? Check whether the contract ownership was renounced, whether the owner is hidden or can reclaim ownership, plus a full rug-pull verdict. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Has the token owner renounced ownership? Check whether the contract ownership was renounced, whether the owner is hidden or can reclaim ownership, plus a full rug-pull verdict.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Has the token owner renounced ownership? Check whether the contract ownership was renounced, whether the owner is hidden or can reclaim ownership, plus a full rug-pull verdict.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "address": {
                    "type": "string",
                    "pattern": "^0x[0-9a-fA-F]{40}$",
                    "description": "EVM token contract address to get a risk verdict for"
                  },
                  "chain": {
                    "type": "string",
                    "enum": [
                      "base",
                      "ethereum",
                      "polygon",
                      "arbitrum",
                      "optimism",
                      "bsc",
                      "avalanche"
                    ],
                    "default": "base",
                    "description": "Chain the token contract lives on"
                  }
                },
                "required": [
                  "address"
                ],
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/traffic-source-check": {
      "post": {
        "operationId": "is_this_ip_from_a_hosting_provider",
        "summary": "Is this IP from a hosting provider? Detect bot traffic from datacenter IPs and identify the cloud provider behind an address",
        "description": "Is this IP from a hosting provider, and should this traffic be treated as a bot? Look up which company owns an IP address, whether the range belongs to a cloud or hosting provider such as AWS, and classify the network as datacenter, residential, education or government. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.005 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "5000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Is this IP from a hosting provider, and should this traffic be treated as a bot? Look up which company owns an IP address, whether the range belongs to a cloud or hosting provider such as AWS, and classify the network as datacenter, residential, education or government.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "5000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Is this IP from a hosting provider, and should this traffic be treated as a bot? Look up which company owns an IP address, whether the range belongs to a cloud or hosting provider such as AWS, and classify the network as datacenter, residential, education or government.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.005000"
          },
          "minPrice": 0.005,
          "maxPrice": 0.005,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.005 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "ip": {
                    "type": "string",
                    "description": "IPv4 or IPv6 address to look up. Omit to look up the caller IP."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/liquidations": {
      "post": {
        "operationId": "liquidation_heatmap",
        "summary": "Liquidation heatmap: where were longs and shorts liquidated, at which price levels, and is a short squeeze or long squeeze underway",
        "description": "Liquidation heatmap and forced liquidation data for crypto perpetual futures: where have longs and shorts been liquidated, at which price levels, and is a short squeeze or long squeeze happening now? Answers how much was liquidated, whether longs or shorts got liquidated more, and which price levels hold the biggest liquidation clusters. Returns the total liquidated notional in USD, the long and short split, the single largest liquidation, and a price-level heatmap for each symbol. Give a symbol (BTC, ETH, SOL, XRP, DOGE, BNB, ADA, AVAX, LINK, TON) or omit it for the ten most traded perpetuals at once. Read live from OKX forced-liquidation orders. No API key, no signup. Returns HTTP 402 with x402 payment requirements when unpaid. After paying $0.020 USDC on Base (eip155:8453), Polygon (eip155:137) or Solana, the endpoint returns its payload. Also accepts MPP (Payment auth scheme) charged in USDC.e on Tempo (chain 4217) — see the WWW-Authenticate header on the 402. First call free per wallet via the X-WALLET header.",
        "x-payment-info": {
          "offers": [
            {
              "amount": "20000",
              "currency": "0x20c000000000000000000000b9537d11c60e8b50",
              "description": "Liquidation heatmap and forced liquidation data for crypto perpetual futures: where have longs and shorts been liquidated, at which price levels, and is a short squeeze or long squeeze happening now? Answers how much was liquidated, whether longs or shorts got liquidated more, and which price levels hold the biggest liquidation clusters. Returns the total liquidated notional in USD, the long and short split, the single largest liquidation, and a price-level heatmap for each symbol. Give a symbol (BTC, ETH, SOL, XRP, DOGE, BNB, ADA, AVAX, LINK, TON) or omit it for the ten most traded perpetuals at once. Read live from OKX forced-liquidation orders. No API key, no signup.",
              "intent": "charge",
              "method": "tempo"
            },
            {
              "amount": "20000",
              "currency": "0x833589fCD6eDb6E08f4c7C32D4f71b54bda02913",
              "description": "Liquidation heatmap and forced liquidation data for crypto perpetual futures: where have longs and shorts been liquidated, at which price levels, and is a short squeeze or long squeeze happening now? Answers how much was liquidated, whether longs or shorts got liquidated more, and which price levels hold the biggest liquidation clusters. Returns the total liquidated notional in USD, the long and short split, the single largest liquidation, and a price-level heatmap for each symbol. Give a symbol (BTC, ETH, SOL, XRP, DOGE, BNB, ADA, AVAX, LINK, TON) or omit it for the ten most traded perpetuals at once. Read live from OKX forced-liquidation orders. No API key, no signup.",
              "intent": "charge",
              "method": "x402"
            }
          ],
          "price": {
            "mode": "fixed",
            "currency": "USD",
            "amount": "0.020000"
          },
          "minPrice": 0.02,
          "maxPrice": 0.02,
          "protocols": [
            "x402",
            "mpp"
          ]
        },
        "parameters": [
          {
            "name": "symbol",
            "in": "query",
            "required": false,
            "description": "Base asset symbol",
            "schema": {
              "type": "string",
              "default": "BTC",
              "enum": [
                "BTC",
                "ETH",
                "SOL"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Aggregated cross-exchange feed",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "symbol": {
                      "type": "string",
                      "example": "BTCUSDT"
                    },
                    "generatedAt": {
                      "type": "string",
                      "format": "date-time"
                    },
                    "exchangesQueried": {
                      "type": "integer",
                      "example": 11
                    },
                    "exchangesOk": {
                      "type": "integer",
                      "example": 7
                    },
                    "funding": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "minAnnualizedPct": {
                          "type": "number"
                        },
                        "maxAnnualizedPct": {
                          "type": "number"
                        },
                        "meanAnnualizedPct": {
                          "type": "number"
                        },
                        "arbSpreadPct": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "annualizedPct": {
                                "type": "number"
                              },
                              "nextFundingAt": {
                                "type": "string",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "openInterest": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "count": {
                          "type": "integer"
                        },
                        "totalUsd": {
                          "type": "number"
                        },
                        "meanUsd": {
                          "type": "number"
                        },
                        "byExchange": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "oiUsd": {
                                "type": "number"
                              }
                            }
                          }
                        }
                      }
                    },
                    "bestExecution": {
                      "type": "object",
                      "nullable": true,
                      "properties": {
                        "bestBid": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "bestAsk": {
                          "type": "object",
                          "properties": {
                            "exchange": {
                              "type": "string"
                            },
                            "price": {
                              "type": "number"
                            }
                          }
                        },
                        "spreadPct": {
                          "type": "number"
                        },
                        "prices": {
                          "type": "array",
                          "items": {
                            "type": "object",
                            "properties": {
                              "exchange": {
                                "type": "string"
                              },
                              "last": {
                                "type": "number"
                              },
                              "bid": {
                                "type": "number",
                                "nullable": true
                              },
                              "ask": {
                                "type": "number",
                                "nullable": true
                              }
                            }
                          }
                        }
                      }
                    },
                    "note": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "402": {
            "description": "Payment required (x402: $0.020 USDC on Base eip155:8453, Polygon eip155:137 or Solana solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp; MPP tempo on eip155:4217)"
          }
        },
        "requestBody": {
          "required": false,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "symbol": {
                    "type": "string",
                    "enum": [
                      "BTC",
                      "ETH",
                      "SOL",
                      "XRP",
                      "DOGE",
                      "BNB",
                      "ADA",
                      "AVAX",
                      "LINK",
                      "TON"
                    ],
                    "description": "Perpetual symbol to get liquidation data for. Omit it to get the ten most traded perpetuals at once."
                  }
                },
                "additionalProperties": false
              }
            }
          }
        }
      }
    },
    "/llms.txt": {
      "get": {
        "operationId": "llms_txt_service_summary",
        "summary": "Free agent-readable summary of FundingFeed (llms.txt)",
        "description": "Free, no payment and no auth. Plain-text summary of this API: paid endpoints, prices, payment rails (x402 USDC on Base/Polygon/Solana and MPP USDC.e on Tempo chain 4217), free endpoints and discovery URLs. Referenced from x-service-info.docs.llms.",
        "security": [],
        "responses": {
          "200": {
            "description": "llms.txt text",
            "content": {
              "text/plain": {
                "schema": {
                  "type": "string"
                }
              }
            }
          }
        }
      }
    },
    "/tempo-tokens": {
      "get": {
        "operationId": "tempo_tip20_token_list",
        "summary": "Free list of TIP-20 tokens on Tempo (chain 4217)",
        "description": "Free, no payment and no auth. Returns every TIP-20 stablecoin token on Tempo (chain 4217) with address, symbol, name, decimals, currency and verified flag. Useful for resolving which token an agent should pay or hold. The paid sibling endpoint /tempo scores a wallet's activity using these tokens.",
        "security": [],
        "responses": {
          "200": {
            "description": "TIP-20 token list",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "chain",
                    "tokens"
                  ],
                  "properties": {
                    "chain": {
                      "type": "string",
                      "const": "eip155:4217"
                    },
                    "chainName": {
                      "type": "string"
                    },
                    "tokenCount": {
                      "type": "integer"
                    },
                    "tokens": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "address": {
                            "type": "string"
                          },
                          "symbol": {
                            "type": "string"
                          },
                          "name": {
                            "type": "string"
                          },
                          "decimals": {
                            "type": "integer"
                          },
                          "currency": {
                            "type": "string"
                          },
                          "verified": {
                            "type": "boolean"
                          }
                        }
                      }
                    },
                    "paid": {
                      "type": "object",
                      "properties": {
                        "endpoint": {
                          "type": "string"
                        },
                        "price": {
                          "type": "string"
                        },
                        "returns": {
                          "type": "string"
                        }
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}