get

/v4/opportunities/

Retrieve Multiple Opportunities

This endpoint enables you to search for opportunities by providing specific criteria through query parameters.

Request Examples

List opportunities by protocol name
curl "https://api.merkl.xyz/v4/opportunities?name=Euler"

Returns all opportunities associated with the Euler protocol, including aggregate metrics.

Filter by tag
curl "https://api.merkl.xyz/v4/opportunities?tags=zksync"

Returns opportunities tagged with "zksync" across all supported protocols.

Query parameters

pagenumber | stringdefault: 0
itemsnumber | stringdefault: 20
namestring
searchstring
campaignIdstring
creatorSlugstring
chainIdstring
actionstring
tokenTypesenum[]
TOKENPRETGEPOINT
pointboolean
typestring
creatorAddressstring
tagsstring
testbooleandefault: false
minimumTvlnumber
maximumTvlnumber
minimumAprnumber
maximumAprnumber
minimumDailyRewardsnumber
maximumDailyRewardsnumber
minimumCreatedAtnumber
maximumCreatedAtnumber
statusstring
identifierstring
idstring
campaignsboolean
tokensstring
stablecoinbooleandefault: false
rewardTokenSymbolstring
sortstring
orderstringdefault: desc
distributionTypesenum[]
FIX_REWARDMAX_REWARDDUTCH_AUCTION
mainProtocolIdstring
programSlugsstring
chainNamestring
excludeSubCampaignsbooleandefault: false
explorerAddressstring
withInvalidsbooleandefault: false
campaignTypesstring

Responses

