# IKEA — 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 IKEA's full product catalog to find items by category, compare measurements, read customer reviews, and check real-time store availability and current deals. Discover new arrivals and best-selling products to help you shop smarter and find exactly what you need.

**Category:** E-commerce | **Website:** [ikea.com/](https://ikea.com/) | **Docs:** [parse.bot/marketplace/2a2fbd29-735a-49e7-b45d-5a1cfdf19c90/ikea-com-api](https://parse.bot/marketplace/2a2fbd29-735a-49e7-b45d-5a1cfdf19c90/ikea-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_all_categories

Retrieve the full IKEA category taxonomy tree. Returns a hierarchical array of categories with subcategories. Used to discover category IDs for get_category_listing.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_all_categories \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_best_sellers

Retrieve best-selling products from the IKEA catalog. Returns an array of top-selling product listings.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_best_sellers \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_category_listing

List products in a given IKEA category by category ID. Returns paginated product listings. Category IDs can be found via get_all_categories (e.g. 'st001' for Storage & organization).

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | Yes | IKEA category ID (e.g. 'st001' for storage & organization, '10382' for bookshelves, '10451' for dressers). |
| `limit` | integer | No | Max results per page. |
| `offset` | integer | No | Offset for pagination. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_category_listing \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","limit":"<integer>","offset":"<integer>"}'
```

### get_deals

Retrieve current deals and discounted products from IKEA. Queries multiple deal sources (new lower prices, IKEA Family prices, last-chance reductions) and returns only items that have an actual price reduction. Every returned item includes both the current discounted price and the previous (original) price. Supports different regional IKEA sites via the country parameter; defaults to US catalog.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `country` | string | No | Two-letter country code for the regional IKEA site (e.g. 'us', 'pl', 'de', 'gb', 'se'). Determines the catalog region and currency of returned prices. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_deals \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"country":"<string>"}'
```

### get_new_products

Retrieve the latest products added to the IKEA catalog. Returns an array of new product listings.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_new_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### get_product_details

Retrieve full details for a specific IKEA product by its product page URL or product ID. Returns name, description, price, currency, images, rating, review count, measurements, materials, care instructions, packaging, and warranty. Requires either product_url or product_id; product_url takes priority.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | No | IKEA product ID (e.g. '40595942'). Used if product_url is not provided. |
| `product_url` | string | No | Full IKEA product page URL (e.g. 'https://www.ikea.com/us/en/p/kallax-shelf-unit-white-20275814/'). Takes priority over product_id. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_product_details \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>","product_url":"<string>"}'
```

### get_product_measurements

Retrieve measurements/dimensions for a given IKEA product. Returns an array of measurement entries with name, measure value, and type code. Requires either product_url or product_id.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | No | IKEA product ID (e.g. '40595942'). |
| `product_url` | string | No | Full IKEA product page URL. Takes priority over product_id. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_product_measurements \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>","product_url":"<string>"}'
```

### get_product_reviews

Retrieve customer reviews and rating distribution for a specific product. Returns reviews with title, text, author, and date. Requires either product_url or product_id.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | No | IKEA product ID (e.g. '40595942'). |
| `product_url` | string | No | Full IKEA product page URL. Takes priority over product_id. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_product_reviews \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>","product_url":"<string>"}'
```

### get_store_availability

Check in-store and delivery availability of a product by its ID. Returns availability across IKEA stores with stock quantity, cash-and-carry status, and click-and-collect options. The 's' prefix on product IDs (as returned by search) is automatically stripped.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `product_id` | string | Yes | IKEA product ID (e.g. '99431982' or 's99431982'). Leading 's' prefix is automatically stripped. |
| `zip_code` | string | No | ZIP code to filter results by location. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/get_store_availability \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product_id":"<string>","zip_code":"<string>"}'
```

### search_products

Full-text search over IKEA's US product catalog. Returns paginated product listings matching the query keyword. Each result includes name, type, price, currency, rating, review count, image URL, and product page URL. Pagination via offset; total may report 0 when server omits the count.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `limit` | integer | No | Max results per page. |
| `offset` | integer | No | Offset for pagination. |
| `query` | string | Yes | Search keyword (e.g. 'sofa', 'KALLAX', 'desk'). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-ikea-com-api-2a2fbd29/search_products \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit":"<integer>","offset":"<integer>","query":"<string>"}'
```
