IKEA API endpoint
Returns IKEA's own search-box typeahead result for a partial or full query: suggested query completions with their own match counts, plus a small number of top matching products. A query with no matches returns a clean empty response.
/ikea/suggestReturns IKEA's own search-box typeahead result for q, a partial or full search term. country and language default to us/en. size controls how many top matching products are returned (1-20, default 5).
The response includes suggested query completions (each with IKEA's own match count) and a small number of top matching products in the same shape as ikea_search. A query with no matches returns a clean empty response, not an error.
| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| item_no | 20 | “s49431927” and 19 other values |
| name | 20 | “LAGKAPTEN / ALEX” and 12 other values |
| type_name | 20 | Desk (16), Tabletop (1), Pull-out desk (1) and 2 more |
| measure_text | 20 | “55 1/8x23 5/8 "” and 14 other values |
| valid_design | 20 | white (14), walnut veneer/black (1), ash effect/white (1) and 4 more |
| filter_class | 19 | desks (17), table and work lamps (1), chest of drawers (1) |
| image_url | 20 | ikea.com |
| product_url | 20 | ikea.com |
| price | 20 | |
| rating | 20 | |
| colors | 18 | median 1 entry |
| variant_count | 16 | 1 to 21, median 2 |
| variants | 16 | median 2 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| q | string | Yes | Partial or full search term | des | |
| country | string | No | Lowercase 2-letter IKEA site country code | ||
| language | string | No | Lowercase 2-letter IKEA site language code | ||
| size | integer | No | Top-product count (1-20) Minimum: 1. Maximum: 20. | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/ikea/suggest?q=des&country=us&language=en" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "des",
"country": "us",
"language": "en",
"count": 6,
"suggestions": [
{
"text": "dining table",
"count": 442
},
{
"text": "closet",
"count": 413
},
{
"text": "chair",
"count": 1452
},
{
"text": "desk",
"count": 203
},
{
"text": "bed frame",
"count": 151
}
],
"products": [
{
"item_no": "s49431927",
"name": "LAGKAPTEN / ALEX",
"type_name": "Desk"
},
{
"item_no": "80213074",
"name": "MICKE",
"type_name": "Desk"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/ikea.suggestResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | ikea.SuggestResponse | No | ||||
| data.count | integer | No | 5 | |||
| data.country | string | No | us | |||
| data.fetched_at | string | No | ||||
| data.language | string | No | en | |||
| data.products | array | No | ProductSummary record, 50 fields: colors, filter_class, image_url, item_no, measure_text, name, price, product_url, rating, type_name, valid_design, variant_count and 1 more. Described under Search IKEA products API. | |||
| data.query | string | No | des | |||
| data.source_url | string | No | ||||
| data.suggestions | array | No | ||||
| data.suggestions[].count | integer | No | 48 | |||
| data.suggestions[].text | string | No | desk chair | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/ikea/suggest?q=des&country=us&language=en" \
-H "x-api-key: $CRAWLORA_API_KEY"