Contracts & Standards

Mnemonic decodes and identifies all types of contracts using various heuristics, the bytecode and well-known standards.

Note: Mnemonic supports all official standards, including OpenZeppelin and more.

Contract decoding is happening in real-time as soon as the new contract is deployed on the blockchain. Newly deployed contracts are typically picked up by the Mnemonic indexer and become available for querying in the APIs within a few seconds.

Supported collections

Mnemonic supports all collections that have ever been or will be created on the Ethereum blockchain. Every API user gets an instant access to the universe of NFTs and all of its data.

Bellow we provide the breakdown of all the contract types that are currently supported.

Types

Contracts are categorized according to the following types which are available for filtering in APIs across various endpoints.

TYPE_UNKNOWN

Unknown represents undetected or unsupported contract type. Typically this type will be attributed to the contract that does not implement any known standard.

TYPE_ERC721

Represents an ERC-721 non-fungible token standard and contract type.

TYPE_ERC721_LEGACY

Represents a special contract type which is applied to legacy non-fungible like contracts which predate the official ERC-721 standard or are similar to it. Famously known CryptoKitties, for example, are of that type.

TYPE_ERC1155

Represents an ERC-1155 semi-fungible token standard and contract type.

TYPE_CRYPTOPUNKS

Represents special contract type dedicated to the official CryptoPunks contract.

TYPE_ERC20

Represents an ERC-20 contract type.

Note: While the above standards are commonly adopted by the community, it is not guaranteed that all NFT-related contracts follow them.

Polymorphism

It is possible that a contract may implement multiple standards at the same time. The most common use case is the combination of any of ERC721 or ERC1155 and ERC20 standards.

Mnemonic detects all possible implementations of various standards and decodes them accordingly. As a result, responses may often include multiple types per contract or collection.

Contributing

We are working hard to ensure that our platform covers the widest range of use cases and standards.

If you found missing or misclassified contracts or would like to add the support for a new standard we would like to hear from you. Please reach out to us via e-mail or Discord.