Graph analytics over holders. A bundle is one transaction buying for several recipients, a launch transaction that also buys, two or more wallets buying in the same block that share a funder, or wallets forwarding tokens to a common wallet.
| Endpoint | Method | Plan | Credits |
|---|---|---|---|
| Snipers, bundles & clusters | GET /v1/{chain}/token/{address}/bundles |
Starter | 10 |
| Bubble map | GET /v1/{chain}/token/{address}/bubblemap |
Starter | 10 |
Snipers, bundles & clusters
Section titled “Snipers, bundles & clusters”GET /v1/{chain}/token/{address}/bundles
Plan: Starter and above · Cost: 10 credits per call
Snipers (bought within the first blocks after trading opened), bundles, funding clusters and the share of supply they hold. window_blocks sets the sniper window (default 10 blocks).
First 300 blocks of trading.
Parameters
Section titled “Parameters”| Name | In | Type | Default | Description |
|---|---|---|---|---|
chain |
path, required | string | Chain slug (robinhood) or chain id (4663). |
|
address |
path, required | string | Contract or wallet address, any case (0x…, 20 bytes). |
|
window_blocks |
query | integer | 10 |
Sniper window after trading opened, in blocks. |
Request
Section titled “Request”curl "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bundles" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bundles", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bundles", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])Bubble map
Section titled “Bubble map”GET /v1/{chain}/token/{address}/bubblemap
Plan: Starter and above · Cost: 10 credits per call
The top holders (top, up to 500) as nodes and the links between them as edges: funding, transfers, common funders and same-block buys. Pass block for a historical map. Ready to render with any force-directed graph library.
Nodes = holders (+ external funders), edges = funding / transfers.
Parameters
Section titled “Parameters”| Name | In | Type | Default | Description |
|---|---|---|---|---|
chain |
path, required | string | Chain slug (robinhood) or chain id (4663). |
|
address |
path, required | string | Contract or wallet address, any case (0x…, 20 bytes). |
|
top |
query | integer | 100 |
Number of top holders to include as nodes. Up to 500. |
edges |
query | string | funding,transfers,common_funder |
Which links to include between holders. |
exclude |
query | string | infra |
Comma list of holder classes to leave out, such as infra (pools, lockers, burn) or bots. |
block |
query | integer | Build the map as of this block (historical). |
Request
Section titled “Request”curl "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bubblemap?top=100" \ -H "x-api-key: $CRIUS_API_KEY"const res = await fetch("https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bubblemap?top=100", { headers: { "x-api-key": process.env.CRIUS_API_KEY },});const { data, meta } = await res.json();import os, requests
r = requests.get( "https://api.crius.sh/v1/robinhood/token/0x7b8892cea949bc60d494681d1bc3ea96071ab0b8/bubblemap?top=100", headers={"x-api-key": os.environ["CRIUS_API_KEY"]},)body = r.json()print(body["data"])