web3wagmi
← All standards

ERC-721 Non-Fungible Token Standard

FinalERCcreated 2018-01-24146 later proposals build on itrequires ERC-165

Authors: William Entriken (@fulldecent), Dieter Shirley, Jacob Evans, Nastassia Sachs

ERC-165 interface ids

Computed here as the XOR of the selectors each interface defines.

ERC7210x80ac58cd

Functions this standard introduces (9)

0x095ea7b3approve(address,uint256)payable
0x70a08231balanceOf(address)view
0x081812fcgetApproved(uint256)view
0xe985e9c5isApprovedForAll(address,address)view
0x6352211eownerOf(uint256)view
0xb88d4fdesafeTransferFrom(address,address,uint256,bytes)payable
0x42842e0esafeTransferFrom(address,address,uint256)payable
0xa22cb465setApprovalForAll(address,bool)
0x23b872ddtransferFrom(address,address,uint256)payable

Inherited (1)

0x01ffc9a7supportsInterface(bytes4)ERC-165

Optional extensions (3)

Interfaces the spec defines alongside the core one, which an implementation may or may not carry.

ERC1650x01ffc9a7

0x01ffc9a7supportsInterface(bytes4)

ERC721Metadata0x5b5e139f

0x06fdde03name()
0x95d89b41symbol()
0xc87b56ddtokenURI(uint256)

ERC721Enumerable0x780e9d63

0x18160dddtotalSupply()
0x4f6ccce7tokenByIndex(uint256)
0x2f745c59tokenOfOwnerByIndex(address,uint256)

Events (3)

Topic0 is the keccak256 hash of the signature, which is what a log filter matches on.

0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efTransfer(address,address,uint256)
0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925Approval(address,address,uint256)
0x17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31ApprovalForAll(address,address,bool)

Depends on (1)

Proposals this one names in its requires field.

Built on by (146)

Later proposals that name this one in their requires field.

What the specification covers

Compare with

Parsed from the canonical specification · discussion