Snapchat Discover Scraper avatar

Snapchat Discover Scraper

Pricing

Pay per event

Go to Apify Store
Snapchat Discover Scraper

Snapchat Discover Scraper

Extract public Snapchat Discover publishers, stories, snap media URLs, thumbnails, and publish metadata from Discover pages.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Categories

Share

Extract public Snapchat Discover publishers, stories, snap media URLs, thumbnails, and publish metadata from Snapchat Discover pages.

Use this actor when you need a repeatable Snapchat Discover extractor for content intelligence, publisher monitoring, media research, or social trend workflows.

What does Snapchat Discover Scraper do?

Snapchat Discover Scraper loads public Snapchat Discover pages and extracts snap-level records from the embedded public page data.

It is built for public Discover surfaces such as:

  • https://www.snapchat.com/discover
  • public publisher pages
  • public story or show pages that expose the same Snapchat page data

Each saved row represents one snap and includes story and publisher context.

Who is it for?

This scraper is useful for teams that monitor short-form social content.

  • 🧠 Social intelligence teams tracking publisher activity
  • 📺 Media analysts watching Discover shows and story inventory
  • 📈 Brand teams comparing public Snapchat content formats
  • 🗞️ Newsrooms monitoring public entertainment and lifestyle stories
  • 🧪 Researchers collecting repeatable public metadata snapshots
  • 🧰 Data teams feeding BI dashboards or archives

Why use this actor?

Snapchat Discover pages are dynamic and nested.

This actor normalizes the public page payload into clean dataset rows so you do not have to reverse-engineer the Next.js and Apollo cache yourself.

Benefits:

  • HTTP-first extraction without a browser by default
  • One row per snap for easy exports
  • Publisher and story context on every row
  • Media, preview, thumbnail, and profile image URLs when present
  • Conservative defaults for cheap smoke runs
  • Optional proxy support for challenged requests

What data can you extract?

The dataset contains snap-level records enriched with story and publisher metadata.

FieldDescription
publisherNamePublic publisher or creator display name
publisherUsernameSnapchat username when present
publisherBioPublic bio text when present
storyTitleDiscover story or episode title
storyTypeSnapchat story type from the public payload
storyPublishedAtPublished timestamp converted to ISO format
storyThumbnailUrlStory thumbnail URL
snapMediaTypeSnap media type, such as video or image
snapMediaUrlPublic media URL when exposed
snapPreviewUrlPreview or thumbnail URL
snapUrlPublic snap URL candidate when exposed
scrapedAtTimestamp when the actor saved the row

How much does it cost to scrape Snapchat Discover?

This actor uses pay-per-event pricing.

You pay a small start fee plus a per-record event for each snap row saved.

The default input saves up to 20 snap records, which is suitable for a first run and matches the platform default.

Actual cost depends on:

  • number of snap records requested
  • whether proxy mode is enabled
  • page response size
  • Apify account pricing tier

Input options

The actor accepts a small set of inputs.

startUrls

Optional list of Snapchat URLs.

If you leave this empty, the actor scrapes:

https://www.snapchat.com/discover

Use this field when you want to monitor a specific public publisher, story, or show page.

maxItems

Maximum number of snap records to save.

Use a low number for testing and a higher number for monitoring runs.

useProxy

Enable Apify Proxy only if your run is challenged or blocked.

Direct HTTP mode is cheaper and is the default.

proxyGroups

Optional Apify Proxy group names used only when proxy mode is enabled.

For example, advanced users may test RESIDENTIAL if Snapchat challenges their traffic.

Example input

{
"startUrls": [
{ "url": "https://www.snapchat.com/discover" }
],
"maxItems": 20,
"useProxy": false
}

Output example

{
"recordType": "snap",
"sourceUrl": "https://www.snapchat.com/discover",
"storyId": "63123326193664",
"storyType": "PremiumPublisherStory",
"storyTitle": "White Diamond Hairs",
"storyUrl": "https://www.snapchat.com/add/interiors",
"storyThumbnailUrl": "https://cf-st.sc-cdn.net/...",
"storyPublishedAt": "2026-07-04T01:12:00.000Z",
"publisherUsername": "interiors",
"publisherName": "Interiors",
"snapIndex": 1,
"snapMediaType": "VIDEO",
"snapMediaUrl": "https://cf-st.sc-cdn.net/...",
"snapPreviewUrl": "https://cf-st.sc-cdn.net/...",
"scrapedAt": "2026-07-04T02:30:00.000Z"
}

