Unfreeze an account

Unfreezes transfers of the specified token for the account. The transaction must be signed by the token's Freeze Key.

  • If the provided account is not found, the transaction will resolve to INVALID_ACCOUNT_ID.

  • If the provided account has been deleted, the transaction will resolve to ACCOUNT_DELETED.

  • If the provided token is not found, the transaction will resolve to INVALID_TOKEN_ID.

  • If the provided token has been deleted, the transaction will resolve to TOKEN_WAS_DELETED.

  • If an Association between the provided token and account is not found, the transaction will resolve to TOKEN_NOT_ASSOCIATED_TO_ACCOUNT.

  • If no Freeze Key is defined, the transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.

  • Once executed the Account is marked as Unfrozen and will be able to receive or send tokens. The operation is idempotent.

Constructor

Description

new TokenUnfreezeTransaction()

Initializes the TokenUnfreezeTransaction object

new TokenUnfreezeTransaction()

Methods

V2
V1
V2

Method

Type

Description

Requirement

setTokenId(<tokenId>)

TokenId

The token for this account to unfreeze

Required

setAccountId(<accountId>)

AccountId

The account to unfreeze

Required

Java
//Unfreeze an account
TokenUnfreezeTransaction transaction = new TokenUnfreezeTransaction()
.setAccountId(accountId)
.setTokenId(tokenId);
//Freeze the unsigned transaction, sign with the sender freeze private key of the token, submit the transaction to a Hedera network
TransactionResponse txResponse = transaction.freezeWith(client).sign(freezeKey).execute(client);
//Request the receipt of the transaction
TransactionReceipt receipt = txResponse.getReceipt(client);
//Obtain the transaction consensus status
Status transactionStatus = receipt8.status;
System.out.print("The transaction consensus status is " +transactionStatus);
//v2.0.1
JavaScript
//Unfreeze an account and freeze the unsigned transaction for signing
const transaction = await new TokenUnfreezeTransaction()
.setAccountId(accountId)
.setTokenId(tokenId)
.freezeWith(client);
//Sign with the freeze private key of the token
const signTx = await transaction.sign(freezeKey);
//Submit the transaction to a Hedera network
const txResponse = await signTx.execute(client);
//Request the receipt of the transaction
const receipt = await txResponse.getReceipt(client);
//Obtain the transaction consensus status
const transactionStatus = receipt8.status;
console.log("The transaction consensus status is " +transactionStatus.toString());
//v2.0.7
Go
//Unfreeze an account and freeze the unsigned transaction for signing
transaction, err = hedera.NewUnTokenFreezeTransaction().
SetAccountID(accountId).
SetTokenID(tokenId).
FreezeWith(client)
if err != nil {
panic(err)
}
//Sign with the freeze private key of the token, submit the transaction to a Hedera network
txResponse, err := transaction.Sign(freezeKey).Execute(client)
if err != nil {
panic(err)
}
//Get the receipt of the transaction
receipt, err = txResponse.GetReceipt(client)
if err != nil {
panic(err)
}
//Get the transaction consensus status
status := receipt.Status
fmt.Printf("The transaction consensus status is %v\n", status)
//v2.1.0
V1

Method

Type

Description

Requirement

setTokenId(<tokenId>)

TokenId

The token for this account to unfreeze

Required

setAccountId(<accountId>)

AccountId

The account to unfreeze

Required

Java
//Unfreeze an account
TokenUnfreezeTransaction transaction = new TokenUnfreezeTransaction()
.setAccountId(newAccountId)
.setTokenId(newTokenId);
//Build the unsigned transaction, sign with the sender freeze private key of the token, submit the transaction to a Hedera network
TransactionId transactionId = transaction.build(client).sign(freezeKey).execute(client);
//Request the receipt of the transaction
TransactionReceipt getReceipt = transactionId.getReceipt(client);
//Obtain the transaction consensus status
Status transactionStatus = getReceipt.status;
System.out.print("The transaction consensus status is " +transactionStatus);
//Version: 1.2.2
JavaScript
//Unfreeze an account
const transaction = new TokenUnfreezeTransaction()
.setAccountId(newAccountId)
.setTokenId(newTokenId);
//Build the unsigned transaction, sign with the freeze private key of the token, submit the transaction to a Hedera network
const transactionId = await transaction.build(client).sign(freezeKey).execute(client);
//Request the receipt of the transaction
const getReceipt = await transactionId.getReceipt(client);
//Obtain the transaction consensus status
const transactionStatus = getReceipt.status;
console.log("The transaction consensus status is " +transactionStatus);
//Version 1.4.2