thirdweb

Explore

Docs

Support

ERC4907

Rental NFT, ERC-721 User And Expires Extension


ERC-4907 facilitates the efficient implementation of rentable NFTs.

This standard achieves the separation of NFT ownership and usage rights and automatically withdraws usage rights upon expiration.

This standard is an extension of EIP-721. It proposes an additional role (user) which can be granted to addresses, and a time where the role is automatically revoked (expires).

The user role represents permission to "use" the NFT, but not the ability to transfer it or set users.

The owner of the NFTs can set the user and expiration of an NFT by calling function setUser.

Here is an example usage:

  1. Alice owns an NFT4907 with id 1.

  2. Alice can lend it to anyone by setting the user and expiry of the NFT: setUser(1, anyone, expires).

  3. Alice can also cancel the right of using : setUser(1, address(0), 0).

Learn more : https://github.com/ethereum/EIPs/blob/master/EIPS/eip-4907.md

1.1.6 Release Notes


delete _beforeTokenTransfer. so transfer NFT will not change the user and expires of NFT.

    WRITE


  • READ

approve

nonpayable


Inputs

to

address

tokenId

uint256

Released by

doubledev.eth

View all contracts

Details

  • Release Date

    Aug 15, 2022

  • Licenses

    Apache-2.0, MIT


  • Extensions

  • ERC721


  • Share


    Learn about Release

    thirdweb © 2022

    FeedbackPrivacy PolicyTerms of ServiceGas Estimator