Whop Content Rewards Scraper for Campaigns avatar

Whop Content Rewards Scraper for Campaigns

Under maintenance

Pricing

$0.01 / 1,000 campaigns

Go to Apify Store
Whop Content Rewards Scraper for Campaigns

Whop Content Rewards Scraper for Campaigns

Under maintenance

Find current public Whop Content Rewards campaigns from the directory or public campaign URLs. Filter by type, platform, category, payout, budget, competition, runway, and opportunity score, then review campaign economics, performance, insights, and optional public details.

Pricing

$0.01 / 1,000 campaigns

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

2 days ago

Last modified

Share

🎯 Find public Whop campaigns with clear payout signals

For clippers, UGC creators, campaign researchers, and brands, this Actor finds current public Whop Content Rewards campaigns and saves structured dataset rows. Each row can include the campaign page, brand, status, type, accepted platforms, budget and payout values, performance, single-run insights, and optional public details. Use the filters to narrow the board and decide which campaign pages to review.

Use cases

📊 Campaign economics and public details

The output schema exposes campaignResults, a link to the default dataset. Dataset rows include required campaign identity, status, type, campaign URL, economics, insights, and extraction time. When available, a row also includes brand, category, description, accepted platforms, funding time, public links, performance, repeated-run signals, and requested public details.

Choose Public directory to scan the public campaign board, or choose Campaign URLs to read the public pages you provide. Set status, type, platform, category, text, threshold, and ordering options as needed. Turn on Include public campaign details when you need public requirements, platform payout rules, view limits, maximum payouts, or resource links. Leave Maximum campaigns empty to return all available results until the public source is exhausted. Set a value when you want to control the number of matching campaign rows and related campaign charges.

⚙️ Input

The required field is findCampaignsBy. The other fields refine the public campaign search. The default status is active, the default type is all, the default order is opportunity, and public details are off by default.

Input fields

FieldTypeWhat it does
findCampaignsByselectRequired. Choose directory to scan the public campaign board or campaignUrls to read the public pages you provide.
campaignUrlsarray of objectsIn campaignUrls mode, add one or more public Whop campaign page URLs. The list is ignored in directory mode.
campaignUrls[].urlURL stringThe public Whop campaign page URL to read.
campaignStatusselectChoose active, completed, or all. The default is active, and some scopes may have no available records.
campaignTypeselectChoose clipping, ugc, mixed, or all. The default is all.
platformsarray of stringsReturn campaigns that accept at least one listed platform. Leave it empty to allow all platforms.
categoriesarray of stringsReturn campaigns whose public category matches one of the listed names. Leave it empty to allow all categories.
searchTextstringSearch the campaign title, brand, category, and description with a case-insensitive substring match. Use one search scope per run.
minimumPayoutPerThousandViewsnumberReturn campaigns with a payout rate at or above this amount per 1,000 views. Use the source currency.
minimumRemainingBudgetnumberReturn campaigns with at least this much public budget left. Use the source currency.
maximumBudgetSpentProgressnumberReturn campaigns whose spent budget is at or below this percentage. Enter a number from 0 to 100.
maximumParticipatingCreatorsintegerReturn campaigns with no more than this many participating creators.
minimumAveragePayoutPerCreatornumberReturn campaigns whose derived average payout per participating creator is at least this amount. Use the source currency.
minimumEstimatedRunwayDaysnumberReturn campaigns with at least this many estimated days of budget runway at the current pace.
minimumOpportunityScorenumberReturn campaigns with an opportunity score at or above this value. Use the score scale shown in the results.
orderByselectOrder matches by payout, remaining budget, recency, progress, competition, payout velocity, runway, or opportunity. The default is opportunity.
includeDetailsbooleanWhen true, request public requirements, platform payout rules, minimum views, maximum payouts, and public resource links for matching campaigns. The default is false.
maxItemsintegerStop after this many matching campaigns. Leave this empty to return all available results until the public source is exhausted.

Default input

This is the successful current-beta default input:

{
"findCampaignsBy": "directory",
"campaignStatus": "active",
"campaignType": "all",
"orderBy": "opportunity",
"includeDetails": false
}

🧾 Output

The campaignResults output link opens the default dataset. The tables below describe the two public row shapes seen in current-beta runs. Optional fields may be absent when the source or the selected input does not provide them.

Campaign row without requested details

