Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

IErc721Portal

Git Source

Inherits: IPortal

Title: ERC-721 Portal interface

Functions

depositErc721Token

Transfer an ERC-721 token to an application contract and add an input to the application's input box to signal such operation. The caller must change the approved address for the ERC-721 token to the portal address beforehand, by calling the approve function in the token contract.

If the application is foreclosed, and the deposit input is not processed, the user can issue a refund. If the user deposits an NFT through a smart contract, a refund will only succeed if the smart contract accepts it through the onERC721Received callback. If the smart contract wallet does not accept the NFT through the callback, it may not be recoverable.

function depositErc721Token(
    IERC721 token,
    address appContract,
    uint256 tokenId,
    bytes calldata baseLayerData,
    bytes calldata execLayerData
) external;

Parameters

NameTypeDescription
tokenIERC721The ERC-721 token contract
appContractaddressThe application contract address
tokenIduint256The identifier of the token being transferred
baseLayerDatabytesAdditional data to be interpreted by the base layer
execLayerDatabytesAdditional data to be interpreted by the execution layer