ScavioScavio
Pricing
Tools
Sign InsGet Startedg
Blog
Sephora6 min readNov 2, 2026

How to Get Sephora Product Data, Prices and Shades Through an API

Use Scavio's Sephora API: search returns 60 products a page with price, rating and sale flags, and one product call prices every shade and size for 1 credit.

Scavio Team

Nov 2, 2026

Try the Sephora API free
scavio
Ecommerce / Price monitoring
Sephora

To get Sephora product data programmatically, use Scavio's Sephora API. POST /api/v1/sephora/search returns 60 products a page with price, list and sale price, rating, review count and bestseller and sale flags; /category pages every product in a sephora.com/shop/ category; and /product returns every shade and size of one product as its own sku with price, stock flags and ingredients, plus the rating and Sephora's review themes. Every call costs 1 credit, about $0.002 on the Growth plan billed yearly.

Sephora has no public developer API, and its product pages show one shade or size at a time, so reading prices across a catalogue is the work these three endpoints take off your hands.

Step 1: Search products

Bash
curl -s https://api.scavio.dev/api/v1/sephora/search \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "lipstick", "sort": "best_selling", "zip": "10001"}'

On November 2, 2026 this returned 60 products of 169 (3 pages) in one call. The top row, as captured (image URL trimmed):

JSON
{
  "position": 1,
  "product_id": "P510799",
  "sku_id": "2764421",
  "brand": "MAC Cosmetics",
  "name": "M·A·Cximal Silky Matte 12HR Wear Lipstick",
  "url": "https://www.sephora.com/product/mac-cosmetics-m-a-cximal-silky-matte-lipstick-P510799?skuId=2764421",
  "price": 16,
  "list_price": 16,
  "sale_price": null,
  "value_price": null,
  "price_range": { "min": 16, "max": 25 },
  "price_text": "$16.00 - $25.00",
  "rating": 4.5879,
  "review_count": 774,
  "more_colors": 27,
  "on_sale": false,
  "sale_scope": null,
  "is_bestseller": true,
  "is_new": false,
  "is_sephora_exclusive": false,
  "is_online_only": false,
  "is_limited_edition": false,
  "sponsored": false,
  "same_day_eligible": true
}

sort takes relevance, best_selling, rating, price_low, price_high or newest, and page goes up to 100. The zip fills same_day_eligible: 56 of these 60 lipsticks could be delivered same day to ZIP 10001. It does not change prices. The response also carries category facets (Makeup, 168 products; Mini Size, 7) and related searches such as "lip gloss" and "lip liner".

Note the price: price is 16 because price_text is a range. The $16 item is a mini; full-size shades cost $25.

Step 2: Page a whole category

Bash
curl -s https://api.scavio.dev/api/v1/sephora/category \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category": "face-serum"}'

Pass the name from any sephora.com/shop/ URL, or the URL itself. "face-serum" returned the category record, its parent and breadcrumbs, then 60 products in the search shape:

JSON
{
  "category": {
    "category_id": "cat60103",
    "name": "Face Serums",
    "seo_name": "face-serum",
    "url": "https://www.sephora.com/shop/face-serum",
    "page_type": "NthCategory"
  },
  "page": 1,
  "total_results": 516,
  "total_pages": 9,
  "count": 60,
  "parent_category": {
    "category_id": "cat1230035",
    "name": "Treatments",
    "url": "https://www.sephora.com/shop/facial-treatments"
  }
}

The first product was Caudalie Vinoperfect Brightening Dark Spot Serum at "$82.00 - $119.00", rated 4.2655 from 4,275 reviews. Nine calls cover all 516 serums.

Step 3: Price every shade and size

Bash
curl -s https://api.scavio.dev/api/v1/sephora/product \
  -H "Authorization: Bearer $SCAVIO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://www.sephora.com/product/libre-eau-de-parfum-P448102"}'

Pass the url from a search or category row (it answers faster) or a product_id like P448102. YSL Libre Eau de Parfum returned 6 skus. Each one, as captured and trimmed to its price and stock fields:

JSON
[
  { "sku_id": "2249720", "size": "0.33 oz / 10 mL", "price": 38, "list_price": 38, "on_sale": false, "in_stock": true, "pickup_eligible": true, "same_day_eligible": true },
  { "sku_id": "2249779", "size": "1 oz / 30 mL", "price": 110, "list_price": 110, "on_sale": false, "in_stock": true, "pickup_eligible": true, "same_day_eligible": true },
  { "sku_id": "2249738", "size": "1.6 oz/50 mL", "price": 150, "list_price": 150, "on_sale": false, "in_stock": true, "pickup_eligible": true, "same_day_eligible": true },
  { "sku_id": "2249746", "size": "3.04 oz / 90 mL", "price": 185, "list_price": 185, "on_sale": false, "in_stock": true, "pickup_eligible": true, "same_day_eligible": true },
  { "sku_id": "2724417", "size": "3.4 oz / 100 mL", "price": 140, "list_price": 140, "on_sale": false, "in_stock": true, "pickup_eligible": false, "same_day_eligible": false },
  { "sku_id": "2371888", "size": "5.07 oz / 147 mL", "price": 225, "list_price": 225, "on_sale": false, "in_stock": true, "pickup_eligible": true, "same_day_eligible": true }
]

