OpenSea API endpoint
Resolves up to 50 collections in a single call from a comma-separated `slugs` list, returning each one's floor price, verification flag, headline stats, and per-marketplace listed-item counts. Use this instead of calling `/opensea/collection/{slug}` in a loop — it costs one upstream request regardless of how many slugs you pass. The `markets` array shows how many items are listed on OpenSea versus other marketplaces for the same collection.
/opensea/collectionsQuery parameters:
slugs (required): comma-separated collection slugs, at most 50, e.g. boredapeyachtclub,azukiResolves many collections in a single upstream call, so this is strictly cheaper than calling /opensea/collection/{slug} in a loop. Each entry carries floor price, verification flag, headline stats, and a markets array giving the listed-item count per marketplace — that is, how many items are listed on OpenSea versus elsewhere for the same collection.
Duplicate slugs are collapsed. A slug that resolves to a delisted or blacklisted collection is returned with only its slug populated. If none of the slugs resolve, the response is 404.
| Field | Filled in, of 2 checked | Values in the sample |
|---|---|---|
| id | 2 | |
| slug | 2 | |
| name | 2 | “Bored Ape Yacht Club” and 1 other value |
| image_url | 2 | i2c.seadn.io |
| is_verified | 2 | true in 2 of 2 |
| category | 2 | “PFPS” |
| contract_address | 2 | |
| chain | 2 | “ethereum” |
| floor_price | 2 | |
| stats | 2 | |
| markets | 2 | median 8 entries |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| slugs | string | Yes | Comma-separated collection slugs, at most 50 | boredapeyachtclub,azuki | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/opensea/collections?slugs=boredapeyachtclub%2Cazuki" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"collections": [
{
"id": "46188685bcac4206ace63c9d017abbb7",
"slug": "boredapeyachtclub",
"name": "Bored Ape Yacht Club",
"is_verified": true,
"category": "PFPS",
"contract_address": "0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d",
"chain": "ethereum",
"floor_price": {
"amount": 7.85,
"currency": "ETH",
"usd": 19295.5
},
"stats": {
"sales": 57369,
"total_supply": 9998,
"unique_item_count": 9998,
"listed_item_count": 299,
"volume_native": 1580610.96,
"volume_usd": 3756342321.66,
"volume_currency": "ETH",
"one_day": {
"sales": 12,
"volume_native": 93.48,
"volume_usd": 229714.2,
"floor_price_change": 0.0065
}
},
"markets": [
{
"marketplace": "opensea",
"name": "OpenSea",
"listed_item_count": 190
},
{
"marketplace": "blur",
"name": "Blur",
"listed_item_count": 109
}
]
}
]
}
}Request schema
No body schema
Response schema
#/definitions/opensea.collectionsResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | opensea.CollectionsResponse | No | ||||
| data.collections | array | No | CollectionSummary record, 46 fields: category, chain, contract_address, floor_price, id, image_url, is_verified, markets, name, slug, stats. Described under OpenSea Collection Search API. | |||
| 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/opensea/collections?slugs=boredapeyachtclub%2Cazuki" \
-H "x-api-key: $CRAWLORA_API_KEY"