Multi Tokens (ERC-1155 or compatible)

A Multi Token combines characteristics of fungible and non-fungible tokens. A single Multi Token smart contract allows you to mint fungible, non-fungible, and semi-fungible tokens and process different types of the tokens in a single transaction. Multi Tokens are described by the ERC-1155 standard on the Ethereum blockchain or by the equivalent standard on the other blockchains.

Multi Tokens can be used for nearly any digital asset or good to ensure authenticity and scarcity, for example:

  • In-game assets: Multi Tokens can be used to create unique collectibles in the form of characters, weapons, skins, or other equipment. Players can resell or trade assets directly as they choose, and their authenticity is easily verifiable.
  • Music and other digital media: Multi Tokens can be used to create rare and unique collectible digital releases. Similarly, Multi Tokens can be used to sell videos, art, or any other type of digital media. Collectors can own digital originals of their favorite songs, movies, and so on.
  • Digital sports merchandise: Trading cards, memorabilia, classic moments in sports history, and one-of-a-kind experiences can be sold as Multi Tokens.

Each Multi Token-related API supports its own set of the blockchains. The list of the supported blockchains is provided in the API description further in this section.

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
uri
required
string

URI of the Multi Token token

fromPrivateKey
required
string = 66 characters

Private key of account address, from which gas for deployment of ERC1155 will be paid. Private key, or signature Id must be present.

publicMint
boolean

True if the contract is publicMint type

