Kohl's API endpoint
Returns one page of a Kohl's product's customer reviews (title, text, rating, secondary ratings such as quality/durability/value/style, reviewer name and location, submission date, and photo URLs). web_id is the same identifier a GET /kohls/category response's products[].web_id field carries. A web_id with zero reviews returns a genuine zero-result response rather than an error.
/kohls/product/reviewsweb_id is required -- a numeric product id, the same identifier a GET /kohls/category response's products[].web_id field carries. page is optional (default 1), 10 reviews per page.
Notable response behavior:
secondary_ratings (e.g. Quality, Durability, Value, Style) is present only on reviews that carry it -- not every review rates every dimension.photo_urls is present only on reviews with customer-submitted photos.web_id with zero reviews (a real product that has none yet, or an id the review platform has never heard of) returns a genuine zero-result response (total_count: 0, empty reviews) rather than an error.| Field | Filled in, of 10 checked | Values in the sample |
|---|---|---|
| id | 10 | |
| title | 9 | |
| text | 10 | |
| rating | 10 | 1 to 5, median 4 |
| author | 8 | |
| location | 8 | |
| submitted_at | 10 | 2026-10-10 to 2026-10-13 |
| secondary_ratings | 8 | median 4 entries |
| recommended | 6 | true in 6 of 6 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| web_id | string | Yes | Kohl's product web id, e.g. from a GET /kohls/category response's products[].web_id | 4569328 | |
| page | integer | No | Page number, 10 reviews per page (default 1) | 1 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/kohls/product/reviews?web_id=4569328&page=1" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"web_id": "4569328",
"total_count": 11249,
"page": 1,
"page_size": 10,
"reviews": [
{
"id": "400246016",
"title": "U Love these towels",
"text": "I have been buying them for years and love them!",
"rating": 5,
"recommended": true,
"author": "Kimmy",
"location": "Fayetteville, AR",
"submitted_at": "2026-08-12T01:40:45.000+00:00",
"secondary_ratings": [
{
"name": "Quality",
"value": 4,
"max_value": 5
}
]
}
],
"source_url": "https://apps.bazaarvoice.com/bfd/v1/clients/Kohls/api-products/cv2/resources/data/reviews.json?...",
"fetched_at": "2026-08-12T10:00:00Z"
}
}Request schema
No body schema
Response schema
#/definitions/kohls.productReviewsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | kohls.ProductReviewsResponse | No | ||||
| data.fetched_at | string | No | ||||
| data.page | integer | No | ||||
| data.page_size | integer | No | ||||
| data.reviews | array | No | ||||
| data.reviews[].author | string | No | ||||
| data.reviews[].id | string | No | ||||
| data.reviews[].location | string | No | ||||
| data.reviews[].photo_urls | array | No | ||||
| data.reviews[].rating | integer | No | ||||
| data.reviews[].recommended | boolean | No | ||||
| data.reviews[].secondary_ratings | array | No | ||||
| data.reviews[].secondary_ratings[].max_value | integer | No | 5 | |||
| data.reviews[].secondary_ratings[].name | string | No | Quality | |||
| data.reviews[].secondary_ratings[].value | integer | No | 4 | |||
| data.reviews[].submitted_at | string | No | ||||
| data.reviews[].text | string | No | ||||
| data.reviews[].title | string | No | ||||
| data.source_url | string | No | ||||
| data.total_count | integer | No | ||||
| data.web_id | string | No | ||||
| 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/kohls/product/reviews?web_id=4569328&page=1" \
-H "x-api-key: $CRAWLORA_API_KEY"