Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Nansen API offers programmatic access to high-quality onchain data and advanced blockchain analytics across numerous networks. The API aims to equip users with the necessary data to gain a competitive edge, identify opportunities, perform due diligence, and make informed decisions within the dynamic crypto market. It effectively translates the complexity of raw blockchain data into actionable intelligence, accessible through a structured API interface.
Proprietary Data Labeling: Nansen applies unique, human-readable labels to hundreds of millions of blockchain addresses. These labels identify specific entities such as exchanges, funds, market makers, notable individual investors that allows users to understand who is behind onchain activities, providing crucial context that raw, pseudonymous data lacks. Accessing this labelled data via the API is a core component of Nansen's offering.
Unique Datasets and Insights: The API provides access to data points and analytics not readily available elsewhere, such as Smart Money analytics.
Comprehensive Multi-Chain Coverage: The API consolidates data from multiple blockchain networks, allowing users to track assets and activities across different ecosystems through a single integration point.
These features collectively enable the API to deliver not just data, but contextualized intelligence, transforming raw onchain events into a clearer picture of market dynamics and participant behavior.
The Nansen API employs rate limits and usage quotas to ensure fair usage and maintain performance for all users.
Professional Tier Rate Limits:
This tier provides access to all APIs with near real-time data. The current rate limits are 20 requests per second and 500 requests per minute. Monthly quotas will also apply. Details regarding total credit numbers and credit consumption per API call will be released separately.
Exceeding Rate Limits:
If you exceed the defined rate limits, the API will return an error response. You should expect a 429 Too Many Requests HTTP status code.
You can also pull balances for any labeled entity (e.g., Binance, Paradigm Fund) instead of raw wallet addresses.
Provide exactly one of:
walletAddresses – array of addresses or
entityId – string name or UUID of the entity
Leave the other field empty / omitted.
All other parameters work exactly the same.
Example request of entity lookup
You can also query balances across all chains using this
The /flows endpoint allows you to analyze historical inflows and outflows of token holdings across specific wallet labels (e.g., Smart Money, Whales, Public Figures, etc.) on supported blockchains. This enables powerful workflows to investigate token accumulation or distribution trends by high-signal wallet groups over time.
This guide walks through how to use the endpoint in a workflow to explore Smart Money behavior for a given token on a given chain.
This workflow helps you:
Identify what tokens Smart Money is holding (e.g., via /holdings or /inflows)
Investigate how inflows/outflows of Smart Money have evolved over time
Combine historical activity with price trends for better decision-making
Step by Step Guide:
Start with /holdings endpoint to identify what tokens Smart Money is holding.
Pick a token of interest based on value and activity patterns.
Use the /flows endpoint with the token address and smart_money label to view inflow/outflow trends.
Specify timeframe (e.g., last 30 days) and examine how Smart Money behavior is evolving.
This workflow helps you:
Track how much of a token is being sent to or from exchange wallets
Spot accumulation or distribution trends by observing net exchange flow
Correlate token price movement with CEX behavior patterns
Step by Step Guide:
Identify the token of interest (e.g., USDC, ETH, SOL).
Choose the chain where it is active.
Use label: "exchange" to track exchange wallets.
Analyze net flows:
High inflow = Possible sell pressure
High outflow = Possible accumulation
Correlate flow data with price action or events (e.g., listings, unlocks, news).
Learn how to connect AI agents to Nansen
Connect your AI tools (Eg. Claude, Cursor) using Anthropic's Model Context Protocol, a standard that lets AI tools interact with Nansen data.
Nansen MCP is a Model Context Protocol (MCP) server that provides access to Nansen's institutional-grade blockchain intelligence platform. It transforms Nansen's onchain intelligence into an accessible interface that AI agents, developers, and researchers can use to analyze crypto markets and blockchain activity.
MCP Protocol: Built on the standardized Model Context Protocol, ensuring compatibility with AI tools like Claude, Cursor, and other MCP-compatible clients
Multi-Chain Coverage: Supports 25+ major blockchains including Ethereum, Solana, Bitcoin, Arbitrum, Base, Polygon, and more
Real-Time Data: Provides access to live blockchain data including transactions, token movements, wallet activities, dex trades and PnL
AI tools currently have no visibility into what's happening onchain. Even answering simple blockchain queries is extremely difficult without proper data access and context. Nansen MCP gives AI tools the ability to see and understand onchain activities, transforming them into powerful blockchain research assistants.
Access to Nansen's proprietary wallet labeling system with millions of identified addresses including smart money labels
Institutional-grade data accuracy and reliability
Real-time processing of onchain activities across multiple blockchains
One-click installation with Claude Desktop
No need to struggle with complex APIs or documentation - everything works out of the box
Build custom AI agents and LLMs with blockchain intelligence
Saves time by wrapping complex workflows into simpler tasks
Automate onchain research that would take hours manually
Generate insights from multiple data sources simultaneously
Track DEX trades, token holdings, and portfolio changes of profitable traders and funds. Discover tokens gaining traction among smart money before broader market adoption.
Screen thousands of tokens across multiple chains using advanced filters. Analyze real-time trading data, holder distributions, and exchange flows to identify opportunities.
Deep dive into wallet activities, trading patterns, and PnL analysis. Map relationships between wallets and identify connected addresses across all supported blockchains.
"Show me all tokens that funds bought in the last 24 hours"
"What DCA strategies are profitable traders using on Jupiter?"
"Find new tokens with high smart money inflows and growing trading volume"
"Show me trending tokens with liquidity above $100k"
"Analyze the trading performance of this whale address"
"Find wallets connected to this successful trader"
"Track how this fund's portfolio allocation has changed over time"
"Do a deep dive into this wallet to find whom does it belong to"
The Nansen MCP server provides AI assistants with access to comprehensive blockchain analytics through a secure API. This guide covers how to connect to Nansen MCP.
Before connecting, you'll need:
Nansen API Key: Get yours at app.nansen.ai/account?tab=api
npx: Required for remote connections (npm install -g npx
)
The easiest way to get started with Nansen MCP. Double-click the downloaded .dxt file to configure automatically.
Connect Nansen MCP through your terminal:
claude mcp add --transport http nansen <https://mcp.nansen.ai/ra/mcp/> --header "NANSEN-API-KEY: YOUR_API_KEY_HERE"
Integration example for various other tools supporting MCPs
Server configuration:
Server: https://mcp.nansen.ai/ra/mcp/
Header: NANSEN-API-KEY: your_api_key
Transport: mcp-remote --allow-http
{
"mcpServers": {
"nansen-mcp": {
"env": {
"NANSEN_API_KEY": "your_api_key"
},
"command": "npx",
"args": [
"-y",
"mcp-remote",
"<https://mcp.nansen.ai/ra/mcp/>",
"--header",
"NANSEN-API-KEY:${NANSEN_API_KEY}",
"--allow-http"
]
}
}
}
NPX example:
npx -y mcp-remote <https://mcp.nansen.ai/ra/mcp/> \\
--header "NANSEN-API-KEY:YOUR_API_KEY_HERE" \\
--allow-http
⚠️ Nansen MCP uses the same API as your regular API keys. Ensure you have sufficient credits for your usage.
All interactions with the Nansen API occur via HTTPS requests to specific endpoints. The general structure of an API call is:
HTTP Method + Base URL + Endpoint Path
HTTP Method: Primarily POST
for retrieving data.
Base URL: The root URL for all API requests is:
https://api.nansen.ai/api/beta
Endpoint Path: The specific path identifying the resource and desired data, appended directly to the Base URL (e.g., /smart-money/inflows
). Endpoint paths for specific resources are detailed within their respective sections of this documentation.
Request Body: Parameters are typically passed in JSON format within the request body for POST requests. For example:
{
"parameters": {
"smFilter": ["180D Smart Trader", "Fund", "Smart Trader"],
"chains": ["ethereum", "solana"],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
}
}
POST /api/beta/profiler/address/balances
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
{
"parameters": {
"chain": "all",
"walletAddresses": [],
"entityId": "Binance,
"suspiciousFilter": "on"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
"chain": "all",
A curated list of the top 5 000 highest-performing wallets ranked by realised profit, winrate, and strong performance across market cycles. Available Smart Money labels:
30D Smart Trader
90D Smart Trader
180D Smart Trader
Fund
Smart Trader
To query smart money activity across all chains, simply use
"chains": []
To query smart money activity across multiple chains, specify the chains in the array
"chains": [
"solana",
"base"
],
You can also use filters to only query smart money data for tokens of interest by adding these filters:
"filters": {
"symbol": [
"FARTCOIN",
"USELESS"
]
},
or
"filters": {
"tokenAddress": [
"9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump"
]
},
You can also filter responses based on token age or sectors
"filters": {
"tokenAgeDays": {
"from": 0,
"to": 30
},
"sectors": [
"GameFi"
]
},
To optimize queries on the /tgm/jup-dca endpoint and avoid timeouts, use targeted filters rather than broad searches. Apply these strategies:
Set sinceTimestamp
and lastTimestamp
to limit results to a specific period.
Filter by traderAddress
to focus on individual users.
Use thresholds like depositUsdValue
to target significant orders.
Filter by status to separate active from closed orders.
Combining these filters reduces data volume, speeds up queries, and improves reliability.
sinceTimestamp
Start date/time for results
“2025-06-01T00:00:00Z”
lastTimestamp
End date/time for results
“2025-06-27T00:00:00Z”
traderAddress
Filter by specific trader address
“YourTraderAddressHere”
depositUsdValue
Minimum USD value of deposit
1000
status
Order status (“Active” or “Closed”)
“Active”
The Holders Endpoint returns holder data for a given token on a specific chain over a defined date range. You can use this to analyze who is holding a particular token—whether it’s Smart Money wallets, exchanges, or all holders.
Set "label" to "smart_money" in the parameters object.
Add "includeLabels" as an array with the specific Smart Money segments you want (e.g., "Fund", "30D Smart Trader").
Other parameters (like chain, tokenAddress, date range, etc.) stay the same.
Example Configuration:
"label": "smart_money",
"includeLabels": ["Fund", "30D Smart Trader"]
"isEntity": true, -- To aggregate by Entity
Set "label" to "exchange" in the parameters object.
Add "includeLabels" with "Exchange"
Other parameters remain unchanged.
Example Configuration:
"label": "exchange",
"includeLabels": ["Exchange"]
"isEntity": true, -- To aggregate by Entity
You can also query balances across all chains using this
You can also pull counterparties for any labelled entity (eg. Binance, Alex Svanevik, Paradigm Fund) instead of raw addresses.
Provide exactly one of:
walletAddresses – array of addresses or
entityId – string name of the entity
Leave the other field empty / omitted.
All other parameters behave the same.
Example request — entity lookup
To ensure optimal performance when using the counterparties API:
Limit the number of chains included in a single request. We recommend querying one chain at a time.
Use a shorter `look-back` window, such as 1 month, for faster response times.
Avoid querying very large timeframes.
The Nansen API uses API key-based authentication. All requests must include an API key provided in the request header for successful authentication.
You can access the API Keys from in account settings
Add the following header to all API requests:
Replace YOUR_API_KEY
with your actual API key.
cURL Example:
Header Name
Header Value
apiKey
YOUR_API_KEY
curl -X POST 'https://api.nansen.ai/api/beta/smart-money/inflows' \
-H 'apiKey: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"parameters": {
"smFilter": ["Smart Trader"],
"chains": ["ethereum"],
"includeStablecoin": true
}
}'
To help you plan your usage, here’s a clear overview of how our API credit system works. We’ve designed our pricing to be simple and scale with your needs, ensuring you only pay for the value you receive.
We offer two main API plans to fit your needs:
Pioneer (Paid Trial)
1,000 (one-time only)
All endpoints (evaluation only)
Brief experimentation and integration testing
Professional
1,000,000/month
All endpoints
Production use and high-volume integrations
For more information on plan features, visit our pricing page.
Credit costs are structured to reflect the value of the data you’re accessing. Foundational data is inexpensive to encourage frequent use, while our proprietary, alpha-generating data costs more.
profiler/address/balances
profiler/address/historical-balances
profiler/address/transactions
tgm/transfers
tgm/dcas
*Endpoints marked as free do not count towards your credit usage as part of the Professional Plan.
profiler/address/related-wallets
profiler/pnl-summary
profiler/pnl
tgm/flow-intel
tgm/who-bought-sold
tgm/dex-trades
tgm/flows
All Smart Money endpoints (/inflows
, /holdings
, /dex-trades
, etc.)
profiler/address/counterparties
tgm/holders
tgm/pnl-leaderboard
Behavioural Labels: 25 credits per call
Entity Labels: 500 credits per call
What happens if I run out of credits?
You can purchase additional credit blocks at any time to ensure your service is not interrupted. Please reach out to our team incase you're interested.
Are there higher tiers or enterprise plans?
The Professional plan is designed to meet most needs. However, if you are a large-scale enterprise or have a unique integration that may require a significant volume of credits, please reach out to our sales team to discuss a custom solution.
How do I track my credit usage?
You can track your credit usage by visiting this link: https://app.nansen.ai/account?tab=api
Before integrating with the Nansen API, ensure the following requirements are met:
Nansen API Access: You need an active subscription to either the Pioneer plan (which includes 1,000 one-time credits for testing) or the Professional plan with API access.
API Key: Log in to your Nansen account to obtain your personal API key from the dashboard.
HTTPS Client: Be familiar with making HTTPS requests using tools like curl
, or libraries like requests
in Python, or axios
/fetch
in Node.js.
Development Environment: Set up a suitable environment for writing and executing code to interact with APIs.
HTTPS Request
POST /api/beta/smart-money/inflows HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
{
"parameters": {
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"chains": [
"ethereum",
"solana"
],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
}
}
cURL Example
curl -L \
--request POST \
--url 'https://api.nansen.ai/api/beta/smart-money/inflows' \
--header 'apiKey: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"parameters": {
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"chains": [
"ethereum",
"solana"
],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
}
}'
Always refer to the official API documentation for parameter options and rate limit details.
Ensure your API key remains confidential and is not shared in public repositories.
API responses are delivered in JSON format. The client applications must parse this JSON to extract the required data. Equally important is handling the HTTP status code returned with each response to determine success or failure.
Common HTTP Status Codes:
200 OK
The request was successful, and the response body contains the requested data.
400 Bad Request
The request was malformed (e.g., invalid parameters, incorrect format). Check the request syntax and parameters.
401 Unauthorized
Authentication failed. The access token is missing, invalid, or expired. Obtain/refresh the token.
403 Forbidden
Authentication succeeded, but the user does not have permission to access the requested resource
404 Not Found
The requested resource (e.g., specific address, endpoint path) does not exist.
429 Too Many Requests
The client has exceeded the allocated rate limit.
500 Internal Server Error
An unexpected error occurred on Nansen's servers.
504 Gateway Timeout
API didn't get a timely response from backend server
As we continue to improve the performance of the Nansen API, here are some general guidelines to help you understand what to expect and how to get the best results:
Most core endpoints (e.g. smart money, profiler) typically respond in under 2 seconds.
Some heavier endpoints (especially under the TGM namespace) may take longer depending on the scope of the query.
We’re actively working towards improving the performance of the API
To get faster and more reliable responses:
Avoid overly broad queries. For example, don’t request balances for every address holding USDC across the entire chain.
Use filters when available to narrow down time ranges, token lists, or entity types.
Paginate where supported instead of trying to fetch large datasets in one go.
Be mindful of rate limits, especially if calling multiple endpoints in parallel.
"chain": "all",
POST /api/beta/profiler/address/counterparties
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
{
"parameters": {
"walletAddresses": [],
"entityId": "Alex Svanevik",
"chain": "base",
"sourceInput": "Combined",
"groupBy": "wallet",
"timeRange": {
"from": "2025-05-11",
"to": "2025-05-21"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Below is the list of APIs currently available as part of the Nansen API. These endpoints closely mirror dashboards across Profiler, Smart Money, and Token God Mode, and have been grouped accordingly. To get a sense of what each endpoint delivers, you can review its documentation.
Because these endpoints are tightly coupled with live dashboards, they are subject to frequent updates. We refer to them as Fluid Endpoints. A more stable, static version of these APIs will be launched in the near future.
A curated list of the top 5 000 highest-performing wallets ranked by realised profit, winrate, and strong performance across market cycles.
A toolkit for diving deep into address relationships and behaviour, letting you analyse any wallet or entity cluster to uncover flows, counterparties, and behavioural patterns.
A comprehensive lens on a token’s on-chain activity, combining Smart Money movements, holder-base analysis, and exchange-flow tracking in one view.
The Token Screener API request body is composed of two key sections:
parameters: Controls high-level configuration of the query — e.g., which chains to query, Smart Money toggles, date ranges, and label/scope filters. (Must Haves)
filters: Defines numeric or categorical constraints for token-level metrics — e.g., liquidity, age, volume, holders, etc.
These work together to define your screening logic.
All parameters in the API request are mandatory.
If any parameter is missing or incorrectly formatted, the API will return an error and not process the request.
You can leave parameters empty (e.g., use empty arrays), but you must still include them in the request payload.
Filters determine which tokens are returned based on their individual characteristics. You can apply multiple filters at once. All filters are optional. We support two types of filters:
Categorical (Array of strings): To be used as ["0xab","0xbc"]
Numeric (from, to): To be used as {"from": "2", "to": "5"}
Please note all filters must be placed in a separate filters section (see example below).
This endpoint supports sorting. You can use it by adding the column name and order (desc/asc):
Provides net flow of tokens bought/sold by Smart Money addresses
Holdings of tokens by Smart Money addresses.
All dex trades of smart money traders in the last 24h
All Jupiter DCAs started by Smart Money Wallets on Solana
Current Token balances of an address
Historical holdings of a wallet address
List of transactions made by an address
Top Counterparties a wallet has interacted with
List of related wallets and its first degree relation
Trade summary including top 5 trades
List of Past Trades and their performance made by the address
/label (Coming Soon)
Address and list of all its labels
Summary of token flows across Smart Money, exchanges, Top PnL Traders, Public Figures, Whales, Fresh Wallets
Recent buyers and sellers of a token summarised
All DEX Trades of a Token
Top Token Transfers of a token
List of all Jupiter DCA orders of a token on Solana
Balance of top addresses, smart money, exchanges, public figures and whales that can be queried by address or by entity
Total Inflow and outflow of a token from smart money, exchanges, public figures or whales.
List of addresses and their total realised and unrealised PnL
A token screening endpoint that provides real-time analytics and insights across multiple blockchain networks.
growth-chain-rank
List of key metrics on how chains are doing over time
hot-contracts
List of most active contracts on a chain, ranked by USD Flow
Explore the suite of tools available through Nansen MCP. Each tool is purpose-built to deliver actionable blockchain insights, from tracking smart money movements to analyzing token flows and wallet activities.
smart_traders_and_funds_token_balances_aggregated
Smart Money Holdings
Get aggregated smart trader and fund token balances and 24h change per chain (excludes whales, influencers)
smart_traders_and_funds_dex_trade_txs
Smart Money DEX Trades
Get individual smart trader and fund DEX trade transactions in the last 24 hours
smart_traders_and_funds_netflows_aggregated
Smart Money Netflows
Get aggregated smart trader and fund net flows for the last 1, 7, and 30 days
smart_traders_and_funds_dcas_solana
Smart Money DCAs
Get Jupiter DCA orders created by smart traders and funds on Solana
token_holders
TGM Holders
Get token holder information including balances, ownership percentages, and historical changes
token_dex_trades
TGM DEX Trades
Get DEX trading activity for a specific token with optional smart money filtering
token_transfers
TGM Transfers
Get token transfer activity including DEX trades and CEX movements
token_flows
TGM Flows
Get token flow statistics tracking smart money holders and their collective behavior
token_exchange_transactions
TGM Exchange Transactions
Get exchange deposits/withdrawals for a specific token
token_pnl_leaderboard
TGM PnL Leaderboard
Get trader performance rankings by PnL for a specific token
token_who_bought_sold
TGM Who Bought/Sold
Get aggregated summary of addresses that bought or sold a specific token
token_jup_dca
TGM Jupiter DCA
Get Jupiter DCA orders for a specific token (Solana only)
token_flow_intelligence
TGM Flow Intelligence
Get detailed token flow analysis categorized by trader types (whales, smart traders, etc.)
token_screener
Token Screener
Get comprehensive token screening data across multiple blockchains with advanced filtering
trending_tokens
Trending Tokens
Get trending tokens with smart trader activity (simplified token screener interface)
address_historical_balances
WP Historical Balances
Get historical native coin & token balances for addresses or entities
address_balances
WP Balances
Get current token balances for addresses or entities
address_related_addresses
WP Related Addresses
Get information about related addresses (first funders, signers, deployed contracts)
address_counterparties
WP Counterparties
Get addresses/entities with most common interactions with input addresses
address_transactions
WP Transactions
Get readable list of transactions made by an address
wallet_pnl_for_token
WP PnL for Token
Get PnL stats for a specific token traded by an address during a date range
wallet_pnl_summary
WP PnL Summary
Get aggregate stats of overall realized PnL for an address
address_transactions_for_token
WP Token Transactions
Get token transfer transactions between a specific address and token
address_labels
WP Labels
Get Nansen labels for a specific address
general_search
General Search
Perform general search across all Nansen data types (tokens, entities, commands) with price data
growth_chain_rank
Growth Chain Rank
Get chain growth rankings by active addresses, transactions, gas fees, and DEX volume
transaction_lookup
Transaction Lookup
Get comprehensive transaction details including token transfers
At Nansen, our goal is to empower developers by providing access to the richest on-chain data. We encourage you to build on top of our API, and these guidelines will help you understand how to use and share Nansen's data in your products while protecting the unique value of our insights.
All use of the Nansen API is subject to these guidelines and our official Terms of Service.
The table below outlines the redistribution status for our API endpoints. Please review the subsequent sections for a detailed explanation of what each status means and the rules you are required to follow.
Profiler
profiler/address/balances
✅ Allowed
profiler/address/transactions
✅ Allowed (with attribution)
profiler/address/historical-balances
✅ Allowed
profiler/address/pnl
& pnl-summary
✅ Allowed
profiler/address/related-wallets
✅ Allowed (with attribution)
profiler/address/counterparty
✅ Allowed (with attribution)
/label
(Coming Soon)
🚫 Prohibited
Token God Mode
tgm/dex-trades
✅ Allowed (with attribution)
tgm/transfers
✅ Allowed
tgm/who-bought-sold
✅ Allowed (with attribution)
tgm/flow-intelligence
✅ Allowed (with attribution)
tgm/flows
✅ Allowed (with attribution)
tgm/pnl-leaderboard
⚠️ Restricted By-Default*
tgm/holders
⚠️ Restricted By-Default*
Smart Money
smart-money/inflows
⚠️ Restricted By-Default*
smart-money/holdings
⚠️ Restricted By-Default*
smart-money/dex-trades
🚫 Prohibited
smart-money/dcas
🚫 Prohibited
Use cases designated as ⚠️ Restricted By-Default require additional approval process. Please contact our team in order to access them.
We require specific attribution for our Transactions, DEX Trades, and Transfers endpoints. This is because these endpoints provide more than just standard onchain data; they are enhanced with Nansen's unique labels and insights, which require proper acknowledgement.
To use the Nansen API, attribution is required for all public or commercial applications. You can fulfill this by:
Including a backlink to Nansen.ai
Displaying "Powered by Nansen API" within your application
Attribution is not required for personal or private use cases.
chains
Blockchain networks to include (ethereum, base, solana)
Categorical (array of strings)
Can't be empty: must specify an option
onlySmartMoney
Only include tokens traded by Smart Money wallets
Boolean (true / false)
Can't be empty: must specify an option
smLabelFilter
Filter by Smart Money labels (e.g., Fund, Smart Trader)
Categorical (array of strings)
Can be empty
sectorsFilter
Filter by token sectors (e.g., DeFi, Memes)
Categorical (array of strings)
Can be empty
watchlistFilter
Filter by tokens
Categorical (array of token addresses)
Can be empty
date
Restricts trading/activity to a specific time range
Date (from, to) in ISO 8601 format
Can't be empty: must specify a range
tokenAgeDays
Token age in days
Numeric (from, to)
buyVolume
Total buy-side volume
Numeric (from, to)
sellVolume
Total sell-side volume
Numeric (from, to)
volume
Total trading volume
Numeric (from, to)
liquidity
Liquidity in pools (USD equivalent)
Numeric (from, to)
marketCap
Market capitalization
Numeric (from, to)
fdv
Fully Diluted Valuation
Numeric (from, to)
netflow
Net inflow (inflows - outflows)
Numeric (from, to)
"order": {
"orderBy": "liquidity",
"order": "desc"
},
{
"parameters": {
"chains": [
"ethereum",
"base"
],
"date": {
"from": "2025-07-01",
"to": "2025-07-02"
},
"watchlistFilter": [],
"sectorsFilter": [],
"smLabelFilter": [],
"onlySmartMoney": false
},
"filters": {
"tokenAgeDays": {
"from": 0,
"to": 4
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
},
"order": {
"order": "desc",
"orderBy": "liquidity"
}
}
Website Link
Plans and Pricing
Web-App
(Nansen API + Cursor Agent)
This guide explains exactly what you must do to start building with the Nansen API inside Cursor. Follow the four steps below in order and you will have a working, AI‑powered development environment in minutes.
Simply copy this prompt and paste it in Cursor to start vibecoding with Nansen API:
https://docs.nansen.ai/guides/vibecoding-with-nansen-api.md
Setup Nansen API in my project following the steps mentioned in this link
You need to:
1. Create a .env file
2. Generate cursorrules
3. Ingest API Docs
Generate an API key in the Nansen dashboard. Go to https://app.nansen.ai/account?tab=api, click Generate key, and copy the value.
Add the key and base URL to an .env file in the root of your project. Use the template below and replace your_api_key_here with the key you just copied.
# ---------- Nansen API ----------
apiKey=your_api_key_here
NANSEN_BASE_URL=https://api.nansen.ai/api/beta
# ---------- Optional : Rate‑limit + retry settings ----------
MAX_REQUESTS_PER_SECOND=20
MAX_REQUESTS_PER_MINUTE=500
RETRY_ATTEMPTS=3
TIMEOUT_MS=30000
Create a file called .cursorrules in the project root.
Paste the short ruleset below. It contains the base URL, header format, and rate‑limit policy so Cursor can generate compliant code automatically.
# Nansen API Configuration for Cursor
## Core Settings
BASE_URL: https://api.nansen.ai/api/beta
AUTH_HEADER: apiKey
RATE_LIMIT: 20req/s, 500req/min
## Authentication & Security
API_KEY_SOURCE: The API key is ALWAYS stored in the .env file as 'apiKey'
- NEVER ask users for API keys
- ALWAYS fetch the API key from the .env file
- Use `apiKey` variable from .env for all API calls
- Read the key value from .env for runtime execution
## Rate Limiting & Performance
- Implement exponential backoff for rate limit errors
- Cache frequently requested data when appropriate
- Monitor and log API usage patterns
# Token Analysis Automation
## Address Discovery Rules
TOKEN_ADDRESS_SEARCH: When a token symbol is mentioned without an address, automatically search the internet for the token's contract address on the relevant blockchain.
### Search Triggers:
- User mentions token symbol without providing contract address
- User asks to "monitor [TOKEN]" or "analyze [TOKEN]" without address
- When implementing new token analysis features
### Search Patterns:
Use search queries like: "TOKEN_SYMBOL contract address blockchain_name" or "TOKEN_SYMBOL token address solscan etherscan"
### Search Sources Priority:
1. Solscan.io for Solana tokens
2. Etherscan.io for Ethereum tokens
3. CoinGecko for multi-chain token information
4. DexScreener for DEX-traded tokens
5. Official project documentation/websites
## Default Parameters
DEFAULT_CHAINS: ethereum, solana
DEFAULT_TIMEFRAMES: 1d, 7d, 30d
DEFAULT_PAGINATION: 50 records per page
DEFAULT_SM_FILTERS: "180D Smart Trader", "Fund", "Smart Trader"
# API Interaction Standards
## Endpoint Compliance
ENDPOINT_RESTRICTION: ONLY use endpoints documented in the official Nansen API documentation
- Do NOT use undocumented endpoints
- Do NOT guess API paths or parameters
- Reference the official Nansen API documentation for all calls
- Validate endpoint availability before execution
## Parameter Validation Process
Before executing ANY API call:
1. Review API documentation to identify ALL required parameters
2. Cross-check user's request against documented required parameters
3. If ANY required parameter is missing, ask user to confirm/provide it
4. List all required parameters needing confirmation with descriptions
5. Do NOT make assumptions about missing required parameters
6. Do NOT provide default values for required parameters without user confirmation
7. Only execute after ALL required parameters are explicitly confirmed
8. Validate parameter types and formats against API documentation
## Error Handling
- API_ERROR_400: Validate all parameters and suggest corrections
- API_ERROR_429: Implement retry logic with backoff
- API_ERROR_500: Log error details and suggest alternative approaches
- INVALID_RESPONSE: Debug API call and suggest fixes
- Provide clear error messages with suggested solutions
## Response Formatting
- Present data in structured, readable formats
- Use tables for comparative data
- Highlight key metrics and insights
- Include data source timestamps
- Provide context for numerical values
# User Experience
## Command Execution Preferences
When users request API calls, intelligently choose between:
- **Simple cURL command**: For immediate, one-time execution
- **Python/JavaScript script**: For complex logic, reusable automation, or multi-step processes
### Decision Criteria:
- Single API call with simple parameters → cURL
- Multiple API calls or data processing → Script
- User explicitly requests specific format → Honor request
- Complex filtering/analysis required → Script
## Output Standards
- Always include execution instructions
- Include error handling guidance
- Show expected response formats
- Offer both technical and business interpretations
## Debugging Support
- Log API request/response details when errors occur
- Provide troubleshooting steps for common issues
- Include relevant documentation links
- Suggest parameter alternatives when validation fails
# Automation Intelligence
## Smart Actions
- NEW_TOKEN_ANALYSIS: Automatically look up token info and recent news
- MISSING_DATA: Suggest alternative data sources or timeframes
- PERFORMANCE_OPTIMIZATION: Recommend caching strategies for repeated queries
- TREND_ANALYSIS: Automatically identify and highlight significant patterns
## Quality Assurance
- Verify data consistency across multiple timeframes
- Cross-reference critical metrics with alternative sources
- Flag unusual patterns or potential data anomalies
- Provide confidence indicators for automated insights
Save the file and reopen Cursor. The agent now has enough context to scaffold a working client when you ask for code.
Go to Cursor Settings -> Indexing & Docs
Click on Add Docs and use the URL below to index API Docs
https://docs.nansen.ai/nansen-api-reference.md
Goal
Prompt
Analyse Smart Money behaviour
"List the top three tokens accumulated by Smart Money wallets in the last 24 hours.”
Monitor top holders of a token
“Who are the top holders of PENGU and track their recent PENGU activity”
Token Exchange Flow
"Any whales sending PENDLE to exchanges?"
Analyse smart money activity for a token
"Analyze smart money activity for FARTCOIN token - show holdings, recent trades, and inflows"
Feel free to iterate: start with one prompt, review the generated code, and then ask Cursor to extend or refactor it. Because it already knows about your .env, .cursorrules, and API Docs, you can focus exclusively on describing what the tool should do next.
Not all endpoints are available across all chains. Below is the list of chains that are supported across different endpoints.
Note: Fantom and Berachain models have been deprecated from the product recently.
Arbitrum
arbitrum
✅
✅
✅
Avalanche
avalanche
✅
✅
✅
Base
base
✅
✅
✅
Bitcoin
bitcoin
✅
✅
BNB
bnb
✅
✅
✅
Blast
blast
✅
✅
✅
Ethereum
ethereum
✅
✅
✅
HyperEVM
hyperevm
✅
✅
IOTA
iotaevm
✅
✅
✅
Linea
linea
✅
✅
✅
Mantle
mantle
✅
✅
✅
Optimism
optimism
✅
✅
✅
Polygon
polygon
✅
✅
✅
Ronin
ronin
✅
✅
✅
Scroll
scroll
✅
✅
✅
Sei
sei
✅
✅
✅
Solana
solana
✅
✅
✅
Sonic
sonic
✅
✅
✅
TON
ton
✅
✅
TRON
tron
✅
✅
Unichain
unichain
✅
✅
✅
zkSync
zksync
✅
✅
✅
Please note we're always expanding the chain support at Nansen. If the chain you are interested in is missing, please reach out to us.
This document provides detailed technical specifications for all Nansen API endpoints, including request formats, response schemas, and usage examples.
Base URL: https://api.nansen.ai/api/beta
Authentication: API Key in header: apiKey: YOUR_API_KEY
Rate Limits: 20 requests/second, 500 requests/minute Content-Type: application/json
The Smart Money API provides insights into trading activity from sophisticated traders and funds. These endpoints focus on addresses labeled as Smart Traders (30D, 90D, 180D, and all-time performers) and Funds, explicitly excluding whales, influencers, and other large holder categories.
Important Notes:
TON and TRON have limited smart money support and may not work with these endpoints
All endpoints focus on Smart Trader and Fund labels only
Default filters: ["180D Smart Trader", "Fund", "Smart Trader"]
Endpoint: POST /smart-money/holdings
Credit Cost: 5 credits per call
Description: Get aggregated smart trader and fund token balances with 24h change per chain
Request Parameters:
{
"parameters": {
"chains": ["ethereum", "solana"],
"smFilter": ["180D Smart Trader", "Fund", "Smart Trader"],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
chains
: List of blockchains to query (defaults to all smart money chains when not specified)
smFilter
: Smart money filter (default: ["180D Smart Trader", "Fund", "Smart Trader"]
)
includeStablecoin
: Whether to include stablecoins (default: true
)
includeNativeTokens
: Whether to include native tokens (default: true
)
excludeSmFilter
: Smart money filters to exclude (default: []
)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Response Schema:
[
{
"chain": "ethereum",
"tokenAddress": "0x...",
"symbol": "USDC",
"sectors": ["DeFi"],
"balanceUsd": 12500000,
"balancePctChange24H": 2.5,
"nofHolders": "1250",
"shareOfHoldings": 8.7,
"tokenAgeDays": "1200",
"marketCap": 32000000000
}
]
Endpoint: POST /smart-money/dex-trades
Credit Cost: 5 credits per call
Description: Get individual smart trader and fund DEX trade transactions in the last 24 hours
Request Parameters:
{
"parameters": {
"chains": ["ethereum", "solana"],
"smFilter": ["180D Smart Trader", "Fund", "Smart Trader"],
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
chains
: List of blockchains to query (defaults to all smart money chains when not specified)
smFilter
: Smart money filter (default: ["180D Smart Trader", "Fund", "Smart Trader"]
)
excludeSmFilter
: Smart money filters to exclude (default: []
)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Response Schema:
[
{
"chain": "ethereum",
"timestamp": "2024-01-15T14:30:00Z",
"txHash": "0x...",
"address": "0x...",
"name": "Smart Trader #1234",
"tokenBoughtAddress": "0x...",
"tokenBoughtSymbol": "LINK",
"tokenBoughtAmount": 1000.50,
"tokenBoughtAgeDays": "2100",
"tokenBoughtMarketCap": 8500000000,
"tokenSoldAddress": "0x...",
"tokenSoldSymbol": "USDC",
"tokenSoldAmount": 1500.25,
"tokenSoldAgeDays": "1200",
"tokenSoldMarketCap": 32000000000,
"valueInUsd": 15000.75
}
]
Endpoint: POST /smart-money/inflows
Credit Cost: 5 credits per call
Description: Get aggregated smart trader and fund net flows for the last 1, 7, and 30 days
Request Parameters:
{
"parameters": {
"chains": ["ethereum", "solana"],
"smFilter": ["180D Smart Trader", "Fund", "Smart Trader"],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
chains
: List of blockchains to query (defaults to all smart money chains when not specified)
smFilter
: Smart money filter (default: ["180D Smart Trader", "Fund", "Smart Trader"]
)
includeStablecoin
: Whether to include stablecoins (default: true
)
includeNativeTokens
: Whether to include native tokens (default: true
)
excludesmfilter
: Smart money filters to exclude (default: []
)
page
: Page number for pagination (default: 1
)
recordsperpage
: Number of results per page (default: 100
)
Response Schema:
[
{
"chain": "ethereum",
"tokenAddress": "0x...",
"symbol": "USDC",
"sectors": ["DeFi"],
"volume24hUSD": 1500000,
"volume7dUSD": 8750000,
"volume30dUSD": 35000000,
"nofTraders": "245",
"tokenAgeDays": "1200",
"marketCap": 32000000000
}
]
Note: Volume values represent net flows where:
Positive values = net inflows (more buying than selling)
Negative values = net outflows (more selling than buying)
Endpoint: POST /smart-money/dcas
Credit Cost: 5 credits per call (PROHIBITED for redistribution)
Description: Get Jupiter DCA orders created by Smart Trader and Fund addresses on Solana
Request Parameters:
{
"parameters": {
"chain": "solana",
"smFilter": ["180D Smart Trader", "Fund", "Smart Trader"],
"excludeSmFilter": [],
"tokenAddress": "So11111111111111111111111111111111111111112"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
chain
: Blockchain to query (fixed as "solana"
)
smfilter
: Smart money filter (default: ["180D Smart Trader", "Fund", "Smart Trader"]
)
excludesmfilter
: Smart money filters to exclude (default: []
)
tokenaddress
: Optional token address to filter by
page
: Page number for pagination (default: 1
)
recordsperpage
: Number of results per page (default: 100
)
Response Schema:
[
{
"sinceTimestamp": "2024-01-10T10:00:00Z",
"lastTimestamp": "2024-01-15T14:30:00Z",
"traderAddress": "7xKXtg2CW87d97TXJSDpbD5jBkheTqA83TZRuJosgAsU",
"traderLabel": "Smart Trader #567",
"creationHash": "5xY3...",
"dcaVaultAddress": "DCA1...",
"inputMintAddress": "So11111111111111111111111111111111111111112",
"outputMintAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"tokenInput": "SOL",
"tokenOutput": "USDC",
"depositUsdValue": 10000.00,
"depositAmount": 100.5,
"depositSpent": 75.25,
"otherTokenRedeemed": 7525.50,
"status": "active"
}
]
Available Smart Money filter options (only these labels are supported):
"30D Smart Trader"
- Top performers in last 30 days
"90D Smart Trader"
- Top performers in last 90 days
"180D Smart Trader"
- Top performers in last 180 days
"Smart Trader"
- All-time high-performing traders
"Fund"
- Institutional funds and investment entities
Excluded Categories: These endpoints do NOT include whales, influencers, large holders, or other non-smart-trader categories.
When chains
parameter is not specified or set to ["all"]
, the following chains are queried:
Arbitrum
✅
Avalanche
✅
Base
✅
Berachain
✅
BNB
✅
Blast
✅
Ethereum
✅
Fantom
✅
HyperEVM
✅
IOTA
✅
Linea
✅
Mantle
✅
Optimism
✅
Polygon
✅
Ronin
✅
Scroll
✅
Sei
✅
Solana
✅
Sonic
✅
TON
⚠️ Limited
TRON
⚠️ Limited
Unichain
✅
zkSync
✅
The Profiler API provides comprehensive wallet analysis tools for tracking balances, transactions, PnL, and relationships across multiple blockchains. All endpoints support the special chain: "all"
parameter to query across all supported chains simultaneously (except where noted).
Endpoint: POST /profiler/address/balances
Credit Cost: 0 credits (FREE)
Description: Get current token balances for specified addresses
Request Parameters:
{
"parameters": {
"chain": "all",
"walletAddresses": ["0x28c6c06298d514db089934071355e5743bf21d60"],
"suspiciousFilter": "on"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddresses
: A single address to query (required, empty if you're adding entityId)
entityId
: Labeled entity name. Mutually exclusive with walletAddresses
.
chain
: The blockchain to query (default: "all"
- queries all chains)
suspiciousFilter
: "on"
or "off"
- whether to exclude suspicious tokens (default: None
)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Response Schema:
[
{
"chain": "ethereum",
"tokenAddress": "0x...",
"symbol": "USDC",
"name": "USD Coin",
"tokenAmount": 25000.50,
"usdValue": 25000.50
}
]
Endpoint: POST /profiler/address/historical-balances
Credit Cost: 0 credits (FREE)
Description: Get historical token holdings over time
Request Parameters:
{
"parameters": {
"walletAddresses": ["0x28c6c06298d514db089934071355e5743bf21d60"],
"chain": "all",
"suspiciousFilter": "on",
"timeFrame": 7
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddresses
: A single address to query (required, empty if you're adding entityId)
entityId
: Labeled entity name. Mutually exclusive with walletAddresses
.
suspiciousFilter
: "on"
or "off"
- whether to exclude suspicious tokens (default: "on"
)
chain
: The blockchain to query (default: "all"
- queries all chains)
timeFrame
: Number of lookback days (1, 7, 30, 90, 120, 365) (default: 1
)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Endpoint: POST /profiler/address/transactions
Credit Cost: 0 credits (FREE, requires attribution)
Description: Get complete transaction history with labels
Request Parameters:
{
"parameters": {
"chain": "all",
"walletAddresses": ["0x28c6c06298d514db089934071355e5743bf21d60"],
"hideSpamToken": true
},
"pagination": {
"page": 1,
"recordsPerPage": 100
},
"filters": {
"volumeUsd": {"from": 0.1},
"blockTimestamp": {
"from": "2025-05-13T00:00:00.000Z",
"to": "2025-05-13T03:00:00.000Z"
}
}
}
Args:
walletAddresses
: A single address to query (required)
chain
: The blockchain to query (default: "all"
- queries all chains)
hideSpamToken
: Removes suspicious tokens from transaction list (default: True
)
filters
: Optional filters for the transaction query (default: None
)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Note: This endpoint requires a single address, not a list.
Endpoint: POST /profiler/address/counterparties
Credit Cost: 5 credits per call (requires attribution)
Description: Get addresses or entities with the most common interactions
Request Parameters:
{
"parameters": {
"walletAddresses": ["0x28c6c06298d514db089934071355e5743bf21d60"],
"chain": "all",
"sourceInput": "Combined",
"groupBy": "wallet",
"timeRange": {
"from": "2025-05-01",
"to": "2025-05-03"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddresses
: A single address to query (required, empty if you're adding entityId)
entityId
: Labeled entity name. Mutually exclusive with walletAddresses
.
sourceInput
: "Combined"
, "Tokens"
, or "ETH"
groupBy
: "wallet"
or "entity"
timeRange
: Datetime in ISO format (requires {"from": "", "to":""})
chain
: The blockchain to query (default: "all"
- queries all chains)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Tips for Finding Related Wallets:
Focus on direct value transfers to identify most likely related addresses
Include CEX deposit addresses (NOT withdrawal addresses)
Go one level deeper:
Find addresses that interacted with the most likely addresses
Find addresses that deposited to the same CEX deposit addresses
Address structure/string patterns are not important - focus on the relationship
Response includes:
Interacting addresses and labels
USD volume in/out
Number of transactions in/out
Net flow (positive = inflow, negative = outflow)
Endpoint: POST /profiler/address/related-wallets
Credit Cost: 1 credit per call (requires attribution)
Description: Get addresses with special connections (deployment, funding, multisig relationships)
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"walletAddresses": ["0x28c6c06298d514db089934071355e5743bf21d60"]
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddresses
: List of addresses to query
chain
: The blockchain to query (default: "ethereum"
- Note: "all" does NOT work here)
page
: Page number for pagination (default: 1
)
recordsPerPage
: Number of results per page (default: 100
)
Special Connections Include:
First Funder
Signer / Previous Signer
Multisig Signer of / Previous Multisig Signer of
Deployed via / Deployed by
Deployed Contract / Created Contract / Created by
Note: For general related wallets, also check address counterparties.
Endpoint: POST /profiler/address/pnl-summary
Credit Cost: 1 credit per call
Description: Get aggregate realized PnL statistics for a wallet
Request Parameters:
{
"parameters": {
"chain": "all",
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddress
: The wallet address to analyze
date_from
: Start datetime in ISO format (use as {"from": "", "to":""})
date_to
: End datetime in ISO format (use as {"from": "", "to":""})
chain
: The blockchain to query (default: "all"
- queries all chains)
page
: Page number for pagination (default: 1
)
records_per_page
: Number of results per page (default: 100
)
Endpoint: POST /profiler/address/pnl
Credit Cost: 1 credit per call
Description: Get detailed PnL statistics for a specific token traded by an address
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"showRealized": true,
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddress
: The wallet address to analyze
tokenAddress
: Token address to generate PnL stats for
date_from
: Start datetime in ISO format (use as {"from": "", "to":""})
date_to
: End datetime in ISO format (use as {"from": "", "to":""})
showRealized
: Include realized profit or not
chain
: The blockchain to query (default: "ethereum"
)
page
: Page number for pagination (default: 1
)
records_per_page
: Number of results per page (default: 100
)
Response includes:
Token price and ROI (realized/unrealized)
PnL in USD (realized/unrealized)
Bought/sold amounts and USD values
Cost basis and average sold price
Current holdings
Number of buy/sell transactions
Maximum balance held
Endpoint: POST /profiler/address/wp4t-transactions
Credit Cost: 0 credits (FREE)
Description: Get token transfer details between a wallet and specific token
Request Parameters:
{
"parameters": {
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"datetimeFrom": "2025-05-01T00:00:00.000Z",
"datetimeTo": "2025-05-03T23:59:59.999Z",
"timeRange": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"chain": "ethereum"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
walletAddress
: The address to analyze
tokenAddress
: The token address to analyze
datetimeFrom
: Start datetime in ISO format
datetimeTo
: End datetime in ISO format
chain
: The blockchain to query (default: "ethereum"
)
page
: Page number for pagination (default: 1
)
records_per_page
: Number of results per page (default: 100
)
Most Profiler endpoints support chain: "all"
to query across all supported chains simultaneously, which is the recommended default for comprehensive analysis. The only exception is the Related Addresses endpoint, which requires a specific chain to be specified.
Token God Mode provides comprehensive token analytics and insights across multiple blockchain networks. These endpoints offer deep visibility into token metrics, trading activity, holder behavior, and smart money movements.
Performance Warning:
Use ≤ 3 chains at a time to avoid timeouts
Recommended chain triplets:
["ethereum", "solana", "bnb"]
["base", "arbitrum", "unichain"]
["hyperevm", "polygon", "avalanche"]
Use shorter date ranges (1-3 days) for better performance
Endpoint: POST /token-screener
Credit Cost: 5 credits per call
Description: Comprehensive token discovery tool with advanced filtering capabilities
Request Structure:
{
"parameters": {
"chains": ["ethereum", "solana"], // Required, max 3 chains
"date": { // Required ISO8601 format
"from": "2025-05-01",
"to": "2025-05-03"
},
"watchlistFilter": [], // Optional token addresses
"sectorsFilter": [], // Optional sectors
"smLabelFilter": [], // Optional smart money labels
"onlySmartMoney": true // Required
},
"filters": { // All optional
"tokenAgeDays": {"from": 1, "to": 7},
"liquidity": {"from": 100000, "to": 999999999},
"priceChange": {"from": 0.05, "to": 1}
},
"order": { // Optional
"orderBy": "priceChange",
"order": "desc"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Available Filters:
tokenAgeDays
- Token age in days
buyVolume
- Total buy-side volume
sellVolume
- Total sell-side volume
volume
- Total trading volume
liquidity
- DEX liquidity (USD)
marketCap
- Market capitalization
fdv
- Fully Diluted Valuation
netflow
- Net inflow (buys - sells)
holders
- Number of token holders
nofBuyers
- Count of unique buyers
nofSellers
- Count of unique sellers
nofTxs
- Number of transactions
nofTraders
- Number of traders
priceChange
- Price change percentage
Example Use Cases:
// Find new tokens with smart trader activity
{
"parameters": {
"chains": ["ethereum", "solana", "bnb"],
"date": {"from": "2025-01-01", "to": "2025-01-03"}, // Required ISO8601 format
"onlySmartMoney": true
},
"filters": {
"tokenAgeDays": {"from": 1, "to": 7}
}
}
// Find pumping tokens (high price change)
{
"parameters": {
"chains": ["ethereum", "solana", "bnb"],
"date": {"from": "2025-01-01", "to": "2025-01-03"}, // Required ISO8601 format
"onlySmartMoney": false
},
"filters": {
"liquidity": {"from": 100000, "to": 999999999},
"priceChange": {"from": 0.05, "to": 1},
"nofTraders": {"from": 1000, "to": 999999999}
},
"order": {
"orderBy": "priceChange",
"order": "desc"
}
}
Endpoint: POST /tgm/holders
Credit Cost: 5 credits per call (Restricted by default)
Description: Analyze top holders with balance changes over time
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"date": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-03" // Required ISO8601 format
},
"isEntity": false,
"includeLabels": [],
"label": "top_100_holders",
"isStablecoin": false
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Holder Type Options:
"top_100_holders"
- General top holders (default)
"smart_money"
with includeLabels: ["Fund", "30D Smart Trader"]
"exchange"
with includeLabels: ["Exchange"]
Response includes:
Current balance and USD value
Ownership percentage
24h, 7d, 30d balance changes
Total sent/received amounts
Endpoint: POST /tgm/dex-trades
Credit Cost: 1 credit per call (requires attribution)
Description: Individual DEX trades with optional smart money filtering
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"onlySmartMoney": true,
"date": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-03" // Required ISO8601 format
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Response includes:
Trade timestamp and direction (BUY/SELL)
Token amounts and symbols
USD value and price
Trader address and label
Transaction hash
Endpoint: POST /tgm/transfers
Credit Cost: 0 credits (FREE)
Description: All token transfers including DEX trades and CEX movements
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0x5a98fcbea516cf06857215779fd812ca3bef1b32",
"date": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-03" // Required ISO8601 format
},
"dexIncluded": true,
"cexIncluded": true,
"onlySmartMoney": false
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Endpoint: POST /tgm/flows
Credit Cost: 1 credit per call (requires attribution)
Description: Historical flow analysis by holder categories
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"date": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-03" // Required ISO8601 format
},
"label": "top_100_holders"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Response tracks:
Daily price and total balance
Number of holders
Inflows and outflows
USD value of holdings
Endpoint: POST /tgm/flow-intelligence
Credit Cost: 1 credit per call (requires attribution)
Description: Categorized flow analysis across wallet types
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"timeframe": "1d"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Categories analyzed:
Public Figures (celebrities/influencers)
Top PnL Traders (profitable addresses)
Whales (high-balance wallets)
Smart Traders (consistently profitable)
Exchanges (CEX flows)
Fresh Wallets (newly created)
Note: The API uses timeframe
parameter, not date_range
.
Endpoint: POST /tgm/who-bought-sold
Credit Cost: 1 credit per call (requires attribution)
Description: Aggregated buyer/seller analysis
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"buyOrSell": "BUY",
"timeRange": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-02" // Required ISO8601 format
},
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Args:
buy_or_sell
: "BUY"
for net buyers, "SELL"
for net sellers
Shows aggregated volumes in both tokens and USD
Endpoint: POST /tgm/pnl-leaderboard
Credit Cost: 5 credits per call (Restricted by default)
Description: Top traders ranked by profit/loss performance
Request Parameters:
{
"parameters": {
"chain": "ethereum",
"date": {
"from": "2025-05-01", // Required ISO8601 format
"to": "2025-05-03" // Required ISO8601 format
},
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Response includes:
Realized and unrealized PnL
Win rate percentage
Total trades and average trade size
Endpoint: POST /tgm/jup-dca
Credit Cost: 0 credits (FREE)
Description: Dollar-cost averaging orders on Solana via Jupiter
Request Parameters:
{
"parameters": {
"chain": "solana",
"tokenAddress": "So11111111111111111111111111111111111111112",
"includeLabels": ["Smart Money"],
"excludeLabels": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
Most Token God Mode endpoints support flexible date ranges using ISO8601 format for example, "2000-10-31T01:30:00.000-05:00".
Chain Limits: Query maximum 3 chains per request
Date Ranges: Use 1-3 day ranges for optimal performance
Filtering: Apply filters to reduce result set size
Pagination: Use smaller page sizes (50-100) for complex queries
Smart Money Filter: Enable when focusing on quality over quantity
Positive net flows = more buying than selling
Negative exchange flows = tokens leaving exchanges (bullish)
FDV/MC Ratio > 1 = locked/vested supply exists
Smart Money = addresses with profitable trading history
Arbitrum
arbitrum
✅
✅
✅
Avalanche
avalanche
✅
✅
✅
Base
base
✅
✅
✅
Berachain
berachain
✅
✅
✅
Bitcoin
bitcoin
✅
✅
-
BNB
bnb
✅
✅
✅
Blast
blast
✅
✅
✅
Ethereum
ethereum
✅
✅
✅
Fantom
fantom
✅
✅
✅
HyperEVM
hyperevm
✅
✅
✅
IOTA
iotaevm
✅
✅
✅
Linea
linea
✅
✅
✅
Mantle
mantle
✅
✅
✅
Optimism
optimism
✅
✅
✅
Polygon
polygon
✅
✅
✅
Ronin
ronin
✅
✅
✅
Scroll
scroll
✅
✅
✅
Sei
sei
✅
✅
✅
Solana
solana
✅
✅
✅
Sonic
sonic
✅
✅
✅
TON
ton
✅
✅
-
TRON
tron
✅
✅
-
Unichain
unichain
✅
✅
✅
zkSync
zksync
✅
✅
✅
Available Smart Money filter options:
"30D Smart Trader"
- Top performers in last 30 days
"90D Smart Trader"
- Top performers in last 90 days
"180D Smart Trader"
- Top performers in last 180 days
"Fund"
- Institutional funds and investment entities
"Smart Trader"
- General high-performing traders
Common HTTP Status Codes:
200 OK
- Successful response
400 Bad Request
- Invalid parameters or request format
401 Unauthorized
- Missing or invalid API key
403 Forbidden
- Insufficient subscription tier
429 Too Many Requests
- Rate limit exceeded
500 Internal Server Error
- Server error
504 Gateway Timeout
- Request timeout
List of transactions made by an address (Readable)
POST /api/beta/profiler/address/transactions HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 284
{
"parameters": {
"chain": "ethereum",
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"hideSpamToken": true
},
"pagination": {
"page": 1,
"recordsPerPage": 100
},
"filters": {
"volumeUsd": {
"from": 0.1
},
"blockTimestamp": {
"from": "2025-05-13T00:00:00.000Z",
"to": "2025-05-13T03:00:00.000Z"
}
}
}
[
{
"chain": "ethereum",
"counterpartyAddressHex": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"counterpartyName": "🏦 Binance 14 [0x28c6c0]",
"method": "sent",
"tokenAddress": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee",
"tokenSymbol": "USDC",
"tokenSentTransformed": [
{
"symbol": "ANDY",
"amount": -640.42,
"price": 0.2760302965082687,
"value": -176.77532248982544,
"address": "0x7573ab0e80f8b264f6bc2ac37401f0adbe491759",
"chain": "blast",
"fromAddress": "0x7573ab0e80f8b264f6bc2ac37401f0adbe491759",
"toAddress": "0xd43d8adac6a4c7d9aeece7c3151fca8f23752cf8",
"fromLabel": "High Balance",
"toLabel": "High Balance"
}
],
"tokenReceivedTransformed": [
{
"symbol": "ANDY",
"amount": -640.42,
"price": 0.2760302965082687,
"value": -176.77532248982544,
"address": "0x7573ab0e80f8b264f6bc2ac37401f0adbe491759",
"chain": "blast",
"fromAddress": "0x7573ab0e80f8b264f6bc2ac37401f0adbe491759",
"toAddress": "0xd43d8adac6a4c7d9aeece7c3151fca8f23752cf8",
"fromLabel": "High Balance",
"toLabel": "High Balance"
}
],
"volumeUsd": 374.92,
"blockTimestamp": "2023-04-12T00:00:00Z",
"transactionHashHex": "0x61adb6da30853c5988f0204dd9f6e4abbc878e02c34030a4f707cf4ec3124bcb",
"source": "transaction"
}
]
This table contains aggregate stats of overall realised pnl for the input wallet. It also lists the top 5 tokens by realised profit. Questions you can answer using this model are:
What are the top profitable tokens for the input address? 2. What is the realised profit and roi over all tokens traded by the input address? 3. What is the winrate for the input address?
POST /api/beta/profiler/address/pnl-summary HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 188
{
"parameters": {
"chain": "ethereum",
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"top5Tokens": [
[
"text"
]
],
"tradedToken": 1,
"tradedTimes": 1,
"realizedPnlUsd": 1,
"realizedPnlPercent": 1,
"winRate": 1,
"averageRoiPerTrade": 1
}
]
This question calculates, for each token traded by the input address, stats related to amounts sold and bought, realised and unrealised pnl and roi, cost basis and avg sell price. Questions you can answer using this model are:
What is the realised and unrealised profits for each token traded by the input address? 2. What is the cost basis and average sale price of each token traded by the input address? 3. How many of a specific token was bought by the input address in the last 90 days, 1 year or all time?
POST /api/beta/profiler/address/pnl HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 268
{
"parameters": {
"chain": "ethereum",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"walletAddress": "0x28c6c06298d514db089934071355e5743bf21d60",
"showRealized": true,
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"tokenAddress": "text",
"tokenSymbol": "text",
"tokenPrice": 1,
"roiPercentRealised": 1,
"pnlUsdRealised": 1,
"pnlUsdUnrealised": 1,
"roiPercentUnrealised": 1,
"boughtAmount": 1,
"boughtUsd": 1,
"costBasisUsd": 1,
"soldAmount": 1,
"soldUsd": 1,
"avgSoldPriceUsd": 1,
"holdingAmount": 1,
"holdingUsd": 1,
"nofBuys": "text",
"nofSells": "text",
"maxBalanceHeld": 1,
"maxBalanceHeldUsd": 1
}
]
Token balances for a given set of addresses. For each token balance, it provides details like which chain the token is on, the current price in USD, the token balance value in USD and the token's logo URL.
POST /api/beta/profiler/address/balances HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 169
{
"parameters": {
"chain": "ethereum",
"walletAddresses": [
"0x28c6c06298d514db089934071355e5743bf21d60"
],
"suspiciousFilter": "on"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"tokenAddress": "text",
"symbol": "text",
"name": "text",
"tokenAmount": 1,
"priceUsd": 1,
"usdValue": 1
}
]
Historical native coin & token balances of specific group of addresses. For each date within a defined timeframe, it ranks tokens by their approximate USD balance, consolidating those not in the top 10 or below a 2% total daily balance threshold into an 'Other' category. It also offers functionality to exclude tokens labeled as suspicious. The final view provides a daily breakdown of top tokens, aiding in understanding the historical distribution and significance of token balances by their USD value.
POST /api/beta/profiler/address/historical-balances HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 183
{
"parameters": {
"walletAddresses": [
"0x28c6c06298d514db089934071355e5743bf21d60"
],
"chain": "ethereum",
"suspiciousFilter": "on",
"timeFrame": 1
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"blockTimestamp": "text",
"tokenAddress": "text",
"chain": "text",
"usdBalance": "text",
"symbol": "text"
}
]
This model provides detailed token flow intelligence for analyzing token movements across different chains. It helps track and categorize token transfers, identifying patterns such as exchange deposits, withdrawals, and transfers between different types of wallets.
POST /api/beta/tgm/flow-intelligence HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 157
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"timeframe": "1d"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"publicFigureFlow": "text",
"publicFigureAvgAbsFlow": "text",
"publicFigureWallets": "text",
"topPnlFlow": "text",
"topPnlAvgAbsFlow": "text",
"topPnlWallets": "text",
"whaleFlow": "text",
"whaleAvgAbsFlow": "text",
"whaleWallets": "text",
"smartTraderFlow": "text",
"smartTraderAvgAbsFlow": "text",
"smartTraderWallets": "text",
"exchangeFlow": "text",
"exchangeAvgAbsFlow": "text",
"exchangeWallets": "text",
"freshWalletsFlow": "text",
"freshWalletsAvgAbsFlow": "text",
"freshWalletsWallets": "text"
}
]
This model provides an aggregated summary of trade volumes in USD. addresses involved in DEX (Decentralized Exchange) trades for a specific token. The parameter buy_or_sell decides if the model should output aggregated data for buys or sells. The trades are then aggregated by address to compute the total trade volume in USD for each participating address. When user selects BUY, we only show the addresses whose net flow is positive and vice-versa for SELL. This model could answer the following questions:
Who are the top 5 addresses by trading volume in USD for a LDO token in the past 24 hours?
What are the addresses that have sold the most BLUR tokens in the past 7 days?
How has the 24-hour trading behavior of a specific address changed in terms of volume when trading a specific token?
Which addresses have bought the most PEPE tokens in the last 7 days?
POST /api/beta/tgm/who-bought-sold HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 210
{
"parameters": {
"chain": "ethereum",
"buyOrSell": "BUY",
"timeRange": {
"from": "2025-05-01",
"to": "2025-05-02"
},
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"address": "text",
"addressLabel": "text",
"boughtTokenVolume": "text",
"soldTokenVolume": "text",
"tokenTradeVolume": "text",
"boughtVolumeUsd": "text",
"soldVolumeUsd": "text",
"tradeVolumeUsd": "text"
}
]
Token holder statistics tracking smart money holders, balances, and cost basis for blast
POST /api/beta/tgm/flows HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 213
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"label": "top_100_holders"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"blockDate": "text",
"priceUsd": 1,
"totalBalance": "text",
"totalBalanceUsd": "text",
"totalHolders": "text",
"totalInflows": "text",
"totalOutflows": "text"
}
]
This question calculates, for each token address that traded the input token, stats related to amounts sold and bought, realised and unrealised pnl and roi, cost basis and avg sell price. Questions you can answer using this model are: 1. What is the realised and unrealised profits for each trader who traded the input token? 2. What is the cost basis and average sale price of each trader? 3. Who is the trader with the highest realised or unrealised profit on the input token?
POST /api/beta/tgm/pnl-leaderboard HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 187
{
"parameters": {
"chain": "ethereum",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"traderAddress": "text",
"fullName": "text",
"tokenPrice": 1,
"pnlUsdRealised": 1,
"pnlUsdUnrealised": 1,
"holdingAmount": 1,
"holdingUsd": 1,
"maxBalanceHeld": 1,
"maxBalanceHeldUsd": 1,
"stillHoldingBalanceRatio": "text"
}
]
This model provides net flow of tokens bought/sold by Smart Money addresses.
What are the most commonly traded tokens by smart money addresses in the last day, and how does their trading volume in USD compare?
Are there any new tokens (recently deployed) that have been significantly adopted by smart money traders, as indicated by the amount of USD traded?
POST /api/beta/smart-money/inflows HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 220
{
"parameters": {
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"chains": [
"ethereum",
"solana"
],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"tokenAddress": "text",
"symbol": "text",
"sectors": [
"text"
],
"volume24hUSD": 1,
"volume7dUSD": 1,
"volume30dUSD": 1,
"nofTraders": "text",
"tokenAgeDays": "text",
"marketCap": 1
}
]
POST /api/beta/smart-money/holdings HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 220
{
"parameters": {
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"chains": [
"ethereum",
"solana"
],
"includeStablecoin": true,
"includeNativeTokens": true,
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"tokenAddress": "text",
"symbol": "text",
"sectors": [
"text"
],
"balanceUsd": 1,
"balancePctChange24H": 1,
"nofHolders": "text",
"shareOfHoldings": 1,
"tokenAgeDays": "text",
"marketCap": 1
}
]
This model provides all dex trades of smart money traders in the last 24 hours across all EVM chains. The signer of the transaction is considered as the smart money trader. The trade is based on token transfers of the transaction where the signer is a party to trade. Hence it excludes all intermediary trades and only considers tokens that where provided by signer and the ones received. It excludes transactions where the signer provided or received two or more different tokens.
What are the latest traded tokens by smart money addresses?
POST /api/beta/smart-money/dex-trades HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 168
{
"parameters": {
"chains": [
"ethereum",
"solana"
],
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"excludeSmFilter": []
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"timestamp": "text",
"txHash": "text",
"address": "text",
"name": "text",
"tokenBoughtAddress": "text",
"tokenSoldAddress": "text",
"tokenBoughtAmount": 1,
"tokenSoldAmount": 1,
"tokenBoughtSymbol": "text",
"tokenSoldSymbol": "text",
"tokenBoughtAgeDays": "text",
"tokenSoldAgeDays": "text",
"tokenBoughtMarketCap": 1,
"tokenSoldMarketCap": 1,
"valueInUsd": 1
}
]
List of Jupiter DCA orders with stats per vault, created by Smart Money addresses
POST /api/beta/smart-money/dcas HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 215
{
"parameters": {
"chain": "solana",
"smFilter": [
"180D Smart Trader",
"Fund",
"Smart Trader"
],
"excludeSmFilter": [],
"tokenAddress": "So11111111111111111111111111111111111111112"
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"sinceTimestamp": "text",
"lastTimestamp": "text",
"traderAddress": "text",
"creationHash": "text",
"traderLabel": "text",
"dcaVaultAddress": "text",
"inputMintAddress": "text",
"outputMintAddress": "text",
"depositAmount": "text",
"depositSpent": "text",
"otherTokenRedeemed": "text",
"closed": "text",
"tokenInput": "text",
"tokenOutput": "text",
"depositUsdValue": "text"
}
]
POST /api/beta/tgm/dex-trades HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 209
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"onlySmartMoney": true,
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"blockTimestamp": "text",
"transactionHash": "text",
"traderAddressHex": "text",
"traderName": "text",
"action": "text",
"tokenName": "text",
"tokenAmount": 1,
"tradedTokenAddressHex": "text",
"tradedTokenName": "text",
"tradedTokenAmount": "text",
"estimatedSwapPriceUsd": "text",
"estimatedValueUsd": "text"
}
]
This model returns the top transactions for ERC-20 tokens by value within the specified dates.
What are the top transactions by value that happened this year for the BLUR token? 2. What was the largest LDO transaction in the past week? 3. Were there transfers of more than 100 million USDC recently?
POST /api/beta/tgm/transfers HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 247
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0x5a98fcbea516cf06857215779fd812ca3bef1b32",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"dexIncluded": true,
"cexIncluded": true,
"onlySmartMoney": true
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"blockTimestamp": "text",
"transactionHash": "text",
"fromAddress": "text",
"toAddress": "text",
"fromLabel": "text",
"toLabel": "text",
"txType": "text",
"value": "text",
"valueUsd": "text"
}
]
List of Jupiter DCA orders with stats per vault.
POST /api/beta/tgm/jup-dca HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 203
{
"parameters": {
"chain": "solana",
"tokenAddress": "So11111111111111111111111111111111111111112",
"includeLabels": [
"Smart Money"
],
"excludeLabels": [
"Smart Money"
]
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"sinceTimestamp": "text",
"lastTimestamp": "text",
"traderAddress": "text",
"creationHash": "text",
"traderLabel": "text",
"dcaVaultAddress": "text",
"inputMintAddress": "text",
"outputMintAddress": "text",
"depositAmount": "text",
"depositSpent": "text",
"otherTokenRedeemed": "text",
"closed": "text",
"tokenInput": "text",
"tokenOutput": "text",
"depositUsdValue": "text"
}
]
POST /api/beta/tgm/holders HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 269
{
"parameters": {
"chain": "ethereum",
"tokenAddress": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"isEntity": true,
"includeLabels": [],
"label": "top_100_holders",
"isStablecoin": false
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"address": "text",
"name": "text",
"balance": "text",
"sent": "text",
"received": "text",
"changeShortTimeframe": "text",
"changeMediumTimeframe": "text",
"changeLongTimeframe": "text",
"percentOwnership": "text",
"balanceUsd": 1,
"shortTimeframeHours": "text",
"mediumTimeframeHours": "text",
"longTimeframeHours": "text"
}
]
In this model, we are listing the addresses or entities which have the most common interactions with the input addresses. The model is able to show volume in, volume out and number of transactions in and out for tokens, eth and combined.
POST /api/beta/profiler/address/counterparties HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 241
{
"parameters": {
"walletAddresses": [
"0x28c6c06298d514db089934071355e5743bf21d60"
],
"chain": "ethereum",
"sourceInput": "Combined",
"groupBy": "wallet",
"timeRange": {
"from": "2025-05-01",
"to": "2025-05-03"
}
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"interactingWalletAddress": "text",
"interactingWalletLabel": "text",
"volumeOut": "text",
"volumeIn": "text",
"numberOfOutgoingTransactions": "text",
"numberOfIncomingTransactions": "text",
"netInflowInUsd": "text",
"info": "text"
}
]
This model provides information about related wallets of an input address. The relation can be any of 'First Funder', 'Signer', 'Previous Signer', 'Multisig Signer of', 'Previous Multisig Signer of', 'Deployed via', 'Deployed by', 'Deployed Contract', 'Created Contract', 'Created by'.
Questions you can answer using this model are:
What addresses are related to a specific address?
In which way is an address related to other addresses?
Did the specified address deploy any contracts?
Where did the specified address get its first funds from?
POST /api/beta/profiler/address/related-wallets HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 145
{
"parameters": {
"chain": "ethereum",
"walletAddresses": [
"0x28c6c06298d514db089934071355e5743bf21d60"
]
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"addressHex": "text",
"addressName": "text",
"relation": "text",
"transactionHash": "text"
}
]
A comprehensive token screening interface that provides real-time analytics and insights across multiple blockchain networks. The screener combines market data, smart money flows, trading metrics, and holder statistics to enable data-driven token analysis and discovery.
Which tokens are experiencing significant smart money activity across different chains?
How do market metrics (price, volume, liquidity) correlate with holder behavior and smart money movements?
What tokens show strong fundamentals in terms of holder distribution and trading patterns?
Which emerging tokens are attracting fresh wallet inflows while maintaining healthy smart money participation?
POST /api/beta/token-screener HTTP/1.1
Host: api.nansen.ai
apiKey: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 314
{
"parameters": {
"chains": [
"ethereum",
"solana"
],
"date": {
"from": "2025-05-01",
"to": "2025-05-03"
},
"watchlistFilter": [
"0x28c6c06298d514db089934071355e5743bf21d60"
],
"sectorsFilter": [
"Artificial Intelligence",
"AI Agents"
],
"smLabelFilter": [
"Smart Money"
],
"onlySmartMoney": true
},
"pagination": {
"page": 1,
"recordsPerPage": 100
}
}
[
{
"chain": "text",
"tokenAddressHex": "text",
"tokenSymbol": "text",
"tokenAgeDays": "text",
"marketCap": 1,
"liquidity": "text",
"priceUsd": "text",
"priceChange": "text",
"fdv": "text",
"fdvMcRatio": "text",
"buyVolume": "text",
"inflowFdvRatio": "text",
"outflowFdvRatio": "text",
"sellVolume": "text",
"volume": "text",
"netflow": "text"
}
]