The Fireblocks Network is a secure transfer network that allows you to instantly find, connect, and move digital assets across exchanges, fiat providers, liquidity partners, and counterparties.
To use FIREBLOCKS with expand.network , follow these steps:-
Step 1: Installation
User needs to install the expand.network SDK using the following command:
npm i expand-network
Step 2: Wallet Initialisation
const { WalletFireblocks, prepareTransaction } = require('expand-network');
const xApiKey = 'YOUR_API_KEY'; //Replace this with your API key
const dotenv = require('dotenv');
const fs = require('fs');
const path = require('path');
const apiSecret = fs.readFileSync(path.resolve("SECRET_KEY_FILE_PATH"), "utf8");
async function initialiseFireblocksWallet(){
const options = {
apiSecret: apiSecret,
apiKey: "FIREBLOCKS_API_KEY", //Replace this with your Fieblocks API key
}
const wallet = new WalletFireblocks(options);
return wallet;
}
const wallet = await initialiseFireblocksWallet(); //Initialise the wallet
Step 3: Prepare Transaction
// Preparing the approve transaction from expand.network
const preparedTx = await prepareTransaction("https://api.expand.network/fungibletoken/approve", {
"from": "FIREBLOCKS_WALLET_ADDRESS",
"tokenAddress":"0x6B175474E89094C44Da98b954EedeAC495271d0F",
"amount": "10000",
"to": "SPENDER_WALLET_ADDRESS",
"gas": "100000",
"chainId": "1", // Replace with other chainId to toggle between chains
"xApiKey": "YOUR_API_KEY", // Replace this with your API Key
});
Step 4: Sign Transaction
// Sign the transaction locally using sdk client
const signedTx = await wallet.signTransaction(preparedTx);
console.log(signedTx);
Step 5: Send Transaction
// Send the signed transaction
const tx = await wallet.sendTransaction(signedTx);
console.log(tx);
Sample code to approve a fungible token using Fireblocks Wallet: