curl --request POST \
--url https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/unfreezebalance \
--header 'Content-Type: application/json' \
--data '
{
"owner_address": "41608f8da72479edc7dd921e4c30bb7e7cddbe722e",
"resource": "BANDWIDTH",
"receiver_address": "<string>",
"visible": false
}
'{
"visible": true,
"txID": "<string>",
"raw_data": {
"contract": "<array>",
"ref_block_bytes": "<string>",
"ref_block_hash": "<string>",
"expiration": 123,
"timestamp": 123
},
"raw_data_hex": "<string>"
}curl --request POST \
--url https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/unfreezebalance \
--header 'Content-Type: application/json' \
--data '
{
"owner_address": "41608f8da72479edc7dd921e4c30bb7e7cddbe722e",
"resource": "BANDWIDTH",
"receiver_address": "<string>",
"visible": false
}
'{
"visible": true,
"txID": "<string>",
"raw_data": {
"contract": "<array>",
"ref_block_bytes": "<string>",
"ref_block_hash": "<string>",
"expiration": 123,
"timestamp": 123
},
"raw_data_hex": "<string>"
}unfreezebalancev2.
wallet/unfreezebalance if your account still has legacy‑frozen balance. For v2 staking, use wallet/unfreezebalancev2.owner_address — the address that owns the frozen TRX to unfreeze (hex format)resource — the resource type to release (“BANDWIDTH” or “ENERGY”)receiver_address — optional address that was receiving the resources. Omit to unfreeze to yourself. If provided, it must be different from owner_address.visible — optional boolean to specify address format (default: false for hex format)visible — boolean indicating address format usedtxID — transaction ID hashraw_data — raw transaction data objectraw_data_hex — hexadecimal representation of raw transaction datawallet/unfreezebalance method is used for:
unfreezebalancev2 method.receiver_address):
curl --request POST \
--url 'https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/unfreezebalance' \
--header 'Content-Type: application/json' \
--data '{
"owner_address": "41608f8da72479edc7dd921e4c30bb7e7cddbe722e",
"resource": "BANDWIDTH",
"visible": false
}'
curl --request POST \
--url 'https://tron-mainnet.core.chainstack.com/95e61622bf6a8af293978377718e3b77/wallet/unfreezebalance' \
--header 'Content-Type: application/json' \
--data '{
"owner_address": "41608f8da72479edc7dd921e4c30bb7e7cddbe722e",
"resource": "ENERGY",
"receiver_address": "41e9d79cc47518930bc322d9bf7cddd260a0260a8d",
"visible": false
}'
receiver_address equal to owner_address, the node returns:{
"Error": "class org.tron.core.exception.ContractValidateException : receiverAddress must not be the same as ownerAddress"
}
wallet/unfreezebalancev2. After the v2 waiting period ends, withdraw with wallet/withdrawexpireunfreeze.BANDWIDTH, ENERGY Optional. Address that was receiving the resources. Omit to unfreeze to yourself. Must not equal owner_address.
Was this page helpful?