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

Api/MultiTokensERC1155OrCompatibleApi

Multi Tokens (ERC-1155 or compatible) API Reference

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

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

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

Methods

Method Description
addMultiTokenMinter() Add a Multi Token minter
addMultiTokenMinterKMS() Add a Multi Token minter
burnMultiToken() Burn a Multi Token
burnMultiTokenBatch() Burn multiple Multi Tokens
burnMultiTokenBatchCelo() Burn multiple Multi Tokens
burnMultiTokenBatchKMS() Burn multiple Multi Tokens
burnMultiTokenBatchKMSCelo() Burn multiple Multi Tokens
burnMultiTokenCelo() Burn a Multi Token
burnMultiTokenKMS() Burn a Multi Token
burnMultiTokenKMSCelo() Burn a Multi Token
deployMultiToken() Deploy a Multi Token smart contract
deployMultiTokenCelo() Deploy a Multi Token smart contract
deployMultiTokenCeloKMS() Deploy a Multi Token smart contract
deployMultiTokenKMS() Deploy a Multi Token smart contract
mintMultiToken() Mint a Multi Token
mintMultiTokenBatch() Mint multiple Multi Tokens
mintMultiTokenBatchCelo() Mint multiple Multi Tokens
mintMultiTokenBatchKMS() Mint multiple Multi Tokens
mintMultiTokenBatchKMSCelo() Mint multiple Multi Tokens
mintMultiTokenCelo() Mint a Multi Token
mintMultiTokenKMS() Mint a Multi Token
mintMultiTokenKMSCelo() Mint a Multi Token
multiTokenGetAddressBalance() Get all Multi Tokens that a blockchain address holds
multiTokenGetBalance() Get the amount of a specific MultiToken that a blockchain address holds
multiTokenGetBalanceBatch() Get the amount of one or multiple Multi Tokens for multiple blockchain addresses
multiTokenGetMetadata() Get Multi Token metadata
multiTokenGetTransaction() Get a Multi Token transaction by its hash
multiTokenGetTransactionByAddress() Get Multi Token transactions on a blockchain address
transferMultiToken() Transfer a Multi Token
transferMultiTokenBatch() Transfer multiple Multi Tokens
transferMultiTokenBatchCelo() Transfer multiple Multi Tokens
transferMultiTokenBatchKMS() Transfer multiple Multi Tokens
transferMultiTokenBatchKMSCelo() Transfer multiple Multi Tokens
transferMultiTokenCelo() Transfer a Multi Token
transferMultiTokenKMS() Transfer a Multi Token
transferMultiTokenKMSCelo() Transfer a Multi Token

addMultiTokenMinter()

Example

#️⃣ Execute command in terminal

✨ php -f addMultiTokenMinter.php

Request

