OpenSea API endpoint
Returns every standing bid on one NFT, with price, quantity, validity window, marketplace, and the maker's wallet. An item with no active offers returns an empty list rather than a 404.
/opensea/item/{chain}/{contract_address}/{token_id}/offersPath parameters:
chain (required): a chain identifier, e.g. ethereum. Call /api/v1/opensea/chains for the full accepted listcontract_address (required): the NFT contract addresstoken_id (required): the token id within that contractQuery parameters:
limit (optional): offers per page, 1-100, default 20cursor (optional): opaque pagination cursor taken from a previous response's next_page_cursor| Field | Filled in, of 20 checked | Values in the sample |
|---|---|---|
| id | 20 | |
| quantity | 20 | 1 to 8, median 1 |
| start_time | 20 | 2026-10-12 to 2026-10-13 |
| end_time | 20 | 2026-10-13 to 2027-01-11 |
| marketplace | 20 | opensea in all 20 |
| maker | 20 | |
| price | 20 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| chain (path) | string | Yes | Chain identifier from /opensea/chains | ethereum | |
| contract_address (path) | string | Yes | NFT contract address | 0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d | |
| token_id (path) | string | Yes | Token id within the contract | 1 | |
| limit | integer | No | Offers per page, 1-100 | ||
| cursor | string | No | Opaque pagination cursor from a previous next_page_cursor | ||
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/opensea/item/ethereum/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/1/offers?limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"chain": "ethereum",
"contract_address": "0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d",
"token_id": "1",
"orders": [
{
"id": "8de03f763f763ef0bd6eedb38d9e1491",
"quantity": "1",
"start_time": "2026-08-30T10:26:47.000Z",
"end_time": "2026-08-30T10:56:47.000Z",
"marketplace": "opensea",
"maker": {
"address": "0xf76246b0842c92ad5f9b0d2a2b6b0f9b1e1c0a11"
},
"price": {
"amount": 0.0001,
"currency": "WETH",
"usd": 0.25
}
}
],
"next_page_cursor": null
}
}Request schema
No body schema
Response schema
#/definitions/opensea.itemOrdersResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | opensea.ItemOrdersResponse | No | ||||
| data.chain | string | No | ethereum | |||
| data.contract_address | string | No | 0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d | |||
| data.next_page_cursor | string | No | ||||
| data.orders | array | No | ||||
| data.orders[].end_time | string | No | ||||
| data.orders[].id | string | No | ||||
| data.orders[].maker | opensea.Account | No | ||||
| data.orders[].maker.address | string | No | 0x46efbaedc92067e6d60e84ed6395099723252496 | |||
| data.orders[].maker.display_name | string | No | gordongoner | |||
| data.orders[].maker.image_url | string | No | ||||
| data.orders[].marketplace | string | No | opensea | |||
| data.orders[].price | opensea.Price | No | ||||
| data.orders[].price.amount | number | No | 7.85 | |||
| data.orders[].price.chain | string | No | ethereum | |||
| data.orders[].price.contract_address | string | No | 0x0000000000000000000000000000000000000000 | |||
| data.orders[].price.currency | string | No | ETH | |||
| data.orders[].price.usd | number | No | 19295.3 | |||
| data.orders[].quantity | string | No | 1 | |||
| data.orders[].start_time | string | No | ||||
| data.token_id | string | No | 1 | |||
| 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/item/ethereum/0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d/1/offers?limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"