Overview
Fireblocks allows you to hold and interact with a wide range of blockchains, networks, and tokens. This includes the following advanced support for tokens on EVM-compatible blockchains:
- Fungible tokens: We support listing and interacting with any fungible token that implements the ERC-20 interface. You can list fungible tokens either manually or automatically. Learn more about listing EVM-based fungible tokens.
- Non-fungible tokens (NFTs): We support listing and interacting with any non-fungible tokens that implement the ERC-721 interface and any semi-fungible tokens that implement the ERC-1155 standard. We also support non-fungible and semi-fungible tokens that use the FA2 standard on Tezos.
This article details NFT support on Fireblocks.
Fireblocks NFT listing
When you receive a new NFT to your Vault through a transfer, airdrop, or other methods, we automatically list it as a new asset with a unique identifier. Unlike fungible tokens, the AssetID is not set per contract (collection) but rather per TokenID. Therefore, two different tokens in the same collection are listed as two separate assets. For ERC-1155 tokens and the equivalent on Tezos, the asset may also have a balance of more than one.
When receiving an NFT, a transaction with the new NFT identifier will show in the Recent activity panel. If you have configured a transaction event webhook, it will be triggered as well.
For each NFT, Fireblocks stores the following data:
- TokenID
- CollectionID (contract address)
- Standard (ERC-721, ERC-1155, or FA2)
- Balance (as reflected on the blockchain)
- Metadata URI
- Collection name (if exists)
- Token name (if exists)
For NFTs that link to a media file, we cache the media and remove any potentially malicious content.
We automatically de-list NFTs when you transfer them out of your Vault. They are re-listed when you transfer them back to your Vault.
You can see your listed NFTs on the NFTs page in the Fireblocks Console. If you are using the API, you can query the listed NFTs.
Supported blockchains
NFTs are natively listed for:
- Base
- Ethereum
- Iotex
- Mantle
- Palm
- Polygon
- Soneium
- Tezos
- Tezos Etherlink
Metadata changes
Any metadata attached to NFTs, such as images or other media, may change over time. You can refresh the token’s metadata to reflect the NFT’s current state. You can use an API endpoint to refresh the metadata or refresh the metadata directly in the Console if the token is displayed in the NFT Gallery.
Managing your NFTs in the Console
Some native NFT operations, such as minting, are not yet natively supported on the Fireblocks Console. To manually mint or sell your NFT, you may connect to Web3 decentralized applications (dApps) using WalletConnect or the Fireblocks Chrome Extension.
Marketplaces like OpenSea and SuperRare allow you to perform these operations from their application. Transactions created from those applications pass through your Transaction Authorization Policy (TAP) before being securely signed by your Fireblocks hosted key.
Managing your NFTs using the API
While native NFT minting is currently unavailable, the Fireblocks Smart Contract API allows full access to any smart contract functionality. You may use this API to directly interact with any ERC-721, ERC-1155, FA2, or equivalent token smart contracts.
Following are some specific code examples: