Vibrant Documentation
  • πŸ‘‹Welcome to Vibrant
  • Overview
    • πŸ’‘What we do
    • ⛓️Supported Blockchains
    • ✨Our Features
    • πŸ™ŒFree Version
  • Discord Basics
    • πŸ› οΈGetting set up
      • πŸ€–Inviting the bot
      • πŸ“Setting permissions
      • βœ…Verification Setup
    • ⏩Next steps
    • 🎨Customize your Community
  • Guides
    • 🎨For NFT projects
      • πŸ§ͺPre-Mint
      • 🧱Mint
      • πŸš€Post launch
      • πŸ™οΈCommunity Building
      • ⭐Advanced Token Roles
      • 🀝Connect with other Communities
    • 🌊For Stakepools
      • πŸ§‘Delegation Roles
      • ❕Stakepool Updates
      • πŸ™οΈCommunity Building
    • πŸ“ˆFor DeFi Projects
      • πŸ§‘Token Roles
      • πŸ™οΈCommunity Building
    • 🀝For DAOs
      • πŸ§‘Token Roles
      • πŸ—³οΈVoting and Decisions
      • πŸ™οΈCommunity Building
  • Discord Commands
    • User Commands
      • General
        • ❔/help
        • ℹ️/info
        • πŸ›‘οΈ/policyid
        • πŸ—³οΈ/vote
        • πŸ§‘/whois
        • 🐈/premium
        • πŸ›’/claim
      • Verification
        • ❔/verify help
        • πŸ“ƒ/verify list
        • βž•/verify add
        • πŸ”—/verify link
        • ⚑/verify unlink
        • πŸ›‘/verify cancel
        • πŸ—‘οΈ/verify remove
      • Whitelist Signup
        • πŸ“ƒ/whitelist list
        • πŸ—³οΈ/whitelist register
        • πŸ—‘οΈ/whitelist unregister
      • Messaging
        • πŸ“©/ping send
        • πŸ“ƒ/ping list
      • Profile
        • πŸ”²/profile toggle
        • πŸ“›/profile defaulthandle
    • Admin Commands
      • General Administration
        • ▢️/start
        • πŸ“’/configure-social announce
        • βœ”οΈ/configure-verify announce
      • Policy IDs
        • πŸ“ƒ/configure-policyid list
        • βž•/configure-policyid add
        • πŸ“’/configure-policyid announce
        • πŸ”’/configure-policyid mintcounter
        • πŸ—‘οΈ/configure-policyid remove
      • NFT/Token Roles
        • πŸ“ƒ/configure-tokenroles list
        • πŸ”€/configure-tokenroles details
        • βž•/configure-tokenroles add
        • πŸ§ͺ/configure-tokenroles test
        • ✏️/configure-tokenroles update
        • πŸ›‘οΈ/configure-tokenroles policies add
        • ⚑/configure-tokenroles policies remove
        • βž•/configure-tokenroles metadatafilter add
        • ⚑/configure-tokenroles metadatafilter remove
        • πŸ—‘οΈ/configure-tokenroles remove
      • Widgets & Info
        • ⌚/configure-info epochclock
      • Stakepools
        • πŸ“ƒ/configure-stakepool list
        • βž•/configure-stakepool add
        • πŸ—‘οΈ/configure-stakepool remove
      • Delegator Roles
        • πŸ“ƒ/configure-delegatorroles list
        • βž•/configure-delegatorroles add
        • πŸ§ͺ/configure-delegatorroles test
        • πŸ—‘οΈ/configure-delegatorroles remove
      • Polls and Votes
        • πŸ“ƒ/configure-poll list
        • βž•/configure-poll add
        • πŸ”—/configure-poll add-onchain
        • πŸ“’/configure-poll announce
        • πŸ§‘/configure-poll update addrole
        • ⚑/configure-poll update removerole
        • πŸ—‘οΈ/configure-poll remove
      • Giveaways
        • πŸ“ƒ/configure-giveaway list
        • βž•/configure-giveaway add
        • πŸ“’/configure-giveaway announce
        • ⏹️/configure-giveaway end
        • πŸ§‘/configure-giveaway update addrole
        • ⚑/configure-giveaway update removerole
        • πŸ—‘οΈ/configure-giveaway remove
      • Whitelists
        • πŸ“ƒ/configure-whitelist list
        • βž•/configure-whitelist add
        • πŸ›‘/configure-whitelist close
        • πŸšͺ/configure-whitelist open
        • πŸ“’/configure-whitelist announce
        • ✏️/configure-whitelist update
        • 🎁/configure-whitelist share
        • 🚫/configure-whitelist unshare
        • πŸ”½/configure-whitelist download
        • πŸ—‘οΈ/configure-whitelist remove
      • Scam Protection
        • πŸ’‘/configure-protection status
        • πŸ’‚β€β™€οΈ /configure-protection addressremove
        • πŸ‘‚/configure-protection auditchannel
      • Marketplace & Minting
        • πŸ›’Sales
          • πŸ“ƒ/configure-marketplace sales list
          • πŸ›’/configure-marketplace sales add
          • πŸ—‘οΈ/configure-marketplace sales remove
        • πŸ’²Listings
          • πŸ“ƒ/configure-marketplace listings list
          • πŸ’²/configure-marketplace listings add
          • πŸ—‘οΈ/configure-marketplace listings remove
        • 🧱Mint
          • πŸ“ƒ/configure-marketplace mint list
          • 🧱/configure-marketplace mint add
          • πŸ—‘οΈ/configure-marketplace mint remove
        • βž•/configure-marketplace metadatafilter add
        • πŸ—‘οΈ/configure-marketplace metadatafilter remove
      • Settings and Premium
        • βš™οΈ/configure-settings features
        • 🎨/configure-settings customize
        • β™₯️/configure-healthcheck
        • ℹ️/configure-premium status
        • πŸ”‹/configure-premium refill
      • Admin Roles
        • πŸ“ƒ/configure-adminaccess list
        • πŸ”’/configure-adminaccess add
        • πŸ”“/configure-adminaccess remove
      • API Access
        • πŸšͺ/configure-api generatetoken
        • πŸ›‘οΈ/configure-api removetoken
