π₯Get Pools by Token Addresses
Fetch Pumpswap Pools based on a single Token Address or a Liquidity Pair
Fetch Pool by Liquidity Pair (USDC-SOL)
async function getPoolDetailsByLiquidtyPair(mintAddressA, mintAddressB) {
const SHYFT_API_KEY = "YOUR_SHYFT_API_KEY";
//query to get pool details on PumpSwap by liquidity pair
const operationsDoc = `
query MyQuery {
pump_fun_amm_Pool(where: {base_mint: {_in: ${JSON.stringify([
mintAddressA,
mintAddressB,
])}},
quote_mint: {_in: ${JSON.stringify([
mintAddressA,
mintAddressB,
])}}})
{
base_mint
creator
index
lp_mint
lp_supply
pool_base_token_account
pool_bump
pool_quote_token_account
quote_mint
pubkey
}
}
`; //you can cherrypick the fields as per your requirement
const result = await fetch(
`https://programs.shyft.to/v0/graphql/accounts?api_key=${SHYFT_API_KEY}&network=mainnet-beta`, //SHYFT's GQL endpoint
{
method: "POST",
body: JSON.stringify({
query: operationsDoc,
variables: {},
operationName: "MyQuery",
}),
}
);
const { errors, data } = await result.json();
console.dir(data, { depth: null });
}
getPoolDetailsByLiquidtyPair("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","So11111111111111111111111111111111111111112");
//getting USDC_SOL pairs, you can get other tokens by just changing the addressFetch Pools involving a Token (USDC)
Last updated