Trades - Pair Seek By Time
curl --request GET \
--url https://public-api.birdeye.so/defi/txs/pair/seek_by_time \
--header 'X-API-KEY: <api-key>'import requests
url = "https://public-api.birdeye.so/defi/txs/pair/seek_by_time"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://public-api.birdeye.so/defi/txs/pair/seek_by_time', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"items": [
{
"txHash": "3zyGYe6NVJeFVPrsg2tvTdSxRoKGAiedcEqhuxhqUopdGoaAj69r4svfiePAstmogGoU8dkrfWnUj5PuMf4PCGie",
"source": "phoenix",
"blockUnixTime": 1741078031,
"txType": "swap",
"address": "4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg",
"owner": "4yDvNjJxLCb5nznyowT8cgNwMs4i36eZaCyAgT6ZwPwv",
"from": {
"symbol": "USDC",
"decimals": 6,
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": 92762810,
"typeSwap": "from",
"uiAmount": 92.76281,
"price": 0.99991,
"changeAmount": -92762810,
"uiChangeAmount": -92.76281,
"isScaledUiToken": false,
"multiplier": null
},
"to": {
"symbol": "SOL",
"decimals": 9,
"address": "So11111111111111111111111111111111111111112",
"amount": 677000000,
"typeSwap": "to",
"uiAmount": 0.677,
"price": 136.96359554514504,
"changeAmount": 677000000,
"uiChangeAmount": 0.677,
"isScaledUiToken": false,
"multiplier": null
}
}
],
"hasNext": true
}
}Transactions
Trades - Pair Seek By Time
Retrieve a list of trades of a specified pair with time bound option.
GET
/
defi
/
txs
/
pair
/
seek_by_time
Trades - Pair Seek By Time
curl --request GET \
--url https://public-api.birdeye.so/defi/txs/pair/seek_by_time \
--header 'X-API-KEY: <api-key>'import requests
url = "https://public-api.birdeye.so/defi/txs/pair/seek_by_time"
headers = {"X-API-KEY": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-API-KEY': '<api-key>'}};
fetch('https://public-api.birdeye.so/defi/txs/pair/seek_by_time', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"data": {
"items": [
{
"txHash": "3zyGYe6NVJeFVPrsg2tvTdSxRoKGAiedcEqhuxhqUopdGoaAj69r4svfiePAstmogGoU8dkrfWnUj5PuMf4PCGie",
"source": "phoenix",
"blockUnixTime": 1741078031,
"txType": "swap",
"address": "4DoNfFBfF7UokCC2FQzriy7yHK6DY6NVdYpuekQ5pRgg",
"owner": "4yDvNjJxLCb5nznyowT8cgNwMs4i36eZaCyAgT6ZwPwv",
"from": {
"symbol": "USDC",
"decimals": 6,
"address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"amount": 92762810,
"typeSwap": "from",
"uiAmount": 92.76281,
"price": 0.99991,
"changeAmount": -92762810,
"uiChangeAmount": -92.76281,
"isScaledUiToken": false,
"multiplier": null
},
"to": {
"symbol": "SOL",
"decimals": 9,
"address": "So11111111111111111111111111111111111111112",
"amount": 677000000,
"typeSwap": "to",
"uiAmount": 0.677,
"price": 136.96359554514504,
"changeAmount": 677000000,
"uiChangeAmount": 0.677,
"isScaledUiToken": false,
"multiplier": null
}
}
],
"hasNext": true
}
}- Usage Note
- Accessibility
- Chain Supported
Time-bounded legacy trade sync for one pair.
- Pass the pair address in
address. limitsupports1to100items per request, andoffsetsupports up to10,000.- Use
before_timeandafter_timeto step through historical pair activity. - Insights in the response:
price: the executed price of the trade at the exact moment the transaction occurred.nearestPrice: the closest available market price to the transaction timestamp from Birdeye’s price index.basePrice: the USD price of the base token at the time of the trade.quotePrice: the USD price of the quote token at the time of the trade.
- Lite
- Starter
- Premium
- Business
- Enterprise
All chains ⛓️ ✨
Compute Unit ⚙️
Compute Unit ⚙️
- This endpoint consumes
10 CUper request.
Use Cases 💡
Use Cases 💡
- Retrieve historical trades for a specific trading pair from a given timestamp.
- Great for analyzing liquidity pool activity or pair-specific trading trends.
- Use to backfill DEX trade data for historical analysis or visualizations.
- Combine with token and pair stats for comprehensive DeFi pair insights.
- Backfill venue-specific trade history over explicit time ranges.
- Analyze pair activity during liquidity shifts, launches, or execution anomalies.
- Build pair trade archives for research, dashboards, or surveillance.
- Investigate whether one market led or lagged other venues for the same asset.
How to Use 🛠️
How to Use 🛠️
- Set
x-chainfor the target network. - Pass the pair address in
address. - Bound the request with
after_timeandbefore_time. - Page dense windows with
offsetandlimit, keepinglimitat100or below.
Best Practices ✅
Best Practices ✅
- Use pair seek for venue forensics where one pool matters more than token-wide flow.
- Keep time windows deterministic so resumes and replays do not create gaps.
- Compare pair history with token-wide history when diagnosing cross-venue divergence.
Authorizations
API key for authentication
Headers
A chain name listed in supported networks.
Available options:
solana, ethereum, bsc, base, robinhood, sui, mantle, hyperevm, arbitrum, avalanche, optimism, polygon, zksync, monad, aptos, fogo, megaeth Query Parameters
The address of a pair contract
Pagination start position. offset + limit <= 10000
Required range:
0 <= x <= 10000Number of items per page.
Required range:
1 <= x <= 50Available options:
swap, add, remove, all Specify the time seeked before using unix timestamps in seconds
Required range:
1 <= x <= 10000000000Specify the time seeked after using unix timestamps in seconds
Required range:
1 <= x <= 10000000000Indicate whether to use the scaled amount for scaled ui amount tokens. Only support solana
Available options:
raw, scaled Was this page helpful?

