Jump to
Ctrl
+
/

Tron Resource Management

POST
/vaults/{vaultId}/{blockchain}/{network}/addresses/{fromAddress}/manage-resource

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.


There are several types of transactions available through this endpoint. Users must choose the appropriate transaction type when performing an operation.

Path Parameters

blockchain string Required

Specifies the blockchain network involved in the transaction (eg. tron).

fromAddress string Required

Represents the originating address from which the transaction is initiated.

network string Required

Specifies the network used (eg. mainnet , nile).

vaultId string Required

Represents the sender's specific and unique Vault ID of the sender.

Query Parameters

context string Optional

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.

Request Body Schema application/json

context string Optional

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.

data object Required
item object Required
amount string Optional

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.

lock string Optional

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.

lockPeriod string Optional

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.

note string Optional

Transaction note with additional details.

resource string Required

Resource staking for (e.g. Bandwidth, Energy).

toAddress string Optional

Address receiving the delegated amount or from which we undelegate. It is used when type of the request is delegate/undelagate.

type string Required

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.

Response Schema

apiVersion string Required

Specifies the version of the API that incorporates this endpoint.

2025-09-23
requestId string Required

Defines the ID of the request. The requestId is generated by Vaultody and it's unique for every request.

601c1710034ed6d407996b30
context string Optional

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.

yourExampleString
data object Required
item object Required
blockchain string Required

Specifies the blockchain network involved in the transaction (eg. tron).

tron
destination array Items (object) Required

Destination of the transaction

address string Required

Address of the destination that will receive the resources.

TMLmaAS4GfshG6PfToD5YYRm5G8giauYc4
amount string Required

The amount of TRX involved in the staking action.

3
amountUnit string Required

The unit of currency used in the transaction.

TRX
id string Required

A unique identifier for the transaction.

67a336950ca2f4fd25fb0deb
network string Required

Specifies the network used (eg. mainnet, nile).

mainnet
resource string Required

Specifies the type of the resource being managed(eg. bandwidth, energy).

energy
source object Required

Details about the sender

address string Required

The address of the sender.

TMLmaAS4GfshG6PfToD5YYRm5G8giauYc4
status string Required

Defines the status of the transaction request, (e.g. created).

created
type string Required

The type of staking operation being performed (eg. freeze, unfreeze, withdraw-resource)

freeze
vaultId string Required

Identifies the vault id linked to the transaction.

66d9b73a9f455b085ed9de39

Callback parameters

walletId string Required

Unique identifier of the wallet associated with the transaction.

685121237d7d1e0007ac1a1d
webhookId string Required

Unique identifier of the webhook that triggered this callback.

68516e9c6620b0a4790ed541
idempotencyKey string Required

A unique key used to prevent duplicate processing of this callback if it's sent more than once.

928fe1786859b5e33a2f63c569a0351e0c90cbe35bc5a7bb0bb1523cd371dda9
apiVersion string Required

The version of the API that this webhook callback conforms.

2025-09-23
data object Required

Contains the event type and all related transaction information.

event string Required

Type of webhook event: TRANSACTION_REQUEST indicates a new transaction request has been created and is pending approval or rejection.

TRANSACTION_REQUEST
item object Required

Contains detailed metadata about the outgoing mined transaction

blockchain string Required

The name of the blockchain where the transaction was executed (e.g., ethereum, solana, tron).

ethereum
network string Required

The specific network of the blockchain, such as mainnet, testnet, sepolia, nile or devnet.

mainnet
requestId string Required

A unique identifier for the original transaction request that initiated this outgoing transaction.

686cd2860ca2f4fd25f77099
transactionType string Required

The type of asset being transferred: COIN, TOKEN, LINKING, SMART_COIN, SMART_TOKEN, FREEZE, UNFREEZE, DELEGATE, UNDELEGATE, WITHDRAW_RESOURCE.

COIN
Was this page helpful?
Yes
No
Powered by
Language
URL

{
    "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"
        }
    }
}