Protocol Interactions
There are five main contract interactions in the RARA protocol:
Comment/React on a NFT
Sell Curator Tokens
Register an NFT for use as a reaction
Withdraw Royalties
Withdraw Taker Rewards
Comment/React to an NFT
The main interaction in the RARA protocol is reacting to NFTs. This is a two-step process: 1) buying reactions using USDC, and 2) spending reactions. When a reaction is spent the underlying USDC is moved into the curated NFT’s bonding curve and the user is issued CuratorVault tokens.
Contract Source Code: ReactionVault
ABI: ReactionVault.json
Chain: Polygon (137)
Deployed Address: 0xE5BA5c73378BC8Da94738CB04490680ae3eab88C
Functions
Sell Curator Tokens
Users can redeem curator tokens for USDC.
Contract Source Code: SigmoidCuratorVault
Chain: Polygon (137)
Deployed Address: 0x7D278Aa2d95ABa7C969c9F316be6f0cFE0D18A50
Functions
Register an NFT to use as a Reaction
NFTs owners can register their NFTs to be sold as Reactions. The MakerRegistrar contract will attempt to use the royalty registry contracts (EIP2981) to honor creator royalties. The MakerRegistrar contract registerNFT function also includes optional parameters to set creator addresses and royalty amounts; these values will be used if the NFT is not present in the royalty registry.
Polygon NFT’s:
Contract Source Code: MakerRegistrar
ABI: MakerRegistrar.json
Chain: Polygon (137)
Deployed Address: 0x47CD3266FA94E40613B37a88D98196325Cd28412
Functions
Ethereum Mainnet NFT’s:
Contract Source Code: RootRegistrar
ABI: RootRegistrar.json
Chain: Ethereum Mainnet (1)
Deployed Address: 0x2665Aa3846EC61e6D28A0d9F76b70047719F3664
Functions
Withdraw Royalties
Royalties are generated by protocol activity. There are three types of royalties: “Maker rewards” are paid to the owner of the reaction when a reaction is sold, “Creator rewards” which are paid to the creator of the reaction when a reaction is sold, and “Referrer rewards”, which are paid to the referrer of the transaction when a reaction is sold or spent.
Contract Source Code: ReactionVault
ABI: ReactionVault.json
Chain: Polygon (137)
Deployed Address: 0xE5BA5c73378BC8Da94738CB04490680ae3eab88C
Functions
Withdraw Taker Rewards
When a reaction is spent a portion of the reaction’s underlying USDC is spent on curator tokens that are reserved for the owner of the curated NFT (the “Taker”). The Taker can redeem their curator tokens for USDC using the function below. Note: the curated NFT must be registered via the MakerRegistrar contract in order to prove ownership before the withdrawTakerRewards() function is called.
Contract Source Code: ReactionVault
ABI: ReactionVault.json
Chain: Polygon (137)
Deployed Address: 0xE5BA5c73378BC8Da94738CB04490680ae3eab88C
Functions
Last updated