Depop API endpoint
Returns Depop's full, multi-region size taxonomy -- every composite id usable with /depop/search's and /depop/shop/{username}'s sizes filter. Public data sourced from Depop's own size-filter API.
/depop/sizesRequires the x-api-key header. No query or path parameters.
Notable response behavior:
503 means both paths were blocked. Retry later.departments only includes kidswear, menswear, and womenswear —
everything-else (see /depop/categories) has no
clothing sizes and is omitted.categories (e.g. "Tops",
"Bottoms", "Shoes"), each of which groups sizes further into regions
(EUR, UK, US, AU).id (e.g. "4.17") is the exact value to pass — comma
-separated for multiple — as /depop/search's or
/depop/shop/{username}'s sizes query parameter. It omits the
region suffix Depop's own page URLs display (e.g. 4.17-US) — that
suffix is decorative only; the bare id is what both endpoints actually
key off.category/gender/is_kids
combination by /depop/search or /depop/shop/{username} — pairing an
id from the wrong category (e.g. a Shoes id while filtering Tops) simply
returns zero results rather than an error.Example response (truncated):
{
"code": 200,
"msg": "OK",
"data": {
"departments": [
{
"id": "womenswear",
"name": "Women",
"categories": [
{
"id": "wmns-tops-sizes",
"name": "Tops",
"regions": [
{
"region": "US",
"sizes": [
{ "id": "4.17", "name": "M" },
{ "id": "4.18", "name": "L" }
]
}
]
}
]
}
]
}
}
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/depop/sizes" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"departments": [
{
"id": "womenswear",
"name": "Women",
"categories": [
{
"id": "wmns-tops-sizes",
"name": "Tops",
"regions": [
{
"region": "US",
"sizes": [
{
"id": "4.17",
"name": "M"
},
{
"id": "4.18",
"name": "L"
}
]
}
]
}
]
}
]
}
}Request schema
No body schema
Response schema
#/definitions/depop.sizesResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | depop.SizesResponse | No | ||||
| data.departments | array | No | ||||
| data.departments[].categories | array | No | ||||
| data.departments[].categories[].id | string | No | ||||
| data.departments[].categories[].name | string | No | ||||
| data.departments[].categories[].regions | array | No | ||||
| data.departments[].categories[].regions[].region | string | No | ||||
| data.departments[].categories[].regions[].sizes | array | No | ||||
| data.departments[].categories[].regions[].sizes[].id | string | No | ID is the value to pass in SearchOption.Sizes / ShopOption.Sizes (e.g. "4.17"). Built from Depop's own size_set_id and id (`{size_set_id}.{id}`) -- confirmed live 2026-08-15 that this bare form (without the "-EUR"/"-UK"/"-US"/"-AU" region suffix Depop's own UI appends for display, e.g. "4.17-US") is what both the search API and shop pages actually key off; the suffix is decorative only. | |||
| data.departments[].categories[].regions[].sizes[].name | string | No | ||||
| data.departments[].id | string | No | ||||
| data.departments[].name | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 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/depop/sizes" \
-H "x-api-key: $CRAWLORA_API_KEY"