get
/v4/tokens/wrappers
List every Merkl token wrapper a creator distributes, one entry per wrapper and distribution chain, live campaigns first. Wrappers are discovered through the campaigns that distribute them, so a wrapper deployed but never used in a campaign is not returned. Only static data is served here — read the holder, balances and allowance from chain.
Query parameters
creatorIdstringcreatorAddressstringResponses
200Response for status 200
Schema
object[]
distributionChainIdnumberChain the wrapper is deployed on, i.e. where its campaigns distribute rewards.wrapperobjectToken
idstringrequired
Unique identifier for the tokennamestring | nullrequired
Full name of the tokenchainIdintegerrequired
Chain Idaddressstringrequired
Addressdecimalsnumberrequired
Number of decimals for the tokensymbolstringrequired
Symbol of the tokeniconstringrequired
URL to the token icon imageverifiedbooleanrequired
Whether the token is verifiedisNativebooleanrequired
Whether this is a native blockchain tokenisTestbooleanrequired
Whether this is a test tokentypeenumrequired
Type of the token (TOKEN, PRETGE, POINT)TOKENPRETGEPOINTpricenumber | nullCurrent price of the token in USDupdatedAtnumber | nullUnix timestamp of last price updatepriceSourcestring | nullSource of the price informationdisplaySymbolstringCustom display symbol overrideunderlyingTokenIdstringIf this token is a wrapper, the ID of the underlying tokenpriceAlertDismissedAtnumberpriceAlertCountnumberunderlyingobject | nullToken the wrapper pays out on claim, when Merkl resolved it. Null when unknown.
idstringUnique identifier for the tokennamestring | nullFull name of the tokenchainIdintegerChain IdaddressstringAddressdecimalsnumberNumber of decimals for the tokensymbolstringSymbol of the tokeniconstringURL to the token icon imageverifiedbooleanWhether the token is verifiedisNativebooleanWhether this is a native blockchain tokenisTestbooleanWhether this is a test tokentypeenumType of the token (TOKEN, PRETGE, POINT)TOKENPRETGEPOINTpricenumber | nullCurrent price of the token in USDupdatedAtnumber | nullUnix timestamp of last price updatepriceSourcestring | nullSource of the price informationdisplaySymbolstringCustom display symbol overrideunderlyingTokenIdstringIf this token is a wrapper, the ID of the underlying tokenpriceAlertDismissedAtnumberpriceAlertCountnumbercampaignCountnumberMother campaigns of this creator distributing the wrapper.liveCampaignCountnumberSubset of `campaignCount` currently running.lastCampaignEndTimestampnumberEnd timestamp (unix seconds) of the latest campaign distributing the wrapper.Example
[
{
"distributionChainId": 0,
"wrapper": {
"id": "string",
"name": "string",
"chainId": 0,
"address": "string",
"decimals": 0,
"symbol": "string",
"icon": "string",
"verified": false,
"isNative": false,
"isTest": false,
"type": "TOKEN",
"price": 0,
"updatedAt": 0,
"priceSource": "string",
"displaySymbol": "string",
"underlyingTokenId": "string",
"priceAlertDismissedAt": 0,
"priceAlertCount": 0
},
"underlying": {
"id": "string",
"name": "string",
"chainId": 0,
"address": "string",
"decimals": 0,
"symbol": "string",
"icon": "string",
"verified": false,
"isNative": false,
"isTest": false,
"type": "TOKEN",
"price": 0,
"updatedAt": 0,
"priceSource": "string",
"displaySymbol": "string",
"underlyingTokenId": "string",
"priceAlertDismissedAt": 0,
"priceAlertCount": 0
},
"campaignCount": 0,
"liveCampaignCount": 0,
"lastCampaignEndTimestamp": 0
}
]get
https://api.merkl.xyz/v4/tokens/wrapperscurl -X GET "https://api.merkl.xyz/v4/tokens/wrappers"