toToken is set to a supported protocol token address. No additional parameters are needed beyond the standard LI.FI quote parameters.
How toToken Triggers Composer
When toToken corresponds to a supported vault/staking/deposit token, LI.FI’s routing engine automatically:
- Identifies this as a Composer route
- Finds the optimal path (swap, bridge, or both) to acquire the underlying asset
- Compiles the Composer instructions (eDSL → bytecode)
- Simulates the full execution path
- Returns a
transactionRequestready to sign
Composer-Relevant Parameters
These parameters are part of the standardGET /quote and POST /advanced/routes endpoints. They are not Composer-specific, but are particularly relevant when building Composer integrations.
| Parameter | Type | Required | Description |
|---|---|---|---|
fromChain | number | Yes | Source chain ID (e.g., 1 for Ethereum, 8453 for Base) |
toChain | number | Yes | Destination chain ID. Same as fromChain for same-chain deposits. |
fromToken | string | Yes | Source token address. Use 0x0000000000000000000000000000000000000000 for native tokens. |
toToken | string | Yes | Vault/staking/deposit token address. This is what triggers Composer. |
fromAmount | string | Yes | Amount in the fromToken’s smallest unit (e.g., 1000000 for 1 USDC with 6 decimals). |
fromAddress | string | Yes | Sender’s wallet address. |
toAddress | string | Yes | Recipient’s wallet address. Usually the same as fromAddress. Can differ for deposit-on-behalf flows. |
slippage | number | No | Maximum acceptable price difference as a decimal. 0.005 = 0.5%. Defaults to 0.005. |
integrator | string | No | Identifies your application in analytics and on-chain events. Max 23 characters. |
allowBridges | string[] | No | Restrict routes to specific bridges (e.g., ["stargate","across"]). Retrieved from GET /v1/tools. |
denyBridges | string[] | No | Exclude specific bridges from routing. |
allowExchanges | string[] | No | Restrict routes to specific DEX aggregators. Retrieved from GET /v1/tools. |
denyExchanges | string[] | No | Exclude specific DEX aggregators from routing. |
order | string | No | Route preference: "FASTEST" or "CHEAPEST". |
Identifying Composer Routes
The Composer tool name
Composer’s tool identifier is"composer". This string appears in:
quote.tool: top-level tool used for the routequote.toolDetails.key: same value, with additionalnameandlogoURIquote.includedSteps[].tool: tool used in each step of the route
toToken matches a supported protocol token. You cannot filter for or against Composer routes at the request level. It is determined by the toToken address.
Detecting Composer routes in your application
Use thetool field in the response to build conditional UI:
Controlling bridges and exchanges
You can control which bridges or DEX aggregators are used within a Composer route using the standard bridge/exchange filter parameters:Full Parameter Reference
For complete endpoint documentation, parameter lists, and authentication details, see:GET /quote
Single-step quote endpoint with all parameters
POST /advanced/routes
Multi-route endpoint with all parameters
Quote vs Route
When to use each endpoint
API Overview
Base URL, authentication, and rate limits
Related Pages
API Integration Guide
Step-by-step Composer integration with response schema
Withdrawals Guide
Implement withdraw routes with the same API surface
Error Handling
Handle Composer-specific errors
Supported Protocols
Full list of supported vault/staking tokens with example addresses

