Sephora Scraper - Products, Reviews & Prices avatar

Sephora Scraper - Products, Reviews & Prices

Pricing

from $4.99 / 1,000 dataset items

Go to Apify Store
Sephora Scraper - Products, Reviews & Prices

Sephora Scraper - Products, Reviews & Prices

Scrape Sephora products, prices, ratings, reviews and brands. Search by keyword, enrich product details and check store availability. Supports US collection and selected international markets. Export structured JSON or CSV.

Pricing

from $4.99 / 1,000 dataset items

Rating

0.0

(0)

Developer

Fetch Finch

Fetch Finch

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

1

Monthly active users

8 days ago

Last modified

Share

No user API key required Pricing Export Public tasks Product data

Search and filter a maintained Sephora catalog snapshot. The Actor is fully offline at runtime: it does not call RapidAPI or Sephora, and customers do not need to provide an API key. Export structured JSON or CSV, and schedule recurring runs through Apify.

What you can collect

  • Product catalog records with product IDs, SKUs, names, brands, prices, ratings, review counts, images, URLs, categories, and product badges.
  • Full-text product discovery using searches such as perfume, vitamin C serum, or Rare Beauty.
  • The Sephora brand directory with brand IDs, names, descriptions, and URLs.
  • Product records selected by ID from the maintained snapshot.
  • Aggregate ratings and review counts for selected products. Individual review text is not included.
  • Online availability flags captured in the catalog snapshot. Physical store inventory is not included.
  • Explicit summaries for unsupported international requests; the current snapshot is US-only.

Quick start

For a broad product catalog, use Catalog and brands mode:

{
"mode": "catalog",
"catalogScope": "core",
"maxCatalogPages": 10
}

For keyword discovery, use Search products mode:

{
"mode": "search",
"searchQueries": ["perfume"],
"maxSearchPages": 25
}

For known products, use Product details mode to return matching snapshot records:

{
"mode": "details",
"detailProductIds": ["P442563", "P123456"],
"maxDetails": 2
}

Ready-to-run examples

Try a preconfigured task to see the actor in action. Each example opens with focused inputs and the most relevant Dataset view:

Run modes

Set emitChangesOnly to true when you need an incremental feed. The actor then outputs only product and brand records whose meaningful data changed since the previous run, while still returning the run summary. Leave it off to receive a complete snapshot.

The catalog is refreshed by the separate collector. The Actor reads the published snapshot on each run, so cache-store settings are retained only for compatibility with existing tasks.

Catalog and brands

Return products from the published catalog snapshot and include the brand directory when using the combined task.

Set catalogScope to:

  • core for the primary departments: Makeup, Skincare, Hair, Fragrance, Bath & Body, Men, and Tools & Brushes.
  • all-roots to include all available root categories.

The snapshot already contains the collected catalog; maxCatalogPages is retained for compatibility and does not trigger crawling.

Brands only

Use mode: "brands" to export the complete brand directory without collecting product listings.

{
"mode": "brands"
}

Search products

Use one or more free-text queries. Search results are deduplicated by product ID when queries overlap.

{
"mode": "search",
"searchQueries": ["vitamin C serum", "SPF 50", "Rare Beauty"],
"maxSearchPages": 10
}

maxSearchPages applies to each search term. Results stop automatically when all available pages have been collected.

Product details

Provide known product IDs in detailProductIds to return specific products from the snapshot. This mode does not make detail API requests or maintain a live enrichment queue.

{
"mode": "details",
"detailProductIds": ["P442563"],
"maxDetails": 1
}

Full

Use mode: "full" for products, brands, and any compatible offline metadata records in one run.

Reviews and store availability

Return aggregate review metadata for selected products:

{
"mode": "details",
"detailProductIds": ["P442563"],
"maxDetails": 1,
"includeReviews": true,
"reviewProductIds": ["P442563"],
"reviewPageSize": 20
}

