This page is adapted from the legacy GitBook source:
_tmp_gitbook/mantra-smart-contracts/claimdrop_contract_v2.md.Features
- Batch upload allocations (only before campaign starts)
- Lump sum and/or linear vesting distribution (both can be used simultaneously)
- One campaign per contract
- Owner-only campaign creation
- Anyone can top up campaign by sending funds (via
BankMsg) - Owner can close campaign at any time before it ends (refunds remaining tokens)
- Single claim entry per address
- Address replacement and removal in allocation registry
- Blacklist addresses (cannot claim)
- Authorized wallet management (allowlist)
- Partial claims supported
How it works
- Each contract hosts a single campaign.
- The owner (and authorized wallets) can perform admin actions like creating/closing campaigns, managing allocations, and blacklisting.
- The owner is the only actor that can manage the allowlist itself.
Instantiate (example)
ExecuteMsg (high-level)
ManageCampaign(create / close)ClaimAddAllocationsReplaceAddressRemoveAddressBlacklistAddressManageAuthorizedWalletsUpdateOwnership(cw_ownable)
Claim (example)
AddAllocations (example)
QueryMsg (high-level)
CampaignRewardsClaimedAllocationsIsBlacklistedIsAuthorizedAuthorizedWalletsOwnership(cw_ownable)
Deployments
See:resources/contracts/mainnetresources/contracts/testnet