Concentrated Liquidity Campaign
This page provides a detailed reference for the GetLiquidityCampaigns API, which allows you to retrieve information about concentrated liquidity campaigns for DEXes.
Endpoint
POST https://incentra-prd.brevis.network/sdk/v1/liquidityCampaigns
Request
| Field | Type | Description |
|---|---|---|
chain_id | [uint64] | Filter by the chain ID(s) where the targeted DEX pool is deployed. |
campaign_type | [CampaignType] | Filter by the DEX protocols. Enum will be specified later. |
pool_id | [string] | Filter by pool identifier (e.g., pool address or ID). |
campaign_id | [string] | Filter by specific campaign ID(s). |
status | [CampaignStatus] | Filter by campaign status(es). Enum will be specified later. |
user_address | [string] | Retrieve campaigns where the specified user address(es) has participated. |
If any filter is not specified, it means there is no constraint for this filter.
CampaignType Enum
The CampaignType enum has the following values:
UNISWAP_V3UNISWAP_V4PANCAKESWAP_V3PANCAKESWAP_V4QUICKSWAP_V3
CampaignStatus Enum
The CampaignStatus enum has the following values:
DEPLOYINGCREATING_FAILEDINACTIVEACTIVEENDEDDEACTIVATED
Response
| Field | Type | Description |
|---|---|---|
err | ErrMsg | Error details if the request failed. |
campaigns | [LiquidityCampaignInfo] | List of matching liquidity campaigns. |
LiquidityCampaignInfo Fields
Each campaign includes the following fields:
| Fileld | Type | Description |
|---|---|---|
chain_id | uint64 | Chain ID where the liquidity pool is deployed. |
campaign_type | CampaignType | The DEX protocol/version for the campaign. |
pools | PoolInfo | Information about the specific liquidity pool targeted by the campaign. |
campaign_id | string | Unique identifier for the campaign. |
campaign_name | string | Campaign display name. |
start_time | uint64 | Campaign start timestamp. |
end_time | uint64 | Campaign end timestamp. |
reward_info | RewardInfo | Details about the reward token and amount. See RewardInfo below. |
last_reward_attestation_time | uint64 | Last campaign reward attestation timestamp. |
status | CampaignStatus | Current status of the campaign. See CampaignStatus enum. |
PoolInfo Fields
| Field | Type | Description |
|---|---|---|
pool_id | string | Pool identifier (e.g., pool address or pool ID). |
pool_name | string | Pool display name. |
RewardInfo Fields
| Field | Type | Description |
|---|---|---|
submission_chain_id | uint64 | Campaign reward submission chain ID (see on-chain reward claim for details). |
submission_contract | string | Campaign reward submission contract address (see on-chain reward claim for details) |
claim_chain_id | uint64 | Chain ID where rewards can be claimed. |
claim_contract | string | Smart contract address for claiming rewards. |
token_address | string | Reward token address. |
token_symbol | string | Reward token symbol. |
reward_amt | string | Total reward amount for the campaign. |
reward_usd_price | string | USD price per reward token. |
reward_per_hour | string | Reward amount distributed per hour. |
apr | float | The APR of the campaign (for example, 0.03 means 3% APR) |
tvl | float | The TVL of the liquidity pool (in USD value) |
Example Request (curl)
{
"chain_id": [
1,
42161
],
"campaign_type": [
1,
2,
3,
4,
5
],
"pool_id": [
"0xD0A4c8A1a14530C7C9EfDaD0BA37E8cF4204d230"
],
"campaign_id": [],
"status": [
4,
5
],
"user_address": [] // no constraint for this filter
}
Post with data.json
curl -X POST -H "Content-Type: application/json" -d @data.json https://incentra-prd.brevis.network/sdk/v1/liquidityCampaigns