Annalist Crowd API

The crowd API from Annalist — 5 operation(s) for crowd.

Operations 5

GET /v1/crowd/perp Is this Hyperliquid perp crowded or in a hype state, and what usually happened… #
GET /v1/crowd/states Which Hyperliquid perps are crowded right now? #
GET /v1/crowd/market How crowded is the Hyperliquid market overall? #
GET /v1/crowd/changes Which perps entered or left a crowd state since a given time? #
GET /v1/crowd/history Which crowd-state events happened between two dates (for backtesting)? #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/annalist-dev:annalist-dev-crowd-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

annalist-dev-crowd-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Annalist Dev Crowd API
  version: 0.9.0
  x-guidance: 'Annalist sells signed data for agents, priced per call over x402 (USDC on Base or Solana). Start with the free GET /v1/catalog: every paid route with the question it answers, its price and an example. Hyperliquid in one call: GET /v1/perp/full?coin=BTC (crowd state, smart-money positioning, liquidation levels). Before paying an x402 service: GET /v1/checks/service?host=, or the free GET /v1/verify/attestation?host=. Before connecting an MCP server: GET /v1/mcp/server?url=, or the free GET /v1/verify/mcp?url=. Before an agent shops on a site: the free GET /v1/verify/store?domain=, or GET /v1/web/readiness?domain=. Every answer is Ed25519-signed; the key is at /.well-known/annalist-key.json. Not investment advice.'
  description: 'Operations tagged crowd across 2 of this provider''s published API definitions: annalist-dev-openapi.json, openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.annalist.dev