FieldTypeWhat it does
campaignIdstringRequired. Stable public campaign ID.
titlestringRequired. Public campaign title.
brandstringOptional. Public brand or company named by the campaign.
statusstringRequired. Public status, such as active or completed.
typestringRequired. Public type: clipping, ugc, or mixed.
categorystringOptional. Public campaign category.
descriptionstringOptional. Public campaign description.
acceptedPlatformsarray of stringsOptional. Social platforms accepted by the campaign.
fundingTimedate-time stringOptional. Public time when the campaign was funded.
campaignUrlURI stringRequired. Public campaign page URL.
publicLinksarray of objectsOptional. Public media or company links connected to the campaign.
publicLinks[].kindstringLink kind, such as media or company.
publicLinks[].urlURI stringPublic link URL.
publicLinks[].titlestringOptional. Public title of the linked item.
economicsobjectRequired. Public payout and budget values.
economics.payoutPerThousandViewsobjectRequired. Payout for 1,000 views.
economics.payoutPerThousandViews.amountnumberNormalized payout amount.
economics.payoutPerThousandViews.currencystringCurrency used for the payout.
economics.payoutPerThousandViews.displaystringOptional. Payout as shown by the source.
economics.totalBudgetobjectRequired. Total public campaign budget.
economics.totalBudget.amountnumberNormalized total budget amount.
economics.totalBudget.currencystringCurrency used for the total budget.
economics.totalBudget.displaystringOptional. Total budget as shown by the source.
economics.spentBudgetobjectRequired. Public budget spent so far.
economics.spentBudget.amountnumberNormalized spent budget amount.
economics.spentBudget.currencystringCurrency used for the spent budget.
economics.spentBudget.displaystringOptional. Spent budget as shown by the source.
economics.remainingBudgetobjectRequired. Public budget that remains.
economics.remainingBudget.amountnumberNormalized remaining budget amount.
economics.remainingBudget.currencystringCurrency used for the remaining budget.
economics.budgetProgressnumberRequired. Percentage of the budget spent so far.
economics.estimatedPayableViewsintegerRequired. Estimated views that can still earn a payout under the remaining budget.
performanceobjectOptional. Published performance and competition data.
performance.participatingCreatorCountintegerNumber of creators taking part in the campaign.
performance.totalViewsintegerTotal published views reported for the campaign.
performance.successRatenumberPublic success measure reported for the campaign.
performance.approvalRatenumberOptional. Public approval rate reported for campaign submissions.
performance.verificationStatusstringPublic verification state for the performance data.
insightsobjectRequired. Measures derived from the campaign economics and performance data.
insights.dailyBudgetBurnobjectEstimated budget spent per day.
insights.dailyBudgetBurn.amountnumberEstimated daily budget amount.
insights.dailyBudgetBurn.currencystringCurrency used for the daily budget amount.
insights.estimatedRunwayDaysnumberOptional. Estimated days before the remaining budget runs out at the current pace.
insights.averagePayoutPerCreatorobjectOptional. Estimated average payout per participating creator.
insights.averagePayoutPerCreator.amountnumberEstimated average payout amount.
insights.averagePayoutPerCreator.currencystringCurrency used for the average payout.
insights.viewsPerCreatornumberOptional. Estimated average published views per creator.
insights.budgetPacenumberEstimated percentage of the total budget spent per day.
insights.opportunityScorenumberRequired. Score used to rank campaigns by current opportunity.
newSincePreviousRunbooleanOptional. Whether the campaign first appeared after the previous run when a comparison is available.
spendChangeobjectOptional. Change in spent budget since the previous run when a comparison is available.
spendChange.amountobjectRequired when spendChange is present. Normalized change in spent budget.
spendChange.amount.amountnumberChange in the spent budget amount.
spendChange.amount.currencystringCurrency used for the spend change.
spendChange.amount.displaystringOptional. Spend change as shown by the source or comparison.
spendChange.percentnumberOptional. Percentage change in spent budget.
extractedAtdate-time stringRequired. Time when the public campaign data was extracted.

This genuine standard row comes from the successful current-beta default-input run. It includes spend-change data because a comparison was available.

