The SimpleHash API includes detail on the sale of NFTs inline within the response bodies of both the NFT and transfer models. Currently NFT sale information will be returned for sales that occurred on the marketplaces and chains shown here:
- Ethereum: OpenSea, Blur, Magic Eden, LooksRare, X2Y2, CryptoPunks
- Solana: Magic Eden, Tensor
- Bitcoin: Magic Eden
- Polygon: OpenSea (Seaport contract), Magic Eden
- Arbitrum: OpenSea, Stratos, Trove
- Arbitrum Nova: OpenSea
- Avalanche: OpenSea
- Base: OpenSea, Magic Eden
- Blast: OpenSea, Blur
- BSC: OpenSea
- Optimism: OpenSea, Quix
- Zora: OpenSea
- Ethereum Goerli: OpenSea
- Ethereum Sepolia: OpenSea
- Arbitrum Goerli: OpenSea
- Arbitrum Sepolia: OpenSea
- Avalanche Fuji: OpenSea
- Base Goerli: OpenSea
- Base Sepolia: OpenSea
- Blast Sepolia: OpenSea
- BSC Testnet: OpenSea
- Optimism Goerli: OpenSea
- Optimism Sepolia: OpenSea
- Polygon Mumbai: OpenSea
- Zora Sepolia: OpenSea
- Zora Testnet: OpenSea
We now also support primary sales on all EVM chains & testnets. This is the amount paid during the mint transaction.
Coverage of more chains and marketplaces will be added in the near future.
On NFT responses, sale information is included in the field named last_sale
, whereas in transfer responses, it is included in the field named sale_details
last_sale
and primary_sale
models (included inline with the NFT
model):
Field | Description | Type(s) |
---|---|---|
from_address | Address selling the NFT | string / null |
to_address | Address acquiring the NFT | string / null |
quantity | The quantity of the NFT being sold. For semi-fungibles (like ERC-1155), this quantity may be greater than 1 | int |
quantity_string | Same results as quantity as a string | string |
timestamp | Datetime of the NFT sale | string |
transaction | Unique identifier of the NFT sale transaction | string |
marketplace_id | ID of the marketplace the sale occurred on (e.g. opensea ) | string |
marketplace_name | Name of the marketplace the sale occurred on (e.g., OpenSea ) | string |
is_bundle_sale | Whether the sale was a bundle sale or not (a bundle sale is where several items are put up for sale on a marketplace at a single price) | boolean |
payment_token | Detail on the token used to make the NFT sale. Will be null if is_bundle_sale is true | payment_token / null |
unit_price | Individual unit price of an item within the NFT sale. Will be null if is_bundle_sale is true | int / null |
total_price | Total price of the NFT sale. Will be null if is_bundle_sale is true | int / null |
unit_price_usd_cents | Individual price of an item within the NFT sale, in USD cents, as calculated at the time of the transaction. Will be null if is_bundle_sale is true or the currency conversion rate was unknown | int / null |
sale_details
model (included inline with the transfer
model):
Field | Description | Type(s) |
---|---|---|
marketplace_id | ID of the marketplace the sale occurred on (e.g. opensea ) | string / null |
marketplace_name | Name of the marketplace the sale occured on (e.g., OpenSea ) | string |
is_bundle_sale | Whether the sale was a bundle sale or not (a bundle sale is where several items are put up for sale on a marketplace at a single price) | boolean |
payment_token | Detail on the token used to make the NFT sale. Will be null if is_bundle_sale is true | payment_token / null |
unit_price | Individual unit price of an item within the NFT sale. Will be null if is_bundle_sale is true | int / null |
total_price | Total price of the NFT sale. Will be null if is_bundle_sale is true | int / null |
unit_price_usd_cents | Individual price of an item within the NFT sale, in USD cents, as calculated at the time of the transaction. Will be null if is_bundle_sale is true or the currency conversion rate was unknown | int / null |
payment_token
model:
Field | Description | Type(s) |
---|---|---|
payment_token_id | Unique identifier of the token type used to make the sale. Currently for ethereum ecosystem sales, this may be ethereum.native for the native ETH token, or ethereum.{contract_address} for ERC-20 tokens | string |
name | Name of the token, e.g., Ether derived from the contract or otherwise | string / null |
symbol | Symbol of the token derived from the contract or otherwise, e.g., ETH | string / null |
address | Contract address of the ERC-20 token used to make the sale (null in the case of the native ETH token) | string / null |
decimals | Base number of decimals of the token value involved in the NFT sale (e.g., 18 in the case of the native ETH token) | int |