Pendle

Supported Chains

Available on Arbitrum, Base, Binance Smart Chain, Ethereum and Optimism

Available Endpoints:

Click on the endpoint to jump to the section with full details

  • /getmarketsGET - Returns the list of the pendle market .

  • /getmarkettokensGET -Returns all the tokens in the specified market address.

  • /getmarketdataGET - Returns the data for the specified market .

  • /getbalanceGET -Returns the balance of particular address of the specified market .

  • /transferliquidityPOST - Initiate the transfer liquidity from source market address to destination market address .

  • /redeemPOST - Initiates a redeem transaction within a yield aggregator protocol, converting yield-bearing tokens back into their underlying asset.

  • /mint POST -Initiates a mint transaction within a yield aggregator protocol, converting deposited assets into yield-bearing tokens (or share tokens).

  • /swap POST - Initiates a swap transaction within a yield aggregator protocol, enabling users to exchange deposited tokens for another asset via the yield aggregation mechanism.

  • /addliquidity POST - Initiate the transaction to add liquidity from a specified market .

  • /removeliquidityPOST - Initiate the transaction to remove liquidity from a specified market.

Yield Aggregator IDs

Below is a list of Yield Aggregator IDs related to Pendle. Please see the Yield Aggregator ID for a complete Yield Aggregator ID list and more information.

Yield Aggregator Name
Chain
Yield Aggregator ID

Pendle

Ethereum

5200

Pendle

Arbitrum

5201

Pendle

Base

5202

Pendle

Optimism

5203

Pendle

Binance Smart Chain

5204

Endpoint Details

/getmarkets

Returns the list of the pendle market .

GET https://api.expand.network/yieldaggregator/getmarkets

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

includeInactive

Boolean

If true, return the Market with expiry also. By default, false

https://api.expand.network/yieldaggregator/getmarkets?yieldAggregatorId=5200&includeInactive=true

/getmarkettokens

Returns all the tokens in the specified market address.

GET https://api.expand.network/yieldaggregator/getmarkettokens

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

marketAddress*

String

Address of the specific market.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

https://api.expand.network/yieldaggregator/getmarkettokens?yieldAggregatorId=5200&marketAddress=0xcdd26eb5eb2ce0f203a84553853667ae69ca29ce

/getmarketdata

Returns the data for the specified market .

GET https://api.expand.network/yieldaggregator/getmarketdata

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

marketAddress*

Boolean

Address of the specific market.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

https://api.expand.network/yieldaggregator/getmarketdata?yieldAggregatorId=5200&marketAddress=0xcdd26eb5eb2ce0f203a84553853667ae69ca29ce

/getbalance

Returns the balance of particular address of the specified market .

GET https://api.expand.network/yieldaggregator/getbalance

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

marketAddress*

String

Address of the specific market.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

address*

String

Public address of the user.

https://api.expand.network/yieldaggregator/getbalance?marketAddress=0x8098b48a1c4e4080b30a43a7ebc0c87b52f17222&address=0x8dC3F8e1449E56929Aa7a721C9082ce4A9771F47&yieldAggregatorId=5200

/transferliquidity

Initiate the transfer liquidity from source market address to destination market address .

POST https://api.expand.network/yieldaggregator/transferliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

marketAddress*

String

Source market address.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the user.

dstMarketAddress*

String

destination market address.

lpAmount*

String

LP token amount. The minimum valuation is 0.01 USD

ptAmount*

String

Principal token amount. The minimum valuation is 0.01 USD

ytAmount*

String

Yield token amount. The minimum valuation is 0.01 USD

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

redeemRewards

Boolean

Redeem accrued rewards.

zeroPriceImpact

Boolean

Zero price impact mode.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "dstMarketAddress":"0xcdd26eb5eb2ce0f203a84553853667ae69ca29ce",
   "slippage" : "0.05",
   "gas":"1000000",
   "lpAmount":"1000000000000000000",
   "ptAmount":"1000000000000000000",
   "ytAmount":"1000000000000000000"
}

With ofacCheck:

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "dstMarketAddress":"0xcdd26eb5eb2ce0f203a84553853667ae69ca29ce",
   "slippage" : "0.05",
   "gas":"1000000",
   "lpAmount":"1000000000000000000",
   "ptAmount":"1000000000000000000",
   "ytAmount":"1000000000000000000",
    "ofacCheck": true
}

/redeem

Initiates a redeem transaction within a yield aggregator protocol, converting yield-bearing tokens back into their underlying asset.

Note: Redeem PT & YT to tokens. If called before YT's expiry, both PT & YT of equal amounts are needed and will be burned.Else, only PT is needed and will be burned. User can redeem standard yield token by providing syAddress, similarly user can redeem yield token address by providing ytAddress.

POST https://api.expand.network/yieldaggregator/redeem

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

tokenOut*

String

Address of token to be redeemed.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the user.

amountIn*

String

Amount to be redeemed.

syAddress*

String

