Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Api/MarketplaceApi

Marketplace API Reference

// Set your API Keys 👇 here
$sdk = new \Tatum\Sdk();

// MainNet API Call
$sdk->mainnet()->api()->marketplace();

// TestNet API Call
$sdk->testnet()->api()->marketplace();

Methods

Method Description
bloMarWithdrawFromMarketplaceSolana() Withdraw funds from the marketplace treasury account on Solana
bloMarWithdrawFromMarketplaceSolanaKMS() Withdraw funds from the marketplace treasury account on Solana
buyAssetOnMarketplace() Buy an asset on the NFT marketplace
buyAssetOnMarketplaceCelo() Buy an asset on the NFT marketplace
buyAssetOnMarketplaceCeloKMS() Buy an asset on the NFT marketplace
buyAssetOnMarketplaceKMS() Buy an asset on the NFT marketplace
buyAssetOnMarketplaceSolana() Buy an asset on the NFT marketplace
buyAssetOnMarketplaceSolanaKMS() Buy an asset on the NFT marketplace
cancelSellAssetOnMarketplace() Cancel the selling of an asset on the NFT marketplace
cancelSellAssetOnMarketplaceCelo() Cancel the selling of an asset on the NFT marketplace
cancelSellAssetOnMarketplaceCeloKMS() Cancel the selling of an asset on the NFT marketplace
cancelSellAssetOnMarketplaceKMS() Cancel the selling of an asset on the NFT marketplace
cancelSellAssetOnMarketplaceSolana() Cancel the selling of an asset on the NFT marketplace
cancelSellAssetOnMarketplaceSolanaKMS() Cancel the selling of an asset on the NFT marketplace
generateMarketplace() Create an NFT marketplace
generateMarketplaceCelo() Create an NFT marketplace
generateMarketplaceCeloKMS() Create an NFT marketplace
generateMarketplaceKMS() Create an NFT marketplace
generateMarketplaceSolana() Create an NFT marketplace
generateMarketplaceSolanaKMS() Create an NFT marketplace
getMarketplaceFee() Get the NFT marketplace fee
getMarketplaceFeeRecipient() Get the recipient of the NFT marketplace fee
getMarketplaceInfo() Get information about an NFT marketplace on Solana
getMarketplaceListing() Get information about a listing on the NFT marketplace
getMarketplaceListings() Get the listings of a certain type from the NFT marketplace
sellAssetOnMarketplace() Sell an asset on the NFT marketplace
sellAssetOnMarketplaceCelo() Sell an asset on the NFT marketplace
sellAssetOnMarketplaceCeloKMS() Sell an asset on the NFT marketplace
sellAssetOnMarketplaceKMS() Sell an asset on the NFT marketplace
sellAssetOnMarketplaceSolana() Sell an asset on the NFT marketplace
sellAssetOnMarketplaceSolanaKMS() Sell an asset on the NFT marketplace
updateFee() Update the NFT marketplace fee
updateFeeCelo() Update the NFT marketplace fee
updateFeeCeloKMS() Update the NFT marketplace fee
updateFeeKMS() Update the NFT marketplace fee
updateFeeRecipient() Update the recipient of the NFT marketplace fee
updateFeeRecipientCelo() Update the recipient of the NFT marketplace fee
updateFeeRecipientCeloKMS() Update the recipient of the NFT marketplace fee
updateFeeRecipientKMS() Update the recipient of the NFT marketplace fee
updateFeeRecipientSolana() Update the recipient of the NFT marketplace fee
updateFeeRecipientSolanaKMS() Update the recipient of the NFT marketplace fee
updateFeeSolana() Update the NFT marketplace fee
updateFeeSolanaKMS() Update the NFT marketplace fee
updateMarketplaceSolana() Update an NFT marketplace on Solana
updateMarketplaceSolanaKMS() Update an NFT marketplace on Solana
withdrawFromMarketplaceSolana() Withdraw funds from the marketplace fee account on Solana
withdrawFromMarketplaceSolanaKMS() Withdraw funds from the marketplace fee account on Solana

bloMarWithdrawFromMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f bloMarWithdrawFromMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/withdraw/treasury

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->bloMarWithdrawFromMarketplaceSolana(
    \Tatum\Model\WithdrawFromMarketplaceSolana $withdraw_from_marketplace_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$withdraw_from_marketplace_solana \Tatum\Model\WithdrawFromMarketplaceSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Withdraw funds from the marketplace treasury account on Solana

2 credits per API call

Withdraw funds from the NFT marketplace treasury account on Solana.

You can withdraw the funds only if you are the marketplace fee recipient.

This API is in alpha and is supported only for the mainnet on Solana.

Signing a transaction When withdrawing the funds, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


bloMarWithdrawFromMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f bloMarWithdrawFromMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/withdraw/treasury

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->bloMarWithdrawFromMarketplaceSolanaKMS(
    \Tatum\Model\WithdrawFromMarketplaceSolanaKMS $withdraw_from_marketplace_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$withdraw_from_marketplace_solana_kms \Tatum\Model\WithdrawFromMarketplaceSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Withdraw funds from the marketplace treasury account on Solana

Back to top


buyAssetOnMarketplace()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplace.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplace(
    \Tatum\Model\BuyAssetOnMarketplace $buy_asset_on_marketplace
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace \Tatum\Model\BuyAssetOnMarketplace    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

2 credits per API call

Buy an asset listed on the NFT marketplace.

You can buy the asset either for the native blockchain currency (for example, ETH, MATIC, and so on) or for the fungible tokens of the blockchain.

  • If you want to pay for the asset with the native blockchain currency, send the required amount plus the marketplace fee right in the API call (in the amount request body parameter).
  • If you want to pay with the fungible tokens, allow the marketplace smart contract to access your tokens before making the purchase. When you make the API call, the marketplace smart contract will deduct the required amount of the tokens from the smart contract where you hold the tokens.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

The “execution reverted” message When making this API call, you may get the following message:Although one or more Error Occurred [execution reverted] Contract Execution Completed This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.

Signing a transaction When buying an asset on the NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


buyAssetOnMarketplaceCelo()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplaceCelo.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplaceCelo(
    \Tatum\Model\BuyAssetOnMarketplaceCelo $buy_asset_on_marketplace_celo
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace_celo \Tatum\Model\BuyAssetOnMarketplaceCelo    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

Back to top


buyAssetOnMarketplaceCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplaceCeloKMS.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplaceCeloKMS(
    \Tatum\Model\BuyAssetOnMarketplaceCeloKMS $buy_asset_on_marketplace_celo_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace_celo_kms \Tatum\Model\BuyAssetOnMarketplaceCeloKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

Back to top


buyAssetOnMarketplaceKMS()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplaceKMS.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplaceKMS(
    \Tatum\Model\BuyAssetOnMarketplaceKMS $buy_asset_on_marketplace_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace_kms \Tatum\Model\BuyAssetOnMarketplaceKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

Back to top


buyAssetOnMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplaceSolana(
    \Tatum\Model\BuyAssetOnMarketplaceSolana $buy_asset_on_marketplace_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace_solana \Tatum\Model\BuyAssetOnMarketplaceSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

Back to top


buyAssetOnMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f buyAssetOnMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/listing/buy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->buyAssetOnMarketplaceSolanaKMS(
    \Tatum\Model\BuyAssetOnMarketplaceSolanaKMS $buy_asset_on_marketplace_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$buy_asset_on_marketplace_solana_kms \Tatum\Model\BuyAssetOnMarketplaceSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Buy an asset on the NFT marketplace

Back to top


cancelSellAssetOnMarketplace()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplace.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplace(
    \Tatum\Model\CancelSellAssetOnMarketplace $cancel_sell_asset_on_marketplace
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace \Tatum\Model\CancelSellAssetOnMarketplace    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

2 credits per API call

Cancel the selling of an asset on the NFT marketplace.

You can cancel the selling only if you are the seller of the asset or the marketplace operator. Once the selling is canceled, the asset is returned to the seller.

You cannot cancel the selling if the asset has already been purchased.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

The “execution reverted” message When making this API call, you may get the following message:Although one or more Error Occurred [execution reverted] Contract Execution Completed This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.

Signing a transaction When cancelling the selling of an asset, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


cancelSellAssetOnMarketplaceCelo()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplaceCelo.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplaceCelo(
    \Tatum\Model\CancelSellAssetOnMarketplaceCelo $cancel_sell_asset_on_marketplace_celo
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace_celo \Tatum\Model\CancelSellAssetOnMarketplaceCelo    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

Back to top


cancelSellAssetOnMarketplaceCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplaceCeloKMS.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplaceCeloKMS(
    \Tatum\Model\CancelSellAssetOnMarketplaceCeloKMS $cancel_sell_asset_on_marketplace_celo_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace_celo_kms \Tatum\Model\CancelSellAssetOnMarketplaceCeloKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

Back to top


cancelSellAssetOnMarketplaceKMS()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplaceKMS.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplaceKMS(
    \Tatum\Model\CancelSellAssetOnMarketplaceKMS $cancel_sell_asset_on_marketplace_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace_kms \Tatum\Model\CancelSellAssetOnMarketplaceKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

Back to top


cancelSellAssetOnMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplaceSolana(
    \Tatum\Model\CancelSellAssetOnMarketplaceSolana $cancel_sell_asset_on_marketplace_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace_solana \Tatum\Model\CancelSellAssetOnMarketplaceSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

Back to top


cancelSellAssetOnMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f cancelSellAssetOnMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/listing/cancel

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->cancelSellAssetOnMarketplaceSolanaKMS(
    \Tatum\Model\CancelSellAssetOnMarketplaceSolanaKMS $cancel_sell_asset_on_marketplace_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$cancel_sell_asset_on_marketplace_solana_kms \Tatum\Model\CancelSellAssetOnMarketplaceSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Cancel the selling of an asset on the NFT marketplace

Back to top


generateMarketplace()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplace.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplace(
    \Tatum\Model\GenerateMarketplace $generate_marketplace
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace \Tatum\Model\GenerateMarketplace    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

2 credits per API call

Deploy an NFT marketplace smart contract on the blockchain. With a deployed marketplace smart contract, you and your customers can create new listings for assets such as non-fungible tokens and combinations of token types as described by the ERC-721 and ERC-1155 standards on the Ethereum blockchain or by the equivalent standards on the other blockchains. As the marketplace operator, you can set a fee as a percentage of the asset price that will be paid on top of the asset price.

The purchase process looks like the following:

  1. The seller creates a listing for an asset on the NFT marketplace. The listing can be offered for the native blockchain assets (for example, ETH, BSC, and so on) or for the fungible tokens of the blockchain.
  2. The seller allows the marketplace smart contract to transfer the asset that they are selling.
  3. A buyer buys the asset.
    • If the buyer wants to pay with the native blockchain assets, they make the purchase (the buyAssetFromListing() method is called against the marketplace smart contract) and send the required amount of the native assets to the marketplace smart contract.
    • If the buyer wants to pay with the fungible tokens:
  4. The buyer allows the marketplace smart contract to access their tokens and makes the purchase (the buyAssetFromListing() method is called against the marketplace smart contract).
  5. The marketplace smart contract deducts the required amount of tokens from the smart contract where the buyer holds the tokens.
  6. The marketplace smart contract transfers the asset to the buyer, transfers the asset price to the seller, and sends the fee to the marketplace fee recipient.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Signing a transaction When deploying an NFT marketplace smart contract, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


generateMarketplaceCelo()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplaceCelo.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplaceCelo(
    \Tatum\Model\GenerateMarketplaceCelo $generate_marketplace_celo
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace_celo \Tatum\Model\GenerateMarketplaceCelo    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

Back to top


generateMarketplaceCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplaceCeloKMS.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplaceCeloKMS(
    \Tatum\Model\GenerateMarketplaceCeloKMS $generate_marketplace_celo_kms
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace_celo_kms \Tatum\Model\GenerateMarketplaceCeloKMS    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

Back to top


generateMarketplaceKMS()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplaceKMS.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplaceKMS(
    \Tatum\Model\GenerateMarketplaceKMS $generate_marketplace_kms
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace_kms \Tatum\Model\GenerateMarketplaceKMS    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

Back to top


generateMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplaceSolana(
    \Tatum\Model\GenerateMarketplaceSolana $generate_marketplace_solana
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace_solana \Tatum\Model\GenerateMarketplaceSolana    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

Back to top


generateMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f generateMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->generateMarketplaceSolanaKMS(
    \Tatum\Model\GenerateMarketplaceSolanaKMS $generate_marketplace_solana_kms
): \Tatum\Model\GenerateMarketplace200Response

Parameters

Name Type Description Notes
$generate_marketplace_solana_kms \Tatum\Model\GenerateMarketplaceSolanaKMS    

Return type

\Tatum\Model\GenerateMarketplace200Response

Description

Create an NFT marketplace

Back to top


getMarketplaceFee()

Example

#️⃣ Execute command in terminal

✨ php -f getMarketplaceFee.php

Request

GET /v3/blockchain/marketplace/listing/{chain}/{contractAddress}/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->getMarketplaceFee(
    string $chain,
    string $contract_address
): float

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string Contract address  

Return type

float

Description

Get the NFT marketplace fee

1 credit per API call

Get the NFT marketplace fee.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Back to top


getMarketplaceFeeRecipient()

Example

#️⃣ Execute command in terminal

✨ php -f getMarketplaceFeeRecipient.php

Request

GET /v3/blockchain/marketplace/listing/{chain}/{contractAddress}/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->getMarketplaceFeeRecipient(
    string $chain,
    string $contract_address
): \Tatum\Model\GetMarketplaceFeeRecipient200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string Contract address  

Return type

\Tatum\Model\GetMarketplaceFeeRecipient200Response

Description

Get the recipient of the NFT marketplace fee

1 credit per API call

Get the recipient of the NFT marketplace fee.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Back to top


getMarketplaceInfo()

Example

#️⃣ Execute command in terminal

✨ php -f getMarketplaceInfo.php

Request

GET /v3/blockchain/marketplace/listing/{chain}/{contractAddress}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->getMarketplaceInfo(
    string $chain,
    string $contract_address
): \Tatum\Model\GetMarketplaceInfo200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string Contract address  

Return type

\Tatum\Model\GetMarketplaceInfo200Response

Description

Get information about an NFT marketplace on Solana

1 credit per API call

Get information about an NFT marketplace on Solana.

This API is in alpha and is supported only for the mainnet on Solana.

Back to top


getMarketplaceListing()

Example

#️⃣ Execute command in terminal

✨ php -f getMarketplaceListing.php

Request

GET /v3/blockchain/marketplace/listing/{chain}/{contractAddress}/listing/{id}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->getMarketplaceListing(
    string $chain,
    string $contract_address,
    string $id
): \Tatum\Model\GetMarketplaceListing200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string Contract address  
$id string Listing ID  

Return type

\Tatum\Model\GetMarketplaceListing200Response

Description

Get information about a listing on the NFT marketplace

1 credit per API call

Get information about a specific listing on the NFT marketplace.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Back to top


getMarketplaceListings()

Example

#️⃣ Execute command in terminal

✨ php -f getMarketplaceListings.php

Request

GET /v3/blockchain/marketplace/listing/{chain}/{contractAddress}/{type}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->getMarketplaceListings(
    string $chain,
    string $contract_address,
    string $type
): string[]

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string Contract address  
$type string The type of listings to return  

Return type

string[]

Description

Get the listings of a certain type from the NFT marketplace

1 credit per API call

Get the open, sold, or cancelled listings from the NFT marketplace.

This API is supported for the following blockchains:

  • Celo
  • Ethereum
  • Polygon
  • Solana (in alpha)

Back to top


sellAssetOnMarketplace()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplace.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplace(
    \Tatum\Model\SellAssetOnMarketplace $sell_asset_on_marketplace
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace \Tatum\Model\SellAssetOnMarketplace    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

2 credits per API call

Create a new listing for an asset on the NFT marketplace. The listing can be offered for the native blockchain assets (for example, ETH, MATIC, and so on) or for any fungible tokens.

After the listing is created, allow the marketplace smart contract to transfer the asset that you are selling.

You can create a listing only for an existing asset that you own (you must be the owner of the asset).

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

A known issue on Harmony On Harmony, when you are viewing a transaction in the Harmony Blockchain Explorer, the transaction status may be displayed as the following:Error reverted:x0 This is a known issue with the Harmony Blockchain Explorer. This status does not mean that the transaction failed. You can safely ignore it.

The “execution reverted” message When making this API call, you may get the following message:Although one or more Error Occurred [execution reverted] Contract Execution Completed This message is a result of the marketplace version check and has no impact on completing the API call. You can safely ignore it.

Signing a transaction When creating a new listing on the NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


sellAssetOnMarketplaceCelo()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplaceCelo.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplaceCelo(
    \Tatum\Model\SellAssetOnMarketplaceCelo $sell_asset_on_marketplace_celo
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace_celo \Tatum\Model\SellAssetOnMarketplaceCelo    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

Back to top


sellAssetOnMarketplaceCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplaceCeloKMS.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplaceCeloKMS(
    \Tatum\Model\SellAssetOnMarketplaceCeloKMS $sell_asset_on_marketplace_celo_kms
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace_celo_kms \Tatum\Model\SellAssetOnMarketplaceCeloKMS    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

Back to top


sellAssetOnMarketplaceKMS()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplaceKMS.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplaceKMS(
    \Tatum\Model\SellAssetOnMarketplaceKMS $sell_asset_on_marketplace_kms
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace_kms \Tatum\Model\SellAssetOnMarketplaceKMS    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

Back to top


sellAssetOnMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplaceSolana(
    \Tatum\Model\SellAssetOnMarketplaceSolana $sell_asset_on_marketplace_solana
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace_solana \Tatum\Model\SellAssetOnMarketplaceSolana    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

Back to top


sellAssetOnMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f sellAssetOnMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/listing/sell

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->sellAssetOnMarketplaceSolanaKMS(
    \Tatum\Model\SellAssetOnMarketplaceSolanaKMS $sell_asset_on_marketplace_solana_kms
): \Tatum\Model\SellAssetOnMarketplace200Response

Parameters

Name Type Description Notes
$sell_asset_on_marketplace_solana_kms \Tatum\Model\SellAssetOnMarketplaceSolanaKMS    

Return type

\Tatum\Model\SellAssetOnMarketplace200Response

Description

Sell an asset on the NFT marketplace

Back to top


updateFee()

Example

#️⃣ Execute command in terminal

✨ php -f updateFee.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFee(
    \Tatum\Model\UpdateFee $update_fee
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee \Tatum\Model\UpdateFee    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

2 credits per API call

Update the NFT marketplace fee.

You can update the marketplace fee only if you are the marketplace operator.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Signing a transaction When updating the NFT marketplace fee, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


updateFeeCelo()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeCelo.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeCelo(
    \Tatum\Model\UpdateFeeCelo $update_fee_celo
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_celo \Tatum\Model\UpdateFeeCelo    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

Back to top


updateFeeCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeCeloKMS.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeCeloKMS(
    \Tatum\Model\UpdateFeeCeloKMS $update_fee_celo_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_celo_kms \Tatum\Model\UpdateFeeCeloKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

Back to top


updateFeeKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeKMS.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeKMS(
    \Tatum\Model\UpdateFeeKMS $update_fee_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_kms \Tatum\Model\UpdateFeeKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

Back to top


updateFeeRecipient()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipient.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipient(
    \Tatum\Model\UpdateFeeRecipient $update_fee_recipient
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient \Tatum\Model\UpdateFeeRecipient    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

2 credits per API call

Update the recipient of the NFT marketplace fee.

You can update the fee recipient only if you are the marketplace operator.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • Polygon
  • Solana (in alpha)

Signing a transaction When updating the recipient of the NFT marketplace fee, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


updateFeeRecipientCelo()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipientCelo.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipientCelo(
    \Tatum\Model\UpdateFeeRecipientCelo $update_fee_recipient_celo
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient_celo \Tatum\Model\UpdateFeeRecipientCelo    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

Back to top


updateFeeRecipientCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipientCeloKMS.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipientCeloKMS(
    \Tatum\Model\UpdateFeeRecipientCeloKMS $update_fee_recipient_celo_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient_celo_kms \Tatum\Model\UpdateFeeRecipientCeloKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

Back to top


updateFeeRecipientKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipientKMS.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipientKMS(
    \Tatum\Model\UpdateFeeRecipientKMS $update_fee_recipient_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient_kms \Tatum\Model\UpdateFeeRecipientKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

Back to top


updateFeeRecipientSolana()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipientSolana.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipientSolana(
    \Tatum\Model\UpdateFeeRecipientSolana $update_fee_recipient_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient_solana \Tatum\Model\UpdateFeeRecipientSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

Back to top


updateFeeRecipientSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeRecipientSolanaKMS.php

Request

PUT /v3/blockchain/marketplace/listing/recipient

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeRecipientSolanaKMS(
    \Tatum\Model\UpdateFeeRecipientSolanaKMS $update_fee_recipient_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_recipient_solana_kms \Tatum\Model\UpdateFeeRecipientSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the recipient of the NFT marketplace fee

Back to top


updateFeeSolana()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeSolana.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeSolana(
    \Tatum\Model\UpdateFeeSolana $update_fee_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_solana \Tatum\Model\UpdateFeeSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

Back to top


updateFeeSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateFeeSolanaKMS.php

Request

PUT /v3/blockchain/marketplace/listing/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateFeeSolanaKMS(
    \Tatum\Model\UpdateFeeSolanaKMS $update_fee_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_fee_solana_kms \Tatum\Model\UpdateFeeSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update the NFT marketplace fee

Back to top


updateMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f updateMarketplaceSolana.php

Request

PUT /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateMarketplaceSolana(
    \Tatum\Model\UpdateMarketplaceSolana $update_marketplace_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_marketplace_solana \Tatum\Model\UpdateMarketplaceSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Update an NFT marketplace on Solana

2 credits per API call

Update an NFT marketplace on Solana.

You can update it only if you are the marketplace operator.

This API is in alpha and is supported only for the mainnet on Solana.

Signing a transaction When updating an NFT marketplace, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


updateMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f updateMarketplaceSolanaKMS.php

Request

PUT /v3/blockchain/marketplace/listing

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->updateMarketplaceSolanaKMS(
    \Tatum\Model\UpdateMarketplaceSolanaKMS $update_marketplace_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$update_marketplace_solana_kms \Tatum\Model\UpdateMarketplaceSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Update an NFT marketplace on Solana

Back to top


withdrawFromMarketplaceSolana()

Example

#️⃣ Execute command in terminal

✨ php -f withdrawFromMarketplaceSolana.php

Request

POST /v3/blockchain/marketplace/withdraw/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->withdrawFromMarketplaceSolana(
    \Tatum\Model\WithdrawFromMarketplaceSolana $withdraw_from_marketplace_solana
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$withdraw_from_marketplace_solana \Tatum\Model\WithdrawFromMarketplaceSolana    

Return type

\Tatum\Model\TransactionSigned

Description

Withdraw funds from the marketplace fee account on Solana

2 credits per API call

Withdraw funds from the NFT marketplace fee account on Solana.

You can withdraw the funds only if you are the marketplace fee recipient.

This API is in alpha and is supported only for the mainnet on Solana.

Signing a transaction When withdrawing the funds, you are charged a fee for the transaction, and you must sign the transaction with the private key of the blockchain address from which the fee will be deducted.

Providing the private key in the API is not a secure way of signing transactions, because the private key can be stolen or exposed. Your private keys should never leave your security perimeter. You should use the private keys only for testing a solution you are building on the testnet of a blockchain.

For signing transactions on the mainnet, we strongly recommend that you use the Tatum Key Management System (KMS) and provide the signature ID instead of the private key in the API. Alternatively, you can use the Tatum JavaScript client.

Back to top


withdrawFromMarketplaceSolanaKMS()

Example

#️⃣ Execute command in terminal

✨ php -f withdrawFromMarketplaceSolanaKMS.php

Request

POST /v3/blockchain/marketplace/withdraw/fee

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->marketplace()->withdrawFromMarketplaceSolanaKMS(
    \Tatum\Model\WithdrawFromMarketplaceSolanaKMS $withdraw_from_marketplace_solana_kms
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$withdraw_from_marketplace_solana_kms \Tatum\Model\WithdrawFromMarketplaceSolanaKMS    

Return type

\Tatum\Model\TransactionSigned

Description

Withdraw funds from the marketplace fee account on Solana

Back to top