Twitch Drops Campaign Tracker Scraper
Pricing
Pay per event
Twitch Drops Campaign Tracker Scraper
Track active and expired Twitch Drops campaigns by game, timing, status, and source links from the public TwDrop catalog.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Track public Twitch Drops campaigns without manually checking hundreds of game pages. This Actor reads the public TwDrop catalog and exports normalized campaign records for alerts, dashboards, research, and recurring monitoring.
What does Twitch Drops Campaign Tracker Scraper do?
It discovers Twitch Drops campaigns across the TwDrop game catalog. Each result includes a stable campaign ID, campaign title, game, status, dates, time remaining, source links, Twitch link, game image, and scrape timestamp. Choose active, expired, or all campaigns. Filter by game or campaign text. Schedule the Actor to spot launches and expirations automatically.
Who is it for?
- ๐ฎ Gaming publishers tracking promotional campaigns across a market.
- ๐ฃ Community managers planning reminders before Drops expire.
- ๐ค Creator and sponsorship teams finding timely streaming opportunities.
- ๐ Alert services feeding campaign changes into Discord, Slack, or email.
- ๐ Gaming-data products building searchable campaign archives.
- ๐งโ๐ป Developers who need structured Twitch Drops data through an API.
Why use this Twitch Drops tracker?
Manual checks are slow and difficult to compare over time. The Actor produces one consistent record per campaign and can run on a schedule. Stable IDs simplify dataset diffs. ISO timestamps simplify sorting and alert rules. No Twitch login or personalized inventory access is required.
What data can you extract?
| Field | Meaning |
|---|---|
campaignId | Stable campaign UUID exposed by TwDrop |
campaignTitle | Public campaign name |
game | Game title |
gameSlug | TwDrop game slug |
status | active or expired |
startAt | Parsed ISO start timestamp, when available |
endAt | Parsed ISO end timestamp, when available |
timeRemainingSeconds | Seconds until the campaign ends |
sourceUrl | Stable TwDrop source reference |
twitchUrl | TwDrop redirect to the campaign on Twitch |
detailsUrl | Public campaign detail or publisher link |
gameUrl | TwDrop game campaign page |
gameImageUrl | Public game artwork |
rewards | Reserved normalized reward names when exposed publicly |
requirements | Reserved watch requirements when exposed publicly |
scrapedAt | UTC extraction timestamp |
How to scrape active Twitch Drops campaigns
- Open the Actor input page.
- Select Active campaigns.
- Optionally enter a game name or campaign query.
- Choose the maximum number of campaigns.
- Click Start.
- Export the dataset as JSON, CSV, Excel, XML, or another Apify format.
Input options
Campaign status
active returns live campaigns.
expired returns historical campaigns.
all returns both groups.
Game filter
Enter a partial game name such as Valorant, 2XKO, or Apex.
Matching is case-insensitive.
Leave it empty to scan the full catalog.
Campaign search
Use query to match campaign and game titles.
This is useful for seasons, launches, esports events, or publisher campaigns.
Maximum campaigns
maxItems controls the maximum dataset size.
Use a small limit for a quick test and a larger limit for archival exports.
Detail links
Enable enrichDetails to retain public external campaign detail links where TwDrop supplies them.
The Actor never claims rewards and never accesses personalized watch progress.
Example input
{"mode": "active","game": "","query": "","maxItems": 100,"enrichDetails": true}
Example output
{"campaignId": "77663c46-f1a1-11f0-8694-0a58a9feac02","campaignTitle": "2XKO Season 1 Launch","game": "2XKO","gameSlug": "2xko","status": "expired","startAt": "2026-01-20T22:00:00.000Z","endAt": "2026-02-03T21:59:00.000Z","timeRemainingSeconds": 0,"sourceUrl": "https://twdrop.de/games/2xko#77663c46-f1a1-11f0-8694-0a58a9feac02","twitchUrl": "https://twdrop.de/t/2xko/77663c46-f1a1-11f0-8694-0a58a9feac02/twitch","scrapedAt": "2026-07-12T05:00:00.000Z"}
How much does it cost to track Twitch Drops campaigns?
The Actor uses pay-per-event pricing: a small run-start fee plus a charge for each campaign saved.
Apify plan tiers receive automatic volume discounts.
The Console shows the exact price before each run.
Set maxItems to control the maximum result charge.
A focused game monitor is usually cheaper than repeatedly exporting the entire archive.
Scheduling campaign alerts
Create an Apify schedule that runs hourly or daily.
Keep the same input and compare datasets by campaignId.
A new ID indicates a newly discovered campaign.
A status change or lower timeRemainingSeconds can trigger an expiry reminder.
Use webhooks to start an integration after every successful run.
Integrations
- ๐ Send newly discovered campaigns to Discord through a webhook workflow.
- ๐ฌ Post expiring campaigns to Slack with Make or Zapier.
- ๐ง Generate community reminder emails from active records.
- ๐ Load campaign history into Google Sheets or a BI warehouse.
- ๐๏ธ Store records in PostgreSQL, Snowflake, BigQuery, or S3.
- โก Trigger another Actor when a campaign is launched.
API usage: JavaScript example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/twitch-drops-campaign-tracker-scraper').call({mode: 'active',maxItems: 100,enrichDetails: true,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python API example
from apify_client import ApifyClientimport osclient = ApifyClient(os.environ['APIFY_TOKEN'])run = client.actor('automation-lab/twitch-drops-campaign-tracker-scraper').call(run_input={'mode': 'active','maxItems': 100,'enrichDetails': True,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL API example
curl -X POST "https://api.apify.com/v2/acts/automation-lab~twitch-drops-campaign-tracker-scraper/runs?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"mode":"active","maxItems":100,"enrichDetails":true}'
Use with Apify MCP
Connect AI assistants through https://mcp.apify.com?tools=automation-lab/twitch-drops-campaign-tracker-scraper.
In Claude Code, ask: โRun the Twitch Drops campaign tracker and summarize campaigns ending soon.โ
In Claude Desktop, ask: โFind active Drops for games containing Apex and return their Twitch links.โ
MCP lets an assistant run the Actor and inspect its dataset without custom glue code.
Data quality and limitations
TwDrop is a third-party public tracker, not Twitch itself.
Campaign availability and translations reflect what TwDrop exposes.
Some campaigns do not publish reward names or watch requirements, so the corresponding arrays can be empty.
Dates are normalized from the visible German date format.
When a parsed endAt is in the past, the Actor always reports expired, even if TwDrop's visual styling is stale. If an end date is unavailable, status falls back to TwDrop's current visual label.
External detail links may point to a publisher page rather than a dedicated reward page.
Markup changes can temporarily affect extraction; source URLs are retained for verification.
Tips for reliable monitoring
- Use
activefor frequent low-cost checks. - Use
allfor periodic archive snapshots. - Filter by game when only one community matters.
- Deduplicate on
campaignId, not title. - Compare
endAtrather than localized display strings. - Keep
scrapedAtto audit when a status was observed. - Configure a webhook only after a run succeeds.
Legality: is scraping Twitch Drops legal?
The Actor accesses public, unauthenticated pages and does not bypass account controls. It does not claim Drops, log in to Twitch, or access personal watch progress. You are responsible for your use of the data and for complying with applicable laws, contracts, and website terms. Avoid republishing copyrighted images in ways that exceed your rights.
Troubleshooting
Why did I get no campaigns?
Check whether your game or query filter is too narrow.
Try mode: "all" and remove filters to verify the catalog.
A game may have no campaign in the selected status.
Why are rewards empty?
TwDrop's public catalog often exposes campaign timing and links but not structured reward requirements.
The Actor does not invent missing values.
Follow detailsUrl or twitchUrl for the authoritative campaign presentation.
Why is a time remaining value zero?
Expired campaigns intentionally return zero when an end timestamp is known. Active campaigns with a known end date return a positive value.
The Actor reconciles status against endAt; use both fields when building alerts and treat a missing end date as source-limited timing.
FAQ
Does this Actor require a Twitch account?
No. It reads public TwDrop pages without Twitch authentication.
Can it claim Drops for me?
No. Claiming rewards and tracking personalized progress are intentionally out of scope.
Can I monitor one game?
Yes. Set the partial game filter and schedule recurring runs.
Can I export old campaigns?
Yes. Choose expired or all and increase maxItems.
Can I use a proxy?
Yes. Proxy configuration is optional because direct HTTP normally works.
How do I detect new campaigns?
Compare campaignId values between scheduled run datasets.
Related scrapers
Explore other gaming and social-media data tools from automation-lab. Combine this Actor with Twitch channel or schedule actors when you need creator and broadcast context alongside Drops campaigns. Only use actors that match your intended data source and legal basis.
Support
If a run produces unexpected output, open an issue from the Actor page. Include the input, run ID, affected game, and expected campaign. That evidence makes target-markup changes faster to diagnose.