How to scrape Snapchat Discover

  1. Open Snapchat Discover Scraper on Apify.
  2. Keep the default Discover URL or add your own public Snapchat URLs.
  3. Choose the maximum number of snap records.
  4. Leave proxy mode disabled for the first run.
  5. Start the actor.
  6. Download results as JSON, CSV, Excel, XML, or RSS from the dataset.

Tips for reliable runs

  • Start with the default Discover URL.
  • Keep maxItems low while testing.
  • Increase maxItems only after you confirm the output shape.
  • Enable proxy mode only when you see challenge or blocked-response errors.
  • Use scheduled runs to capture snapshots over time.
  • Store sourceUrl and scrapedAt in your warehouse for historical comparisons.

Common use cases

Track Discover publishers

Monitor which publishers appear in public Discover inventory and how their media changes over time.

Build a media URL archive

Save public media and preview URLs for downstream analysis or quality control.

Compare story formats

Use storyType, snapMediaType, thumbnails, and publisher names to compare content formats.

Create a social intelligence feed

Schedule daily runs and export the dataset to BI tools or a database.

Integrations

You can connect the actor output to many Apify and external tools.

  • Google Sheets exports for lightweight editorial tracking
  • Webhooks for run-complete notifications
  • Make or Zapier flows for no-code automation
  • BigQuery, Snowflake, or PostgreSQL pipelines
  • Internal dashboards that group by publisher or story
  • Slack alerts when a tracked publisher appears

API usage

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/snapchat-discover-scraper').call({
startUrls: [{ url: 'https://www.snapchat.com/discover' }],
maxItems: 20,
});
console.log(run.defaultDatasetId);

Python

from apify_client import ApifyClient
client = ApifyClient('MY-APIFY-TOKEN')
run = client.actor('automation-lab/snapchat-discover-scraper').call(run_input={
'startUrls': [{'url': 'https://www.snapchat.com/discover'}],
'maxItems': 20,
})
print(run['defaultDatasetId'])

cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~snapchat-discover-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startUrls":[{"url":"https://www.snapchat.com/discover"}],"maxItems":20}'

MCP usage

Use this actor through Apify MCP when you want Claude or another MCP client to run Snapchat Discover extraction.

MCP server URL:

https://mcp.apify.com/?tools=automation-lab/snapchat-discover-scraper

Claude Code setup:

$claude mcp add apify-snapchat-discover --transport http "https://mcp.apify.com/?tools=automation-lab/snapchat-discover-scraper"

Claude Desktop JSON config:

{
"mcpServers": {
"apify-snapchat-discover": {
"url": "https://mcp.apify.com/?tools=automation-lab/snapchat-discover-scraper"
}
}
}

Example prompts:

  • "Run the Snapchat Discover scraper for the default Discover page and summarize the publishers."
  • "Extract 20 public Snapchat Discover snap records and group them by publisher."
  • "Monitor this Snapchat publisher URL and tell me which story titles changed."

Data quality notes

Snapchat controls which fields are present in each public payload.

Some rows may not contain every URL or title.

The actor keeps missing fields as null rather than guessing.

This makes exports easier to validate and safer for automated pipelines.

Legality and privacy

This actor is designed for public Snapchat pages only.

It does not log in, bypass private accounts, or access non-public user data.

You are responsible for using the extracted data in compliance with applicable laws, Snapchat terms, and your internal policies.

If you are unsure whether your use case is allowed, consult legal counsel before running large-scale collection.

FAQ

Does this actor require a Snapchat login?

No. It only extracts data from public Snapchat pages that are reachable without logging in.

Can I scrape private Snapchat accounts?

No. This actor is for public Discover and publisher pages only.

Troubleshooting

The run says no records were extracted

Snapchat may have changed the page payload, returned a challenge page, or the input URL may not expose Discover data.

Try the default Discover URL first.

If direct HTTP is challenged, enable proxy mode and run a small test.

Some media URLs look temporary

Snapchat CDN URLs can change or expire.

Store the scrapedAt timestamp and refresh your dataset on a schedule if you need current links.

I only need publishers, not every snap

Export the dataset and group by publisherUsername or publisherName.

The actor emits snap rows so media intelligence workflows still have complete context.

Other Automation Lab actors can complement this dataset:

Changelog

0.1

Initial version with HTTP-first extraction from public Snapchat Discover page payloads.

Support

If the actor stops extracting records, open an issue with:

  • input JSON
  • run ID
  • whether proxy mode was enabled
  • sample URL that failed

This helps reproduce page-shape changes quickly.