portal.trading.lifi API. This guide covers getting quotes, finding routes, executing swaps and bridges, and tracking transaction status.
Overview
The Li.Fi functionality allows you to:- Get quotes for bridging or swapping tokens across chains
- Find routes to discover the best paths for your cross-chain transfers
- Execute swaps and bridges by signing and submitting transactions
- Track transaction status for cross-chain transfers
Prerequisites
Before using Li.Fi operations, ensure you have:- A properly initialized Portal client
- An active wallet with the required token(s) on the source network (see Create a wallet)
- Li.Fi integration enabled in your Portal Dashboard (see Li.Fi Integration)
Getting a Quote
Use thegetQuote method to get a quote for bridging or swapping tokens across chains.
transactionRequest JSON string with the transaction details you’ll need to sign and submit.
Finding Routes
Use thegetRoutes method to discover available routes for your cross-chain transfer.
RECOMMENDED, CHEAPEST, or FASTEST.
Getting Route Step Details
Use thegetRouteStep method to get detailed transaction information for a specific route step, including an unsigned transaction that you can then sign and submit to an RPC provider (the transactionRequest field).
transactionRequest JSON string with the unsigned transaction that you can sign and submit.
Executing Swaps and Bridges
After getting a quote or route step details, extract the transaction details from thetransactionRequest JSON string and sign the transaction. Parse the JSON and extract the to, value, and data fields to sign and submit the transaction.
Signing and Submitting Transactions
The
transactionRequest from Li.Fi may include gasPrice and gasLimit fields. You can remove these if you want Portal to estimate the gas for you, or include them if you want to use Li.Fi’s estimates.Processing Multiple Route Steps
For routes with multiple steps, process them sequentially:Waiting for Transaction Confirmation
Tracking Transaction Status
Use thegetStatus method to track the status of your cross-chain transfer.
Polling for Cross-Chain Completion
For cross-chain transfers, poll the status endpoint until the transfer completes:Example Flow
Here’s a complete example of executing a cross-chain bridge:Best Practices
- Compare quotes/routes before signing and submitting the transaction(s) to find the best option for your use case
- Process steps sequentially for multi-step routes, ensuring each step completes before starting the next
- Handle network errors gracefully and provide user feedback
- Monitor transaction status for cross-chain transfers, as they may take longer than single-chain transactions
- Validate user balances before initiating swaps or bridges
Supported Networks
Portal’s Li.Fi integration supports the following mainnet networks:- Monad (
eip155:143) - Ethereum (
eip155:1) - Optimism (
eip155:10) - BSC (
eip155:56) - Gnosis (
eip155:100) - Unichain (
eip155:130) - Polygon (
eip155:137) - Sonic (
eip155:146) - Mantle (
eip155:5000) - Base (
eip155:8453) - Arbitrum (
eip155:42161) - Celo (
eip155:42220) - Avalanche (
eip155:43114) - Linea (
eip155:59144) - Berachain (
eip155:80094) - Katana (
eip155:747474) - Solana (
solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp) - Bitcoin (
bip122:000000000019d6689c085ae165831e93-p2wpkh)
Testnets are not supported.
Next Steps
- Learn about signing transactions
- Explore sending tokens
- Check out performing swaps