The product's own price_min and price_max were 38 and 225, which is all a listing shows. The skus show the rest: $115.15 an ounce for the travel spray against $44.38 for the 5.07 oz bottle, and a 3.4 oz bottle at $140 that cost less than the 3.04 oz at $185 and was not eligible for pickup or same-day delivery. Each sku also carries only_few_left, sale_price, variation_description, highlights, the full ingredients text, images and a swatch. On a lipstick the skus are shades: a MAC lipstick returned 31, from its 0.12 oz shades at $25 to 0.06 oz minis at $16.

Step 4: Read what reviewers say

The same product response carries the review summary, so there is no second call:

JSON
{
  "rating": 4.5309,
  "review_count": 4543,
  "loves_count": 437140,
  "review_summary": "Customers often find the personal appeal and scent of this fragrance to be pleasant, and the bottle design receives favorable remarks. While some mention that personal preference can differ, and there are occasional comments about strength and longevity, these points appear less frequently.",
  "review_sentiments": [
    { "sentiment": "Bottle", "type": "pros", "count": 70 },
    { "sentiment": "Longevity", "type": "cons", "count": 5 },
    { "sentiment": "Personal Appeal", "type": "pros", "count": 146 },
    { "sentiment": "Personal Preference", "type": "cons", "count": 18 },
    { "sentiment": "Scent", "type": "pros", "count": 82 },
    { "sentiment": "Strength", "type": "cons", "count": 9 }
  ]
}

These are Sephora's own summary and theme counts. Individual review text is not returned, so if you need review bodies, see the options in the best Sephora product data APIs.

All three endpoints

EndpointWhat it returnsCredits
/api/v1/sephora/search60 products a page with price, list and sale price, price range, rating, review count and flags; category facets and related searches; same-day eligibility with a ZIP1
/api/v1/sephora/categoryEvery product in a sephora.com/shop/ category, 60 a page, plus the total, parent category, subcategories and breadcrumbs1
/api/v1/sephora/productEvery shade or size with price, stock flags and ingredients; rating, review count, loves, review summary and pro/con themes1

Responses are live from sephora.com (US) at the moment you call, in dollars, and each carries fetched_at. A product that does not exist returns 404 and is not charged. To find every product that lists one ingredient, page a category and filter the skus, as in searching Sephora by ingredient.

Getting started

  1. Sign up at dashboard.scavio.dev/sign-up: 50 free credits, no card required.
  2. Copy your API key from the dashboard.
  3. Send a POST to /api/v1/sephora/search with your key in the Authorization header.

Try the Sephora API free in the playground first, or call it from Claude and other agents through the MCP server.

Reference: Sephora API overview · search · category · product

Frequently asked questions

Does Sephora have an API for product data?

Not a public one. Sephora's developer portal serves its own teams and approved partners. Scavio's Sephora API returns the public sephora.com (US) catalogue as JSON with one API key: keyword search, category listings and product detail with every shade and size priced.

How do I get the price of each Sephora shade or size?

Call /api/v1/sephora/product with the product's url or product_id. Each shade or size is an entry in skus[] with its own price, list_price, sale_price and on_sale. The product itself only carries price_min and price_max, and a search row's price is the low end of the range, usually the smallest size.

Can I get Sephora ingredients through an API?

Yes. Every sku in a Scavio product response carries its full ingredients text, along with highlights, size, swatch and images. Ingredient lists can differ between sizes of the same product, so read the sku you are pricing rather than the first one.

How much does Sephora data cost with Scavio?

Every Sephora endpoint costs 1 credit: about $0.002 on the Growth plan billed yearly and $0.0043 on the $30 monthly Project plan. A search or category call returns up to 60 products, and a product call returns every shade and size. New accounts get 50 free credits with no card.

Does the API return Sephora reviews?

It returns the rating, review count and loves count, Sephora's written summary of its reviews, and the pro and con themes with counts, such as Personal Appeal (146 pros) and Strength (9 cons) for YSL Libre on November 2, 2026. It does not return individual review text.

Sephora data as JSON

  • Search, categories and product detail
  • Every shade and size with its own price
  • 1 credit a call, no Sephora account
Try the Sephora API free

50 free credits, no credit card

On this page

  1. Step 1: Search products
  2. Step 2: Page a whole category
  3. Step 3: Price every shade and size
  4. Step 4: Read what reviewers say

Related articles

View all
  • scavio
    Comparison / Ecommerce
    Sephora
    6 Best Sephora Product Data APIs in 2026: Scavio Prices Every Shade and Size in One Call
  • scavio
    Ecommerce / Price monitoring
    Ulta
    How to Get Ulta Beauty Product Data, Prices and Store Stock Through an API
ScavioScavio

One scraper API for every social, search, e-commerce and real estate platform. Built for AI agents.

Product

  • Features
  • Pricing
  • Dashboard
  • Affiliates

Developers

  • Documentation
  • API Reference
  • Quickstart
  • MCP Integration
  • Python SDK

Alternatives

  • Tavily Alternative
  • SerpAPI Alternative
  • Firecrawl Alternative
  • Exa Alternative
  • Serper Alternative
  • Tavily vs Scavio
  • SerpAPI vs Scavio
  • All alternatives
  • Compare Scavio vs alternatives

Search APIs

  • Google Search API
  • Amazon Product API
  • YouTube API
  • Reddit API
  • Walmart Product API
  • TikTok API
  • Instagram API

Tools

  • All Tools

© 2026 Scavio. All rights reserved.

Featured on TAAFT
Terms of ServicePrivacy Policy