
/v4/creators/{creator}/opportunities
Returns paginated opportunities for a specific creator. Use page, items, and other query parameters to filter.
Path parameters
creatorstringQuery parameters
pagenumber | stringdefault: 00-indexed page number
itemsnumber | stringdefault: 20Number of items returned by page
namestringFilter by name
searchstringSearch amongst multiple values (token, protocols, tags, campaigns)
chainIdstringA comma separated list of chain ids. Example: ?chainId=1,42161
You can get the list of all supported chains by calling GET /v4/chains
actionstringA comma seprated list actions. Legal values are: POOL, HOLD, DROP, LEND, BORROW, LONG, SHORT, SWAP, INVALID, STAKE
tokenTypesenum[]Filter by token type. Use POINT to include point campaigns and PRETGE to include preTGE campaigns. By default every token is returned.
TOKENPRETGEPOINTtypestringA comma separated list of Opportunity type
testbooleandefault: falseInclude opportunities with test campaigns
minimumTvlnumberMinimum TVL threshold in USD
maximumTvlnumberMaximum TVL threshold in USD
minimumAprnumberMinimum APR threshold
maximumAprnumberMaximum APR threshold
minimumDailyRewardsnumberMinimum daily rewards threshold in USD
maximumDailyRewardsnumberMaximum daily rewards threshold in USD
minimumCreatedAtnumberFilter opportunities whose last campaign was created at or after this Unix timestamp (seconds)
maximumCreatedAtnumberFilter opportunities whose last campaign was created at or before this Unix timestamp (seconds)
statusstringA comma separeted list of status. Legal values are: LIVE, PAST, SOON
identifierstringFilter by opportunity identifier (a.k.a. mainParameter). Free-form string, often a pool/vault/market address (e.g. 0x35Cbe8542E70fa2f7F9cDF129F19e593F4b4f560) or an arbitrary on-chain hash for non-address opportunities. NOT a campaign ID. See ID types.
idstringA comma-separated list of internal opportunity IDs (Opportunity.id, numeric hash). Example: ?id=5877322385708089533,1234567890. NOT campaign IDs. See ID types.
tokensstringA comma separated list of token symbol. Use to filter by token
stablecoinbooleandefault: falseFilter opportunities that include at least one stablecoin token
rewardTokenSymbolstringFilter by opportunity that have at least 1 campaigns where the reward token has this symbol
sortstringSort by opportunity fields or creatorCampaignsEndingSoon (creator's earliest active campaign end)
orderstringdefault: descasc to sort in ascending order or desc to sort in descending order.
distributionTypesenum[]FIX_REWARDMAX_REWARDDUTCH_AUCTIONTOTAL_APRmainProtocolIdstringA comma-separated list of protocol slugs (e.g. aave,morpho,uniswap). NOT numeric IDs. List slugs at GET /v4/protocols. See ID types.
programSlugsstringA comma separated list of program ids or slugs. You can get the list of all supported programs by calling GET /v4/programs
chainNamestringA comma separated list of chain names. Example: ?chainName=ethereum,arbitrum
explorerAddressstringFilter by on-chain pool/vault/market address (20-byte EVM address, e.g. 0x35Cbe8542E70fa2f7F9cDF129F19e593F4b4f560). Often the most reliable way to look up an opportunity if you only know the underlying contract. See ID types.
campaignTypesstringA comma separated list of CampaignType enum numeric values. Example: ?campaignTypes=18,19
Responses
200Response for status 200
object[]
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
idintegernamestringiconstringliveCampaignsnumberendOfDisputePeriodnumberexplorersobject[]
typeenumETHERSCANBLOCKSCOUTSOLSCANurlstringchainIdnumberlastClaimsOnchainFetchTimestampstring | nullactiveProgramsobject[]
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
cumulatednumbertimestampbigint | stringbreakdownsobject[]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_PIDCOMPOSEDnativeAprRecordobject
titlestringdescriptionstringvaluenumbertimestampbigint | stringamountbigintrewardTokenobjectToken
idstringnamestring | nullchainIdintegeraddressstringdecimalsnumbersymbolstringiconstringverifiedbooleanisNativebooleanisTestbooleantypeenumTOKENPRETGEPOINTpricenumber | 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 tokenpriceAlertDismissedAtnumberpriceAlertCountnumberbreakdownsobject[]
titlestringdescriptionstringvaluenumberamountbigintrewardTokenobjectToken
idstringnamestring | nullchainIdintegeraddressstringdecimalsnumbersymbolstringiconstringverifiedbooleanisNativebooleanisTestbooleantypeenumTOKENPRETGEPOINTpricenumber | 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
totalnumbertimestampbigint | stringbreakdownsobject[]required
identifierstringtypeenumTOKENPROTOCOLvaluenumberrewardsRecordobject
totalnumbertimestampbigint | stringbreakdownsobject[]required
campaignIdstringvaluenumbermaxValuenumbertimestampbigint | stringtokenobjectToken
idstringnamestring | nullchainIdintegeraddressstringdecimalsnumbersymbolstringiconstringverifiedbooleanisNativebooleanisTestbooleantypeenumTOKENPRETGEPOINTpricenumber | 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_PIDCOMPOSEDonChainCampaignIdstring[
{}
]https://api.merkl.xyz/v4/creators//opportunities?page=&items=&test=&stablecoin=&order=curl -X GET "https://api.merkl.xyz/v4/creators/0x88888887C3ebD4a33E34a15Db4254C74C75E5D4A/opportunities?page=0&items=20&test=false&stablecoin=false&order=desc"