For the complete documentation index, see llms.txt. This page is also available as Markdown.

User LP Holdings

Returns the LP, vault, and staking positions held by the provided addresses, along with any accrued pending rewards.

Collection endpoint: Return LP, vault, and staking positions for any requested address the DEX can read, even if the wallet has not used DexPal's affiliate code. If none of the provided addresses have LP/vault/staking positions, return 200 with "data": []. See the Overview.

Overview

Method

GET

Auth

Bearer API key

Rate limit

120 req/min

Request

Query Parameters

Param
Type
Required
Description

addr

string

yes

Comma-separated list of wallet addresses to query.

Headers

Header
Required
Description

Authorization

yes

Bearer <api_key>

Example Request

GET /dexpal/v1/users/lp-holdings?addr=0x1a2b...,0x9c3d...

Response

Returns a data array where each item represents one earn position for one address. A single address may appear multiple times across different mechanisms or networks.

Fields — LP Holding Object

Field
Type
Required
Description

address

string

yes

The wallet address holding this position.

mechanismName

string

yes

Human-readable name of the earn mechanism e.g. "wBTC/USDC Liquidity Pool", "GNS Staking". Matches name from the earn endpoint.

type

enum

yes

Mechanism category. staking, vault, lp, or lending.

network

string

yes

Chain slug where this position is held e.g. "arbitrum".

exchange

string

yes

DEX slug e.g. "gmx", "gains".

amount

number

yes

Deposited or staked amount in token units.

amountUsd

number

yes

USD value of the position at current price.

autoCompounding

boolean

yes

Whether rewards are automatically reinvested into the position.

pendingRewardsUsd

number

no

Accrued but unclaimed rewards in USD. 0 if no pending rewards.

dexLink

string

no

Deep link to this earn position on the DEX.

Example Response

Error Responses

Status
Error
When

400

"Missing required parameter: addr"

addr absent

401

"Invalid or missing API key"

Bad or absent auth header

500

"Internal server error"

Unexpected failure

Notes

  • Return one item per earn mechanism per address per network. If a user has staked in the same pool on two networks, return two separate items.

  • Zero-balance positions may be omitted.

  • pendingRewardsUsd represents rewards that have accrued but not yet been claimed or compounded. For autoCompounding: true mechanisms, this is typically 0.

  • amount is in the deposit token units — for LP positions this is LP token units, for staking this is the staked token units.

  • mechanismName should match the name field returned by the earn endpoint so DexPal can correlate user holdings with mechanism metadata.

Last updated