Annalist Crowd API
The crowd API from Annalist — 5 operation(s) for crowd.
The crowd API from Annalist — 5 operation(s) for crowd.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/annalist-dev:annalist-dev-crowd-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 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