# Sephora — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> 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.

**Category:** E-commerce | **Website:** [sephora.com/](https://sephora.com/) | **Docs:** [parse.bot/marketplace/703e2c79-3f29-4582-aa21-db6a57868fcf/sephora-com-api](https://parse.bot/marketplace/703e2c79-3f29-4582-aa21-db6a57868fcf/sephora-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/sephora/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get brands

Retrieve the list of brands available on Sephora with product counts. Aggregates brands from major categories (Skincare, Makeup, Fragrance, Hair). Returns brand name, URL slug, and product count for each brand.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/get-brands \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Get category products

Retrieve products within a specific Sephora category. Returns products with brand, pricing, rating data, plus facets (brand, price range, rating filters), subcategory groups, sorting options, and total result count. Paginates via page number.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | Yes | Sephora category ID (e.g., 'cat140006' for Makeup, 'cat150006' for Skincare, 'cat130038' for Hair, 'cat130044' for Fragrance) |
| `limit` | integer | No | Number of results per page |
| `page` | integer | No | Page number for pagination |
| `sort` | string | No | Sort option for results |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/get-category-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","limit":"<integer>","page":"<integer>","sort":"<string>"}'
```

### Get product details

Retrieve full product details for a single Sephora product by its product ID. Returns SKU variants with pricing, images, alternate images, action flags, and related ancillary product recommendations. The productId comes from search_products results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | Sephora product ID (e.g., 'P510799') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/get-product-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>"}'
```

### Get product reviews

Retrieve customer reviews for a specific product from Bazaarvoice. Returns paginated review results sorted by most recent submission. Each review includes rating, text, user nickname, submission time, photos, and context data (skin type, age range, etc.).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Maximum number of reviews to return |
| `offset` | integer | No | Offset for pagination |
| `product_id` | string | Yes | Sephora product ID (e.g., 'P510799') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/get-product-reviews \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","product_id":"<string>"}'
```

### Get search autocomplete

Get search suggestions and matching product highlights for a query. Returns categorized suggestions including search term completions, product matches with images and pricing, and category matches. Useful for building type-ahead search interfaces.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query string |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/get-search-autocomplete \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

### Search products

Full-text search over Sephora's product catalog by keyword. Returns matching products with brand, pricing, rating, and image data, plus category facets and total result count. Paginates via page number. Each product carries a productId usable with get_product_details and get_product_reviews.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Number of results per page |
| `page` | integer | No | Page number for pagination |
| `query` | string | Yes | Search keyword |
| `sort` | string | No | Sort order for results |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/sephora/search-products \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","page":"<integer>","query":"<string>","sort":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.