StockX API endpoint
Returns a StockX product: identity (title, brand, model, colorway, style id, retail price, release date, description, image), current market data (lowest ask, highest bid, last sale, trailing average price/sales count, delivery-speed ask tiers), individual seller listings (price, condition, size), related-product recommendations (other colorways/siblings StockX surfaces on the product page), and any promotional badges.
/stockx/product/{slug}Path parameters:
slug (required) — the StockX product URL slug (the urlKey), the path
segment of a https://stockx.com/{slug} product page (e.g.
air-jordan-5-retro-black-university-blue-2026).Notable response behavior:
404, not an empty 200.market.ask_service_levels is a map keyed by StockX's own delivery-speed
tier names (commonly standard, express_standard, express_next_day,
express_expedited), each reporting the number of active asks and the
lowest ask price at that tier.listings is a page of individual active seller asks (price, condition,
size). StockX does not expose seller identity on its public product pages,
so none is included. This field is omitted if StockX's seller-listings
subgraph fails; product identity and market data are returned independently.related_products is up to 15 other products StockX recommends alongside
this one (typically sibling colorways of the same model, but can include
other related products); each entry uses the same shape as a
/stockx/search result row. Omitted when StockX's related-products call
fails or returns nothing — it is a recommendation shelf, not core identity
or pricing data, so a failure there does not fail the whole request.traits mirrors StockX's own publicly displayed attribute list for the
product (style, colorway, retail price, release date, and any others
StockX adds); colorway, retail_price, and release_date are lifted
out as typed top-level fields for convenience when present.badges is omitted when StockX's badges call fails or the product has no
active badges — it is a purely cosmetic marker (e.g. "Selling Fast"), not
core identity or pricing data, so a failure there does not fail the whole
request.| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| price | 18 | 180 to 270, median 209 |
| condition | 20 | New - Other (17), Used (3) |
| condition_alias | 20 | new-other (17), used (3) |
| condition_description | 20 | Brand new without shoe box (16), SIZE:9.5 CONDITION:used BOX:OG… (1), Brand new just no box, ships wi… (1) and 2 more |
| size | 20 | 7 to 14, median 9 |
| size_descriptor | 20 | Size in all 20 |
| image_url | 20 | listing-images.stockx.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| slug (path) | string | Yes | StockX product URL slug (the urlKey), the path segment of a https://stockx.com/{slug} product page | air-jordan-5-retro-black-university-blue-2026 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/stockx/product/air-jordan-5-retro-black-university-blue-2026" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": "019ac251-3a0d-7243-bb16-5128353be8bf",
"url_key": "air-jordan-5-retro-black-university-blue-2026",
"title": "Jordan 5 Retro Black University Blue (2026)",
"primary_title": "Jordan 5 Retro",
"secondary_title": "Black University Blue (2026)",
"brand": "Jordan",
"model": "Jordan 5 Retro",
"gender": "men",
"product_category": "sneakers",
"primary_category": "Air Jordan",
"style_id": "DD0587-008",
"colorway": "Black/University Blue/White",
"retail_price": "220",
"release_date": "2026-06-20",
"description": "The Air Jordan 5 Retro in Black, University Blue, and White for 2026 ...",
"image_url": "https://images.stockx.com/images/Air-Jordan-5-Retro-Black-University-Blue-2026-Product.jpg",
"traits": [
{
"name": "Style",
"value": "DD0587-008"
},
{
"name": "Colorway",
"value": "Black/University Blue/White"
},
{
"name": "Retail Price",
"value": "220",
"format": "currency"
},
{
"name": "Release Date",
"value": "2026-06-20",
"format": "date"
}
],
"market": {
"lowest_ask": 260,
"highest_bid": 315,
"number_of_asks": 1341,
"number_of_bids": 334,
"last_sale": 271,
"sales_last_72_hours": 713,
"annual_average_price": 253,
"annual_sales_count": 12394,
"ask_service_levels": {
"standard": {
"count": 1341,
"lowest_ask": 260
},
"express_standard": {
"count": 668,
"lowest_ask": 271,
"inventory_type": "CUSTODIAL"
},
"express_next_day": {
"count": 234,
"lowest_ask": 271,
"inventory_type": "CUSTODIAL"
}
}
},
"listings": [
{
"price": 250,
"condition": "New - Other",
"condition_alias": "new-other",
"condition_description": "Replacement box",
"size": "12",
"size_descriptor": "Size"
}
],
"related_products": [
{
"id": "63aff9cd-af0e-4027-b54d-555bf1f80bf7",
"url_key": "air-jordan-5-retro-wolf-grey-2026",
"title": "Jordan 5 Retro Wolf Grey (2026)",
"brand": "Jordan",
"model": "Jordan 5 Retro",
"gender": "men",
"product_category": "sneakers",
"lowest_ask": 197,
"highest_bid": 195,
"last_sale": 288
}
],
"badges": [
{
"id": "SELLING_FAST",
"title": "713 Sold in Last 3 Days!",
"subtitle": "This item sells fast."
}
],
"source_url": "https://stockx.com/air-jordan-5-retro-black-university-blue-2026"
}
}Request schema
No body schema
Response schema
#/definitions/stockx.productResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | stockx.ProductDetail | No | ||||
| data.badges | array | No | ||||
| data.badges[].id | string | No | SELLING_FAST | |||
| data.badges[].subtitle | string | No | This item sells fast. | |||
| data.badges[].title | string | No | 713 Sold in Last 3 Days! | |||
| data.brand | string | No | Jordan | |||
| data.colorway | string | No | Black/University Blue/White | |||
| data.description | string | No | ||||
| data.gender | string | No | men | |||
| data.id | string | No | 019ac251-3a0d-7243-bb16-5128353be8bf | |||
| data.image_url | string | No | ||||
| data.listings | array | No | ||||
| data.listings[].condition | string | No | New - Other | |||
| data.listings[].condition_alias | string | No | new-other | |||
| data.listings[].condition_description | string | No | Replacement box | |||
| data.listings[].image_url | string | No | ||||
| data.listings[].price | integer | No | 250 | |||
| data.listings[].size | string | No | 12 | |||
| data.listings[].size_descriptor | string | No | Size | |||
| data.market | stockx.MarketData | No | ||||
| data.market.annual_average_price | integer | No | 253 | |||
| data.market.annual_sales_count | integer | No | 12394 | |||
| data.market.ask_service_levels | object | No | ||||
| data.market.highest_bid | integer | No | 315 | |||
| data.market.last_90_days_average_price | integer | No | 253 | |||
| data.market.last_90_days_sales_count | integer | No | 12394 | |||
| data.market.last_sale | integer | No | 271 | |||
| data.market.lowest_ask | integer | No | 260 | |||
| data.market.number_of_asks | integer | No | 1341 | |||
| data.market.number_of_bids | integer | No | 334 | |||
| data.market.sales_last_72_hours | integer | No | 713 | |||
| data.model | string | No | Jordan 5 Retro | |||
| data.primary_category | string | No | Air Jordan | |||
| data.primary_title | string | No | Jordan 5 Retro | |||
| data.product_category | string | No | sneakers | |||
| data.related_products | array | No | ProductSummary record, 12 fields: brand, gender, highest_bid, id, image_url, last_sale, lowest_ask, model, product_category, release_date, title, url_key. Described under StockX category-browse search API. | |||
| data.release_date | string | No | 2026-06-20 | |||
| data.retail_price | string | No | 220 | |||
| data.secondary_title | string | No | Black University Blue (2026) | |||
| data.source_url | string | No | https://stockx.com/air-jordan-5-retro-black-university-blue-2026 | |||
| data.style_id | string | No | DD0587-008 | |||
| data.title | string | No | Jordan 5 Retro Black University Blue (2026) | |||
| data.traits | array | No | ||||
| data.traits[].format | string | No | currency | |||
| data.traits[].name | string | No | Style | |||
| data.traits[].value | string | No | DD0587-008 | |||
| data.url_key | string | No | air-jordan-5-retro-black-university-blue-2026 | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 500 | Internal Server Error | #/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/stockx/product/air-jordan-5-retro-black-university-blue-2026" \
-H "x-api-key: $CRAWLORA_API_KEY"