Grailed API endpoint
Returns the listings Grailed's own product page recommends as "similar" to one listing -- the same related-items shelf shown on grailed.com's own listing-detail page. id is the listing's numeric id, from a search, sold-listings, or collection result's own id field. An id for a listing that does not exist (deleted, sold and removed, or never valid) returns a typed not-found error.
/grailed/similar-listingslimit is optional, results to return, defaults to 30, maximum 99.
Notable response behavior:
id for a listing that does not exist (deleted, sold and removed, or never valid) returns a 404.grailed-search/grailed-sold-listings.| Field | Filled in, of 30 checked | Values in the sample |
|---|---|---|
| id | 30 | |
| title | 30 | “Chateau Marmont Gucci Tshirt Red Japan Exclusive” and 25 other values |
| url | 30 | grailed.com |
| designers | 30 | median 1 entry |
| price | 30 | 108 to 849, median 400 |
| currency | 30 | USD in all 30 |
| sold | 30 | true in 0 of 30 |
| condition | 30 | is_gently_used (27), is_new (2), is_used (1) |
| size | 30 | m (15), s (7), xs (5) and 2 more |
| department | 30 | menswear in all 30 |
| category | 30 | tops in all 30 |
| category_path | 30 | tops.short_sleeve_shirts in all 30 |
| color | 30 | black (10), red (8), white (4) and 2 more |
| location | 30 | Europe (12), Asia (10), United States (7) and 1 more |
| cover_photo_url | 30 | media-assets.grailed.com |
| photo_count | 30 | 4 to 25, median 7 |
| follower_count | 29 | 1 to 974, median 13 |
| buy_now | 30 | true in 30 of 30 |
| make_offer | 30 | true in 30 of 30 |
| created_at | 30 | 2026-05-27 to 2026-10-12 |
| bumped_at | 30 | 2026-05-27 to 2026-10-13 |
| seller | 30 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| id | integer | Yes | Listing id to find similar listings for | 105379689 | |
| limit | integer | No | 30 | Results to return, defaults to 30, maximum 99 | 30 |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/grailed/similar-listings?id=105379689&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"id": 104155968,
"limit": 30,
"count": 2,
"listings": [
{
"id": 102856918,
"title": "Rick Owens Drkshdw - FW16 - Dirty Blue Detroit Cut Jeans",
"url": "https://www.grailed.com/listings/102856918",
"designers": [
"Rick Owens"
],
"price": 491,
"currency": "USD",
"sold": false,
"condition": "is_gently_used",
"size": "31"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/grailed.similarListingsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | grailed.SimilarListingsResponse | No | ||||
| data.count | integer | No | ||||
| data.fetched_at | string | No | ||||
| data.id | integer | No | ||||
| data.limit | integer | No | ||||
| data.listings | array | No | Listing record, 31 fields: bumped_at, buy_now, category, category_path, color, condition, cover_photo_url, created_at, currency, department, designers, follower_count and 12 more. Described under Grailed Listing Search API. | |||
| data.source_url | 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/similar-listings?id=105379689&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"