Skip to main content
POST
Populate a step with transaction data
If you requested a route with options.pools.deny, pass the same pool identifiers again as the denyPools query parameter when requesting transaction data for each step. The list is request-scoped and is not carried in the returned step.Provide 1–100 identifiers using the same formats as /v1/quote: non-zero Uniswap V2/V3 EVM pool addresses or Uniswap V4 <poolManagerAddress>-<poolId> identifiers. Repeat denyPools for multiple pools. Keep the Step object in the JSON request body.Pool exclusion is supported only by fly. Passing the list again preserves the exclusions when swaps are re-quoted to build transaction data.

Headers

x-lifi-api-key
string

Authentication header, register in the LI.FI Partner Portal (https://portal.li.fi/ ) to get your API Key.

Query Parameters

denyPools
string[]

One to 100 AMM pool identifiers to exclude when building transaction data. If the route was requested with options.pools.deny, pass the same list again for each step. Pool exclusions are request-scoped and are not carried in the returned Step. Repeat the query parameter for multiple pools, as with /v1/quote. Each entry is a non-zero Uniswap V2/V3 EVM pool address (0x + 40 hex) or a Uniswap V4 <poolManagerAddress>-<poolId> identifier, where poolId is 0x + 64 hex. Pool exclusion is supported only by fly. Keep the Step object in the JSON request body.

Required array length: 1 - 100 elements
skipSimulation
boolean

Parameter to skip transaction simulation. The quote will be returned faster but the transaction gas limit won't be accurate.

mayanNonEvmPermitSignature
boolean

Mayan specific option to bridge from non-EVM chain to Hyperliquid

svmPriorityFeeLevel
enum<string>

Priority fee level for Solana Virtual Machine (SVM) transactions.

Available options:
NORMAL,
FAST,
ULTRA

Body

application/json

The step object

Object that represents one step of a Route

id
string
required

Unique identifier of the step

type
enum<string>
required

The type of the step. swap executes a DEX swap on a single chain, cross bridges assets between chains, lifi runs LiFi's internal multi-action logic, and protocol represents protocol-level actions such as fee collection or vault interactions executed inside LiFi managed contracts.

Available options:
swap,
cross,
lifi,
protocol
tool
string
required

The tool used for this step. E.g. relay

action
Root Type for Action · object
required

The action of the step

Example:
toolDetails
object

The details of the tool used for this step. E.g. relay

estimate
Root Type for Estimate · object

The estimation for the step

Example:
integrator
string

A string containing tracking information about the integrator of the API

includedSteps
Root Type for Internal Step · object[]
referrer
string

A string containing tracking information about the referrer of the integrator

execution
any

An objection containing status information about the execution

transactionRequest
any

An ether.js TransactionRequest that can be triggered using a wallet provider. (https://docs.ethers.io/v5/api/providers/types/#providers-TransactionRequest)

Response

The step populated with the transaction data

Object that represents one step of a Route

id
string
required

Unique identifier of the step

type
enum<string>
required

The type of the step. swap executes a DEX swap on a single chain, cross bridges assets between chains, lifi runs LiFi's internal multi-action logic, and protocol represents protocol-level actions such as fee collection or vault interactions executed inside LiFi managed contracts.

Available options:
swap,
cross,
lifi,
protocol
tool
string
required

The tool used for this step. E.g. relay

action
Root Type for Action · object
required

The action of the step

Example:
toolDetails
object

The details of the tool used for this step. E.g. relay

estimate
Root Type for Estimate · object

The estimation for the step

Example:
integrator
string

A string containing tracking information about the integrator of the API

includedSteps
Root Type for Internal Step · object[]
referrer
string

A string containing tracking information about the referrer of the integrator

execution
any

An objection containing status information about the execution

transactionRequest
any

An ether.js TransactionRequest that can be triggered using a wallet provider. (https://docs.ethers.io/v5/api/providers/types/#providers-TransactionRequest)