{
"campaignId": "5a53b5d2-35b2-42b6-a025-7654e380523e",
"title": "Persona 4 Revival - North America Launch",
"status": "active",
"type": "clipping",
"campaignUrl": "https://contentrewards.com/discover/5a53b5d2-35b2-42b6-a025-7654e380523e",
"economics": {
"payoutPerThousandViews": {
"amount": 2.5,
"currency": "USD",
"display": "$$2.50"
},
"totalBudget": {
"amount": 24000,
"currency": "USD",
"display": "$$24,000"
},
"spentBudget": {
"amount": 655.38,
"currency": "USD",
"display": "$$655.38"
},
"remainingBudget": {
"amount": 23344.62,
"currency": "USD"
},
"budgetProgress": 3,
"estimatedPayableViews": 9337848
},
"insights": {
"opportunityScore": 100,
"dailyBudgetBurn": {
"amount": 222.2993534019883,
"currency": "USD"
},
"estimatedRunwayDays": 105.01434054009803,
"averagePayoutPerCreator": {
"amount": 0.9581578947368421,
"currency": "USD"
},
"viewsPerCreator": 724.1228070175439,
"budgetPace": 0.9262473058416179
},
"extractedAt": "2026-08-29T18:45:16.547Z",
"brand": "Clipping Culture",
"category": "Entertainment",
"description": "Post hype content for Persona 4 Revival on TikTok, Instagram, and YouTube Shorts. Build excitement around the story trailer and the upcoming Microsoft broadcast. ",
"acceptedPlatforms": [
"tiktok",
"instagram",
"youtube"
],
"fundingTime": "2026-08-26T19:59:53.215Z",
"publicLinks": [
{
"kind": "media",
"url": "https://cdn.contentrewards.com/user_acK8AH1Mtmt1D/1787776076819.jpg",
"title": "Persona 4 Revival - North America Launch"
},
{
"kind": "company",
"url": "https://whop.com/discover/biz_966dDkeVuhmgzh",
"title": "Clipping Culture"
}
],
"performance": {
"participatingCreatorCount": 684,
"totalViews": 495300,
"successRate": 78,
"verificationStatus": "verified"
},
"newSincePreviousRun": false,
"spendChange": {
"amount": {
"amount": 0.21000000000003638,
"currency": "USD",
"display": "+$0.21"
},
"percent": 0.03205274966803064
}
}

Campaign row with requested public details

