Prada API endpoint
Returns Prada's (prada.com) full category taxonomy -- every browsable category with its own breadcrumb path and canonical URL -- plus the two gender values products.prada.com currently carries. categories[].id is exactly the value prada-category accepts as its own category_id parameter; genders[].value is exactly what prada-search and prada-category accept as their own gender parameter.
/prada/categoriesNo parameters.
Notable response behavior:
categories[].id is exactly the value prada-category accepts as its own category_id parameter.categories[].path/path_ids are the ancestor breadcrumb leading to the category (not including the category itself), outermost first -- for example a "Pop Charms" category nested under Fine Jewelry > Eternal Gold returns path: ["Fine Jewelry", "Eternal Gold"].genders[].value is one of Woman, Man (the complete set) -- exactly what prada-search and prada-category accept as their own gender parameter, each with its own live product count.genders is sorted by count descending, then value ascending.| Field | Filled in, of 2 checked | Values in the sample |
|---|---|---|
| value | 2 | “Woman” and 1 other value |
| count | 2 | 1,892 to 3,996, median 1,892 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/prada/categories" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"fetched_at": "2026-09-09T12:00:00Z",
"count": 214,
"categories": [
{
"id": "10067US",
"name": "Top handles",
"path": [
"Womens",
"Bags"
],
"path_ids": [
"10047US",
"10062US"
],
"url": "https://www.prada.com/us/en/womens/bags/top-handles/c/10067US"
},
{
"id": "11108US",
"name": "Pop Charms",
"path": [
"Fine Jewelry",
"Eternal Gold"
],
"path_ids": [
"10614US",
"10763US"
],
"url": "https://www.prada.com/us/en/fine-jewelry/eternal-gold/pop-charms/c/11108US"
}
],
"genders": [
{
"value": "Woman",
"count": 3867
},
{
"value": "Man",
"count": 1830
}
]
}
}Request schema
No body schema
Response schema
#/definitions/prada.categoriesResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | prada.CategoriesResponse | No | ||||
| data.categories | array | No | ||||
| data.categories[].id | string | No | ||||
| data.categories[].name | string | No | ||||
| data.categories[].path | array | No | ||||
| data.categories[].path_ids | array | No | ||||
| data.categories[].url | string | No | ||||
| data.count | integer | No | ||||
| data.fetched_at | string | No | ||||
| data.genders | array | No | ||||
| data.genders[].count | integer | No | ||||
| data.genders[].value | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 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/prada/categories" \
-H "x-api-key: $CRAWLORA_API_KEY"