IKEA reviews

GET https://api.api.sh/ikea/v1/reviews
1 credit / call e-commerce try it in the playground →

A product's customer reviews on IKEA: rating and rating range, title, text, author, date, country and language of the review, sub-ratings (appearance, quality, value, ease of assembly), recommended, verified purchase, helpful votes, photos and IKEA replies, with raw. The summary has the average rating, rating count, distribution and sub-rating averages. Filter by stars, verified purchase, photos, review language or market-only reviews; sort by recent, oldest, highest or lowest rated, or most helpful. Pass next_page back as page; null on the last page.

Every response includes credits_used: the credits this call cost.

Parameters

nametypedescription
id string The 8-digit item number at the end of an ikea.com product link, e.g. 30605423. Example: 30605423
url string An ikea.com product link instead of id.
q string Search words instead of id: the reviews of the first search result.
market string Country and language as in ikea.com links (default us/en), e.g. gb/en, de/de, se/sv.
sort recent | oldest | highest_rated | lowest_rated | helpful Sort order (default recent). Example: recent
rating string Only reviews with these stars, 1-5, comma separated, e.g. 1,2.
verified true | false true: only verified purchases.
with_media true | false true: only reviews with photos.
language string Only reviews written in this language (two-letter code, e.g. en, de).
scope all | local all (default) includes reviews from every IKEA market; local only those written in this market.
page_size integer Reviews per page, 1-50 (default 20).
page integer Page number (default 1). Example: 1

Every endpoint also takes fresh, raw, fields (see lean responses and caching).

Example

curl "https://api.api.sh/ikea/v1/reviews?id=30605423" \
  -H "x-api-key: $APISH_KEY"

Response

A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).

The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.