const BUNGEE_API_BASE_URL = "https://public-backend.bungee.exchange";
async function getQuoteWithFees() {
const quoteParams = {
userAddress: "0xYourUsersAddress",
originChainId: "1", // Ethereum
destinationChainId: "10", // Optimism
inputToken: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", // USDC on Ethereum
outputToken: "0x7F5c764cBc14f9669B88837ca1490cCa17c31607", // USDC on Optimism
inputAmount: "1000000", // 1 USDC (6 decimals)
receiverAddress: "0xYourUsersAddress",
feeTakerAddress: "0xYourFeeCollectionAddress", // Address to receive fees
feeBps: "50", // 0.5% fee (50 basis points)
};
// For Manual mode, add this parameter
// quoteParams.enableManual = "true";
const url = `${BUNGEE_API_BASE_URL}/api/v1/bungee/quote`;
const queryParams = new URLSearchParams(quoteParams);
const fullUrl = `${url}?${queryParams}`;
const response = await fetch(fullUrl, { method: "GET" });
const data = await response.json();
const serverReqId = response.headers.get("server-req-id");
if (!data.success) {
throw new Error(
`Quote error: ${data.statusCode}: ${data.message}. server-req-id: ${serverReqId}`
);
}
return data.result;
}