Endpoint Playground
Returns one page of a product's customer reviews (author, date, rating, headline, body, and verified-purchase flag), plus the product's overall rating summary (average rating, rating count, per-star histogram, and recommended ratio). pid is a color-specific product id, as returned by oldnavy-search's product colors[].id field (not the bare base product id) -- the same pid oldnavy-product accepts. Select the storefront with the brand parameter (`on` for Old Navy, `gap` for Gap, `br` for Banana Republic, `at` for Athleta; defaults to `on`) -- it must match the brand the pid was found under. A product with no reviews yet returns a well-formed empty result, not an error.
14 Oct 2026: 10 reviews; 8 fields had a value in every checked item and 2 varied between items.
Sample value profiles: created_at: 2026-09-26 to 2026-10-13; rating: 1 to 5, median 4; verified_purchase: true in 0 of 10.
curl 'https://api.crawlora.net/api/v1/oldnavy/product/reviews?pid=907290012&brand=on' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| pid | string | Yes | 907290012 | Color-specific product id, from a search result's colors[].id field |
| brand | string | No | on | Storefront the pid belongs to |
| page | integer | No | One-based page, 10 reviews per page |
{
"code": 200,
"msg": "OK",
"data": {
"pid": "788099002",
"brand": "on",
"page": 1,
"page_size": 10,
"total_pages": 386,
"total_reviews": 3856,
"rating_count": 3856,
"average_rating": 4.6154045643153525,
"recommended_ratio": 1,
"rating_histogram": [
122,
62,
183,
443,
3046
],
"count": 1,
"reviews": [
{
"id": "270852250",
"rating": 1,
"headline": "Too large",
"body": "I normally wear a size 4, I ordered these online and the waist band is huge!...",
"author": "Sadie, P",
"location": "Undisclosed",
"verified_purchase": false,
"helpful_votes": 0,
"not_helpful_votes": 0,
"created_at": "2026-08-18T08:43:32Z",
"updated_at": "2026-08-18T10:16:20Z"
}
]
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.