Camelot V3

Supported Chains

Available on Arbitrum Mainnet and Testnet.

Available Endpoints:

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

  • /getprice GET - Returns the swap quotation for a given token pair on Camelot V3.

  • /getuserliquidity GET - Returns the balance of a particular token pair of accounts.

  • /getpoolliquidity GET - Returns the total liquidity for a specified pool.

  • /gettokenliquidity GET - Returns the individual token liquidity within the specified liquidity pool.

  • /swap POST - Initiate a swap transaction on a specified DEX.

  • /addliquidity POST - Add liquidity to a specified pool in a specified DEX.

  • /removeliquidity POST - Remove liquidity from a specified pool in a specified DEX.

DEX IDs

Many endpoints have a parameter where you can provide a DEX ID.

Below is a list of DEX IDs related to Camelot V3. For a complete list and more information, please see the DEX ID page.

DEX Name
Chain
DEX ID

Camelot V3

Arbitrum

3000

Camelot V3 Testnet

Arbitrum Sepolia

3001

Endpoint Details

/getprice

Returns the swap quotation for a given token pair on Camelot V3

GET https://api.expand.network/dex/getprice

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

dexId*

String

path*

String

Comma separated values of token addresses whose price is to be fetched.

amountIn*

String

Amount of token.

https://api.expand.network/dex/getprice?dexId=3000&path=0x82aF49447D8a07e3bd95BD0d56f35241523fBab1%2C0xaf88d065e77c8cC2239327C5EDb3A432268e5831&amountIn=100000000000000000

back to top

/getuserliquidity

Returns the balance of a particular token pair of an account.

GET https://api.expand.network/dex/getuserliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

tokenId*

String

The token ID for Camelot V3 liquidity position.

dexId*

String

https://api.expand.network/dex/getuserliquidity?dexId=3000&tokenId=164692

back to top

/getpoolliquidity

Returns the total liquidity for a specified pool.

GET https://api.expand.network/dex/getpoolliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

poolAddress*

String

Pool address whose liquidity is to be fetched.

dexId*

String

https://api.expand.network/dex/getpoolliquidity?dexId=3000&poolAddress=0x28ADaC57728a7fB7A52d3B51F31992f404E7B010

back to top

/gettokenliquidity

Returns the individual token liquidity within the specified liquidity pool.

GET https://api.expand.network/dex/gettokenliquidity

Query Parameters

Name
Type
Description

rpc

String

Remote procedural call URL.

poolAddress*

String

The pool address.

dexId*

String

https://api.expand.network/dex/gettokenliquidity?dexId=3000&poolAddress=0x28ADaC57728a7fB7A52d3B51F31992f404E7B010

back to top

/swap

Initiate a swap transaction on a specified DEX.

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

Request Body

Name
Type
Description

rpc

String

Remote procedural call URL.

dexId*

String

path*

Array

Comma-separated values of token addresses, inside an array, to swap.

amountIn*

String

Amount of token to be swapped.

amountOutMin*

String

Minimum amount accepted as a result of swap.

to*

String

Address of the recipient of the token.

from*

String

Address of the sender of the token.

gas*

String

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

involveBaseToken

String

If a base token is involved in the swap; 0 for erc20 -> erc20, 1 for base -> erc20 ("from" address should be of equivalent wrapped token), 2 for erc20 -> base ("to" address should be of equivalent wrapped token). By default, 0.

poolFees

String

Different pool based on the fees. By default, it is selected as 3000.

gasPriority

String

low, medium, or high.

slippage

String

Percentage of total swap value. By default, 1.

0 <= slippage value <= 100

{
    "dexId": "3000",
    "path": [
        "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
        "0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
    ],
    "amountIn": "100000000000000",
    "amountOutMin": "143003",
    "gas": "800000",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "to": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "involveBaseToken": "1"
}

With gasPriority (medium):

{
    "dexId": "3000",
    "path": [
        "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
        "0xaf88d065e77c8cC2239327C5EDb3A432268e5831"
    ],
    "amountIn": "100000000000000",
    "amountOutMin": "143003",
    "gas": "800000",
    "gasPriority":"high",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "to": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "involveBaseToken": "1"
}

back to top

/addliquidity

Add liquidity to a specified pool in a specified DEX.

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

Request Body

Name
Type
Description

dexId*

String

tokenA*

String

Address of the first token being added.

tokenB*

String

Address of the second token being added.

amountADesired*

String

Desired amount of token A.

amountBDesired*

String

Desired amount of token B.

amountAMin*

String

Minimum amount of token A.

amountBMin*

String

Minimum amount of token B.

deadline*

String

Deadline for the transaction to be executed (UNIX Timestamp).

to*

String

Address of the recipient of the token.

from*

String

Address of the sender of the token.

gas*

String

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

rpc

String

Remote procedural call URL.

tokenId

String

The token ID for Camelot V3 liquidity position. Note- tokenId is required while adding liquidity in the same position.

gasPriority

String

low, medium, or high.

slippage

String

Percentage of total value. By default, 1.

0 <= slippage value <= 100

{
    "dexId": "3000",
    "tokenA": "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
    "tokenB": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
    "amountADesired": "10000000000000",
    "amountBDesired": "24437",
    "amountAMin": "0",
    "amountBMin": "0",
    "gas": "800000",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "to": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "tokenId": "164692"
}

With gasPriority (medium):

{
    "dexId": "3000",
    "tokenA": "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
    "tokenB": "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
    "amountADesired": "10000000000000",
    "amountBDesired": "24437",
    "amountAMin": "0",
    "amountBMin": "0",
    "gas": "800000",
    "gasPriority":"high",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "to": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "tokenId": "164692"
}

back to top

/removeliquidity

Remove liquidity from a specified pool for a specified DEX.

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

Request Body

Name
Type
Description

dexId*

String

tokenId*

String

The token ID for Camelot V3 liquidity position.

deadline*

String

Deadline for the transaction to be executed (UNIX Timestamp).

from*

String

Address of the sender of the token.

gas*

String

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

rpc

String

Remote procedural call URL.

liquidity*

string

The liquidity to be removed.

gasPriority

String

low, medium, or high.

slippage

String

Percentage of total value. By default, 1.

0 <= slippage value <= 100

{
    "dexId": "3000",
    "liquidity": "155231340559",
    "tokenId":"164018",
    "gas": "800000",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "slippage":"10"
}

With gasPriority:

{
    "dexId": "3000",
    "liquidity": "155231340559",
    "tokenId":"164018",
    "gas": "800000",
    "gasPriority":"high",
    "from": "0xdAe2F6EdDdA6fb4fb60cc02633DE27e2b431B402",
    "deadline": "1740727106",
    "slippage":"10"
}

back to top

Last updated