The scenario for this rule example is that an application has users that hold an NFT in their wallet associated with the project. A fungible token release is coming and includes an allocation to airdrop some of the fungible tokens to the existing NFT holders. There will be three different token lockup periods depending on when the NFT was obtained, which are:Documentation Index
Fetch the complete documentation index at: https://thrackle.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
- Early Adopter
- Loyal Backer
- New Ally
Get Started
This guide requires that you’ve already deployed the client contracts and are able to login to the rules portal and view your application.Decide the Minimum Balance per Tag
You can define a distinct minimum token balance for each tag type, which works well for the use case here.| Tag Name | Token Allocation |
|---|---|
| Early Adopter | 1,000 |
| Loyal Backer | 500 |
| New Ally | 100 |
Define the Hold Times
Next, you need to decide the hold times associated with each tag. These values are defined in hours. The guide will proceed with the following values:| Tag Name | Hold Time | Value in hours |
|---|---|---|
| Early Adopter | 30 days | 720 |
| Loyal Backer | 60 days | 1,440 |
| New Ally | 90 days | 2,160 |
Add the Rule to the Protocol
Select the Rules tab in the left hand navigation of the rules portal once you’ve selected your deployed application.- click the
+ Add Rulebutton and select theAccount Min/Max Token Balanceoption to proceed. - select an ERC-20 token that is registered with your application
- set an arbitrary start time that is before the airdrop
- fill in the tag names, min balance and period settings
- click the
+ Add Newbutton to create additional tags
- click the
- click the
Deploy Updatesbutton to create the rule!

Add Tags to Accounts
Before you actually airdrop the token allocations to the existing NFT holders, you’ll need to add a tag to them so the protocol properly limits that wallet’s ability to transfer the airdropped tokens. Consider an account with the public address0x1234abcd... in your application that should be assigned the “Early Adopter” tag. You can add the tag via the Users tab within the rules portal as shown below. The tags will be available for selection after the rule is successfully created in the previous step.

bytes32 values for the tag names and the function your script will call.