FieldTypeWhat it does
campaignIdstringRequired. Stable public campaign ID.
titlestringRequired. Public campaign title.
brandstringOptional. Public brand or company named by the campaign.
statusstringRequired. Public status, such as active or completed.
typestringRequired. Public type: clipping, ugc, or mixed.
categorystringOptional. Public campaign category.
descriptionstringOptional. Public campaign description.
acceptedPlatformsarray of stringsOptional. Social platforms accepted by the campaign.
fundingTimedate-time stringOptional. Public time when the campaign was funded.
campaignUrlURI stringRequired. Public campaign page URL.
publicLinksarray of objectsOptional. Public media or company links connected to the campaign.
publicLinks[].kindstringLink kind, such as media or company.
publicLinks[].urlURI stringPublic link URL.
publicLinks[].titlestringOptional. Public title of the linked item.
economicsobjectRequired. Public payout and budget values.
economics.payoutPerThousandViewsobjectRequired. Payout for 1,000 views.
economics.payoutPerThousandViews.amountnumberNormalized payout amount.
economics.payoutPerThousandViews.currencystringCurrency used for the payout.
economics.payoutPerThousandViews.displaystringOptional. Payout as shown by the source.
economics.totalBudgetobjectRequired. Total public campaign budget.
economics.totalBudget.amountnumberNormalized total budget amount.
economics.totalBudget.currencystringCurrency used for the total budget.
economics.totalBudget.displaystringOptional. Total budget as shown by the source.
economics.spentBudgetobjectRequired. Public budget spent so far.
economics.spentBudget.amountnumberNormalized spent budget amount.
economics.spentBudget.currencystringCurrency used for the spent budget.
economics.spentBudget.displaystringOptional. Spent budget as shown by the source.
economics.remainingBudgetobjectRequired. Public budget that remains.
economics.remainingBudget.amountnumberNormalized remaining budget amount.
economics.remainingBudget.currencystringCurrency used for the remaining budget.
economics.budgetProgressnumberRequired. Percentage of the budget spent so far.
economics.estimatedPayableViewsintegerRequired. Estimated views that can still earn a payout under the remaining budget.
performanceobjectOptional. Published performance and competition data.
performance.participatingCreatorCountintegerNumber of creators taking part in the campaign.
performance.totalViewsintegerTotal published views reported for the campaign.
performance.successRatenumberPublic success measure reported for the campaign.
performance.approvalRatenumberOptional. Public approval rate reported for campaign submissions.
performance.verificationStatusstringPublic verification state for the performance data.
insightsobjectRequired. Measures derived from the campaign economics and performance data.
insights.dailyBudgetBurnobjectEstimated budget spent per day.
insights.dailyBudgetBurn.amountnumberEstimated daily budget amount.
insights.dailyBudgetBurn.currencystringCurrency used for the daily budget amount.
insights.estimatedRunwayDaysnumberOptional. Estimated days before the remaining budget runs out at the current pace.
insights.averagePayoutPerCreatorobjectOptional. Estimated average payout per participating creator.
insights.averagePayoutPerCreator.amountnumberEstimated average payout amount.
insights.averagePayoutPerCreator.currencystringCurrency used for the average payout.
insights.viewsPerCreatornumberOptional. Estimated average published views per creator.
insights.budgetPacenumberEstimated percentage of the total budget spent per day.
insights.opportunityScorenumberRequired. Score used to rank campaigns by current opportunity.
detailsobjectOptional. Extra public campaign details requested by the input.
details.requirementsarray of stringsPublic requirements for creators in the campaign.
details.platformPayoutRulesarray of objectsPublic payout limits and view rules for each accepted platform.
details.platformPayoutRules[].platformstringPlatform covered by the payout rule.
details.platformPayoutRules[].payoutPerThousandViewsobjectPayout for 1,000 views on that platform.
details.platformPayoutRules[].payoutPerThousandViews.amountnumberNormalized platform payout amount.
details.platformPayoutRules[].payoutPerThousandViews.currencystringCurrency used for the platform payout.
details.platformPayoutRules[].payoutPerThousandViews.displaystringOptional. Platform payout as shown by the source.
details.platformPayoutRules[].minimumViewsintegerOptional. Minimum views needed for the platform rule.
details.platformPayoutRules[].maximumPayoutobjectOptional. Maximum payout for the platform rule.
details.platformPayoutRules[].maximumPayout.amountnumberNormalized maximum payout amount.
details.platformPayoutRules[].maximumPayout.currencystringCurrency used for the maximum payout.
details.platformPayoutRules[].maximumPayout.displaystringOptional. Maximum payout as shown by the source.
details.publicResourceLinksarray of objectsPublic resource links for the campaign.
details.publicResourceLinks[].urlURI stringPublic resource URL.
details.publicResourceLinks[].titlestringOptional. Public title of the resource.
newSincePreviousRunbooleanOptional. Whether the campaign first appeared after the previous run when a comparison is available.
spendChangeobjectOptional. Change in spent budget since the previous run when a comparison is available.
spendChange.amountobjectRequired when spendChange is present. Normalized change in spent budget.
spendChange.amount.amountnumberChange in the spent budget amount.
spendChange.amount.currencystringCurrency used for the spend change.
spendChange.amount.displaystringOptional. Spend change as shown by the source or comparison.
spendChange.percentnumberOptional. Percentage change in spent budget.
extractedAtdate-time stringRequired. Time when the public campaign data was extracted.

This genuine details-enabled row comes from a successful current-beta run with includeDetails set to true.

