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: 0itemsnumber | stringdefault: 20namestringsearchstringcampaignIdstringcreatorSlugstringchainIdstringactionstringtokenTypesenum[]TOKENPRETGEPOINTpointbooleantypestringcreatorAddressstringtagsstringtestbooleandefault: falseminimumTvlnumbermaximumTvlnumberminimumAprnumbermaximumAprnumberminimumDailyRewardsnumbermaximumDailyRewardsnumberminimumCreatedAtnumbermaximumCreatedAtnumberstatusstringidentifierstringidstringcampaignsbooleantokensstringstablecoinbooleandefault: falserewardTokenSymbolstringsortstringorderstringdefault: descdistributionTypesenum[]FIX_REWARDMAX_REWARDDUTCH_AUCTIONmainProtocolIdstringprogramSlugsstringchainNamestringexcludeSubCampaignsbooleandefault: falseexplorerAddressstringwithInvalidsbooleandefault: falsecampaignTypesstringResponses
200Response for status 200
Schema
object | null[]
idstringtypestringidentifierstringchainIdnumbernamestringdescriptionstringhowToStepsstring[]statusenumNONEPASTLIVESOONactionenumPOOLHOLDDROPLENDBORROWLONGSHORTSWAPINVALIDSTAKEtagsstring[]mainProtocolstringdepositUrlstringdepositUrlsobject[]
idstringtitlestringurlstringsubtitlestringiconstringprioritynumberexplorerAddressstringhiddenbooleantvlnumberaprnumberdailyRewardsnumbermaxDailyRewardsnumber | nullliveCampaignsnumberlastCampaignCreatedAtnumberearliestCampaignStartbigint | stringlatestCampaignStartbigint | stringearliestCampaignEndbigint | stringlatestCampaignEndbigint | stringnativeAprnumbertotalAprnumbermaxAprnumber | nullliveCampaignsForCreatornumbersoonCampaignsForCreatornumberpastCampaignsForCreatornumberdistributionTypestringtokensobject[]
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 tokenpriceAlertDismissedAtnumberpriceAlertCountnumberchainobjectChain
idintegerrequired
Chain Idnamestringrequired
Legible name of the chainiconstringrequired
URL to the icon of the chainliveCampaignsnumberrequired
Number of campaigns currently live on this chainendOfDisputePeriodnumberrequired
explorersobject[]
typeenumETHERSCANBLOCKSCOUTSOLSCANurlstringchainIdnumberlastClaimsOnchainFetchTimestampstring | nullrequired
Timestamp of the last claims onchain fetchactiveProgramsobject[]
idstringnamestringslugstring | nulldescriptionstringiconstringprotocolobject | null
idstringnamestringiconstringtagsstring[]descriptionstringurlstringdailyRewardsnumbernumberOfLiveCampaignsnumberopportunityLiveTagsstring[]bannerstring | nullopportunityBannerLightstring | nullopportunityBannerDarkstring | nulltrustDataobject | null
slugstringcategorystring | nullauditsstring | nullaudit_linksstring[]audit_notestring | nullgithubstring[]twitterstring | nulllistedAtnumber | nullparentProtocolstring | nulltvlnumber | nullhacksobject[]
datenumbernamestring | nullamountUSDnumber | nulltechniquestring | nullsourcestring | nullsyncedAtnumberaprRecordobject
cumulatednumberrequired
timestampbigint | stringrequired
breakdownsobject[]required
identifierstringtypeenumCAMPAIGNTOKENPROTOCOLvaluenumbertimestampbigint | stringdistributionTypeenumDUTCH_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_PIDnativeAprRecordobject
titlestringrequired
descriptionstringvaluenumberrequired
timestampbigint | stringrequired
amountbigintrewardTokenobjectToken
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 tokenpriceAlertDismissedAtnumberpriceAlertCountnumbertvlRecordobject
totalnumberrequired
timestampbigint | stringrequired
breakdownsobject[]required
identifierstringtypeenumTOKENPROTOCOLvaluenumberrewardsRecordobject
totalnumberrequired
timestampbigint | stringrequired
breakdownsobject[]required
campaignIdstringvaluenumbermaxValuenumbertimestampbigint | stringtokenobjectToken
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 tokenpriceAlertDismissedAtnumberpriceAlertCountnumberamountbigint | stringdistributionTypeenumDUTCH_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_PIDonChainCampaignIdstringExample
[
{}
]get
https://api.merkl.xyz/v4/opportunities/curl -X GET "https://api.merkl.xyz/v4/opportunities/"