Snapchat Public Stories Spotlight Scraper| No Login | No Cookie
Pricing
from $2.50 / 1,000 results
Snapchat Public Stories Spotlight Scraper| No Login | No Cookie
Turn public Snapchat profiles into a clean dataset of Stories, Highlights, and Spotlight — no login, no downloads.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
REXREUS D.O
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Snapchat Stories Spotlight Scraper
Turn public Snapchat profiles into a clean dataset of Stories, Highlights, and Spotlight — no login, no downloads.
Public pages only · one row per snap · missing values stay null
Why this Actor?
| Feature | What you get |
|---|---|
| Stories + Highlights + Spotlight | One Actor, one dataset. Filter with sources if you only need one surface. |
| Public profiles | Paste handles like fcbarcelona or nasa. No cookies, no friends-only content. |
| Clean export | Title, timestamp, media URLs, Spotlight views/shares, status. CSV stays flat. Missing values stay null. |
| Fast runs | One public request per profile. Two brands typically finish in a few seconds. |
| Hard caps | maxItems and maxItemsPerUser stop a run before it wanders. |
| Incremental re-runs | postedAfter drops older timestamps. Missing timestamps are kept, never invented. |
| Honest failures | SUCCESS, PARTIAL, NOT_FOUND, BLOCKED, ERROR on the row. Empty is empty — not a fake snap. |
| No media download | Public CDN URL strings only. Video bytes stay on Snapchat. |
Quick start
- Open Snapchat Stories Spotlight Scraper on Apify Console and click Start.
- Add public usernames or
https://www.snapchat.com/@userURLs. - Download the dataset as JSON, CSV, or Excel.
{"usernames": ["fcbarcelona", "nasa"],"sources": ["story", "highlight", "spotlight"],"maxItems": 50,"maxItemsPerUser": 20,"includeEngagement": true}
How it works
Public handles → public Snapchat pages → one dataset row per Story, Highlight, or Spotlight
Stories expire. When a live Story is empty, Highlights and Spotlight still export.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
usernames | string[] | one of usernames / startUrls | [] | Public handles. Converted only to https://www.snapchat.com/@user. |
startUrls | string[] / {url} | one of usernames / startUrls | [] | Public profile or Spotlight URLs. |
sources | story | highlight | spotlight[] | no | all three | Which surfaces to collect. |
maxItems | integer | no | 50 | Run-wide cap (1–200). |
maxItemsPerUser | integer | no | 20 | Per-username cap (1–50). |
postedAfter | ISO-8601 string | no | — | Keep items at or after this time. Missing timestamps are kept. |
includeEngagement | boolean | no | true | Copy Spotlight view/share/comment/boost/recommend counts. Comment bodies are never collected. |
Rejected: search, feed, explore, login, private, or non-HTTPS URLs.
Output
One row per Story snap, Highlight snap, or Spotlight item. Profile identity is copied onto every row so CSV export stays useful.
{"contentType": "spotlight","canonicalUrl": "https://www.snapchat.com/@fcbarcelona/spotlight/W7_EDlXWTBiXAEEniNoMPwAAYZGdqcHJkbGVoAaC_PXEQAaC_PWwoAAAAAw","username": "fcbarcelona","displayName": "FC Barcelona","snapId": "W7_EDlXWTBiXAEEniNoMPwAAYZGdqcHJkbGVoAaC_PXEQAaC_PWwoAAAAAw","highlightId": null,"spotlightId": "W7_EDlXWTBiXAEEniNoMPwAAYZGdqcHJkbGVoAaC_PXEQAaC_PWwoAAAAAw","storyId": "W7_EDlXWTBiXAEEniNoMPwAAYZGdqcHJkbGVoAaC_PXEQAaC_PWwoAAAAAw","title": "HISTORIC START","description": "#fcbarcelona","llmTitle": "FC Barcelona Team Huddle Moment | Estrella Damm 'Good Day' Feature","timestamp": "2026-09-20T14:34:28.776Z","durationMs": 10070,"width": 540,"height": 960,"mediaType": "VIDEO","mediaUrl": "https://bolt-gcdn.sc-cdn.net/bp/TVnFSjAhZtGteRP7CPXgL.27.IRZXSOY","mediaPreviewUrl": "https://bolt-gcdn.sc-cdn.net/bp/TVnFSjAhZtGteRP7CPXgL.256.IRZXSOY","thumbnailUrl": "https://bolt-gcdn.sc-cdn.net/bp/TVnFSjAhZtGteRP7CPXgL.256.IRZXSOY","viewCount": 7298,"shareCount": 150,"commentCount": 16,"boostCount": 885,"recommendCount": 115,"hashtags": ["#fcbarcelona"],"status": "SUCCESS","observedAt": "2026-09-21T20:17:06.682Z","httpStatus": 200}
Media URLs expire. Recording a URL is not a download.
| Field | Type | Description |
|---|---|---|
contentType | string | story, highlight, or spotlight. |
canonicalUrl | string | Public page URL. |
username | string | Public handle. |
displayName | string | null | Public display name. |
snapId | string | null | Story or Highlight snap id. |
highlightId | string | null | Highlight group id. |
spotlightId | string | null | Spotlight id. |
storyId | string | null | Parent story id. |
title | string | null | Title when Snap publishes one. |
description | string | null | Description when Snap publishes one. |
llmTitle | string | null | Caption string from Snapchat, not generated here. |
timestamp | string | null | ISO timestamp. |
durationMs | integer | null | Duration in milliseconds (common on Spotlight). |
width / height | integer | null | Pixel size when Snap sends it. |
mediaType | string | null | IMAGE or VIDEO when observed. |
mediaUrl | string | null | Public CDN URL string. Never downloaded. |
mediaPreviewUrl | string | null | Public preview URL string. |
thumbnailUrl | string | null | Public thumbnail URL string. |
viewCount | integer | null | Spotlight views. Stories/Highlights usually null. |
shareCount | integer | null | Spotlight shares. |
commentCount | integer | null | Spotlight comment count only. |
boostCount | integer | null | Spotlight boosts. |
recommendCount | integer | null | Spotlight recommends. |
hashtags | string[] | null | Observed hashtags. |
status | string | SUCCESS | PARTIAL | NOT_FOUND | BLOCKED | ERROR. |
observedAt | string | When this Actor saw the page. |
httpStatus | integer | HTTP status of the public request. |
Story and Highlight rows often leave duration, size, and engagement as null because Snap does not publish those fields there. Spotlight usually fills them.
Cost, limits, proxy
- Memory: 512 MB default, 1024 MB max.
- Concurrency: one profile at a time, about 2 seconds between requests.
- Proxy: none. Direct public HTTPS.
- Expected runtime: 2 profiles in a few seconds. ~10 profiles under a minute. ~100 profiles several minutes.
- Platform compute for 10 profiles is typically well under $0.01. No residential proxy bill.
Recipes
One public profile
{"usernames": ["nasa"],"sources": ["story", "highlight", "spotlight"],"maxItems": 50,"maxItemsPerUser": 20,"includeEngagement": true}
Spotlight only, two brands
{"usernames": ["fcbarcelona", "nasa"],"sources": ["spotlight"],"maxItems": 40,"maxItemsPerUser": 20,"includeEngagement": true}
Highlights after a date
{"usernames": ["nasa"],"sources": ["highlight"],"postedAfter": "2026-01-01T00:00:00.000Z","maxItems": 50,"maxItemsPerUser": 20}
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
BLOCKED | The public page challenged the request (login wall, rate limit, or similar) | Use another public profile later. This Actor does not log in or rotate proxies. |
NOT_FOUND | Handle is gone or never public | Check the username. No fake snaps are invented. |
ERROR | The public page was not readable | Retry later. Check httpStatus on the row. |
| Empty live Story | Stories expire | Switch sources to highlight / spotlight, or wait for a new Story. |
| Engagement is null | Snap does not publish counts on Stories/Highlights | Use sources: ["spotlight"] when you need views. |
| Media URL fails later | CDN links expire | Expected. Save metadata, not the file. |
FAQ
Q: Does this log in or use my Snapchat account? A: No. Public pages only. No cookies, tokens, or session reuse.
Q: Can it scrape private or friends-only Snaps?
A: No. If the page is not public, the row is NOT_FOUND or BLOCKED.
Q: Why are some fields null? A: Snap does not send them on that surface. Null means absent, not a bug. Values are never invented.
Q: Will it download videos? A: No. It copies public media URL strings. It never downloads Snap CDN files.
Q: How much does a run cost? A: HTTP, 512 MB, no proxy. Two public profiles finish in a few seconds. Ten profiles are typically well under a cent of platform compute.
Q: Can I add a residential proxy or a browser?
A: Not in this Actor. Protection is classified as BLOCKED.
Q: Are comments included? A: Comment counts on Spotlight, when Snap publishes them. Comment bodies, transcripts, emails, phones, and location are never collected.
Q: Can I copy or republish this Actor? A: No. This Actor is proprietary. You may run it on Apify. You may not rebrand, republish, or claim authorship. See ./LICENSE.
Limitations
- Public data only. You are responsible for Snapchat Terms of Service and privacy law (GDPR/CCPA) for your use of the dataset.
- First page of each public profile. No unbounded crawl.
- No CAPTCHA solving, cookie harvesting, stealth, or proxy rotation.
- Media URLs expire. Do not treat them as permanent storage.
llmTitleis a Snapchat-emitted public string, not this Actor's AI.
Run it
Open the Actor on Apify Console and click Start.
License
Proprietary. All rights reserved. Copyright (c) 2026 REXREUS.
You may run this Actor on Apify. You may not copy, rebrand, republish, or claim this Actor as your own. See ./LICENSE.