{
"campaignId": "fc7ba8d6-8d5c-4d1b-ac4d-dca047eeecd1",
"title": "MOTORSPORTS | LOGO CAMPAIGN",
"status": "active",
"type": "clipping",
"campaignUrl": "https://contentrewards.com/discover/fc7ba8d6-8d5c-4d1b-ac4d-dca047eeecd1",
"economics": {
"payoutPerThousandViews": {
"amount": 0.15,
"currency": "USD",
"display": "$$0.15"
},
"totalBudget": {
"amount": 20000,
"currency": "USD",
"display": "$$20,000"
},
"spentBudget": {
"amount": 2204.87,
"currency": "USD",
"display": "$$2,204.87"
},
"remainingBudget": {
"amount": 17795.13,
"currency": "USD"
},
"budgetProgress": 11,
"estimatedPayableViews": 118634200
},
"insights": {
"opportunityScore": 74.82639,
"dailyBudgetBurn": {
"amount": 47.13682538205226,
"currency": "USD"
},
"estimatedRunwayDays": 377.52075698283335,
"averagePayoutPerCreator": {
"amount": 37.370677966101695,
"currency": "USD"
},
"viewsPerCreator": 208474.57627118644,
"budgetPace": 0.23568412691026128
},
"extractedAt": "2026-08-29T18:48:10.272Z",
"brand": "Modo.US",
"category": "Logo",
"description": "Earn $150 for every 1 million views by adding the MODO.US overlay to motorsports content.\n",
"acceptedPlatforms": [
"youtube",
"instagram",
"x",
"facebook"
],
"fundingTime": "2026-07-14T00:10:47.802Z",
"publicLinks": [
{
"kind": "media",
"url": "https://cdn.contentrewards.com/user_F9OmOzVrYmRyM/1787228180110.png",
"title": "MOTORSPORTS | LOGO CAMPAIGN"
},
{
"kind": "company",
"url": "https://whop.com/discover/biz_3db7OlQ8XwlIXE",
"title": "Modo.US"
}
],
"performance": {
"participatingCreatorCount": 59,
"totalViews": 12300000,
"successRate": 65,
"verificationStatus": "unverified",
"approvalRate": 78
},
"details": {
"requirements": [
"All videos must feature racing-related content (F1, NASCAR, MOTOGP)",
"The MODO.US logo overlay must remain clearly visible throughout the video. (Header + Footer)",
"Must go over the Logo Guidelines tab before posting.",
"Handles: (IG) @modo_casino | (X) @modo_casino | (YT) @modocasino",
"Required Audience: US TOP(+50%)",
"Pages that are new/fresh are not accepted",
"The page must have at least 1,000 followers.",
"Page quality: please avoid posting random content and pick one niche for your page"
],
"platformPayoutRules": [
{
"platform": "youtube",
"payoutPerThousandViews": {
"amount": 0.15,
"currency": "USD",
"display": "$$0.15"
},
"minimumViews": 5000,
"maximumPayout": {
"amount": 200,
"currency": "USD",
"display": "$$200.00"
}
},
{
"platform": "instagram",
"payoutPerThousandViews": {
"amount": 0.15,
"currency": "USD",
"display": "$$0.15"
},
"minimumViews": 5000,
"maximumPayout": {
"amount": 200,
"currency": "USD",
"display": "$$200.00"
}
},
{
"platform": "x",
"payoutPerThousandViews": {
"amount": 0.15,
"currency": "USD",
"display": "$$0.15"
},
"minimumViews": 5000,
"maximumPayout": {
"amount": 200,
"currency": "USD",
"display": "$$200.00"
}
},
{
"platform": "facebook",
"payoutPerThousandViews": {
"amount": 0.05,
"currency": "USD",
"display": "$$0.05"
},
"minimumViews": 20000,
"maximumPayout": {
"amount": 100,
"currency": "USD",
"display": "$$100.00"
}
}
],
"publicResourceLinks": [
{
"url": "https://drive.google.com/drive/folders/1GiglFYXhqqrR3nmDDB09hsrYD3qzYqbg?usp=sharing",
"title": "Assets"
}
]
},
"newSincePreviousRun": false,
"spendChange": {
"amount": {
"amount": 0,
"currency": "USD",
"display": "+$0.00"
},
"percent": 0
}
}

💳 Pricing

This Actor uses pay per event. The primary event charges once for each campaign row saved to the dataset. Set maxItems when you want to control the number of matching rows and the related campaign charges. An empty or no-result run has no campaign row for this primary event. See the Apify pricing panel for the current rate.

🔌 Integrations

Use the campaignResults dataset link in your Apify workflow or your own tools. See the Actor workflow video here:

❓ FAQ

How do I scan the public directory?

Choose Public directory in findCampaignsBy. Leave campaignUrls empty and add filters only when you want to narrow the board.

When should I use Campaign URLs?

Choose Campaign URLs when you already have one or more public Whop campaign pages. Add each page under campaignUrls.

What does Include public campaign details add?

Set includeDetails to true to request public requirements, platform payout rules, minimum views, maximum payouts, and public resource links for matching campaigns.

What happens when Maximum campaigns is empty?

The Actor returns all available results until the public source is exhausted. Set maxItems to stop after a chosen number of matching campaigns.

Can I use completed campaigns?

Yes. Set campaignStatus to completed or all. A chosen status scope may have no available records.

How should I read the insight fields?

The insight values are derived from the current campaign economics and performance data. Runway and opportunity score help compare campaigns at that time, but they do not guarantee approval, payout, campaign longevity, or creator earnings.

How do repeated runs show changes?

When a comparison is available, newSincePreviousRun can show that a campaign appeared after the previous run, and spendChange can show a change in spent budget.

Does this Actor apply to campaigns or pay rewards?

No. It reads and returns public campaign information. It does not apply to campaigns, submit clips, manage creator accounts, or settle rewards.

📝 Changelog

0.0: Initial release

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

These public Store actors cover closely related campaign research:

Made with ❤️ by Maxime Dupré