tags:
- name: crowd
paths:
  /v1/crowd/perp:
    get:
      operationId: crowd_perp
      tags:
      - crowd
      summary: Is this Hyperliquid perp crowded or in a hype state, and what usually happened…
      description: Use before acting on a Hyperliquid perpetual to see whether it is crowded or in a hype state and what historically followed. Returns 7-day move, funding (hourly, APR, percentile vs its own 90 days and vs all perps), open interest and its 24h/7d change, premium, Wikipedia attention, active crowd states, and each state's base rates (sample size, median and spread of 7/30/90-day returns). Signed. Not investment advice.
      x-price: $0.01
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.010000'
        protocols:
        - x402: {}
      parameters:
      - name: coin
        in: query
        required: true
        schema:
          type: string
          description: Hyperliquid perp symbol, for example BTC, ETH, SOL, HYPE, kPEPE
      responses:
        '200':
          description: Signed data
          content:
            application/json:
              schema:
                type: object
                required:
                - as_of
                - data
                - signature
                properties:
                  as_of:
                    type: string
                    format: date-time
                  data:
                    type: object
                  method:
                    type: object
                  request_id:
                    type: string
                  stale:
                    type: boolean
                  sources:
                    type: array
                    items:
                      type: string
                  notice:
                    type: string
                  key_id:
                    type: string
                  signature:
                    type: string
                    description: Ed25519 over RFC 8785 canonical JSON of {as_of, data, method, request_id}
                  signature_info:
                    type: string
              example:
                data:
                  coin: SOL
                  return_7d: 0.12
                  funding_apr: 0.11
                  states: []
                  base_rates: {}
        '402':
          description: Payment required (x402 v2, USDC on Base or Solana)
    servers:
    - url: https://api.annalist.dev
  /v1/crowd/states:
    get:
      operationId: crowd_states
      tags:
      - crowd
      summary: Which Hyperliquid perps are crowded right now?
      description: Every Hyperliquid perp currently in a crowd state (7-day moves of +50/+100/+200%, funding in its own top or bottom 5%, Wikipedia attention spikes, new listings), ranked by 7-day move, each with base rates for what followed similar states historically. Optional ?state= filter. Signed. Not investment advice.
      x-price: $0.02
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.020000'
        protocols:
        - x402: {}
      parameters:
      - name: state
        in: query
        required: false
        schema:
          type: string
          enum:
          - up_50pct_7d
          - up_100pct_7d
          - up_200pct_7d
          - funding_top5
          - funding_bottom5
          - attention_spike_3x
          - new_listing
      responses:
        '200':
          description: Signed data
          content:
            application/json:
              schema:
                type: object
                required:
                - as_of
                - data
                - signature
                properties:
                  as_of:
                    type: string
                    format: date-time
                  data:
                    type: object
                  method:
                    type: object
                  request_id:
                    type: string
                  stale:
                    type: boolean
                  sources:
                    type: array
                    items:
                      type: string
                  notice:
                    type: string
                  key_id:
                    type: string
                  signature:
                    type: string
                    description: Ed25519 over RFC 8785 canonical JSON of {as_of, data, method, request_id}
                  signature_info:
                    type: string
              example:
                data:
                  states:
                    up_100pct_7d:
                    - coin: XYZ
                      return_7d: 1.4
        '402':
          description: Payment required (x402 v2, USDC on Base or Solana)
    servers:
    - url: https://api.annalist.dev
  /v1/crowd/market:
    get:
      operationId: crowd_market
      tags:
      - crowd
      summary: How crowded is the Hyperliquid market overall?
      description: 'Market-wide crowding on Hyperliquid: breadth of 7-day moves, how many perps are up 50%+/100%+ in a week, share of perps with funding in their own top/bottom 5%, total open interest and its 24h change, BTC and ETH funding percentiles, and Wikipedia attention to cryptocurrency. Signed. Not investment advice.'
      x-price: $0.01
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.010000'
        protocols:
        - x402: {}
      parameters: []
      responses:
        '200':
          description: Signed data
          content:
            application/json:
              schema:
                type: object
                required:
                - as_of
                - data
                - signature
                properties:
                  as_of:
                    type: string
                    format: date-time
                  data:
                    type: object
                  method:
                    type: object
                  request_id:
                    type: string
                  stale:
                    type: boolean
                  sources:
                    type: array
                    items:
                      type: string
                  notice:
                    type: string
                  key_id:
                    type: string
                  signature:
                    type: string
                    description: Ed25519 over RFC 8785 canonical JSON of {as_of, data, method, request_id}
                  signature_info:
                    type: string
              example:
                data:
                  median_return_7d: 0.01
                  count_up_100pct_7d: 2
                  BTC:
                    funding_7d_pct_own_365d: 0.6
        '402':
          description: Payment required (x402 v2, USDC on Base or Solana)
    servers:
    - url: https://api.annalist.dev
  /v1/crowd/changes:
    get:
      operationId: crowd_changes
      tags:
      - crowd
      summary: Which perps entered or left a crowd state since a given time?
      description: 'For bots that poll: crowd-state events (a perp entering or leaving a state) since a timestamp, newest first, up to 7 days back. Each event is signed with the mark price at the time. Not investment advice.'
      x-price: $0.005
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.005000'
        protocols:
        - x402: {}
      parameters:
      - name: since
        in: query
        required: true
        schema:
          type: string
          format: date-time
      responses:
        '200':
          description: Signed data
          content:
            application/json:
              schema:
                type: object
                required:
                - as_of
                - data
                - signature
                properties:
                  as_of:
                    type: string
                    format: date-time
                  data:
                    type: object
                  method:
                    type: object
                  request_id:
                    type: string
                  stale:
                    type: boolean
                  sources:
                    type: array
                    items:
                      type: string
                  notice:
                    type: string
                  key_id:
                    type: string
                  signature:
                    type: string
                    description: Ed25519 over RFC 8785 canonical JSON of {as_of, data, method, request_id}
                  signature_info:
                    type: string
              example:
                data:
                  events:
                  - type: enter
                    coin: XYZ
                    state: up_100pct_7d
                    ts: '2026-10-12T14:07:00Z'
        '402':
          description: Payment required (x402 v2, USDC on Base or Solana)
    servers:
    - url: https://api.annalist.dev
  /v1/crowd/history:
    get:
      operationId: crowd_history
      tags:
      - crowd
      summary: Which crowd-state events happened between two dates (for backtesting)?
      description: 'Signed historical crowd-state events for backtesting: up to 30 days per call, optionally filtered by coin and state. The archive is append-only and its daily hashes are published and Bitcoin-timestamped.'
      x-price: $0.05
      x-payment-info:
        price:
          mode: fixed
          currency: USD
          amount: '0.050000'
        protocols:
        - x402: {}
      parameters:
      - name: from
        in: query
        required: true
        schema:
          type: string
          format: date
      - name: to
        in: query
        required: true
        schema:
          type: string
          format: date
      - name: coin
        in: query
        required: false
        schema:
          type: string
          description: Hyperliquid perp symbol, for example BTC, ETH, SOL, HYPE, kPEPE
      - name: state
        in: query
        required: false
        schema:
          type: string
          enum:
          - up_50pct_7d
          - up_100pct_7d
          - up_200pct_7d
          - funding_top5
          - funding_bottom5
          - attention_spike_3x
          - new_listing
      responses:
        '200':
          description: Signed data
          content:
            application/json:
              schema:
                type: object
                required:
                - as_of
                - data
                - signature
                properties:
                  as_of:
                    type: string
                    format: date-time
                  data:
                    type: object
                  method:
                    type: object
                  request_id:
                    type: string
                  stale:
                    type: boolean
                  sources:
                    type: array
                    items:
                      type: string
                  notice:
                    type: string
                  key_id:
                    type: string
                  signature:
                    type: string
                    description: Ed25519 over RFC 8785 canonical JSON of {as_of, data, method, request_id}
                  signature_info:
                    type: string
              example:
                data:
                  events: []
        '402':
          description: Payment required (x402 v2, USDC on Base or Solana)
    servers:
    - url: https://api.annalist.dev
x-refined-from:
- annalist-dev-openapi.json
- openapi.json