Grailed API endpoint
Returns a page of Grailed's full designer/brand taxonomy (7,363 designers as of 2026-09-09) -- the value space grailed-search/grailed-sold-listings' own designer parameter accepts (by name). q is an optional free-text filter (typo-tolerant, e.g. a partial name for typeahead-style lookup); an empty q lists the full taxonomy ordered by Grailed's own default ranking (most-listed designers first).
/grailed/designerspage is optional, a one-based page number, defaults to 1.
limit is optional, results per page, defaults to 24, maximum 100.
Notable response behavior:
designers[].name is exactly the value grailed-search/grailed-sold-listings's own designer parameter expects.listings_count is that designer's own live count of listings on Grailed (active and sold combined).departments lists which of menswear/womenswear the designer has listings in.| Field | Filled in, of 2 checked | Values in the sample |
|---|---|---|
| id | 2 | |
| name | 2 | “Gucci” and 1 other value |
| slug | 2 | |
| listings_count | 2 | 809 to 114,297, median 809 |
| departments | 2 | median 2 entries |
| logo_url | 1 | media-assets.grailed.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| q | string | No | Free-text designer name filter | gucci | |
| page | integer | No | 1 | One-based page number, defaults to 1 | 1 |
| limit | integer | No | 24 | Results per page, defaults to 24, maximum 100 | 24 |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/grailed/designers?q=coffee&page=1&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "gucci",
"page": 1,
"limit": 24,
"count": 1,
"total_results": 7363,
"total_pages": 307,
"designers": [
{
"id": 79,
"name": "Gucci",
"slug": "gucci",
"listings_count": 250601,
"departments": [
"menswear",
"womenswear"
],
"logo_url": "https://media-assets.grailed.com/prd/detail-page/gucci-logo"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/grailed.designersResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | grailed.DesignersResponse | No | ||||
| data.count | integer | No | ||||
| data.designers | array | No | ||||
| data.designers[].departments | array | No | ||||
| data.designers[].id | integer | No | ||||
| data.designers[].listings_count | integer | No | ||||
| data.designers[].logo_url | string | No | ||||
| data.designers[].name | string | No | ||||
| data.designers[].slug | string | No | ||||
| data.fetched_at | string | No | ||||
| data.limit | integer | No | ||||
| data.page | integer | No | ||||
| data.query | string | No | ||||
| data.source_url | string | No | ||||
| data.total_pages | integer | No | ||||
| data.total_results | integer | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/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/grailed/designers?q=coffee&page=1&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"