Skip to main content

ERC1155 Standard

You can utilize these features of the SDK if your contract implements the ERC1155 standard.

View NFT Balance

Get a wallet's NFT balance (number of NFTs in this contract owned by the wallet) for a specific token ID.

const { data: ownerBalance, isLoading, error } = useNFTBalance(contract, "{{wallet_address}}");
// for ERC1155 contracts, you can also pass a tokenId
const tokenId = 0;
const { data: ownerBalance, isLoading, error } = useNFTBalance(contract, "{{wallet_address}}", tokenId);

This snippet is for v3 of the SDK. Learn how to upgrade.

View in React SDK Documentation

Get NFT Metadata

Read the URI this NFT points to and fetch that data automatically.

If the metadata is stored on IPFS, this function uses our IPFS gateway (or the one you specify) to read the data.

const tokenId = 0; // the tokenId to look up
const { data: nft, isLoading, error } = useNFT(contract, tokenId);

This snippet is for v3 of the SDK. Learn how to upgrade.

View in React SDK Documentation

Transfer NFTs

Transfer an NFT from the connected wallet to another wallet.

const Component = () => {
const { contract } = useContract("{{contract_address}}");
const {
mutate: transferNFT,
isLoading,
error,
} = useTransferNFT(contract);

if (error) {
console.error("failed to transfer NFT", error);
}

return (
<button
disabled={isLoading}
onClick={() => transferNFT({
to: "{{wallet_address}}",
tokenId: 2
})}
>
Transfer
</button>
);
};

This snippet is for v3 of the SDK. Learn how to upgrade.

View in React SDK Documentation

Airdrop NFTs

Transfer NFTs to a list of wallets in one transaction.

const Component = () => {
const { contract } = useContract("{{contract_address}}");
const {
mutate: airdropNFT,
isLoading,
error,
} = useAirdropNFT(contract);

if (error) {
console.error("failed to transfer batch NFTs", error);
}

return (
<button
disabled={isLoading}
onClick={() => airdropNFT({
tokenId: 2,
addresses: [
{ address: "{{wallet_address}}", quantity: 2 },
{ address: "{{wallet_address}}", quantity: 4 } }
]
)}
>
Airdrop NFT
</button>
);
};

This snippet is for v3 of the SDK. Learn how to upgrade.

View in React SDK Documentation