SHEIN API endpoint
Returns the product listing for one category of a SHEIN store. `store_code` comes from a product card or `/shein/store`; `category_id` from `/shein/store`. `page_size` is capped at 20 (the upstream limit). Product cards use the same normalized fields as product search.
/shein/store/productsQuery parameters:
store_code (required) — numeric SHEIN store code, from a product card's
store_code or /api/v1/shein/store, e.g. 1813776918.category_id (required) — numeric store category id from
/api/v1/shein/store (its categories[].category_id), e.g. 1766.page (default 1) — 1-based page number.page_size (default 20) — products per page, 1–20. The upstream endpoint
refuses larger pages, so values above 20 are rejected as invalid parameters.Response data includes store_code, category_id, total (all products in
that store category), page, and products, an array of product cards with the
same normalized fields as product search: goods_id, goods_name, goods_sn, spu, goods_url_name, brand_code, category_id, category_name, goods_img, color_img, detail_images, sale_price, retail_price, usd_price, comment_count, comment_avg, sold_out, on_sale, store_code, mall_code.
An empty products array is a valid result (the store may not stock that
category).
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| store_code | string | Yes | Numeric SHEIN store code | 1813776918 | |
| category_id | string | Yes | Numeric store category id from /shein/store | 1766 | |
| page | integer | No | 1-based page number (default 1) | 1 | |
| page_size | integer | No | Products per page, 1-20 (default 20) | 20 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/shein/store/products?store_code=1813776918&category_id=1766&page=1" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"store_code": "1813776918",
"category_id": "1766",
"total": 156,
"page": 1,
"products": [
{
"goods_id": "378112456",
"goods_name": "SHEIN Solid Tee",
"goods_sn": "sz251207036365507659",
"sale_price": "HK$149.00",
"usd_price": "$18.99",
"sold_out": false,
"on_sale": true,
"store_code": "1813776918"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/shein.storeProductsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | shein.StoreProductsResponse | No | ||||
| data.category_id | string | No | 1766 | |||
| data.page | integer | No | 1 | |||
| data.products | array | No | Product record, 20 fields: brand_code, category_id, category_name, color_img, comment_avg, comment_count, detail_images, goods_id, goods_img, goods_name, goods_sn, goods_url_name and 8 more. Described under SHEIN Category Product Listing API. | |||
| data.store_code | string | No | 1813776918 | |||
| data.total | integer | No | 156 | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/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/shein/store/products?store_code=1813776918&category_id=1766&page=1" \
-H "x-api-key: $CRAWLORA_API_KEY"