{
  "openapi": "3.1.0",
  "info": {
    "title": "insidercable",
    "version": "0.3.0",
    "summary": "Point-in-time financial feeds for AI agents.",
    "description": "Every record carries observed_at (when this pipeline first saw it) separately from happened_at (when the event occurred). Records that predate a feed are labelled provenance=\"pre-existing\" with a null observed_at rather than given a fabricated date. Three tiers on the same handlers: free (delayed, capped), subscription token, and x402 pay-per-call in USDC on Base or Arbitrum One. Research data, not investment advice.",
    "contact": {
      "email": "hello@insidercable.com",
      "url": "https://insidercable.com"
    },
    "x-llms-txt": "https://insidercable.com/llms.txt"
  },
  "servers": [
    {
      "url": "https://insidercable.com"
    }
  ],
  "tags": [
    {
      "name": "feeds",
      "description": "free / subscription door"
    },
    {
      "name": "x402",
      "description": "pay-per-call door (always 402 until paid)"
    },
    {
      "name": "mcp"
    },
    {
      "name": "meta"
    }
  ],
  "paths": {
    "/feed/congress_trades": {
      "get": {
        "operationId": "free_congress_trades",
        "summary": "US Congress stock transactions",
        "description": "US Congress stock transactions from official Senate ePTR and House Clerk disclosures (public domain). Every record carries happened_at (transaction date), disclosed_at (filing date) and observed_at (when this pipeline first saw it). Because the STOCK Act permits ~45 days between trade and disclosure, disclosed_at is the field to use for point-in-time work. Senate data is parsed to ticker level; House filings are metadata only.\n\nFree tier: delayed 1 day, capped at 25 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Filter to one ticker, e.g. NVDA"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "name",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Substring match on member name"
          },
          {
            "name": "chamber",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "Senate",
                "House"
              ]
            }
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/congress_trades": {
      "get": {
        "operationId": "paid_congress_trades",
        "summary": "US Congress stock transactions (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Filter to one ticker, e.g. NVDA"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "name",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Substring match on member name"
          },
          {
            "name": "chamber",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "Senate",
                "House"
              ]
            }
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/etf_flows": {
      "get": {
        "operationId": "free_etf_flows",
        "summary": "Spot bitcoin ETF creation/redemption flows",
        "description": "Spot bitcoin ETF creation/redemption flows, computed as change in shares outstanding times NAV so price moves are removed and only genuine creations/redemptions remain. This series cannot be backfilled -- the issuer publishes only a current snapshot -- so every row was banked on the day it existed. span_days above 1 marks a row that spans a gap.\n\nFree tier: delayed 1 day, capped at 10 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Fund ticker, e.g. IBIT"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated fund tickers"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only rows on/after this YYYY-MM-DD"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/etf_flows": {
      "get": {
        "operationId": "paid_etf_flows",
        "summary": "Spot bitcoin ETF creation/redemption flows (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Fund ticker, e.g. IBIT"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated fund tickers"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only rows on/after this YYYY-MM-DD"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/insider_buys": {
      "get": {
        "operationId": "free_insider_buys",
        "summary": "SEC Form 4 open-market insider BUYS + Schedule 13D/13G stake increases",
        "description": "SEC Form 4 open-market insider BUYS (public domain). Form-4 code P only: grants, option exercises, tax withholding and gifts are excluded because they are compensation events rather than conviction. An officer or director spending their own money is the signal this feed isolates. Carries observed_at (when recorded here) and happened_at (transaction date on the filing). For disposals use insider_sells. Since 2026-09-01 the feed also carries Schedule 13D/13G beneficial-ownership stakes (form=13D active intent, form=13G passive; direction=buy on an initial filing or a percent increase versus the last filing seen); filter with form=4 for Form 4 only.\n\nFree tier: delayed 1 day, capped at 10 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "min_value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum transaction value in USD (Form 4 rows only carry a value)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "name": "form",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "4",
                "13D",
                "13G"
              ]
            },
            "description": "SEC form; omit for all"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/insider_buys": {
      "get": {
        "operationId": "paid_insider_buys",
        "summary": "SEC Form 4 open-market insider BUYS + Schedule 13D/13G stake increases (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "min_value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum transaction value in USD (Form 4 rows only carry a value)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "name": "form",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "4",
                "13D",
                "13G"
              ]
            },
            "description": "SEC form; omit for all"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/insider_sells": {
      "get": {
        "operationId": "free_insider_sells",
        "summary": "SEC Form 4 open-market insider SELLS + Schedule 13D/13G stake decreases",
        "description": "SEC Form 4 open-market insider SELLS (public domain). Form-4 code S only. Read these with care: insiders sell for diversification, tax and pre-scheduled 10b5-1 plans, so a sale carries far less information than a purchase. Carries observed_at (when recorded here) and happened_at (transaction date on the filing). For acquisitions use insider_buys. Also carries Schedule 13D/13G stake DECREASES and exits below 5% (form=13D|13G, direction=sell versus the last filing seen); filter with form=4 for Form 4 only.\n\nFree tier: delayed 1 day, capped at 25 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "min_value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum transaction value in USD (Form 4 rows only carry a value)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "name": "form",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "4",
                "13D",
                "13G"
              ]
            },
            "description": "SEC form; omit for all"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/insider_sells": {
      "get": {
        "operationId": "paid_insider_sells",
        "summary": "SEC Form 4 open-market insider SELLS + Schedule 13D/13G stake decreases (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "min_value",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum transaction value in USD (Form 4 rows only carry a value)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only transactions on/after this YYYY-MM-DD"
          },
          {
            "name": "form",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "4",
                "13D",
                "13G"
              ]
            },
            "description": "SEC form; omit for all"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/launch_ledger": {
      "get": {
        "operationId": "free_launch_ledger",
        "summary": "Robinhood Chain token launches: early-buyer cohorts, graded at 24h/7d",
        "description": "Robinhood Chain (chain id 4663) token launches that cleared a first-hour activity floor, with the early-buyer cohort: the first ~25 distinct wallets that bought (transaction sender, never the router), each with block delta from launch and quote spent. Every launch is graded at 24h and 7d (price multiple vs first buy, liquidity, holders). Launchpad is identified from the Uniswap v4 hook. Recorded forward from 2026-09-03 straight from chain logs: happened_at is the launch block time, observed_at is when the cohort was banked. Not backfilled.\n\nFree tier: delayed 1 day, capped at 10 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Token symbol as the deployer named it (untrusted text)"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated token symbols"
          },
          {
            "name": "launchpad",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Substring match, e.g. doppler, launchhook, none"
          },
          {
            "name": "quote",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Quote asset: ETH, WETH, USDG, or a stock token symbol"
          },
          {
            "name": "wallet",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Launches this address was early in, or deployed"
          },
          {
            "name": "min_buyers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum distinct early buyers captured"
          },
          {
            "name": "min_usd",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum first-hour buy volume, USD estimate"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only launches on/after this YYYY-MM-DD"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/launch_ledger": {
      "get": {
        "operationId": "paid_launch_ledger",
        "summary": "Robinhood Chain token launches: early-buyer cohorts, graded at 24h/7d (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Token symbol as the deployer named it (untrusted text)"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated token symbols"
          },
          {
            "name": "launchpad",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Substring match, e.g. doppler, launchhook, none"
          },
          {
            "name": "quote",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Quote asset: ETH, WETH, USDG, or a stock token symbol"
          },
          {
            "name": "wallet",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Launches this address was early in, or deployed"
          },
          {
            "name": "min_buyers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum distinct early buyers captured"
          },
          {
            "name": "min_usd",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum first-hour buy volume, USD estimate"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only launches on/after this YYYY-MM-DD"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/launch_wallets": {
      "get": {
        "operationId": "free_launch_wallets",
        "summary": "Robinhood Chain early-buyer wallet book (repeat rate, hit rate, deployer overlap)",
        "description": "Wallet book derived from launch_ledger: every address seen in an early-buyer cohort, with how many launches it was early in, its 24h hit rate (launch traded at 2x or more vs its first buy), dead rate (no trades or below 0.2x), average block delta, launchpads used, tokens, and whether it also deployed launches. Repeat early buyers with a high hit rate are the cohort worth watching; this feed ranks, it does not recommend. Recomputed at each publish from the forward-only ledger.\n\nFree tier: delayed 1 day, capped at 10 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "wallet",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "One address"
          },
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets that were early in this token symbol"
          },
          {
            "name": "launchpad",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets active on this launchpad"
          },
          {
            "name": "min_launches",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum launches early in"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets last seen on/after this YYYY-MM-DD"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/launch_wallets": {
      "get": {
        "operationId": "paid_launch_wallets",
        "summary": "Robinhood Chain early-buyer wallet book (repeat rate, hit rate, deployer overlap) (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.005 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.005",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "wallet",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "One address"
          },
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets that were early in this token symbol"
          },
          {
            "name": "launchpad",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets active on this launchpad"
          },
          {
            "name": "min_launches",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum launches early in"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Wallets last seen on/after this YYYY-MM-DD"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feed/options_iv": {
      "get": {
        "operationId": "free_options_iv",
        "summary": "Daily option-chain structure per ticker: ATM IV, IV rank, term, skew, put/call, dealer gamma sign, unusual-activity lean",
        "description": "Daily US equity option-chain structure per ticker, recorded forward from 2026-06-27 (~230 names, weekday close). Derived metrics only -- no quotes, strikes, greeks or spot are re-served: atm_iv_30d / atm_iv_90d (implied vol at the ~30d and ~90d expiries), iv_term (30d/90d; above 1 = backwardation/stress), skew_25d (25-delta put IV minus call IV; positive = put demand), iv_rank (percentile of today's 30d IV within THIS series' own history, with iv_hist_days saying how long that history is -- a rank over 10 days is not a rank), put/call ratios by open interest and by volume, net dealer gamma sign, max-OI call/put strikes as percent from spot, and an unusual-activity read (uoa_lean call/put/mixed from contracts with volume >= 3x open interest; EOD delayed data, no prints, so buyer vs seller is unknowable). happened_at is the trading day; observed_at is the day the chain was banked. Not backfilled; the source publishes only the current chain, so nobody can reconstruct these days.\n\nFree tier: delayed 1 day, capped at 10 records. Subscription token (Authorization: Bearer) lifts both.",
        "tags": [
          "feeds"
        ],
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "One ticker, e.g. NVDA"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only trading days on/after this YYYY-MM-DD"
          },
          {
            "name": "min_iv_rank",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum iv_rank, 0-1 (e.g. 0.9 = vol rich)"
          },
          {
            "name": "max_iv_rank",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Maximum iv_rank, 0-1 (e.g. 0.1 = vol cheap)"
          },
          {
            "name": "lean",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "call",
                "put",
                "mixed"
              ]
            },
            "description": "Unusual-activity lean on the day"
          },
          {
            "name": "min_hist_days",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Only rows whose iv_rank rests on at least this many days of history"
          },
          {
            "$ref": "#/components/parameters/src"
          }
        ],
        "responses": {
          "200": {
            "description": "Feed envelope",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "503": {
            "description": "Feed not yet published"
          }
        }
      }
    },
    "/paid/feed/options_iv": {
      "get": {
        "operationId": "paid_options_iv",
        "summary": "Daily option-chain structure per ticker: ATM IV, IV rank, term, skew, put/call, dealer gamma sign, unusual-activity lean (pay per call, x402)",
        "description": "Always answers 402 until an x402 v2 payment is attached (PAYMENT-SIGNATURE header). Price 0.02 USDC per call on eip155:8453,eip155:42161. Live data, up to 5000 records.",
        "tags": [
          "x402"
        ],
        "x-price-usdc": "0.02",
        "x-x402": {
          "version": 2,
          "scheme": "exact",
          "network": "eip155:8453,eip155:42161",
          "enabled": true
        },
        "parameters": [
          {
            "name": "ticker",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "One ticker, e.g. NVDA"
          },
          {
            "name": "tickers",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Comma-separated tickers (max 100)"
          },
          {
            "name": "since",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "Only trading days on/after this YYYY-MM-DD"
          },
          {
            "name": "min_iv_rank",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Minimum iv_rank, 0-1 (e.g. 0.9 = vol rich)"
          },
          {
            "name": "max_iv_rank",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Maximum iv_rank, 0-1 (e.g. 0.1 = vol cheap)"
          },
          {
            "name": "lean",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "enum": [
                "call",
                "put",
                "mixed"
              ]
            },
            "description": "Unusual-activity lean on the day"
          },
          {
            "name": "min_hist_days",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number"
            },
            "description": "Only rows whose iv_rank rests on at least this many days of history"
          },
          {
            "name": "PAYMENT-SIGNATURE",
            "in": "header",
            "required": false,
            "schema": {
              "type": "string"
            },
            "description": "base64 JSON x402 v2 PaymentPayload"
          }
        ],
        "responses": {
          "200": {
            "description": "Paid feed envelope",
            "headers": {
              "PAYMENT-RESPONSE": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 SettlementResponse (transaction, network, payer)"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FeedEnvelope"
                }
              }
            }
          },
          "402": {
            "description": "Payment required (or payment rejected: see error/code)",
            "headers": {
              "PAYMENT-REQUIRED": {
                "schema": {
                  "type": "string"
                },
                "description": "base64 JSON x402 v2 PaymentRequired — identical to the body"
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaymentRequired"
                }
              }
            }
          },
          "503": {
            "description": "pay-per-call not enabled on this deployment"
          }
        }
      }
    },
    "/feeds": {
      "get": {
        "operationId": "feeds",
        "summary": "Record counts, generation times, source and rights per feed",
        "tags": [
          "meta"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/anchors": {
      "get": {
        "operationId": "anchors",
        "summary": "Append-only log of snapshot hashes (sha256 of canonical records) per publish",
        "tags": [
          "meta"
        ],
        "parameters": [
          {
            "name": "feed",
            "in": "query",
            "schema": {
              "type": "string",
              "enum": [
                "congress_trades",
                "etf_flows",
                "insider_buys",
                "insider_sells",
                "launch_ledger",
                "launch_wallets",
                "options_iv"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "anchors": {
                      "type": "array",
                      "items": {
                        "$ref": "#/components/schemas/Anchor"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/.well-known/x402.json": {
      "get": {
        "operationId": "x402_manifest",
        "summary": "x402 discovery manifest: every paid resource with its PaymentRequirements and bazaar schema",
        "tags": [
          "x402"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/mcp": {
      "post": {
        "operationId": "mcp",
        "summary": "MCP server (JSON-RPC 2.0, streamable-http). One tool per feed; x402 payments via _meta[\"x402/payment\"]",
        "tags": [
          "mcp"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "JSON-RPC response"
          }
        }
      }
    },
    "/health": {
      "get": {
        "operationId": "health",
        "tags": [
          "meta"
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/llms.txt": {
      "get": {
        "operationId": "llms",
        "summary": "Plain-text description for agents",
        "tags": [
          "meta"
        ],
        "responses": {
          "200": {
            "description": "text/plain"
          }
        }
      }
    }
  },
  "components": {
    "parameters": {
      "src": {
        "name": "src",
        "in": "query",
        "required": false,
        "schema": {
          "type": "string",
          "maxLength": 40
        },
        "description": "Attribution tag for the demand ledger (where you found us)"
      }
    },
    "schemas": {
      "Tier": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "enum": [
              "free",
              "token",
              "x402"
            ]
          },
          "total_in_feed": {
            "type": "integer"
          },
          "matched_filters": {
            "type": "integer"
          },
          "returned": {
            "type": "integer"
          },
          "withheld_for_freshness": {
            "type": "integer"
          },
          "truncated_by_cap": {
            "type": "integer"
          },
          "upgrade": {
            "type": "string"
          },
          "auth": {
            "type": "string",
            "enum": [
              "degraded"
            ]
          }
        }
      },
      "FeedEnvelope": {
        "type": "object",
        "required": [
          "feed",
          "tier",
          "records"
        ],
        "properties": {
          "feed": {
            "type": "string"
          },
          "generated_at": {
            "type": "string"
          },
          "snapshot_sha256": {
            "type": [
              "string",
              "null"
            ]
          },
          "anchored_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "source": {
            "type": "string"
          },
          "rights": {
            "type": "string"
          },
          "provenance_note": {
            "type": "string"
          },
          "notes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "forms_recorded": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tier": {
            "$ref": "#/components/schemas/Tier"
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "happened_at": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "when the event occurred, per the source"
                },
                "observed_at": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "when this pipeline first saw the record"
                },
                "provenance": {
                  "type": "string",
                  "enum": [
                    "observed",
                    "pre-existing"
                  ]
                }
              },
              "additionalProperties": true
            }
          }
        }
      },
      "PaymentRequired": {
        "type": "object",
        "required": [
          "x402Version",
          "resource",
          "accepts"
        ],
        "properties": {
          "x402Version": {
            "type": "integer",
            "const": 2
          },
          "error": {
            "type": "string"
          },
          "code": {
            "type": "string",
            "description": "machine-readable rejection reason when a payment was attached but not accepted"
          },
          "resource": {
            "type": "object",
            "properties": {
              "url": {
                "type": "string"
              },
              "description": {
                "type": "string"
              },
              "mimeType": {
                "type": "string"
              }
            }
          },
          "accepts": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "scheme": {
                  "type": "string"
                },
                "network": {
                  "type": "string"
                },
                "amount": {
                  "type": "string"
                },
                "asset": {
                  "type": "string"
                },
                "payTo": {
                  "type": "string"
                },
                "maxTimeoutSeconds": {
                  "type": "integer"
                },
                "extra": {
                  "type": "object"
                }
              }
            }
          },
          "extensions": {
            "type": "object"
          }
        }
      },
      "Anchor": {
        "type": "object",
        "properties": {
          "feed": {
            "type": "string"
          },
          "generated_at": {
            "type": [
              "string",
              "null"
            ]
          },
          "record_count": {
            "type": "integer"
          },
          "sha256": {
            "type": "string"
          },
          "anchored_at": {
            "type": "string"
          }
        }
      }
    }
  }
}