POST /v3/multitoken/mint/add

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->addMultiTokenMinter(
    \Tatum\Model\AddMultiTokenMinter $add_multi_token_minter,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$add_multi_token_minter \Tatum\Model\AddMultiTokenMinter    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Add a Multi Token minter

2 credits per API call

Add Multi Token minter.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When adding a Multi Token minter, 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


addMultiTokenMinterKMS()

Example

#️⃣ Execute command in terminal

✨ php -f addMultiTokenMinterKMS.php

Request

POST /v3/multitoken/mint/add

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->addMultiTokenMinterKMS(
    \Tatum\Model\AddMultiTokenMinterKMS $add_multi_token_minter_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$add_multi_token_minter_kms \Tatum\Model\AddMultiTokenMinterKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Add a Multi Token minter

Back to top


burnMultiToken()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiToken.php

Request

POST /v3/multitoken/burn

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiToken(
    \Tatum\Model\BurnMultiToken $burn_multi_token,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token \Tatum\Model\BurnMultiToken    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn a Multi Token

2 credits per API call

Burn a fixed amount of Multi Tokens by id. This method destroys Multi Tokens from smart contract defined in contractAddress.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When burning a Multi Token, 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


burnMultiTokenBatch()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenBatch.php

Request

POST /v3/multitoken/burn/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenBatch(
    \Tatum\Model\BurnMultiTokenBatch $burn_multi_token_batch,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_batch \Tatum\Model\BurnMultiTokenBatch    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn multiple Multi Tokens

2 credits per API call

Burn multiple Multi Token Tokens by id assigned to same address in one transaction. This method destroys any Multi Tokens token from smart contract defined in contractAddress.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When burning multiple Multi Tokens, 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


burnMultiTokenBatchCelo()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenBatchCelo.php

Request

POST /v3/multitoken/burn/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenBatchCelo(
    \Tatum\Model\BurnMultiTokenBatchCelo $burn_multi_token_batch_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_batch_celo \Tatum\Model\BurnMultiTokenBatchCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn multiple Multi Tokens

Back to top


burnMultiTokenBatchKMS()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenBatchKMS.php

Request

POST /v3/multitoken/burn/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenBatchKMS(
    \Tatum\Model\BurnMultiTokenBatchKMS $burn_multi_token_batch_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_batch_kms \Tatum\Model\BurnMultiTokenBatchKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn multiple Multi Tokens

Back to top


burnMultiTokenBatchKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenBatchKMSCelo.php

Request

POST /v3/multitoken/burn/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenBatchKMSCelo(
    \Tatum\Model\BurnMultiTokenBatchKMSCelo $burn_multi_token_batch_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_batch_kms_celo \Tatum\Model\BurnMultiTokenBatchKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn multiple Multi Tokens

Back to top


burnMultiTokenCelo()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenCelo.php

Request

POST /v3/multitoken/burn

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenCelo(
    \Tatum\Model\BurnMultiTokenCelo $burn_multi_token_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_celo \Tatum\Model\BurnMultiTokenCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn a Multi Token

Back to top


burnMultiTokenKMS()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenKMS.php

Request

POST /v3/multitoken/burn

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenKMS(
    \Tatum\Model\BurnMultiTokenKMS $burn_multi_token_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_kms \Tatum\Model\BurnMultiTokenKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn a Multi Token

Back to top


burnMultiTokenKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f burnMultiTokenKMSCelo.php

Request

POST /v3/multitoken/burn

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->burnMultiTokenKMSCelo(
    \Tatum\Model\BurnMultiTokenKMSCelo $burn_multi_token_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$burn_multi_token_kms_celo \Tatum\Model\BurnMultiTokenKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Burn a Multi Token

Back to top


deployMultiToken()

Example

#️⃣ Execute command in terminal

✨ php -f deployMultiToken.php

Request

POST /v3/multitoken/deploy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->deployMultiToken(
    \Tatum\Model\DeployMultiToken $deploy_multi_token,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$deploy_multi_token \Tatum\Model\DeployMultiToken    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Deploy a Multi Token smart contract

2 credits per API call

Deploy Multi Token Smart Contract. This method creates new ERC1155 Smart Contract (Multi Tokens) on the blockchain. Smart contract is standardized and audited. It is possible to mint, burn and transfer tokens. It is also possible to mint multiple tokens at once.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When deploying a Multi Token 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


deployMultiTokenCelo()

Example

#️⃣ Execute command in terminal

✨ php -f deployMultiTokenCelo.php

Request

POST /v3/multitoken/deploy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->deployMultiTokenCelo(
    \Tatum\Model\DeployMultiTokenCelo $deploy_multi_token_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$deploy_multi_token_celo \Tatum\Model\DeployMultiTokenCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Deploy a Multi Token smart contract

Back to top


deployMultiTokenCeloKMS()

Example

#️⃣ Execute command in terminal

✨ php -f deployMultiTokenCeloKMS.php

Request

POST /v3/multitoken/deploy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->deployMultiTokenCeloKMS(
    \Tatum\Model\DeployMultiTokenCeloKMS $deploy_multi_token_celo_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$deploy_multi_token_celo_kms \Tatum\Model\DeployMultiTokenCeloKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Deploy a Multi Token smart contract

Back to top


deployMultiTokenKMS()

Example

#️⃣ Execute command in terminal

✨ php -f deployMultiTokenKMS.php

Request

POST /v3/multitoken/deploy

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->deployMultiTokenKMS(
    \Tatum\Model\DeployMultiTokenKMS $deploy_multi_token_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$deploy_multi_token_kms \Tatum\Model\DeployMultiTokenKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Deploy a Multi Token smart contract

Back to top


mintMultiToken()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiToken.php

Request

POST /v3/multitoken/mint

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiToken(
    \Tatum\Model\MintMultiToken $mint_multi_token,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token \Tatum\Model\MintMultiToken    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint a Multi Token

2 credits per API call

Mint a fixed amount of Multi Token and transfer it to destination account. Create and transfer any Multi Token token from smart contract defined in contractAddress. It is possible to add Metadata to the created token with a more detailed information about instead.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When minting a Multi Token, 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


mintMultiTokenBatch()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenBatch.php

Request

POST /v3/multitoken/mint/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenBatch(
    \Tatum\Model\MintMultiTokenBatch $mint_multi_token_batch,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_batch \Tatum\Model\MintMultiTokenBatch    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint multiple Multi Tokens

2 credits per API call

Create a fixed amount of multiple Multi Tokens Tokens and transfer them to destination account in one transaction. Create and transfer Multi Tokens tokens from smart contract defined in contractAddress.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When minting multiple Multi Tokens, 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


mintMultiTokenBatchCelo()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenBatchCelo.php

Request

POST /v3/multitoken/mint/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenBatchCelo(
    \Tatum\Model\MintMultiTokenBatchCelo $mint_multi_token_batch_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_batch_celo \Tatum\Model\MintMultiTokenBatchCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint multiple Multi Tokens

Back to top


mintMultiTokenBatchKMS()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenBatchKMS.php

Request

POST /v3/multitoken/mint/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenBatchKMS(
    \Tatum\Model\MintMultiTokenBatchKMS $mint_multi_token_batch_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_batch_kms \Tatum\Model\MintMultiTokenBatchKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint multiple Multi Tokens

Back to top


mintMultiTokenBatchKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenBatchKMSCelo.php

Request

POST /v3/multitoken/mint/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenBatchKMSCelo(
    \Tatum\Model\MintMultiTokenBatchKMSCelo $mint_multi_token_batch_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_batch_kms_celo \Tatum\Model\MintMultiTokenBatchKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint multiple Multi Tokens

Back to top


mintMultiTokenCelo()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenCelo.php

Request

POST /v3/multitoken/mint

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenCelo(
    \Tatum\Model\MintMultiTokenCelo $mint_multi_token_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_celo \Tatum\Model\MintMultiTokenCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint a Multi Token

Back to top


mintMultiTokenKMS()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenKMS.php

Request

POST /v3/multitoken/mint

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenKMS(
    \Tatum\Model\MintMultiTokenKMS $mint_multi_token_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_kms \Tatum\Model\MintMultiTokenKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint a Multi Token

Back to top


mintMultiTokenKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f mintMultiTokenKMSCelo.php

Request

POST /v3/multitoken/mint

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->mintMultiTokenKMSCelo(
    \Tatum\Model\MintMultiTokenKMSCelo $mint_multi_token_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$mint_multi_token_kms_celo \Tatum\Model\MintMultiTokenKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Mint a Multi Token

Back to top


multiTokenGetAddressBalance()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetAddressBalance.php

Request

GET /v3/multitoken/address/balance/{chain}/{address}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetAddressBalance(
    string $chain,
    string $address,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\MultiTokenGetAddressBalance200ResponseInner[]

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$address string Blockchain address  
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\MultiTokenGetAddressBalance200ResponseInner[]

Description

Get all Multi Tokens that a blockchain address holds

1 credit per API call

Get all Multi Tokens that a blockchain address holds. The Multi Tokens are returned grouped by the smart contracts they were minted on.

This API is supported for the following blockchains:

  • Celo
  • Ethereum
  • Polygon

Back to top


multiTokenGetBalance()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetBalance.php

Request

GET /v3/multitoken/balance/{chain}/{contractAddress}/{address}/{tokenId}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetBalance(
    string $chain,
    string $address,
    string $contract_address,
    string $token_id,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\MultiTokenGetBalance200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$address string The blockchain address that you want to get the token balance of  
$contract_address string The address of the Multi Token smart contract  
$token_id string The ID of the Multi Token  
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\MultiTokenGetBalance200Response

Description

Get the amount of a specific MultiToken that a blockchain address holds

1 credit per API call

Get the amount of a specific Multi Token (minted on the smart contract specified by the contractAddress path parameter in the request endpoint URL) that a blockchain address holds.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Back to top


multiTokenGetBalanceBatch()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetBalanceBatch.php

Request

GET /v3/multitoken/balance/batch/{chain}/{contractAddress}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetBalanceBatch(
    string $chain,
    string $contract_address,
    string $token_id,
    string $address,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): string[]

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$contract_address string The address of the Multi Token smart contract  
$token_id string Comma-separated IDs of the Multi Tokens to get the amounts for  
$address string Comma-separated blockchain addresses to get the token balance for  
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

string[]

Description

Get the amount of one or multiple Multi Tokens for multiple blockchain addresses

1 credit per API call

For multiple blockchain addresses, get the amount of one or multiple Multi Tokens (minted on the smart contract specified by the contractAddress path parameter in the request endpoint URL) that those addresses hold.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Back to top


multiTokenGetMetadata()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetMetadata.php

Request

GET /v3/multitoken/metadata/{chain}/{contractAddress}/{token}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetMetadata(
    string $chain,
    string $token,
    string $contract_address,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\MultiTokenGetMetadata200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$token string Token ID  
$contract_address string Multi Token contract address  
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\MultiTokenGetMetadata200Response

Description

Get Multi Token metadata

1 credit per API call

Get Multi Token metadata.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Back to top


multiTokenGetTransaction()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetTransaction.php

Request

GET /v3/multitoken/transaction/{chain}/{hash}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetTransaction(
    string $chain,
    string $hash,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\MultiTokenGetTransaction200Response

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$hash string Transaction hash  
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\MultiTokenGetTransaction200Response

Description

Get a Multi Token transaction by its hash

1 credit per API call

Get Multi Token transaction by transaction hash.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Back to top


multiTokenGetTransactionByAddress()

Example

#️⃣ Execute command in terminal

✨ php -f multiTokenGetTransactionByAddress.php

Request

GET /v3/multitoken/transaction/{chain}/{address}/{tokenAddress}

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->multiTokenGetTransactionByAddress(
    string $chain,
    string $address,
    string $token_address,
    float $page_size,
    [ float $offset, ]
    [ float $from, ]
    [ float $to ]
): \Tatum\Model\MultiTokenGetTransactionByAddress200ResponseInner[]

Parameters

Name Type Description Notes
$chain string Blockchain to work with  
$address string Account address you want to get balance of  
$token_address string Address of the token smart contract  
$page_size float Max number of items per page is 50.  
$offset float Offset to obtain next page of the data. [optional]
$from float Transactions from this block onwards will be included. [optional]
$to float Transactions up to this block will be included. [optional]

Return type

\Tatum\Model\MultiTokenGetTransactionByAddress200ResponseInner[]

Description

Get Multi Token transactions on a blockchain address

1 credit per API call

Get incoming and outgoing Multi Token transactions on a blockchain address.

This API is supported for the following blockchains:

  • Celo
  • Ethereum
  • Polygon

Back to top


transferMultiToken()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiToken.php

Request

POST /v3/multitoken/transaction

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiToken(
    \Tatum\Model\TransferMultiToken $transfer_multi_token,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token \Tatum\Model\TransferMultiToken    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer a Multi Token

2 credits per API call

Transfer a certain amount of Multi Token from account to another account. Transfer Multi Tokens token from smart contract defined in contractAddress.

Only 1 specific token with specified tokenId and value can be transferred. This method invokes ERC1155 method safeTransfer() to transfer the token in case of ETH, Celo and blockchains.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When transferring a Multi Token, 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


transferMultiTokenBatch()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenBatch.php

Request

POST /v3/multitoken/transaction/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenBatch(
    \Tatum\Model\TransferMultiTokenBatch $transfer_multi_token_batch,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_batch \Tatum\Model\TransferMultiTokenBatch    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer multiple Multi Tokens

2 credits per API call

Transfer Multi Token Batch from account to various other accounts in one transaction. Transfer multiple Multi Tokens token from smart contract defined in contractAddress.

Multiple token with specified tokenIds and values can be transferred. This method invokes ERC1155 method safeTransfer() to transfer the token in case of ETH, Celo and BSC.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon

Signing a transaction

When transferring multiple Multi Tokens, 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


transferMultiTokenBatchCelo()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenBatchCelo.php

Request

POST /v3/multitoken/transaction/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenBatchCelo(
    \Tatum\Model\TransferMultiTokenBatchCelo $transfer_multi_token_batch_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_batch_celo \Tatum\Model\TransferMultiTokenBatchCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer multiple Multi Tokens

Back to top


transferMultiTokenBatchKMS()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenBatchKMS.php

Request

POST /v3/multitoken/transaction/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenBatchKMS(
    \Tatum\Model\TransferMultiTokenBatchKMS $transfer_multi_token_batch_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_batch_kms \Tatum\Model\TransferMultiTokenBatchKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer multiple Multi Tokens

Back to top


transferMultiTokenBatchKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenBatchKMSCelo.php

Request

POST /v3/multitoken/transaction/batch

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenBatchKMSCelo(
    \Tatum\Model\TransferMultiTokenBatchKMSCelo $transfer_multi_token_batch_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_batch_kms_celo \Tatum\Model\TransferMultiTokenBatchKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer multiple Multi Tokens

Back to top


transferMultiTokenCelo()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenCelo.php

Request

POST /v3/multitoken/transaction

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenCelo(
    \Tatum\Model\TransferMultiTokenCelo $transfer_multi_token_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_celo \Tatum\Model\TransferMultiTokenCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer a Multi Token

Back to top


transferMultiTokenKMS()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenKMS.php

Request

POST /v3/multitoken/transaction

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenKMS(
    \Tatum\Model\TransferMultiTokenKMS $transfer_multi_token_kms,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_kms \Tatum\Model\TransferMultiTokenKMS    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer a Multi Token

Back to top


transferMultiTokenKMSCelo()

Example

#️⃣ Execute command in terminal

✨ php -f transferMultiTokenKMSCelo.php

Request

POST /v3/multitoken/transaction

Type signature

(new \Tatum\Sdk())->{mainnet/testnet}()->api()->multiTokensERC1155OrCompatible()->transferMultiTokenKMSCelo(
    \Tatum\Model\TransferMultiTokenKMSCelo $transfer_multi_token_kms_celo,
    [ string $x_testnet_type = 'ethereum-sepolia' ]
): \Tatum\Model\TransactionSigned

Parameters

Name Type Description Notes
$transfer_multi_token_kms_celo \Tatum\Model\TransferMultiTokenKMSCelo    
$x_testnet_type string Type of testnet. Defaults to Sepolia. Valid only for ETH invocations. [optional] [default to 'ethereum-sepolia']

Return type

\Tatum\Model\TransactionSigned

Description

Transfer a Multi Token

Back to top