# OpenSea

OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.

- **Category:** ecommerce
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 24
- **Triggers:** 0
- **Slug:** `OPEN_SEA`
- **Version:** 20260211_00

## Tools

### Build criteria offer

**Slug:** `OPEN_SEA_BUILD_CRITERIA_OFFER`

Build a portion of a criteria offer including the merkle tree needed to post an offer.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `offerer` | string | Yes | The address which supplies all the items in the offer |
| `criteria` | object | Yes | Criteria for the collection or trait offer |
| `quantity` | integer | No | The number of offers to place |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel order

**Slug:** `OPEN_SEA_CANCEL_ORDER`

Offchain cancel a single order, offer or listing, by its order hash when protected by the SignedZone. Protocol and Chain are required to prevent hash collisions. Please note cancellation is only assured if a fulfillment signature was not vended prior to cancellation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `order_hash` | string | Yes | The hash of the order to retrieve |
| `protocol_address` | string | Yes | The contract address of the protocol to use in the request |
| `offerer_signature` | string | No | An EIP-712 signature from the offerer of the order. If not provided, the user associated with the API Key will be checked instead |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create criteria offer

**Slug:** `OPEN_SEA_CREATE_CRITERIA_OFFER`

Create a criteria offer to purchase any NFT in a collection or which matches the specified trait.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `protocol_data` | object | Yes | The signed order which will be submitted to Seaport |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create item offer

**Slug:** `OPEN_SEA_CREATE_ITEM_OFFER`

Create an offer to purchase a single NFT (ERC721 or ERC1155).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `protocol` | string | Yes | The token settlement protocol to use in the request |
| `signature` | string | Yes | Signature of the signed type data represented by the parameters field |
| `parameters` | object | Yes | Order components object containing the order details |
| `protocol_address` | string | Yes | Exchange contract address. Must be one of ['0x0000000000000068f116a894984e2db1123eb395'] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create listing

**Slug:** `OPEN_SEA_CREATE_LISTING`

List a single NFT (ERC721 or ERC1155) for sale on the OpenSea marketplace.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `protocol` | string | Yes | The token settlement protocol to use in the request |
| `signature` | string | Yes | Signature of the signed type data represented by the parameters field |
| `parameters` | object | Yes | Order components object containing the order details |
| `protocol_address` | string | Yes | Exchange contract address. Must be one of ['0x0000000000000068f116a894984e2db1123eb395'] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fulfill listing

**Slug:** `OPEN_SEA_FULFILL_LISTING`

Retrieve all the information, including signatures, needed to fulfill a listing directly onchain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `listing` | object | Yes | Listing to get fulfillment data for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Fulfill offer

**Slug:** `OPEN_SEA_FULFILL_OFFER`

Retrieve all the information, including signatures, needed to fulfill an offer directly onchain.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `offer` | object | Yes | Offer to get fulfillment data for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get account

**Slug:** `OPEN_SEA_GET_ACCOUNT`

Get an OpenSea Account Profile including details such as bio, social media usernames, and profile image.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `address_or_username` | string | Yes | The public blockchain address or OpenSea username |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all listings by collection

**Slug:** `OPEN_SEA_GET_ALL_LISTINGS_BY_COLLECTION`

Get all active, valid listings for a single collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next` | string | No | The cursor for the next page of results |
| `limit` | integer | No | The number of listings to return. Must be between 1 and 100 |
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get all offers by collection

**Slug:** `OPEN_SEA_GET_ALL_OFFERS_BY_COLLECTION`

Get all active, valid offers for the specified collection. This includes individual and criteria offers.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next` | string | No | The cursor for the next page of results |
| `limit` | integer | No | The number of offers to return. Must be between 1 and 100 |
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get best listing by nft

**Slug:** `OPEN_SEA_GET_BEST_LISTING_BY_NFT`

Get the best listing for an NFT.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `identifier` | string | Yes | The NFT token id |
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |
| `include_private_listings` | boolean | No | If true, will include private listings |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get best listings by collection

**Slug:** `OPEN_SEA_GET_BEST_LISTINGS_BY_COLLECTION`

