Alpha — This endpoint is in early access. Response shape, field names, and filter semantics may change without notice. Currently Solana-only; EVM launchpads (Clanker v4, Bankr) will be added in a follow-up release.
Query Details
This endpoint returns a polymorphic, chronological feed of a token deployer’s on-chain activity. Each row is one of three types:
type | Meaning |
|---|
feeClaim | The deployer drained their accumulated trading fees from a protocol vault. Supported protocols: PumpFun bonding curve, PumpSwap AMM, and Meteora DBC — which is the backbone of Bags, Moonshot, Believe, Subs.fun, Cults.fun, Time.fun, and most Solana launchpads. |
swap | The deployer executed a swap on a pool that contains the queried token. side is buy if the deployer ended up with MORE of the queried token, sell otherwise. |
transfer | A direct transfer of the queried token to (direction: "in") or from (direction: "out") the deployer. |
| Parameter | Required | Description |
|---|
blockchain | Yes | Blockchain identifier (e.g., solana, base, ethereum). |
token | Yes | Token mint / contract address. |
type | No | Filter to a single entry type: feeClaim, swap, or transfer. |
limit | No | Page size. 1–200, default 50. |
offset | No | Pagination offset, default 0. |
For PumpFun and PumpSwap, the per-creator vault is shared across all of the deployer’s coins — a feeClaim row under those protocols reflects the same on-chain claim event, but the amount may include fees from OTHER coins by the same creator. Rows from meteoradbc carry an exact tokenAddress and poolAddress and attribute 1:1 to a specific coin.
Step-by-Step Tutorial
Response Overview
Each data[i] is discriminated on the type field. Common fields across all variants:
- type:
"feeClaim" | "swap" | "transfer" — the discriminator.
- blockchain: Friendly blockchain name (e.g.
"solana").
- date: Event timestamp in milliseconds.
- transactionHash: On-chain transaction hash / signature.
feeClaim additional fields
- protocol:
"pumpfun" | "pumpswap" | "meteoradbc".
- blockHeight: Block / slot number, or
null.
- instructionIndex: Stable index of the claim instruction within the transaction.
- creatorAddress: Address that received the claimed fees (= the deployer).
- quoteAddress: Mint of the asset the claim is denominated in (wSOL, USDC, …).
- tokenAddress: Source coin mint for protocols with per-pool vaults (Meteora DBC).
null for per-creator vaults (PumpFun, PumpSwap).
- poolAddress: Source pool address if available;
null for per-creator vaults.
- amountRaw: Amount claimed in base units of
quoteAddress.
- amountUSD: USD value (0 until enrichment lands).
swap additional fields
- side:
"buy" (deployer received the queried token) or "sell".
- poolAddress: The pool the swap went through.
- baseTokenAddress / quoteTokenAddress: token0 / token1 of the pool. Not re-oriented to the queried token — compare addresses to know which side is which.
- baseTokenAmount / baseTokenAmountRaw / quoteTokenAmount / quoteTokenAmountRaw: amounts on each leg.
- amountUSD: USD value of the swap.
- swapSenderAddress: On-chain swap sender. Often a router (Jupiter, TG bots) when the deployer trades through an aggregator.
transfer additional fields
- direction:
"in" (deployer received) or "out" (deployer sent).
- counterpartyAddress: The other side of the transfer.
- tokenAddress: Mint of the transferred token (= the queried token).
- amountRaw / amountUSD: transferred amount.
Top-level response
- data: array of polymorphic entries as described above.
- deployer: the queried token’s recorded deployer address, or
null if unknown.
- pagination:
{ offset, limit, count, hasMore }.
Usage Examples
Full feed for a Solana meme coin (GET):
curl -X GET "https://api.mobula.io/api/2/token/dev-history?blockchain=solana&token=Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr&limit=50"
Fee claims only:
curl -X GET "https://api.mobula.io/api/2/token/dev-history?blockchain=solana&token=Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr&type=feeClaim"
Paginate further:
curl -X GET "https://api.mobula.io/api/2/token/dev-history?blockchain=solana&token=Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr&limit=50&offset=50"
Sample Response
{
"data": [
{
"type": "feeClaim",
"blockchain": "solana",
"date": 1745251935000,
"transactionHash": "5Uxxpff8iDTHM3Nu9D653aP6T2yzVbW8PfwsWBxi9ApwBAo7dbYm7ATLKBXbycAFP1yQQ1RYCByVqzzzaGNdVD6q",
"blockHeight": 358123456,
"instructionIndex": 2,
"protocol": "meteoradbc",
"creatorAddress": "82VbBzGtb8v5wFx1TM6iaMmLyRSLy8WeqA123orjHGzL",
"quoteAddress": "So11111111111111111111111111111111111111112",
"tokenAddress": "Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr",
"poolAddress": "DrKy5sCkpNSWFuUKcPn5STN7g9ghcH9GYcrMqwJxUG4W",
"amountRaw": "10157228",
"amountUSD": 0
},
{
"type": "swap",
"blockchain": "solana",
"date": 1745251800000,
"transactionHash": "4n3xM...",
"side": "buy",
"poolAddress": "DrKy5sCkpNSWFuUKcPn5STN7g9ghcH9GYcrMqwJxUG4W",
"baseTokenAddress": "Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr",
"quoteTokenAddress": "So11111111111111111111111111111111111111112",
"baseTokenAmount": 1234567.89,
"baseTokenAmountRaw": "1234567890000",
"quoteTokenAmount": 1.5,
"quoteTokenAmountRaw": "1500000000",
"amountUSD": 250.4,
"swapSenderAddress": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4"
},
{
"type": "transfer",
"blockchain": "solana",
"date": 1745251500000,
"transactionHash": "2kPm...",
"direction": "out",
"counterpartyAddress": "5q54X...",
"tokenAddress": "Fv8HhSVUquGC8WHqmMJLp7QEZMN4cZqcZjeYUPqvbrrr",
"amountRaw": "500000000",
"amountUSD": 42.5
}
],
"deployer": "82VbBzGtb8v5wFx1TM6iaMmLyRSLy8WeqA123orjHGzL",
"pagination": {
"offset": 0,
"limit": 50,
"count": 3,
"hasMore": false
}
}
Error Responses
404 — Token not found:
{ "statusCode": 404, "message": "Token not found" }
400 — Missing parameters:
{ "statusCode": 400, "message": "Blockchain is required" }
{ "statusCode": 400, "message": "Token address is required" }
Use Cases
- Rug & dump detection: see if the deployer has been selling or transferring the token out.
- Trust scoring: quantify fee extraction (claim frequency & amount) across all supported launchpads — Bags, Moonshot, Believe, PumpFun, etc.
- Dev reputation: track a creator’s full activity on their coin across time in one feed.
- Pre-trade due diligence: check for recent unusual deployer activity before entering a position.