TokenUpdate

Updates an already created Token.

If no value is given for a field, that field is left unchanged. For an immutable tokens (that is, a token created without an adminKey), only the expiry may be updated. Setting any other field in that case will cause the transaction status to resolve to TOKEN_IS_IMMUTABlE.

TokenUpdateTransactionBody

Field

Type

Description

token

TokenID

The Token to be updated

symbol

string

The new Symbol of the Token. Must be UTF-8 capitalized alphabetical string identifying the token.

name

string

The new Name of the Token. Must be a string of ASCII characters.

treasury

AccountID

The new Treasury account of the Token. If the provided treasury account is not existing or deleted, the response will be INVALID_TREASURY_ACCOUNT_FOR_TOKEN. If successful, the Token balance held in the previous Treasury Account is transferred to the new one.

adminKey

Key

The new Admin key of the Token. If Token is immutable, transaction will resolve to TOKEN_IS_IMMUTABlE.

kycKey

Key

The new KYC key of the Token. If Token does not have currently a KYC key, transaction will resolve to TOKEN_HAS_NO_KYC_KEY.

freezeKey

Key

The new Freeze key of the Token. If the Token does not have currently a Freeze key, transaction will resolve to TOKEN_HAS_NO_FREEZE_KEY.

wipeKey

Key

The new Wipe key of the Token. If the Token does not have currently a Wipe key, transaction will resolve to TOKEN_HAS_NO_WIPE_KEY.

supplyKey

Key

The new Supply key of the Token. If the Token does not have currently a Supply key, transaction will resolve to TOKEN_HAS_NO_SUPPLY_KEY.

autoRenewAccount

AccountID

The new account which will be automatically charged to renew the token's expiration, at autoRenewPeriod interval.

autoRenewPeriod

uint64

The new interval at which the auto-renew account will be charged to extend the token's expiry.

expiry

uint64

The new expiry time of the token. Expiry can be updated even if admin key is not set. If the provided expiry is earlier than the current token expiry, transaction wil resolve to INVALID_EXPIRATION_TIME