---
title: "Transfer Liquidity"
method: POST
path: "/defi/v1/yieldaggregator/transferliquidity"
tags: ["yieldaggregator"]
---

# Transfer Liquidity

`POST /defi/v1/yieldaggregator/transferliquidity`

## Request

- Base URL: `https://svc.blockdaemon.com`
- URL: `https://svc.blockdaemon.com/defi/v1/yieldaggregator/transferliquidity`
- Auth: API key in header `X-API-Key`

Moves liquidity between markets, specifying source/destination addresses plus amounts of LP, principal, and yield tokens. Optional parameters (slippage, redeemRewards, zeroPriceImpact) fine-tune the transaction, with a reference ID for tracking.

> 💡 
**Compute Unit Value:** `125` (Fixed)

## Request body

- YieldaggregatorTransferliquidityRequest: The request body for a /defi/v1/yieldaggregator/transferliquidity
  - `yieldAggregatorId` '5200' | '5201' | '5202' | '5203' | '5204': A unique identifier to route the transaction to the correct yield aggregator instance. This parameter is optional if a default aggregator is used.
  - `marketAddress` string, required: The blockchain address of the source market from which liquidity is being transferred.
  - `from` string, required: Blockchain address of the sender. For EVM chains, use a checksummed hex address (e.g., 0xABCDEF...). This address must hold sufficient balance and will sign the transaction.
  - `dstMarketAddress` string, required: The blockchain address of the destination market where the liquidity will be deposited.
  - `lpAmount` string, required: Amount of liquidity provider (LP) tokens to transfer, specified in the token's smallest denomination (base units). Example: 1 LP token (18 decimals) = "1000000000000000000".
  - `ptAmount` string, required: Amount of principal tokens (PT) involved in the transfer, specified in the token's smallest denomination (base units). Principal tokens represent the original asset value deposited in the yield aggregator. Example: 1 PT token (18 decimals) = "1000000000000000000".
  - `ytAmount` string, required: Amount of yield tokens (YT) to transfer, specified in the token's smallest denomination (base units). Yield tokens represent the accrued yield from the user's deposit. Example: 1 YT token (18 decimals) = "1000000000000000000".
  - `slippage` string: Specifies the maximum acceptable percentage deviation between the expected and actual execution price during the liquidity removal. This helps protect against unfavorable price movements. The value is expressed as a percentage (e.g., 1 for 1%). Valid range: 0 to 100 (e.g., 1 = up to 1% slippage).
  - `gas` string: Maximum number of gas units to allocate for the transaction, as an integer string (e.g., '200000'). If omitted, gas is estimated automatically. Note: this is gas units, not wei or gwei.
  - `redeemRewards` boolean: An optional flag indicating whether accrued rewards should be redeemed as part of the liquidity transfer transaction.
  - `zeroPriceImpact` boolean: When set to true, the transaction is executed to avoid any change in the asset’s price, resulting in the user receiving both LP and YT tokens, though the LP amount will be lower than in standard mode.
  - `gasPriority` string: Specifies the desired gas fee priority (e.g., 'low', 'medium', or 'high'), which influences the transaction speed and cost.
  - `enableFee` boolean: Flag to include a basis points fee transaction alongside the main transaction when set to true.

## Response `200`

Successful response

- object
  - `status` integer
  - `msg` string
  - `data` object

---

[API](https://skmtc.dev/blockdaemon/apis/blockdaemon-defi-api.md) - [All operations](https://skmtc.dev/blockdaemon/apis/blockdaemon-defi-api/llms.txt) - [OpenAPI document](https://skmtc.dev/blockdaemon/apis/blockdaemon-defi-api/revisions/ec053b7c8041?raw)
