Nike API endpoint
Returns per-size shipping availability for one product, sourced from the same anonymous mobile backend Nike's own app uses. group_key is the product's rollup key (from a search result's products[].group_key field). Each size carries its label, localized label, the color variant it belongs to, a GTIN, an available flag, Nike's own shipping-availability level (HIGH/LOW/MEDIUM/OOS), and the width grouping (Regular/Wide). Per-store pickup availability is not included -- this reflects online shipping availability.
/nike/product/availabilitygroup_key is required: the product's rollup key, the same value nike-search returns as a products[].group_key field.
Each entry in sizes carries the size's label and localized_label, the color variant it belongs to (style_color), a gtin, an available flag, Nike's own shipping-availability level (ship), and the width grouping (grouping_label).
Notable response behavior:
ship is passed through as-is: HIGH, LOW, MEDIUM, or OOS (out of stock).sizes spans every color and width grouping of the product.group_key returns 404 (Nike's own DATA_NOT_FOUND response).| Field | Filled in, of 294 checked | Values in the sample |
|---|---|---|
| label | 294 | 3.5 to 15, median 10 |
| localized_label | 294 | “M 6 / W 7.5” and 21 other values |
| style_color | 294 | “IH3251-001” and 16 other values |
| gtin | 294 | |
| available | 294 | true in 230 of 294 |
| ship | 294 | HIGH (140), LOW (72), OOS (64) and 1 more |
| grouping_label | 294 | Regular (243), Wide (51) |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| group_key | string | Yes | Product rollup key, from a search result's products[].group_key field | 5npsVBwT | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/nike/product/availability?group_key=5npsVBwT" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"group_key": "5npsVBwT",
"count": 365,
"sizes": [
{
"label": "6",
"localized_label": "M 6 / W 7.5",
"style_color": "HV8150-003",
"gtin": "00198481532179",
"available": true,
"ship": "HIGH",
"grouping_label": "Regular"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/nike.availabilityResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | nike.AvailabilityResponse | No | ||||
| data.count | integer | No | ||||
| data.fetched_at | string | No | ||||
| data.group_key | string | No | ||||
| data.sizes | array | No | ||||
| data.sizes[].available | boolean | No | ||||
| data.sizes[].grouping_label | string | No | ||||
| data.sizes[].gtin | string | No | ||||
| data.sizes[].label | string | No | ||||
| data.sizes[].localized_label | string | No | ||||
| data.sizes[].ship | string | No | ||||
| data.sizes[].style_color | string | No | ||||
| data.source_url | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/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/nike/product/availability?group_key=5npsVBwT" \
-H "x-api-key: $CRAWLORA_API_KEY"