Discover/Cult Beauty API
live

Cult Beauty APIcultbeauty.co.uk

Access Cult Beauty's product catalog, brand directory, customer reviews, sale items, and new arrivals via 8 structured API endpoints.

Endpoint health
verified 3d ago
get_product_details
search_products
get_product_reviews
get_category_products
get_new_arrivals
8/8 passing latest checkself-healing
Endpoints
8
Updated
26d ago

What is the Cult Beauty API?

The Cult Beauty API covers 8 endpoints for searching and browsing cultbeauty.co.uk — returning product titles, SKUs, pricing, ingredients, variant stock status, loyalty points, and Bazaarvoice-sourced customer reviews. get_product_details delivers the deepest single-product payload, including content blocks broken out by type (ingredients, synopsis, whyChoose), cross-sell recommendations, and an "other customers bought" array. Brand discovery, category browsing, sale listings, and new arrivals are each served by dedicated endpoints.

Try it
Page number to retrieve.
Search query string (e.g. 'elemis', 'vitamin c serum').
api.parse.bot/scraper/8544425d-fdf5-4620-bd73-9b4fa05a9c08/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/8544425d-fdf5-4620-bd73-9b4fa05a9c08/search_products?page=1&query=elemis' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace cultbeauty-co-uk-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

from parse_apis.cult_beauty_api import CultBeauty, Brand

client = CultBeauty()

# Search for products by keyword
for product in client.products.search(query="vitamin c serum", limit=5):
    print(product.title, product.sku)
    print(product.review_summary.average_score, product.review_summary.total)
    print(product.cheapest_variant.price.price.display_value)

# Browse new arrivals
for product in client.products.new_arrivals(limit=3):
    print(product.title, product.brand.name)

# Construct a brand and list its products
elemis = client.brand(slug="elemis")
for product in elemis.products(limit=3):
    print(product.title, product.cheapest_variant.in_stock)

# List all brands
for brand in client.brands.list(limit=10):
    print(brand.name, brand.slug)

# Fetch reviews via sub-resource navigation
for product in client.products.search(query="elemis cleanser", limit=1):
    for review in product.reviews.list(offset=0):
        print(review.user_nickname, review.rating, review.title)
All endpoints · 8 totalmissing one? ·

Full-text search over Cult Beauty's product catalog. Returns products matching the query with full details including pricing, variants, reviews summary, and content. Supports pagination via page number. Multi-word queries are handled via a GraphQL fallback when the HTML search page redirects.

Input
ParamTypeDescription
pageintegerPage number to retrieve.
queryrequiredstringSearch query string (e.g. 'elemis', 'vitamin c serum').
Response
{
  "type": "object",
  "fields": {
    "items": "array of product objects with title, sku, brand, price, images, reviews, variants, and content"
  },
  "sample": {
    "data": {
      "items": [
        {
          "sku": 17738286,
          "url": "/p/elemis-pro-collagen-body-cleansing-balm-75ml/17738286/",
          "brand": {
            "name": "Elemis"
          },
          "title": "Elemis Pro-Collagen Body Cleansing Balm 75ml",
          "reviews": {
            "total": 22,
            "averageScore": 5
          },
          "cheapestVariant": {
            "sku": 17738286,
            "price": {
              "rrp": {
                "amount": "18.0",
                "currency": "GBP",
                "displayValue": "£18.00"
              },
              "price": {
                "amount": "18.0",
                "currency": "GBP",
                "displayValue": "£18.00"
              }
            },
            "inStock": true
          }
        }
      ]
    },
    "status": "success"
  }
}

About the Cult Beauty API

Product Search and Detail

search_products accepts a query string and an optional page integer, returning an items array where each object carries title, sku, brand, price, images, reviews (summary), variants, and content. For richer per-product data, pass the full product page URL to get_product_details, which returns the same core fields plus a structured content array segmented into named blocks (ingredients, synopsis, whyChoose), a cheapestVariant object with pricing and loyalty points, and both recommendations and otherCustomersBought arrays for cross-sell analysis.

Browsing by Category and Brand

get_category_products takes a category_path string such as /c/skin-care/moisturisers/ and an optional page number, returning paginated product listings in the same items schema. Brand-level browsing starts with get_brand_list, which returns all brands as name, slug, and url — no parameters needed. Feed any brand_slug (e.g. charlotte-tilbury) into get_brand_products to get paginated results for that brand.

Reviews, Sale, and New Arrivals

