Grailed API endpoint
Returns one Grailed curated homepage collection's full listing set. id is the collection's numeric id, from grailed-collections' own collections[].id field. An unknown id returns a typed not-found error.
/grailed/collectionNotable response behavior:
404.CollectionListing, a different, upstream-native field set from grailed-search's Listing -- the member listings are already fully enriched by the upstream, so the seller is identified only by a numeric seller_id and an optional aggregate seller_rating, not a username/avatar.| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| title | 20 | “Rick Owens Detroit Cut Waxed Denim” and 19 other values |
| url | 20 | grailed.com |
| designers | 20 | median 1 entry |
| price | 20 | 350 to 900, median 500 |
| currency | 20 | USD in all 20 |
| sold | 20 | true in 0 of 20 |
| condition | 20 | is_gently_used (17), is_used (3) |
| size | 20 | “30” and 9 other values |
| department | 20 | menswear in all 20 |
| category_path | 20 | bottoms.denim (7), tops.sweatshirts_hoodies (4), footwear.hitop_sneakers (2) and 5 more |
| cover_photo_url | 20 | media-assets.grailed.com |
| follower_count | 20 | 131 to 2,439, median 483 |
| buy_now | 20 | true in 20 of 20 |
| make_offer | 20 | true in 19 of 20 |
| seller_id | 20 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | integer | Yes | Collection id, from grailed-collections' own collections[].id field | 20 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/grailed/collection?id=20" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": 20,
"title": "Dark Luxury",
"external_id": "20240731-022",
"last_refreshed_at": "2026-09-09T05:26:45.572Z",
"count": 1,
"listings": [
{
"id": 104155968,
"title": "Rick Owens DRKSHDW Detroit Cut Waxed Dirty Blue jeans pants",
"url": "https://www.grailed.com/listings/104155968",
"designers": [
"Rick Owens"
],
"price": 335,
"currency": "USD",
"sold": false,
"condition": "is_used",
"size": "30",
"department": "menswear",
"category_path": "bottoms.denim",
"seller_id": 7914629
}
]
}
}Request schema
No body schema
Response schema
#/definitions/grailed.collectionResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | grailed.CollectionResponse | No | ||||
| data.count | integer | No | ||||
| data.external_id | string | No | ||||
| data.fetched_at | string | No | ||||
| data.id | integer | No | ||||
| data.last_refreshed_at | string | No | ||||
| data.listings | array | No | ||||
| data.listings[].buy_now | boolean | No | ||||
| data.listings[].category_path | string | No | ||||
| data.listings[].condition | string | No | ||||
| data.listings[].cover_photo_url | string | No | ||||
| data.listings[].currency | string | No | ||||
| data.listings[].department | string | No | ||||
| data.listings[].designers | array | No | ||||
| data.listings[].follower_count | integer | No | ||||
| data.listings[].id | integer | No | ||||
| data.listings[].make_offer | boolean | No | ||||
| data.listings[].price | number | No | ||||
| data.listings[].seller_id | integer | No | ||||
| data.listings[].seller_rating | number | No | ||||
| data.listings[].size | string | No | ||||
| data.listings[].sold | boolean | No | ||||
| data.listings[].sold_price | number | No | ||||
| data.listings[].title | string | No | ||||
| data.listings[].url | string | No | ||||
| data.source_url | string | No | ||||
| data.title | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/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/collection?id=20" \
-H "x-api-key: $CRAWLORA_API_KEY"