Snapchat Spotlight Videos Scraper
Pricing
from $1.32 / 1,000 spotlight video extracteds
Snapchat Spotlight Videos Scraper
Discover public Snapchat Spotlight videos and export creator, media, caption, engagement, rank, URL, and observation data for recurring trend monitoring.
Pricing
from $1.32 / 1,000 spotlight video extracteds
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Browse Snapchat's anonymously public Spotlight surface and export normalized snapchat spotlight videos for creator, trend, and campaign research.
The Actor works without a Snapchat login. It can browse the current public Spotlight feed or extract specific public Spotlight URLs. Each useful row includes stable story and snap identifiers, source rank, creator fields, media references, engagement counts, and an observation timestamp.
What does Snapchat Spotlight Videos Scraper do?
The Actor turns Snapchat's public Spotlight web pages into analysis-ready records.
Use it to:
- discover videos without supplying known URLs;
- capture the order shown on the public Spotlight page;
- resolve a known public Spotlight URL;
- collect creator identity when Snapchat attributes a video;
- export public media and thumbnail references;
- compare engagement observations between scheduled runs;
- filter the current feed by a minimum view count.
It does not log in, post content, bypass privacy settings, or access private snaps.
Who is this Actor for?
Social media researchers
Create a snapshot of the current public feed for qualitative or quantitative analysis.
Creator and talent teams
Identify public creators appearing in the observed Spotlight selection and retain source URLs for review.
Brand and campaign analysts
Track public video captions, hashtags, creators, and visible engagement signals over time.
Data teams
Send consistent JSON rows to a warehouse, spreadsheet, webhook, or automation pipeline.
Why use this Spotlight discovery scraper?
Most Spotlight tools begin with a URL or profile you already know. This Actor also starts from the anonymously available discovery feed.
Its output is designed for recurring observations:
storyIdandsnapIdsupport deduplication;sourceRankpreserves observed feed order;observedAtdistinguishes repeated snapshots;- engagement counts remain numeric;
- nullable fields reflect what Snapchat actually exposes;
- malformed or unrecognized upstream pages fail clearly instead of producing misleading empty data.
The implementation uses public embedded page data and does not download media files. That keeps runs lightweight while preserving the public media references exposed by Snapchat.
What Snapchat Spotlight data can I extract?
| Field | Meaning |
|---|---|
storyId | Stable Spotlight story identifier |
snapId | Stable snap identifier |
sourceRank | One-based rank in the observed discovery feed |
sourceType | discovery or url |
url | Canonical public Spotlight URL |
title | Public or generated video title when exposed |
description | Public video description when exposed |
caption | Embedded text caption when exposed |
creatorUsername | Attributed public creator username |
creatorDisplayName | Attributed creator display name |
creatorUrl | Public creator profile URL |
creatorFollowerCount | Follower count when exposed |
thumbnailUrl | Public preview image reference |
mediaUrl | Public media CDN reference |
mediaType | Normalized video, image, or unknown type |
durationMs | Duration in milliseconds |
width, height | Media dimensions |
viewCount | Visible view count |
shareCount | Visible share count |
commentCount | Visible comment count |
boostCount | Visible boost count |
recommendCount | Visible recommendation count |
hashtags | Public hashtags attached to the video |
postedAt | Publication timestamp when exposed |
observedAt | Timestamp of this Actor observation |
Fields can be null when Snapchat does not expose them for a record.
How to scrape Snapchat Spotlight videos
- Open the Actor in Apify Console.
- Leave Spotlight video URLs empty to browse the current public feed.
- Set Maximum videos to the largest number of rows you need.
- Optionally set Minimum view count to create a high-engagement shortlist.
- Click Start.
- Open the Dataset tab to inspect, download, or integrate the results.
A useful first run is:
{"maxItems": 10,"minViewCount": 0}
Input parameters
startUrls
Optional array of public Snapchat Spotlight URLs. Accepted paths look like:
https://www.snapchat.com/spotlight/<spotlight-id>https://www.snapchat.com/@creator/spotlight/<spotlight-id>
When omitted or empty, the Actor browses the current discovery feed. A maximum of 50 unique explicit URLs is processed per run.
maxItems
Maximum useful records to save. The allowed range is 1 through 100 and the default is 25. The current public page can naturally expose fewer records.
minViewCount
Keep only records with at least this many currently exposed views. The default is 0. The same filter applies to discovery and explicit-URL inputs.
Output example
This shortened example reflects the current output shape. Values are illustrative and anonymized:
{"storyId": "W7_EXAMPLE_SPOTLIGHT_STORY_ID","snapId": "W7_EXAMPLE_SPOTLIGHT_SNAP_ID","sourceRank": 1,"sourceType": "discovery","url": "https://www.snapchat.com/spotlight/W7_EXAMPLE_SPOTLIGHT_STORY_ID","title": "A sunny afternoon in the park","caption": "Weekend walk #outdoors","creatorUsername": "examplecreator","creatorDisplayName": "Example Creator","thumbnailUrl": "https://cf-st.sc-cdn.net/example-thumbnail.jpg","mediaUrl": "https://bolt-gcdn.sc-cdn.net/example-video.mp4","mediaType": "video","durationMs": 9800,"viewCount": 120000,"commentCount": 85,"hashtags": ["#outdoors"],"postedAt": "2025-01-15T12:00:00.000Z","observedAt": "2025-01-15T12:05:00.000Z"}
The default dataset is available as JSON, CSV, Excel, XML, RSS, or HTML through Apify.
How much does it cost to discover Snapchat Spotlight videos?
The Actor uses pay-per-event pricing. A run has a small one-time start charge and then charges only for useful Spotlight rows saved to the dataset. Rejected, duplicate, filtered, or failed records are not item-charged.
At the current BRONZE price of $0.0022 per saved video plus a $0.004 run start, typical examples are:
| Saved videos | BRONZE calculation |
|---|---|
| 1 | $0.004 start + 1 × $0.0022 |
| 10 | $0.004 start + 10 × $0.0022 |
| 25 | $0.004 start + 25 × $0.0022 |
| 100 explicit URLs | $0.004 start + 100 × $0.0022 |
Higher subscription tiers receive lower item prices. Apify displays the applicable tier before you start a run. Infrastructure usage may be shown separately according to your Apify plan and the active pricing configuration.
Recurring monitoring workflow
A dataset row is an observation, not a permanent statement about ranking or engagement. For recurring monitoring:
- Create an Apify Task with discovery input.
- Schedule it at an interval suitable for your research.
- Store
snapId,sourceRank, engagement fields, andobservedAt. - Compare snapshots in your warehouse or automation tool.
- Treat missing records as absent from that observation, not deleted from Snapchat.
Example high-view filter:
{"maxItems": 25,"minViewCount": 1000000}
Export to spreadsheets and data pipelines
Download the Dataset tab as CSV or Excel for manual analysis. For automated work, use the dataset API or connect Apify integrations.
Useful patterns include:
- append every scheduled run to a warehouse;
- deduplicate one-time research by
snapId; - preserve multiple rows per
snapIdfor time-series analysis; - notify a team when a new observed row crosses an engagement threshold;
- join
creatorUsernameto your authorized creator research tables.
Run with the Apify API
Replace YOUR_TOKEN with an Apify API token.
cURL
curl -X POST \"https://api.apify.com/v2/acts/automation-lab~snapchat-spotlight-discovery-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"maxItems":10,"minViewCount":0}'
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/snapchat-spotlight-discovery-scraper').call({maxItems: 10,minViewCount: 0,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("automation-lab/snapchat-spotlight-discovery-scraper").call(run_input={"maxItems": 10, "minViewCount": 0})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(items)
Use with MCP and AI assistants
Add the Actor to Claude Code through Apify MCP:
claude mcp add --transport http apify \"https://mcp.apify.com?tools=automation-lab/snapchat-spotlight-discovery-scraper"
Claude Desktop setup
Use this MCP configuration in Claude Desktop:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com?tools=automation-lab/snapchat-spotlight-discovery-scraper"}}}
Cursor setup
Add the same HTTP MCP URL in Cursor Settings → Tools & MCP → New MCP Server.
VS Code setup
Add the same HTTP MCP server to your workspace MCP configuration, then enable the automation-lab/snapchat-spotlight-discovery-scraper tool.
Example prompts:
- “Browse 10 public Snapchat Spotlight videos and summarize the exposed topics.”
- “Extract this public Spotlight URL and return its creator and engagement fields.”
- “Find videos in the current observation with at least one million views.”
AI-generated interpretations should retain the source URL and observation time.
Limits and data freshness
- The discovery mode represents the public web feed returned for that run.
- It is not a complete historical archive or a promise of global coverage.
- Feed order and selection can vary by time and Snapchat's own ranking.
- The Actor currently performs one public discovery-page request and does not paginate beyond the records embedded there.
- Explicit URLs must remain anonymously reachable.
- Media URLs are references and may expire or change.
- Engagement values can change after collection.
- Titles, captions, creator identity, and counts can be absent.
- The Actor does not download or store media files.
- The Actor does not scrape comments, transcripts, profiles, private stories, or login-only data.
Reliability and failure behavior
Transient transport failures are retried a bounded number of times. An invalid input URL fails validation before a request is made. With several explicit URLs, one unavailable target is isolated while other valid targets can still produce rows. If every target fails, the Actor run fails with a diagnostic message.
A valid discovery response with no rows passing minViewCount is a successful zero-result run.
An unrecognized Snapchat page structure is an error rather than a silent empty result.
For troubleshooting, first retry with minViewCount set to 0 and a small maxItems.
Responsible and legal use
Use the Actor only for lawful collection of anonymously public information. Respect Snapchat's terms, intellectual-property rights, privacy rights, and applicable laws. Do not use the output to harass people, infer sensitive traits, build prohibited surveillance, or republish media without permission.
You are responsible for your input, retention policy, downstream use, and any required notices or consent. Public availability does not remove copyright or privacy obligations.
FAQ
Does this Actor require a Snapchat account?
No. It reads anonymously available public web pages.
Can it discover videos without known URLs?
Yes.
Leave startUrls empty to use the current public Spotlight discovery feed.
Can it process a known Spotlight URL?
Yes.
Supply one or more public Spotlight URLs in startUrls.
Why did I receive fewer rows than maxItems?
The public feed may expose fewer records, your view filter may reject records, or a supplied URL may no longer be public.
maxItems is a ceiling, not a guaranteed count.
Why are some fields null?
Snapchat does not expose every creator, caption, title, metric, or timestamp on every public record. Null values preserve that distinction.
Does mediaUrl mean the video is stored in my run?
No. It is the public CDN reference exposed by Snapchat at observation time.
How do I monitor changes?
Schedule an Apify Task and compare snapId, engagement fields, sourceRank, and observedAt between run datasets.
What if Snapchat changes its page?
The Actor validates the structured feed. A structural change should produce a clear failed run rather than incorrect rows; check the run log and retry later.
Related automation-lab Actors
- Snapchat Public Video Downloader downloads media from supplied public Spotlight URLs when you need files rather than discovery metadata.
- Snapchat Public Profile Metadata Scraper returns account-level public profile fields.
- Snapchat Public Profile Stories returns currently visible Story snaps from supplied public profiles.
Choose this Actor when the job begins with Spotlight discovery or normalized Spotlight video observations.