Powered by GitBook
On this page

Was this helpful?

  1. Discord Commands
  2. Admin Commands
  3. NFT/Token Roles

/configure-tokenroles update

Update an automatic token role

Previous/configure-tokenroles testNext/configure-tokenroles policies add

Last updated 1 year ago

Was this helpful?

When dealing with token roles, you might need to adjust your settings after the initial creation. Maybe you are switching to a different role or want to introduce a max-count for your role. With /CONFIGURE-TOKENROLES UPDATE this is as easy as passing in the token role ID to update and your new settings.

This command shows its true power when using the different aggregation-type options in combination with the /CONFIGURE-TOKENROLES POLICIES ADD and /CONFIGURE-TOKENROLES METADATAFILTER ADD subcommands. Check out our parameter explanation below and visit the for detailed guides on various scenarios.

Via the staking-type parameter it is possible to include tokens that are not currently in the users wallet, but can through some means be identified as currently owned by them, like with staking systems that provide an API to list assets staked, for example .

Parameter
Details

token-role-id

The token role ID (taken from /CONFIGURE-TOKENROLES LIST) to change the settings for.

[role]

The new Discord role verified users will be assigned if they meet all requirements.

[count]

The new minimum token count required to qualify for the role.

[max-count]

The new optional maximum token count allowed to qualify for the role (owning more tokens than this number will disqualify a user for this role). Pass in 0 if you currently have a maximum token count and want to remove it.

[aggregation-type]

The aggregation type defines four powerful ways in which your token role policies (added via /CONFIGURE-TOKENROLES POLICIES ADD) and metadata filters (added via /CONFIGURE-TOKENROLES METADATAFILTER ADD) get aggregated, to allow for advanced token roles, which enable common scenarios NFT projects often want to implement. Find our examples below:

Any policy of the role, each NFT must match all filters

The standard setting means that every filter associated with the role will be checked against all tokens of the configured policies in the users verified wallets. Only tokens that match every filter will be counted. If the total count of accepted tokens is count or above, the role will be granted.

Any policy of the role, each NFT must match at least one filter

The any filter setting means that every filter associated with the role will be checked against all tokens of the configured policies in the users verified wallets. Any token that matches at least one filter will be counted. If the total count of accepted tokens is count or above, the role will be granted.

Any policy of the role, each filter must be matched by one unique NFT

This is the β€œcollect them all” setting for your token roles. With this option, the user is required to have at least one token (out of all allowed policy IDs) matching each of the metadata filters. For example, if you have five different pet traits, you can add one filter for each trait, and turn on this aggregation-type. Now only users that hold all five different pets will receive the role. Each token will be counted at most once, i.e. it cannot qualify a user for multiple different filters if non-exclusive filters are used. Use Any policy of the role, all filters must be matched if one NFT is allowed to qualify for multiple different filters.

When this mode is enabled, the count and max-count settings are ignored and the required token count is equal to the number of added metadata filters.

At least one NFT of each defined policy is required

If you have multiple policies under which you minted and you want your users to only receive a role if they have at least one token from each policy, this aggregation-type is the one to use. With it metadata filters apply with the every filter must match rule, but the user is required to have one token from every policy defined via /CONFIGURE-TOKENROLES POLICIES ADD.

When this mode is enabled, the count and max-count settings are ignored and the required token count is equal to the number of added policy IDs.

Any policy of the role, all filters must be matched

With this option, the user is required to have at least one token (out of all allowed policy IDs) matching each of the metadata filters. For example, if you have three gold traits, you can add one filter for each trait. Then turn on this aggregation-type. Now only users that have tokens covering all required traits get the role. This could be one token that has all three gold traits, or three tokens that each have one of the three different traits.

When this mode is enabled, the count and max-count settings are ignored and the role is assigned if all filters are matched, regardless of the exact owned token count.

[staking-type]

The staking type lets you define staking-related settings for your roles:

No additional staking rules apply

The standard setting None means that no special attempts to retrieve holder information are made beyond checking all verified stake addresses for tokens. Any tokens or NFTs in custodial staking systems, non-custodial staking systems that alter the staking part of the tokens, or smart contracts, are not checked for the purpose of role assignments.

Include NFTs staking with Mutant Labs for token roles

If the MutantNFT staking type is selected, any tokens held in the MutantNFT staking system are included in the overall token and NFT ownership counted for the user. The information is retrieved via the users verified stake addresses and the MutantNFT API.

✏️
Tutorials section
Mutant NFT Labs