Standard yield address.

ytAddress*

String

Yield token address.

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
   "yieldAggregatorId":"5200",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenOut":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "5",
   "gas":"1000000",
   "ytAddress":"0x4a8036efa1307f1ca82d932c0895faa18db0c9ee"
}

With ofacCheck:

{
   "yieldAggregatorId":"5200",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenOut":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "5",
   "gas":"1000000",
   "ytAddress":"0x4a8036efa1307f1ca82d932c0895faa18db0c9ee",
    "ofacCheck": true
}

/mint

Initiates a mint transaction within a yield aggregator protocol, converting deposited assets into yield-bearing tokens (or share tokens).

Note: User can mint standard yield token by providing syAddress, similarly user can mint yield token address by providing ytAddress.

POST https://api.expand.network/yieldaggregator/mint

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

tokenIn*

String

Address of token to be mint.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the user.

syAddress*

String

Standard yield address.

ytAddress*

String

Yield token address.

amountIn*

String

Amount to be mint.

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
   "yieldAggregatorId":"5200",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenIn":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "0.05",
   "gas":"1000000",
   "ytAddress":"0x4a8036efa1307f1ca82d932c0895faa18db0c9ee"
}

With ofacCheck:

{
   "yieldAggregatorId":"5200",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenIn":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "0.05",
   "gas":"1000000",
   "ytAddress":"0x4a8036efa1307f1ca82d932c0895faa18db0c9ee",
    "ofacCheck": true
}

/swap

Initiates a swap transaction within a yield aggregator protocol, enabling users to exchange deposited tokens for another asset via the yield aggregation mechanism.

POST https://api.expand.network/yieldaggregator/swap

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

enableAggregator

Boolean

If true, enable swap aggregator to swap between tokens that cannot be natively converted from/to the underlying asset.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the user.

path*

String

Comma-separated values of token pair.

amountIn*

String

Amount to be swapped.

marketAddress*

String

Address of the market.

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
  "yieldAggregatorId":"5200",
  "marketAddress":"usde",
  "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
  "amountIn":"10000000000000000000",
  "path":["0x8a47b431a7d947c6a3ed6e42d501803615a97eaa",
           "0x4db99b79361f98865230f5702de024c69f629fec"],
  "slippage" : "5",
  "gas":"1000000",
  "enableAggregator":true
}

With ofacCheck:

{
  "yieldAggregatorId":"5200",
  "marketAddress":"usde",
  "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
  "amountIn":"10000000000000000000",
  "path":["0x8a47b431a7d947c6a3ed6e42d501803615a97eaa",
           "0x4db99b79361f98865230f5702de024c69f629fec"],
  "slippage" : "5",
  "gas":"1000000",
  "enableAggregator":true,
  "ofacCheck": true
}

/addliquidity

Initiate the transaction to add liquidity from a specified market .

POST https://api.expand.network/yieldaggregator/addliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

tokenIn*

String

Address of the token to be added.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the owner.

marketAddress*

String

Address of the market.

amount*

String

If user is initiating single side liquidity provisioning .

amountPtIn*

String

If user is initiating dual liquidity provisioning .

zeroPriceImpact

Boolean

Zero price impact mode.

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amount":"10000000000000000000",
   "tokenIn":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "1",
   "amountPtIn":"100000",
   "gas":"1000000"
}

With ofacCheck:

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amount":"10000000000000000000",
   "tokenIn":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "1",
   "amountPtIn":"100000",
   "gas":"1000000",
    "ofacCheck": true
}

/removeliquidity

Initiate the transaction to remove liquidity from a specified market .

POST https://api.expand.network/yieldaggregator/removeliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

tokenOut*

String

Address of token to be removed.

yieldAggregatorId*

String

Refer to the Yield Aggregator ID page for details.

from*

String

Public Address of the owner.

marketAddress*

String

Address of the market.

amountIn*

String

Amount to be removed

enableAggregator

String

If true, enable swap aggregator to swap between tokens that cannot be natively converted from/to the underlying asset

isDual

Boolean

If true, then dual-token removal mode will be initiated and user will get back both tokens and PT

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value < 100

gas

String

Maximum gas limit provided by the sender, for the transaction.

gasPriority

String

Low, medium, or high.

ofacCheck

Boolean

if true,provides insights of the contract and tokens involved in the transaction. By Default, false Available on Ethereum, Polygon, BSC, Avalanche, Arbitrum and Optimism Mainnet

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenOut":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "1",
   "isDual":true,
   "gas":"1000000",
   "enableAggregator":true
}

With ofacCheck:

{
   "yieldAggregatorId":"5200",
   "marketAddress":"usde",
   "from":"0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
   "amountIn":"10000000000000000000",
   "tokenOut":"0x4db99b79361f98865230f5702de024c69f629fec",
   "slippage" : "1",
   "isDual":true,
   "gas":"1000000",
   "enableAggregator":true,
    "ofacCheck": true
}

Last updated