get_product_reviews queries Bazaarvoice for a given product_id (the SKU integer from search or detail results), with limit and offset for pagination. Each review object includes Id, Rating, Title, ReviewText, UserNickname, SubmissionTime, and syndication metadata, alongside top-level TotalResults and HasErrors flags. get_sale_products returns on-sale items with both a discounted price and an rrp field for markdown calculations. get_new_arrivals surfaces Cult Beauty's "What's New" section with the same paginated items structure.

Reliability & maintenanceVerified

The Cult Beauty API is a managed, monitored endpoint for cultbeauty.co.uk — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when cultbeauty.co.uk changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official cultbeauty.co.uk API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
3d ago
Latest check
8/8 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track price drops on sale products by comparing price against rrp from get_sale_products.
  • Build an ingredient scanner by extracting the ingredients block from get_product_details content arrays.
  • Monitor new product launches by polling get_new_arrivals and diffing against a stored SKU list.
  • Aggregate Bazaarvoice review sentiment across a brand's catalog using get_product_reviews with SKUs from get_brand_products.
  • Construct a brand directory with product counts by combining get_brand_list and get_brand_products pagination totals.
  • Compare cross-sell recommendations across competing products using the recommendations and otherCustomersBought fields from get_product_details.
  • Build category-level price benchmarking tools using get_category_products with paths like /c/make-up/lips/.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Cult Beauty have an official developer API?+
Cult Beauty does not publish a public developer API or documented data feed. This Parse API provides structured access to the product catalog, brand directory, reviews, and sale listings as a substitute for direct data access.
What does get_product_reviews return, and how do I paginate through all reviews for a product?+
It returns a Results array of review objects — each with Id, Rating, Title, ReviewText, UserNickname, and SubmissionTime — alongside TotalResults, Limit, Offset, and HasErrors. Increment offset by Limit on each call until your accumulated results equal TotalResults. The product_id parameter is the numeric SKU returned by search_products or get_product_details.
Can I filter products by ingredient, skin type, or other attributes within a category?+
The get_category_products and search_products endpoints do not accept attribute filter parameters — browsing is by category path or free-text query only. Product-level ingredient data is available in the content array on get_product_details. You can fork this API on Parse and revise it to add attribute filtering as an endpoint if you need server-side faceted results.
Does the API expose wish lists, user accounts, or order history?+
No account-level or transactional data is exposed. The API covers catalog data (products, brands, categories, sale items, new arrivals) and public Bazaarvoice reviews. You can fork it on Parse and revise to add any publicly accessible account-adjacent pages if they exist without authentication.
How fresh is the pricing and stock data returned by the endpoints?+
Each API call returns data current at the time of the request — there is no cached layer introducing a fixed staleness window. The cheapestVariant object in get_product_details includes stock status, so availability reflects what Cult Beauty's site shows at call time. High-frequency polling across many SKUs should account for the API's rate limits.
Page content last updated . Spec covers 8 endpoints from cultbeauty.co.uk.
Related APIs in EcommerceSee all →
sephora.com API
Search and browse Sephora's product catalog to find detailed information about beauty items, including specifications, customer reviews, Q&A discussions, pricing, and real-time availability. Filter products by category or brand, and access comprehensive brand listings to discover exactly what you're looking for.
theordinary.com API
Browse and search The Ordinary's complete product catalog by category or ingredients. View detailed product information including formulas and key actives, apply filters by product type, concern, or ingredient, and read customer reviews to compare and evaluate products.
lookfantastic.com API
Browse Lookfantastic category pages to retrieve live product listings (price, ratings, reviews, and ingredients), and fetch detailed information for a specific product by SKU including reviews, directions, and images.
ulta.com API
Search and browse Ulta Beauty's complete product catalog with real-time pricing and inventory information, then dive into detailed product specs including ingredients, usage instructions, and customer reviews. Find exactly what you're looking for across all beauty categories with comprehensive product data at your fingertips.
paulaschoice.com API
Search and explore Paula's Choice skincare products with detailed ingredient lists, allergen information, and skin type recommendations all in one place. Find best sellers, look up specific ingredient details, and discover products organized by category to build your perfect skincare routine.
drunkelephant.com API
Search and browse Drunk Elephant's full product catalog by category or collection, view detailed product information including ingredients and specifications, and access customer ratings and reviews. Find the perfect skincare and beauty products for your needs with comprehensive product details and authentic customer feedback.
ecco-verde.it API
Browse and search the Ecco Verde natural beauty catalogue. Retrieve full product details including ingredients (INCI), variants, and attributes; search by keyword; explore products by category or brand; and fetch personalised product recommendations.
urbanoutfitters.com API
Search Urban Outfitters' catalog to find products and browse categories, then view detailed information including prices, descriptions, color and size availability for each item. Check current sale counts and discover what's trending across the store's product lineup.