curl --request POST \
--url https://public-api.birdeye.so/token/v1/transfer \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"token_address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"time_from": 1727788070,
"time_to": 1727788076,
"from_amount": 10.01,
"to_amount": 10.001,
"from_value": 1.001,
"to_value": 10000,
"from_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"to_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"cursor": "xxxx",
"limit": 100
}
'import requests
url = "https://public-api.birdeye.so/token/v1/transfer"
payload = {
"token_address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"time_from": 1727788070,
"time_to": 1727788076,
"from_amount": 10.01,
"to_amount": 10.001,
"from_value": 1.001,
"to_value": 10000,
"from_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"to_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"cursor": "xxxx",
"limit": 100
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
token_address: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
time_from: 1727788070,
time_to: 1727788076,
from_amount: 10.01,
to_amount: 10.001,
from_value: 1.001,
to_value: 10000,
from_wallet: '41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu',
to_wallet: '41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu',
cursor: 'xxxx',
limit: 100
})
};
fetch('https://public-api.birdeye.so/token/v1/transfer', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": [
{
"time": "2025-11-18T04:32:26Z",
"block_number": 380819945,
"unix_time": 1763440346,
"token_address": "9TR9Ge75PMHfoKBAzo88XpDhvhjsirETEuPtRS4VtrpJ",
"from_address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC",
"to_address": "FCgMrWxuY5mWgFn55czYLysfGi3QFsZm3W7sJ7wTDQpz",
"from_token_account": "5JAZp6t5eSNXbdEwu3pMbB8uKV1e9cf2yg8E4Yq56WZa",
"to_token_account": "FKtWCwxFKdc7g7ymxVgyBSbwzGMNGWe7HtbKkum99f9C",
"amount": "14213245095",
"ui_amount": 14213.245095,
"price": 0.000029247096468293907,
"value": 0.4156961504209702,
"tx_hash": "2vLYZuCrKARicrXRDf2eGnzaKR9PP6qFFuzgPCHUNAnwepcqvFQ8WiPRuZjBNihNsNoxxQ5bLVLX7Wu6i6h5tmuP",
"flow": "out",
"token_info": {
"address": "9TR9Ge75PMHfoKBAzo88XpDhvhjsirETEuPtRS4VtrpJ",
"decimals": 6,
"symbol": "NYAN",
"name": "Nyan Cat",
"logo_uri": "https://wsrv.nl/?w=128&h=128&default=1&url=https://rs.debot.ai/logo/CMx7yon2cLzHcXqgHsKJhuU3MmME6noWLQk2rAycBAGS.gif"
},
"action": "transfer"
}
]
}{
"success": false,
"message": "Bad request"
}{
"success": false,
"message": "Unauthorized"
}{
"success": false,
"message": "Access Denied"
}{
"success": false,
"message": "Too many requests"
}{
"success": false,
"message": "Internal Server Error"
}Token - Transfer List
Retrieve the transfer history of a specified token
curl --request POST \
--url https://public-api.birdeye.so/token/v1/transfer \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"token_address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"time_from": 1727788070,
"time_to": 1727788076,
"from_amount": 10.01,
"to_amount": 10.001,
"from_value": 1.001,
"to_value": 10000,
"from_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"to_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"cursor": "xxxx",
"limit": 100
}
'import requests
url = "https://public-api.birdeye.so/token/v1/transfer"
payload = {
"token_address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"time_from": 1727788070,
"time_to": 1727788076,
"from_amount": 10.01,
"to_amount": 10.001,
"from_value": 1.001,
"to_value": 10000,
"from_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"to_wallet": "41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu",
"cursor": "xxxx",
"limit": 100
}
headers = {
"X-API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'X-API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
token_address: 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v',
time_from: 1727788070,
time_to: 1727788076,
from_amount: 10.01,
to_amount: 10.001,
from_value: 1.001,
to_value: 10000,
from_wallet: '41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu',
to_wallet: '41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu',
cursor: 'xxxx',
limit: 100
})
};
fetch('https://public-api.birdeye.so/token/v1/transfer', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": [
{
"time": "2025-11-18T04:32:26Z",
"block_number": 380819945,
"unix_time": 1763440346,
"token_address": "9TR9Ge75PMHfoKBAzo88XpDhvhjsirETEuPtRS4VtrpJ",
"from_address": "HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC",
"to_address": "FCgMrWxuY5mWgFn55czYLysfGi3QFsZm3W7sJ7wTDQpz",
"from_token_account": "5JAZp6t5eSNXbdEwu3pMbB8uKV1e9cf2yg8E4Yq56WZa",
"to_token_account": "FKtWCwxFKdc7g7ymxVgyBSbwzGMNGWe7HtbKkum99f9C",
"amount": "14213245095",
"ui_amount": 14213.245095,
"price": 0.000029247096468293907,
"value": 0.4156961504209702,
"tx_hash": "2vLYZuCrKARicrXRDf2eGnzaKR9PP6qFFuzgPCHUNAnwepcqvFQ8WiPRuZjBNihNsNoxxQ5bLVLX7Wu6i6h5tmuP",
"flow": "out",
"token_info": {
"address": "9TR9Ge75PMHfoKBAzo88XpDhvhjsirETEuPtRS4VtrpJ",
"decimals": 6,
"symbol": "NYAN",
"name": "Nyan Cat",
"logo_uri": "https://wsrv.nl/?w=128&h=128&default=1&url=https://rs.debot.ai/logo/CMx7yon2cLzHcXqgHsKJhuU3MmME6noWLQk2rAycBAGS.gif"
},
"action": "transfer"
}
]
}{
"success": false,
"message": "Bad request"
}{
"success": false,
"message": "Unauthorized"
}{
"success": false,
"message": "Access Denied"
}{
"success": false,
"message": "Too many requests"
}{
"success": false,
"message": "Internal Server Error"
}- Usage Note
- Accessibility
- Chain Supported
Cursor-paginated transfer history for one Solana token.
- Solana transfer data is available from epoch
257(2021-11-12). - Supports four transfer actions:
mint,burn,transfer, andset_authority. - Pagination uses a cursor. On the first request, send normal filters without
cursor. Subsequent requests should send only the returnednext_cursor. - When
cursoris provided together with other filters, onlycursoris applied.
Reading the numbers. Use token transfer rows when you need the exact movement records behind supply changes, wallet flows, or mint/burn events.
- Standard
- Lite
- Starter
- Premium
- Business
- Enterprise
Solana
Compute Unit ⚙️
Compute Unit ⚙️
- This endpoint consumes
8 CUper request.
Use Cases 💡
Use Cases 💡
- Inspect token transfer flow across all wallets for one mint.
- Review mint, burn, and standard transfer activity around launches or supply events.
- Support forensic timelines, treasury tracing, and token-flow monitoring.
How to Use 🛠️
How to Use 🛠️
- Set
x-chain=solana. - Send the token mint and any transfer filters in the POST body.
- On page 1, omit
cursor. - While
next_cursoris present, send only thatcursorvalue on the next request.
Best Practices ✅
Best Practices ✅
- Use the total endpoint first when you only need counts before pulling the full list.
- Persist
next_cursorwhile paging; do not mix it with stale filters. - Use this token-level view when the token is the anchor, and wallet-transfer endpoints when one wallet is the anchor.
Limitations ⚠️
Limitations ⚠️
- Solana only.
- Historical coverage starts from epoch
257(2021-11-12). - Cursor pagination means page boundaries are driven by
next_cursor, not offset.
Authorizations
API key for authentication
Headers
Solana network only.
solana Body
Address of the token to retrieve transfers for.
"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
Start of the transfer time range as a Unix timestamp.
1727788070
End of the transfer time range as a Unix timestamp.
1727788076
Minimum token amount to include.
10.01
Maximum token amount to include.
10.001
Minimum transfer value in USD to include.
1.001
Maximum transfer value in USD to include.
10000
Address of the sender wallet.
"41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu"
Address of the recipient wallet.
"41zCUJsKk6cMB94DDtm99qWmyMZfp4GkAhhuz4xTwePu"
Cursor used to retrieve the next page of results.
"xxx"
100
Was this page helpful?