nonce
number >= 0

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/deploy
Request samples
application/json
{
  • "chain": "ETH",
  • "uri": "example.com",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
tokenId
required
string <= 32 characters

ID of token to be created.

to
required
string = 42 characters

Blockchain address to send Multi Token token to

contractAddress
required
string = 42 characters

Address of Multi Token token

amount
required
string <= 32 characters

amount of token to be created.

data
string

Data in bytes

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number >= 0

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/mint
Request samples
application/json
{
  • "chain": "ETH",
  • "tokenId": "100000",
  • "to": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "amount": "100000",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
to
required
Array of strings

The blockchain address to send the Multi Tokens to.

tokenId
required
Array of strings

The IDs of the Multi Tokens to be created.

amounts
required
Array of strings

The amounts of the Multi Tokens to be created.

data
string

Data in bytes

contractAddress
required
string = 42 characters

The address of the Multi Token smart contract

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number >= 0

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/mint/batch
Request samples
application/json
{
  • "chain": "ETH",
  • "to": [
    ],
  • "tokenId": [
    ],
  • "amounts": [
    ],
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
account
required
string = 42 characters

Address of holder

tokenId
required
string <= 32 characters

ID of token to be destroyed.

contractAddress
required
string = 42 characters

Address of Multi Token token

fromPrivateKey
required
string [ 66 .. 103 ] characters

Private key of sender address. Private key, or signature Id must be present.

amount
required
string <= 32 characters

amount of token to be destroyed.

nonce
number >= 0

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/burn
Request samples
application/json
{
  • "chain": "ETH",
  • "account": "0x4b812a77b109A150C2Fc89eD133EaBC78bC9EC8f",
  • "tokenId": "100000",
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2",
  • "amount": "100000"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
account
required
string = 42 characters

Address of holder

tokenId
required
Array of strings

The IDs of the Multi Tokens to be destroyed.

amounts
required
Array of strings

The amounts of the Multi Tokens to be destroyed.

contractAddress
required
string = 42 characters

The address of the Multi Token smart contract

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number >= 0

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/burn/batch
Request samples
application/json
{
  • "chain": "ETH",
  • "account": "0x4b812a77b109A150C2Fc89eD133EaBC78bC9EC8f",
  • "tokenId": [
    ],
  • "amounts": [
    ],
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
to
required
string = 42 characters

Blockchain address to send Multi Token token to

tokenId
required
string <= 256 characters

ID of token.

amount
required
string <= 32 characters

amount of token.

data
string

Data in bytes

contractAddress
required
string = 42 characters

Address of Multi Token token

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/transaction
Request samples
application/json
{
  • "chain": "ETH",
  • "to": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "tokenId": "100000",
  • "amount": "100000",
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "ONE" "MATIC" "KCS" "KLAY" "BSC"
to
required
string = 42 characters

Blockchain address to send Multi Token token to

tokenId
required
Array of strings

ID of token.

amounts
required
Array of strings <= 256 characters

amounts of token.

data
string

Data in bytes

contractAddress
required
string = 42 characters

Address of Multi Token token

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number

Nonce to be set to transaction. If not present, last known nonce will be used.

object

Custom defined fee. If not present, it will be calculated automatically.

gasLimit
required
string^[+]?\d+$

Gas limit for transaction in gas price.

gasPrice
required
string^[+]?\d+$

Gas price in Gwei.

Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/transaction/batch
Request samples
application/json
{
  • "chain": "ETH",
  • "to": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "tokenId": [
    ],
  • "amounts": [
    ],
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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.

SecurityX-API-Key
Request
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Request Body schema: application/json
One of:
chain
required
string

Chain to work with.

Enum: "ETH" "MATIC" "KCS" "KLAY" "CELO" "ONE" "BSC"
contractAddress
required
string = 42 characters

Address of MultiToken token

minter
required
string = 42 characters

Address of MultiToken minter

fromPrivateKey
required
string = 66 characters

Private key of sender address. Private key, or signature Id must be present.

nonce
number >= 0

Nonce to be set to Ethereum transaction. If not present, last known nonce will be used.

object (CustomFee)

The custom defined fee; if not present, will be calculated automatically

gasPrice
required
string^[+]?\d+$

The price for one gas unit (in Gwei)

gasLimit
required
string^[+]?\d+$

The maximum number of gas units that you are willing to spend on processing the transaction at the provided gas price

feeCurrency
string

Currency to pay for transaction gas, only valid for CELO chain.

Enum: "CELO" "CUSD" "CEUR"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

post/v3/multitoken/mint/add
Request samples
application/json
{
  • "chain": "ETH",
  • "contractAddress": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "minter": "0x687422eEA2cB73B5d3e242bA5456b782919AFc85",
  • "fromPrivateKey": "0x05e150c73f1920ec14caa1e0b6aa09940899678051a78542840c2668ce5080c2"
}
Response samples
application/json
{
  • "txId": "c83f8818db43d9ba4accfe454aa44fc33123d47a4f89d47b314d6748eb0e9bc9"
}

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "CELO" "ETH" "MATIC"
Example: CELO
address
required
string

Account address you want to get balance of

Example: 0x8ce4e40889a13971681391aad29e88efaf91f784
tokenAddress
required
string

Address of the token smart contract

Example: 0x1ce4e40889a13971681391aad29e88efaf91f784
query Parameters
pageSize
required
number [ 1 .. 50 ]

Max number of items per page is 50.

Example: pageSize=10
offset
number

Offset to obtain next page of the data.

Example: offset=0
from
number >= 0

Transactions from this block onwards will be included.

Example: from=1087623
to
number >= 0

Transactions up to this block will be included.

Example: to=1087823
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/transaction/{chain}/{address}/{tokenAddress}
Request samples
Response samples
application/json
[
  • {
    }
]

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "KCS" "KLAY" "ONE" "CELO" "BSC"
hash
required
string

Transaction hash

Example: 0xe6e7340394958674cdf8606936d292f565e4ecc476aaa8b258ec8a141f7c75d7
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/transaction/{chain}/{hash}
Request samples
Response samples
application/json
{
  • "blockHash": "0xcf2c40f475e78c7c19778e1ae999a0e371c9319b38182ea15dc94536f13f9137",
  • "status": true,
  • "blockNumber": 6470854,
  • "from": "0x81b7E08F65Bdf5648606c89998A9CC8164397647",
  • "gas": 21000,
  • "gasPrice": "1000000000",
  • "transactionHash": "0xe6e7340394958674cdf8606936d292f565e4ecc476aaa8b258ec8a141f7c75d7",
  • "input": "0x",
  • "nonce": 26836405,
  • "to": "0xbC546fa1716Ed886967cf73f40e8F2F5e623a92d",
  • "transactionIndex": 3,
  • "value": "1000000000000000000",
  • "gasUsed": 21000,
  • "cumulativeGasUsed": 314159,
  • "contractAddress": "0x81b7E08F65Bdf5648606c89998A9CC8164397647",
  • "logs": [
    ]
}

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "CELO"
Example: ETH
address
required
string

Blockchain address

Example: 0x3223AEB8404C7525FcAA6C512f91e287AE9FfE7B
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/address/balance/{chain}/{address}
Request samples
Response samples
application/json
[
  • {
    }
]

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "KCS" "KLAY" "ONE" "CELO" "BSC"
address
required
string

The blockchain address that you want to get the token balance of

Example: 0x3223AEB8404C7525FcAA6C512f91e287AE9FfE7B
contractAddress
required
string

The address of the Multi Token smart contract

Example: 0x94Ce79B9F001E25BBEbE7C01998A78F7B27D1326
tokenId
required
string

The ID of the Multi Token

Example: 100
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/balance/{chain}/{contractAddress}/{address}/{tokenId}
Request samples
Response samples
application/json
{
  • "data": "10"
}

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "KCS" "KLAY" "ONE" "CELO" "BSC"
contractAddress
required
string

The address of the Multi Token smart contract

Example: 0x94Ce79B9F001E25BBEbE7C01998A78F7B27D1326
query Parameters
tokenId
required
string

Comma-separated IDs of the Multi Tokens to get the amounts for

Example: tokenId=1,2,3
address
required
string

Comma-separated blockchain addresses to get the token balance for

Example: address=0x3223AEB8404C7525FcAA6C512f91e287AE9FfE7B,0x3223AEB8404C7525FcAA6C512f91e287AE9FfE7B,0x3223AEB8404C7525FcAA6C512f91e287AE9FfE7B
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/balance/batch/{chain}/{contractAddress}
Request samples
Response samples
application/json
[
  • "10",
  • "20"
]

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
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "KCS" "KLAY" "ONE" "CELO" "BSC"
token
required
string <= 32 characters

Token ID

Example: 1
contractAddress
required
string

Multi Token contract address

Example: 0x94Ce79B9F001E25BBEbE7C01998A78F7B27D1326
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/metadata/{chain}/{contractAddress}/{token}
Request samples
Response samples
application/json

Get the address of a Multi Token smart contract by its transaction hashDeprecated

This endpoint is deprecated. Do not use it.
Instead, use this API.


1 credit per API call

Get Multi Token contract address from deploy transaction.

This API is supported for the following blockchains:

  • BNB Smart Chain
  • Celo
  • Ethereum
  • Harmony
  • Klaytn
  • KuCoin Community Chain
  • Polygon
SecurityX-API-Key
Request
path Parameters
chain
required
string

Blockchain to work with

Enum: "ETH" "MATIC" "KCS" "KLAY" "ONE" "CELO" "BSC"
hash
required
string

Transaction hash

Example: 0xe6e7340394958674cdf8606936d292f565e4ecc476aaa8b258ec8a141f7c75d7
header Parameters
x-testnet-type
string
Default: ethereum-sepolia

Type of testnet. Defaults to Sepolia. Valid only for ETH invocations.

Value: "ethereum-sepolia"
Responses
200

OK

400

Bad Request. Validation failed for the given object in the HTTP Body or Request parameters.

401

Unauthorized. Not valid or inactive subscription key present in the HTTP Header.

403

Forbidden. The request is authenticated, but it is not possible to required perform operation due to logical error or invalid permissions.

500

Internal server error. There was an error on the server during the processing of the request.

get/v3/multitoken/address/{chain}/{hash}
Request samples
Response samples
application/json
{
  • "contractAddress": "0xc21C81ef03f98898Fb155E00C364e8a7b9D158b8"
}