Your API keys
Keys are personal and read-only. Every request is logged against the key that made it, and you can revoke a key at any time.
Manage your keys in the app to create one, see what each key has pulled, or revoke it.
Everything below on one page: REST, MCP, limits and the data dictionary. Copy it into an agent and it can call the API without any further instruction.
What you get
The API serves the same data the site shows: actors, the wallets that belong to them, their positions, the raw fills behind those positions, pre-break hits, tracked entries, and a nightly stats rollup.
It is read-only. There is nothing to write, nothing to trade through, and no endpoint that changes anything on your account.
Every field is an observation about trading patterns. Tier 4 means corroborated by two independent kinds of evidence. Nothing here is a claim about what anyone knew.
Quickstart
Base URL https://onchaininsider.leveledai.com/api/v1. Every actor route takes an actor number in the path, and any actor number works. There is no special one. You can read a number off the site's URL when you open an actor (?actor=1042), or call GET /actors to list them ranked and pick from there.
# ACTOR_ID is any actor number, e.g. the 1042 in ?actor=1042 on the site.
curl -H "Authorization: Bearer YOUR_KEY" \
https://onchaininsider.leveledai.com/api/v1/actors/ACTOR_IDConnect your AI agent
The MCP server lives at https://onchaininsider.leveledai.com/api/v1/mcp. It speaks Streamable HTTP and authenticates with the same key.
Once it is connected your agent can pull any actor it likes. Swap <ACTOR_ID> below for the number you are interested in, which is the actor value in the site's URL when you open one:
If you do not have a number in mind, skip it. list_actors returns the ranked list, so the agent can find its own candidates and then go deeper on whichever ones look interesting:
No actor number is special. Every tool that takes an `actorId` accepts any id the API knows about, and an unknown one comes back as a plain 404 rather than an error your agent has to guess at.
claude mcp add --transport http onchaininsider \
https://onchaininsider.leveledai.com/api/v1/mcp \
--header "Authorization: Bearer YOUR_KEY"Use the onchaininsider tools to profile actor <ACTOR_ID>: sizing, win rate
by domain, timing, and what it did before price breaks. Treat everything as
pattern observation, not a claim about what anyone knew.Use the onchaininsider tools. List the top tier 4 actors, then profile
the three with the highest win rate. Tell me which actor numbers you picked.Endpoints
| endpoint | what it returns |
|---|---|
| GET /me | your key, tier, limits and today's usage |
| GET /actors | ranked actor list (minTier, set, limit, cursor) |
| GET /actors/{id} | profile, wallets, funding, summary |
| GET /actors/{id}/stats | nightly rollup: sizing, performance, timing, activity, domains, pre-break |
| GET /actors/{id}/positions | positions across all wallets (status, domain, market, cursor) |
| GET /actors/{id}/trades | raw fills (from, to up to 90 days, market, side, cursor) |
| GET /actors/{id}/hits | positions opened in front of a price break |
| GET /actors/{id}/activity | tracked entries with condition signals |
| GET /wallets/{address} | one wallet: score, actor membership, totals |
| GET /markets/{id} | market metadata and its breaks |
| GET /openapi.json | the spec, no key needed |
Pages carry page.nextCursor; pass it back as cursor. Limit is 200 per page, 500 for trades.
Limits
API access starts at Plus. A Starter account can sign in and use the site, but cannot create keys or call /api/v1. Limits are per account across all of your keys, so extra keys never add budget.
| limit | Starter | Plus | Pro Trader |
|---|---|---|---|
| Requests per minute | no access | 120 | 300 |
| Rows per day | no access | 500,000 | 5,000,000 |
| Concurrent requests | no access | 4 | 8 |
| Keys | no access | 5 | 10 |
Every response carries X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset and X-Rows-Remaining-Today. A refused request is HTTP 429 with Retry-After. Numbers are numbers, timestamps are ISO 8601, and responses are private, no-store.
Data dictionary
| term | meaning |
|---|---|
| actor | A cluster of wallets assembled nightly from funding and behaviour edges. Ids are stable, and a merged actor forwards to its survivor. |
| wallet member | A wallet inside an actor, carried with a confidence that decays unless fresh evidence reinforces it. |
| tier 1 to 4 | How much evidence stands behind the actor. Tier 4 is corroborated by on-chain links. It is a ranking of evidence, not a verdict. |
| break | A large, persistent price move on a watched market. |
| hit | A position opened in front of a break, with the delta t and whether it was on the correct side. |
| activity entry | A tracked BUY that surveillance logged, with the per-condition signals that were true at the time. |
| expert score | A separate skill score. isExpert flags the expert set. |
| domainProfile | Positions per domain. |
Terms
Keys are personal and for your own analysis. Do not resell or republish the raw data.
The full terms are at /terms.