Through this endpoint, users can manage TRX staking: freezing, unfreezing, and withdrawing TRX. Stake an amount of TRX to obtain bandwidth or energy and optimize blockchain resource usage. Additionally, users can delegate bandwidth or energy resources to other accounts for efficient transaction processing.
Specifies the blockchain network involved in the transaction (eg. tron).
Represents the originating address from which the transaction is initiated.
Specifies the network used (eg. mainnet , nile).
Represents the sender's specific and unique Vault ID of the sender.
In batch situations the user can use the context to correlate responses with requests. This property is present regardless of whether the response was successful or returned as an error. context
is specified by the user.
In batch situations the user can use the context to correlate responses with requests. This property is present regardless of whether the response was successful or returned as an error. context
is specified by the user.
The amount field specifies the amount of TRX to freeze, unfreeze, delegate, or undelegate. For these four request types, the amount field is required. When the request type is withdraw-resource, the amount field is not required, as the entire withdrawable amount will be withdrawn.
Boolean if we want to lock the delegated amount. Whether to lock the resource delegation, true means locked the delegation, the delegating cannot be canceled within the period specified by lockPeriod, false means non-locked, the resource delegating can be canceled at any time.
Only when lock is true, this field is valid. If the delegate lock period is 1 day, the lock_period is: 28800. The minimum value of lockPeriod is the remaining lock period of this type of resource that was delegated last time, and the maximum value is 864000 (30 days). If lock is true and lock_period is not set or set to 0, lockPeriod will be set to the default value 86400 (3 days) automatically.
Transaction note with additional details.
Resource staking for (e.g. Bandwidth, Energy).
Address receiving the delegated amount or from which we undelegate. It is used when type of the request is delegate/undelagate.
Type of the transaction: freeze - lock a specified amount of TRX to obtain either bandwidth or energy; unfreeze - release previously frozen TRX and to be withdrawn; withdraw-resource - claim TRX and return it to the user’s available balance; delegate - assign obtained bandwidth or energy resources to another Tron account; undelegate - revoke previously delegated bandwidth or energy from another account, restoring control of those resources to the original owner.
Specifies the version of the API that incorporates this endpoint.
Defines the ID of the request. The requestId
is generated by Vaultody and it's unique for every request.
In batch situations the user can use the context to correlate responses with requests. This property is present regardless of whether the response was successful or returned as an error. context
is specified by the user.
Specifies the blockchain network involved in the transaction (eg. tron).
Destination of the transaction
Address of the destination that will receive the resources.
The amount of TRX involved in the staking action.
The unit of currency used in the transaction.
A unique identifier for the transaction.
Specifies the network used (eg. mainnet, nile).
Specifies the type of the resource being managed(eg. bandwidth, energy).
Details about the sender
The address of the sender.
Defines the status of the transaction request, (e.g. created).
The type of staking operation being performed (eg. freeze, unfreeze, withdraw-resource)
Identifies the vault id linked to the transaction.
Unique identifier of the wallet associated with the transaction.
Unique identifier of the webhook that triggered this callback.
A unique key used to prevent duplicate processing of this callback if it's sent more than once.
The version of the API that this webhook callback conforms.
Contains the event type and all related transaction information.
Type of webhook event: TRANSACTION_REQUEST indicates a new transaction request has been created and is pending approval or rejection.
Contains detailed metadata about the outgoing mined transaction
The name of the blockchain where the transaction was executed (e.g., ethereum, solana, tron).
The specific network of the blockchain, such as mainnet, testnet, sepolia, nile or devnet.
A unique identifier for the original transaction request that initiated this outgoing transaction.
The type of asset being transferred: COIN, TOKEN, LINKING, SMART_COIN, SMART_TOKEN, FREEZE, UNFREEZE, DELEGATE, UNDELEGATE, WITHDRAW_RESOURCE.
cb233681a8ee35665296c1824c1f67bc46691788
PSqeqRLap8rBc/wogNU1DeGGUPb2VyVtg6GiBOaBnYQ=
1681885776
zYgKeueoOq
{
"context": "yourExampleString",
"data": {
"item": {
"amount": "3",
"lock": "true",
"lockPeriod": "28800",
"note": "Your note",
"resource": "bandwidth",
"toAddress": "TJgba7p9nFz6vMgVBJUxTaRR8WbpaG6ifi",
"type": "freeze"
}
}
}
{
"apiVersion": "2025-09-23",
"requestId": "601c1710034ed6d407996b30",
"context": "yourExampleString",
"data": {
"item": {
"blockchain": "tron",
"destination": [
{
"address": "TMLmaAS4GfshG6PfToD5YYRm5G8giauYc4",
"amount": "3",
"amountUnit": "TRX"
}
],
"id": "67a336950ca2f4fd25fb0deb",
"network": "mainnet",
"resource": "energy",
"source": {
"address": "TMLmaAS4GfshG6PfToD5YYRm5G8giauYc4"
},
"status": "created",
"type": "freeze",
"vaultId": "66d9b73a9f455b085ed9de39"
}
}
}
{
"walletId": "685121237d7d1e0007ac1a1d",
"webhookId": "68516e9c6620b0a4790ed541",
"idempotencyKey": "928fe1786859b5e33a2f63c569a0351e0c90cbe35bc5a7bb0bb1523cd371dda9",
"apiVersion": "2025-09-23",
"data": {
"event": "TRANSACTION_REQUEST",
"item": {
"blockchain": "ethereum",
"network": "mainnet",
"requestId": "686cd2860ca2f4fd25f77099",
"transactionType": "COIN"
}
}
}