The Boost API allows you to fetch and filter boosts through the GET /boosts endpoint.
Basic Usage
Fetch all boosts with no filters:
const response = await fetch(
'https://api-v2.boost.xyz/boosts'
);
const { boosts } = await response.json();
For complete API details including all available parameters and response fields, see the API Reference.
Filtering Boosts
The owner represents the address that initiated the boost deployment through a budget account.
You can filter boosts using various parameters:
chainId
: Filter by specific blockchain network
owner
: Filter by the address that deployed the boost
budgetAccount
: Filter by specific budget account
Example using multiple filters:
const params = new URLSearchParams({
owner: '0x1234...',
chainId: '8453', // Base
budgetAccount: '0x5678...'
});
const response = await fetch(
`https://api-v2.boost.xyz/boosts?${params.toString()}`
);
const { boosts } = await response.json();
The maximum page size is 100 items.
The endpoint uses simple pagination through page
and pageSize
parameters. Here’s how to fetch all boosts:
async function fetchAllBoosts() {
const pageSize = 20; // Adjust based on your needs (max 100)
let currentPage = 1;
let allBoosts = [];
while (true) {
const params = new URLSearchParams({
page: currentPage.toString(),
pageSize: pageSize.toString()
});
const response = await fetch(
`https://api-v2.boost.xyz/boosts?${params.toString()}`
);
const { boosts } = await response.json();
// When the API returns an empty boosts array, we've fetched all boosts
if (!boosts || boosts.length === 0) {
break;
}
allBoosts = [...allBoosts, ...boosts];
currentPage++;
}
return allBoosts;
}