Functionality available for contracts that implement the IERC721 interface.


Get the NFT balance of the connected wallet (number of NFTs in this contract owned by the connected wallet).

var data = await contract.ERC721.Balance();


Get a wallet’s NFT balance (number of NFTs in this contract owned by the wallet).

var data = await contract.ERC721.BalanceOf("{{wallet_address}}");


Get the metadata for an NFT in this contract using it’s token ID.

Metadata is fetched from the uri property of the NFT.

If the metadata is hosted on IPFS, the metadata is fetched and made available as an object. The object’s image property will be a URL that is available through the thirdweb IPFS gateway.

var data = await contract.ERC721.Get("{{token_id}}");


Get whether this wallet has approved transfers from the given operator.

This means that the operator can transfer NFTs on behalf of this wallet.

var data = await contract.ERC721.IsApprovedForAll("{{owner_address}}", "{{operator_address}}");


Get the wallet address of the owner of an NFT.

var data = await contract.ERC721.OwnerOf("{{token_id}}");


Give another address approval (or remove approval) to transfer any of your NFTs from this collection.

var data = await contract.ERC721.SetApprovalForAll("{{address_to_approve}}", true);


Transfer an NFT from the connected wallet to another wallet.

var data = await contract.ERC721.Transfer("{{wallet_address}}", "{{token_id}}");