As mentioned in the transferability page, the collection-wide approvals can override the user-level approvals. This is done via overridesFromOutgoingApprovals or overridesToIncomingApprovals.

If set to true, we will not check the user's incoming / outgoing approvals for the approved balances respectively. Essentially, it is forcefully transferred without needing user approvals. This can be leveraged to implement forcefully revoking a badge, freezing a badge, etc.

IMPORTANT: The Mint address has its own approvals store, but since it is not a real address, they are always empty. Thus, it is important that when you define approvals from the Mint address, you always override the outgoing approvals of the Mint address. Or else, the approval will not work.

  • "fromListId": "Mint", //represents the list with the "Mint" addres
    "approvalCriteria": {
      "overridesFromOutgoingApprovals": true

Last updated