Blockchain - Multiple Account Details
curl --request POST \
--url https://public-api.birdeye.so/blockchain/v1/account/detail/multiple \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"addresses": [
"99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs",
"BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6",
"12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5",
"125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd"
]
}
'import requests
url = "https://public-api.birdeye.so/blockchain/v1/account/detail/multiple"
payload = { "addresses": ["99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs", "BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6", "12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5", "125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd"] }
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({
addresses: [
'99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs',
'BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6',
'12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5',
'125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd'
]
})
};
fetch('https://public-api.birdeye.so/blockchain/v1/account/detail/multiple', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs": {
"name": "BondingCurve",
"program": "pump",
"lamports": 2040843,
"data": "F7f4N2DYrGDO/8t04s8DALsuJfwGAAAAzme5KFHRAgC7ggEAAAAAAACAxqR+jQMAAFT6k+xbg5mwoIGlqPjjmPN6AYRz8A2IsL6gBVUa37xvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"data_parsed": {
"complete": false,
"creator": "6iirpNpiVKgNWm43ZsMqMXhtFhGwmqYjLoJcRCLyMPvN",
"is_cashback_coin": true,
"is_mayhem_mode": false,
"quote_mint": "11111111111111111111111111111111",
"real_quote_reserves": 99003,
"real_token_reserves": 793096459216846,
"token_total_supply": 1000000000000000,
"virtual_quote_reserves": 30000099003,
"virtual_token_reserves": 1072996459216846
},
"owner": "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P",
"executable": false,
"rent_epoch": 18446744073709552000,
"is_on_curve": false
},
"125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd": {
"name": "PoolState",
"program": "raydium_launchpad",
"lamports": 3876720,
"data": "9+3j9dfD3kaYAwAAAAAAAPoABgkBAIDGpH6NAwAAeMX7UdECAN50Dj7pzwMA168w/AYAAAAnJSwK0AAAAFKEfQEAAAAAABJlyhMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVxqOAcjfeCD51ms8c2W40eSvqBt4VMwu91zvWL0Ihn7Z43muccQHrOyvERB3Ee6vHb7tmq6FmYSy3N5CMGKU7nZ83C/DwRkVzNl6PAantRdSQQJH3Cpmg5UU5sC9Mqm1BpuIV/6rgYT7aH9jRhjANdrEOdwa6ztVmKDwAAAAAAHrQeA4dFcQqIaAVqsCc9W3F5F2G0Jk/ZCEJtOcklMVRHxdHEqDRylHj0hq2dRU2r1PPfMyXe34cKp7zuDPd89N4/766J4TkjF3H81LUjcN2ESYLg/P/ukSkC3jAESj940AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"data_parsed": {
"amm_creator_fee_on": {
"variant": "QuoteToken"
},
"auth_bump": 250,
"base_decimals": 6,
"base_mint": "8yXY3Zeb1SWktToQE1ZpC33uVuYLFvMNfVe7zAMNbonk",
"base_vault": "GqM54DAsx6XSPuJxqoPkKzmARr2PAW35Hw1QuiRiAfWb",
"creator": "GM145cZ2ZwxAv27ggpPLJYSwxKTcvvqM9b9LV4gBoQLL",
"epoch": 920,
"global_config": "6s1xP3hpbAfFoNtUNF8mfHsjr2Bd97JxFJRWLbL6aHuX",
"migrate_fee": 0,
"migrate_type": 1,
"padding": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"platform_config": "FfYek5vEz23cMkWsdJwG2oa6EphsvXSHrGpdALN4g6W1",
"platform_fee": 0,
"platform_vesting_share": 0,
"quote_decimals": 9,
"quote_mint": "So11111111111111111111111111111111111111112",
"quote_protocol_fee": 0,
"quote_vault": "9NTuK6boCAFk3gb8V8asp9t7emrXKmkPTxtcCUeGGMDW",
"real_base": 893523862823,
"real_quote": 25003090,
"status": 0,
"supply": 1000000000000000,
"token_program_flag": 0,
"total_base_sell": 793100000000000,
"total_quote_fund_raising": 85000000000,
"vesting_schedule": {
"allocated_share_amount": 0,
"cliff_period": 0,
"start_time": 0,
"total_locked_amount": 0,
"unlock_period": 0
},
"virtual_base": 1073025605596382,
"virtual_quote": 30000852951
},
"owner": "LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj",
"executable": false,
"rent_epoch": 18446744073709552000,
"is_on_curve": false
}
}
}{
"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"
}Account
Blockchain - Multiple Account Details
Returns account details for up to 100 Solana addresses.
POST
/
blockchain
/
v1
/
account
/
detail
/
multiple
Blockchain - Multiple Account Details
curl --request POST \
--url https://public-api.birdeye.so/blockchain/v1/account/detail/multiple \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"addresses": [
"99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs",
"BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6",
"12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5",
"125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd"
]
}
'import requests
url = "https://public-api.birdeye.so/blockchain/v1/account/detail/multiple"
payload = { "addresses": ["99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs", "BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6", "12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5", "125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd"] }
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({
addresses: [
'99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs',
'BXeZkgCdNgpJ8SkSWqVnheB5WSUm7qy52SkRDrE1Jbi6',
'12LmXPr2z4TfkDMS4PA87wvAbW8w2JUBKsW5kMV9VN5',
'125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd'
]
})
};
fetch('https://public-api.birdeye.so/blockchain/v1/account/detail/multiple', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"99wRz6QVMo8HbDQTrv4GrFEUPymiiZeXtzjs3JGVbFNs": {
"name": "BondingCurve",
"program": "pump",
"lamports": 2040843,
"data": "F7f4N2DYrGDO/8t04s8DALsuJfwGAAAAzme5KFHRAgC7ggEAAAAAAACAxqR+jQMAAFT6k+xbg5mwoIGlqPjjmPN6AYRz8A2IsL6gBVUa37xvAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==",
"data_parsed": {
"complete": false,
"creator": "6iirpNpiVKgNWm43ZsMqMXhtFhGwmqYjLoJcRCLyMPvN",
"is_cashback_coin": true,
"is_mayhem_mode": false,
"quote_mint": "11111111111111111111111111111111",
"real_quote_reserves": 99003,
"real_token_reserves": 793096459216846,
"token_total_supply": 1000000000000000,
"virtual_quote_reserves": 30000099003,
"virtual_token_reserves": 1072996459216846
},
"owner": "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P",
"executable": false,
"rent_epoch": 18446744073709552000,
"is_on_curve": false
},
"125Ei5rFXvLoThesL8PpszoebQS2mTKNtLAH1NECtQd": {
"name": "PoolState",
"program": "raydium_launchpad",
"lamports": 3876720,
"data": "9+3j9dfD3kaYAwAAAAAAAPoABgkBAIDGpH6NAwAAeMX7UdECAN50Dj7pzwMA168w/AYAAAAnJSwK0AAAAFKEfQEAAAAAABJlyhMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVxqOAcjfeCD51ms8c2W40eSvqBt4VMwu91zvWL0Ihn7Z43muccQHrOyvERB3Ee6vHb7tmq6FmYSy3N5CMGKU7nZ83C/DwRkVzNl6PAantRdSQQJH3Cpmg5UU5sC9Mqm1BpuIV/6rgYT7aH9jRhjANdrEOdwa6ztVmKDwAAAAAAHrQeA4dFcQqIaAVqsCc9W3F5F2G0Jk/ZCEJtOcklMVRHxdHEqDRylHj0hq2dRU2r1PPfMyXe34cKp7zuDPd89N4/766J4TkjF3H81LUjcN2ESYLg/P/ukSkC3jAESj940AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
"data_parsed": {
"amm_creator_fee_on": {
"variant": "QuoteToken"
},
"auth_bump": 250,
"base_decimals": 6,
"base_mint": "8yXY3Zeb1SWktToQE1ZpC33uVuYLFvMNfVe7zAMNbonk",
"base_vault": "GqM54DAsx6XSPuJxqoPkKzmARr2PAW35Hw1QuiRiAfWb",
"creator": "GM145cZ2ZwxAv27ggpPLJYSwxKTcvvqM9b9LV4gBoQLL",
"epoch": 920,
"global_config": "6s1xP3hpbAfFoNtUNF8mfHsjr2Bd97JxFJRWLbL6aHuX",
"migrate_fee": 0,
"migrate_type": 1,
"padding": [
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0
],
"platform_config": "FfYek5vEz23cMkWsdJwG2oa6EphsvXSHrGpdALN4g6W1",
"platform_fee": 0,
"platform_vesting_share": 0,
"quote_decimals": 9,
"quote_mint": "So11111111111111111111111111111111111111112",
"quote_protocol_fee": 0,
"quote_vault": "9NTuK6boCAFk3gb8V8asp9t7emrXKmkPTxtcCUeGGMDW",
"real_base": 893523862823,
"real_quote": 25003090,
"status": 0,
"supply": 1000000000000000,
"token_program_flag": 0,
"total_base_sell": 793100000000000,
"total_quote_fund_raising": 85000000000,
"vesting_schedule": {
"allocated_share_amount": 0,
"cliff_period": 0,
"start_time": 0,
"total_locked_amount": 0,
"unlock_period": 0
},
"virtual_base": 1073025605596382,
"virtual_quote": 30000852951
},
"owner": "LanMV9sAd7wArD4vJFi2qDdfnVhFxYSUg6eADduJ3uj",
"executable": false,
"rent_epoch": 18446744073709552000,
"is_on_curve": false
}
}
}{
"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
- Batch version of account detail for up to 100 Solana addresses per request.
- Response is a map keyed by address, so missing or unparseable accounts are easy to detect without preserving request order.
- Parsed account data is returned only when Birdeye has a decoder for that account layout.
- Use this endpoint when auditing multiple PDAs, pools, vaults, or launchpad accounts at once.
- Starter
- Premium
- Business
- Enterprise
Solana
Use Cases 💡
Use Cases 💡
- Hydrate a protocol dashboard with many program accounts in one request.
- Batch-inspect pools, vaults, fee accounts, and PDAs during monitoring or indexing.
- Validate account ownership and decoded state across a watchlist of protocol accounts.
- Speed up support, research, and forensic workflows that need multiple account snapshots together.
How to Use 🛠️
How to Use 🛠️
- Send the address list in the
addressesarray. - Keep the list deduplicated so each account appears once in the response map.
- Read each returned object’s
owner,data_parsed, anddecode_errorto classify the account quickly. - Join the result back to your own watchlist by address, not by array position.
Best Practices ✅
Best Practices ✅
- Chunk large crawls into batches of up to 100 addresses.
- Reuse the single-account endpoint only for ad hoc inspection; use this one for systems and dashboards.
- Group addresses by expected program owner so downstream parsing and validation stay simpler.
Limitations ⚠️
Limitations ⚠️
- Solana only.
Was this page helpful?

