Skip to main content



This feature is available on contracts that implement the Permissions extension.

Permissions outline which wallet addresses can perform which actions on your smart contract.

You can invite team members using their wallet addresses to have different levels of permissions on your smart contract under the Permissions tab.

To define which wallets have these permissions, you must add them to the required role.

From the dashboard, you can add or remove wallets for each role in the Permissions view:

Screenshot of permissions

Each contract has a different set of configurable roles, you can find the full list in the ALL_ROLES variable.

Role NameDescriptionRelevant Contracts
adminGrant or revoke roles and modify settings on this contract.All contracts
minterCreate new tokens on this contract.NFTs, Tokens
transferTransfer tokens on this contract.NFTs, Tokens
unwrapCan unwrap tokens on this contract.Multiwrap, Pack
listerCan create new listings on this marketplace contract.Marketplace
pauserCan pause (and unpause) all external calls made to this contract's contract.Custom
assetWhich assets can be listed on this marketplace contract.Marketplace


By default, NFTs are set to transferable on each contract, but you may enable non-transferable or "soulbound" functionality through the dashboard.

  1. In the permissions view, select Non-transferable from the drop down.

  2. Add or remove selected addresses for permission to transfer NFTs.

  3. Click the Update permissions button on the bottom right to save your changes. This will prompt you to sign a transaction in your crypto wallet.

Screenshot of non-transferable