The output contains the catalog rating and review count. Individual review text is not available in the snapshot.

Return captured online availability flags for selected products:

{
"mode": "details",
"detailProductIds": ["P442563"],
"maxDetails": 1,
"includeAvailability": true,
"availabilityProductIds": ["P442563"],
"locations": [{ "latitude": 40.7128, "longitude": -74.0060, "radius": 25 }]
}

Location fields are retained for compatibility with the original task, but the snapshot does not contain store-level inventory.

International markets

International inputs are retained for task compatibility. The current maintained snapshot is US-only, so these runs complete with an explicit unavailable summary and make no external requests.

Country / marketCatalog or keyword searchProduct detailsBrandsReview metadataOnline availability
United StatesYesYes, from snapshot fieldsYesAggregate rating/countCaptured online flags
Other marketsNoNoNoNoNo

International inputs are accepted for compatibility and produce an explicit unavailable summary; they do not make network requests.

Example EU product lookup:

{
"enableInternational": true,
"euLocales": ["fr-FR", "de-DE"],
"euProductIds": ["781301", "123456"]
}

Example EU search:

{
"enableInternational": true,
"euLocales": ["fr-FR"],
"euQueries": ["parfum"]
}

For Asia markets, use objects containing country and language:

{
"enableInternational": true,
"asiaMarkets": [
{ "country": "SG", "language": "en-SG" }
],
"asiaQueries": [
{ "country": "SG", "language": "en-SG", "query": "serum" }
]
}

Output

Every run writes structured records to the default Dataset. The Output tab includes dedicated views for:

  • Overview — a practical mixed view of the collected records.
  • Products — catalog, search, and enriched product records.
  • Brands — brand directory records.
  • Reviews — aggregate rating/count records when enabled.
  • Availability — online catalog availability flags when enabled.
  • Run summary — collection counts, request usage, and errors.

Common product fields include:

recordType, region, productId, skuId, brandName, displayName, productName, priceText, price, rating, reviewCount, heroImage, targetUrl, flags, categoryIds, listingPage, matchedQuery, and fetchedAt.

International requests do not emit product records because the maintained snapshot is US-only. Review and availability records clearly identify their offline/aggregate limitations.

Pricing

  • Dataset items: $4.99 per 1,000 rows ($0.00499 per row).
  • Actor start: $0.00005 per start event. Apify charges at least one event; the event count can increase with memory allocation.

The Dataset-item event applies to every row written to the default Dataset: product, brand, aggregate review, availability, and run-summary records are all billed at the same per-row rate. The start event is additional.

Example outputBillable Dataset rowsDataset-item charge, before start event
One product snapshot and the run summary2$0.00998
One product snapshot, its separately emitted enriched detail record, and the run summary3$0.01497
One aggregate review record and the run summary2$0.00998

The snapshot contains review totals, not individual review objects, so review mode emits at most one aggregate record per selected product.

Search results that overlap are deduplicated by product ID within that search run. Billing is still per emitted row, not per unique product across all work: in full mode a product can be emitted once from the catalog and again after detail enrichment, and both rows are charged. Repeated catalog runs are also billed unless emitChangesOnly suppresses unchanged product or brand records. The Actor always writes one run-summary row on a successful run, including when emitChangesOnly is enabled, and that row is billable.

Availability output is one row per selected product/location combination when online flags are present. It does not represent physical store inventory. Brand output is one row per brand.

Scheduling and integrations

Save a configuration as an Apify Task for repeated use, or attach it to an Apify Schedule. The Dataset can be exported directly or connected to downstream workflows through the Apify API and integrations.

Example CLI call:

apify call fetchfinch/sephora-scraper \
--input '{"mode":"search","searchQueries":["perfume"],"maxSearchPages":5}'

Example API input:

{
"mode": "catalog",
"catalogScope": "core",
"maxCatalogPages": 10,
"maxDetails": 4
}