The freeze functionality allows token issuers to freeze and unfreeze tokens at specific Spark Addresses, only available for tokens created with isFreezeable: true (in the L1 announcement). The freeze takes effect instantly across all Spark Operators.

Things to know

  • Token must be annouced with isFreezeable: true
  • Only the issuer can freeze or unfreeze addresses
  • Issuer’s own address cannot be frozen

Prerequisites

  • An initialized issuer wallet
  • Previously minted tokens and sent tokens to an address

Freezing tokens

You can freeze your token for any Spark address by calling the freezeTokens method. Once frozen, that address will be blocked from sending or receiving your token on Spark.

const freezeResult = await wallet.freezeTokens(freezeSparkAddress);
console.log("Freeze result:", freezeResult);

After freezing, any tokens held by the frozen address will be locked, and future transactions involving your token will be rejected.

Unfreezing tokens

You can reverse a freeze at any time by calling the unfreezeTokens method.

const freezeResult = await wallet.unfreezeTokens(freezeSparkAddress);
console.log("Freeze result:", freezeResult);