Get the cheapest priced active, valid listings on a single collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next` | string | No | The cursor for the next page of results |
| `limit` | integer | No | The number of listings to return. Must be between 1 and 100 |
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |
| `include_private_listings` | boolean | No | If true, will include private listings |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get best offer by nft

**Slug:** `OPEN_SEA_GET_BEST_OFFER_BY_NFT`

Get the best offers for an NFT.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `identifier` | string | Yes | The NFT token id |
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get collection

**Slug:** `OPEN_SEA_GET_COLLECTION`

Get a single collection including details such as fees, traits, and links.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get collections

**Slug:** `OPEN_SEA_GET_COLLECTIONS`

Get a list of OpenSea collections with optional filtering and pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next` | string | No | The cursor for the next page of results |
| `chain` | string | No | The blockchain on which to filter the results |
| `limit` | integer | No | The number of collections to return. Must be between 1 and 100 |
| `order_by` | string | No | The order in which to sort the collections |
| `include_hidden` | boolean | No | If true, will return hidden collections |
| `creator_username` | string | No | If set, will only return collections created by the given OpenSea username |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get collection stats

**Slug:** `OPEN_SEA_GET_COLLECTION_STATS`

Get stats for a single collection on OpenSea.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get contract

**Slug:** `OPEN_SEA_GET_CONTRACT`

Get a smart contract for a given chain and address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `address` | string | Yes | The public blockchain address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get events

**Slug:** `OPEN_SEA_GET_EVENTS`

Get a list of events from OpenSea based on various filters like timestamps and event types.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `next` | string | No | The cursor for the next page of results |
| `after` | integer | No | Filter to only include events that occurred at or after the given timestamp (Unix epoch in seconds) |
| `limit` | integer | No | The number of events to return. Must be between 1 and 50 |
| `before` | integer | No | Filter to only include events that occurred before the given timestamp (Unix epoch in seconds) |
| `event_type` | array | No | The type of event to filter by. If not provided, only sales will be returned |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get listings

**Slug:** `OPEN_SEA_GET_LISTINGS`

Get the complete set of active, valid listings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `limit` | integer | No | The number of orders to return. Must be between 1 and 50 |
| `maker` | string | No | Filter results by the order maker's wallet address |
| `taker` | string | No | Filter results by the order taker's wallet address |
| `cursor` | string | No | The cursor for the next page of results |
| `order_by` | string | No | The order in which to sort the results. If eth_price is used, asset_contract_address and token_id are required |
| `protocol` | string | Yes | The token settlement protocol to use in the request |
| `token_ids` | array | No | An array of token IDs to search for. If used, asset_contract_address is required |
| `listed_after` | string | No | Filter to only include orders that were listed after the given timestamp |
| `listed_before` | string | No | Filter to only include orders that were listed before the given timestamp |
| `order_direction` | string | No | The direction in which to sort the results |
| `payment_token_address` | string | No | Payment Token Address to filter results. This ensures all returned orders are listed in a single currency |
| `asset_contract_address` | string | No | Filter results by the contract address for NFT(s). If used, token_ids is required |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get nft

**Slug:** `OPEN_SEA_GET_NFT`

Get metadata, traits, ownership information, and rarity for a single NFT.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `address` | string | Yes | The public blockchain address |
| `identifier` | string | Yes | The NFT token id |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get order

**Slug:** `OPEN_SEA_GET_ORDER`

Get a single order, offer or listing, by its order hash. Protocol and Chain are required to prevent hash collisions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `order_hash` | string | Yes | The hash of the order to retrieve |
| `protocol_address` | string | Yes | The contract address of the protocol to use in the request |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get payment token

**Slug:** `OPEN_SEA_GET_PAYMENT_TOKEN`

Get a smart contract for a given chain and address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `address` | string | Yes | The public blockchain address |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get traits

**Slug:** `OPEN_SEA_GET_TRAITS`

Get the traits in a collection.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `collection_slug` | string | Yes | Unique string to identify a collection on OpenSea. This can be found by visiting the collection on the OpenSea website and noting the last path parameter |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Refresh nft metadata

**Slug:** `OPEN_SEA_REFRESH_NFT_METADATA`

Refresh metadata for a single NFT.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `chain` | string | Yes | The blockchain on which to filter the results |
| `address` | string | Yes | The public blockchain address |
| `identifier` | string | Yes | The NFT token id |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