200
Response for status 200
Schema
object | null[]
idstring
typestring
identifierstring
chainIdnumber
namestring
descriptionstring
howToStepsstring[]
statusenumNONEPASTLIVESOON
actionenumPOOLHOLDDROPLENDBORROWLONGSHORTSWAPINVALIDSTAKE
tagsstring[]
mainProtocolstring
depositUrlstring
depositUrlsobject[]
idstring
titlestring
urlstring
subtitlestring
iconstring
prioritynumber
explorerAddressstring
hiddenboolean
tvlnumber
aprnumber
dailyRewardsnumber
maxDailyRewardsnumber | null
liveCampaignsnumber
lastCampaignCreatedAtnumber
earliestCampaignStartbigint | string
latestCampaignStartbigint | string
earliestCampaignEndbigint | string
latestCampaignEndbigint | string
nativeAprnumber
totalAprnumber
maxAprnumber | null
liveCampaignsForCreatornumber
soonCampaignsForCreatornumber
pastCampaignsForCreatornumber
distributionTypestring
tokensobject[]
idstringUnique identifier for the token
namestring | nullFull name of the token
chainIdintegerChain Id
addressstringAddress
decimalsnumberNumber of decimals for the token
symbolstringSymbol of the token
iconstringURL to the token icon image
verifiedbooleanWhether the token is verified
isNativebooleanWhether this is a native blockchain token
isTestbooleanWhether this is a test token
typeenumType of the token (TOKEN, PRETGE, POINT)TOKENPRETGEPOINT
pricenumber | nullCurrent price of the token in USD
updatedAtnumber | nullUnix timestamp of last price update
priceSourcestring | nullSource of the price information
displaySymbolstringCustom display symbol override
underlyingTokenIdstringIf this token is a wrapper, the ID of the underlying token
priceAlertDismissedAtnumber
priceAlertCountnumber
chainobjectChain
idinteger
required
Chain Id
namestring
required
Legible name of the chain
iconstring
required
URL to the icon of the chain
liveCampaignsnumber
required
Number of campaigns currently live on this chain
endOfDisputePeriodnumber
required
explorersobject[]
typeenumETHERSCANBLOCKSCOUTSOLSCAN
urlstring
chainIdnumber
lastClaimsOnchainFetchTimestampstring | null
required
Timestamp of the last claims onchain fetch
activeProgramsobject[]
idstring
namestring
slugstring | null
descriptionstring
iconstring
protocolobject | null
idstring
namestring
iconstring
tagsstring[]
descriptionstring
urlstring
dailyRewardsnumber
numberOfLiveCampaignsnumber
opportunityLiveTagsstring[]
bannerstring | null
opportunityBannerLightstring | null
opportunityBannerDarkstring | null
trustDataobject | null
slugstring
categorystring | null
auditsstring | null
audit_linksstring[]
audit_notestring | null
githubstring[]
twitterstring | null
listedAtnumber | null
parentProtocolstring | null
tvlnumber | null
hacksobject[]
datenumber
namestring | null
amountUSDnumber | null
techniquestring | null
sourcestring | null
syncedAtnumber
aprRecordobject
cumulatednumber
required
timestampbigint | string
required
breakdownsobject[]
required
identifierstring
typeenumCAMPAIGNTOKENPROTOCOL
valuenumber
timestampbigint | string
distributionTypeenumDUTCH_AUCTIONFIX_REWARD_VALUE_PER_LIQUIDITY_VALUEFIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUEFIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNTFIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNTMAX_REWARD_VALUE_PER_LIQUIDITY_VALUEMAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUEMAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNTMAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNTAAVE_NET_APRERC4626_APRERC4626_SPREAD_CAPPEDAAVE_V4_NET_APRDEEL_DISTRIBUTIONSOFR_SPREAD_RATCHETERC4626_TARGET_APR_WITH_MERKLTARGET_APR_WITH_MERKLNET_APRBORROW_SUBSIDYNET_APR_WITH_MERKLYIELD_BASIS_PID
nativeAprRecordobject
titlestring
required
descriptionstring
valuenumber
required
timestampbigint | string
required
amountbigint
rewardTokenobjectToken
idstring
required
Unique identifier for the token
namestring | null
required
Full name of the token
chainIdinteger
required
Chain Id
addressstring
required
Address
decimalsnumber
required
Number of decimals for the token
symbolstring
required
Symbol of the token
iconstring
required
URL to the token icon image
verifiedboolean
required
Whether the token is verified
isNativeboolean
required
Whether this is a native blockchain token
isTestboolean
required
Whether this is a test token
typeenum
required
Type of the token (TOKEN, PRETGE, POINT)TOKENPRETGEPOINT
pricenumber | nullCurrent price of the token in USD
updatedAtnumber | nullUnix timestamp of last price update
priceSourcestring | nullSource of the price information
displaySymbolstringCustom display symbol override
underlyingTokenIdstringIf this token is a wrapper, the ID of the underlying token
priceAlertDismissedAtnumber
priceAlertCountnumber
tvlRecordobject
totalnumber
required
timestampbigint | string
required
breakdownsobject[]
required
identifierstring
typeenumTOKENPROTOCOL
valuenumber
rewardsRecordobject
totalnumber
required
timestampbigint | string
required
breakdownsobject[]
required
campaignIdstring
valuenumber
maxValuenumber
timestampbigint | string
tokenobjectToken
idstring
required
Unique identifier for the token
namestring | null
required
Full name of the token
chainIdinteger
required
Chain Id
addressstring
required
Address
decimalsnumber
required
Number of decimals for the token
symbolstring
required
Symbol of the token
iconstring
required
URL to the token icon image
verifiedboolean
required
Whether the token is verified
isNativeboolean
required
Whether this is a native blockchain token
isTestboolean
required
Whether this is a test token
typeenum
required
Type of the token (TOKEN, PRETGE, POINT)TOKENPRETGEPOINT
pricenumber | nullCurrent price of the token in USD
updatedAtnumber | nullUnix timestamp of last price update
priceSourcestring | nullSource of the price information
displaySymbolstringCustom display symbol override
underlyingTokenIdstringIf this token is a wrapper, the ID of the underlying token
priceAlertDismissedAtnumber
priceAlertCountnumber
amountbigint | string
distributionTypeenumDUTCH_AUCTIONFIX_REWARD_VALUE_PER_LIQUIDITY_VALUEFIX_REWARD_AMOUNT_PER_LIQUIDITY_VALUEFIX_REWARD_VALUE_PER_LIQUIDITY_AMOUNTFIX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNTMAX_REWARD_VALUE_PER_LIQUIDITY_VALUEMAX_REWARD_AMOUNT_PER_LIQUIDITY_VALUEMAX_REWARD_VALUE_PER_LIQUIDITY_AMOUNTMAX_REWARD_AMOUNT_PER_LIQUIDITY_AMOUNTAAVE_NET_APRERC4626_APRERC4626_SPREAD_CAPPEDAAVE_V4_NET_APRDEEL_DISTRIBUTIONSOFR_SPREAD_RATCHETERC4626_TARGET_APR_WITH_MERKLTARGET_APR_WITH_MERKLNET_APRBORROW_SUBSIDYNET_APR_WITH_MERKLYIELD_BASIS_PID
onChainCampaignIdstring
Example
[
  {}
]
get
https://api.merkl.xyz/v4/opportunities/
Merkl API
curl -X GET "https://api.merkl.xyz/v4/opportunities/"