wallet/delegateresource - Delegate TRX Resources
Delegate staked TRX resources (bandwidth/energy) to other TRON accounts via Dwellir's high-performance RPC endpoint.
TRON RPC endpoint: endpoint URLs, plans and pricing.
Delegate staked bandwidth or energy resources to another TRON account.
Endpoint
POST /wallet/delegateresource# Basic energy delegation
curl -X POST https://api-tron-mainnet.n.dwellir.com/YOUR_API_KEY/wallet/delegateresource \
-H "Content-Type: application/json" \
-d '{
"owner_address": "TOwnerAddress...",
"receiver_address": "TReceiverAddress...",
"balance": 1000000000,
"resource": "ENERGY",
"visible": true
}'
# Delegate bandwidth with 3-day lock
curl -X POST https://api-tron-mainnet.n.dwellir.com/YOUR_API_KEY/wallet/delegateresource \
-H "Content-Type: application/json" \
-d '{
"owner_address": "TOwnerAddress...",
"receiver_address": "TReceiverAddress...",
"balance": 500000000,
"resource": "BANDWIDTH",
"lock": true,
"lock_period": 86400,
"visible": true
}'
# Check delegation index
curl -X POST https://api-tron-mainnet.n.dwellir.com/YOUR_API_KEY/wallet/getdelegatedresourceaccountindex \
-H "Content-Type: application/json" \
-d '{
"value": "TOwnerAddress...",
"visible": true
}'
# Get delegation details between accounts
curl -X POST https://api-tron-mainnet.n.dwellir.com/YOUR_API_KEY/wallet/getdelegatedresource \
-H "Content-Type: application/json" \
-d '{
"fromAddress": "TOwnerAddress...",
"toAddress": "TReceiverAddress...",
"visible": true
}'Important Notes
Delegation Rules
- Must Stake First: Resources must be staked before delegation
- Immediate Effect: Delegation takes effect immediately after transaction confirmation
- Lock Period: Optional lock prevents reclaim until it ends.
lock_periodcounts blocks of 3 seconds (28,800 blocks is 1 day). Withlock: trueand no period, java-tron locks for 3 days (86,400 blocks). The maximum isgetMaxDelegateLockPeriod, 864,000 blocks (30 days) - Resource Ownership: Delegated resources remain owned by delegator
- Reclaim Process: Use
undelegateresourceto reclaim delegated resources
Resource Calculations
- Energy delegation helps with smart contract execution
- Bandwidth delegation helps with transactions and transfers
- Receiver pays no TRX but can use delegated resources
Implementation Examples
Delegation Flow
graph LR
A[Owner Stakes TRX] --> B[Resources Available]
B --> C[Delegate to Receiver]
C --> D[Receiver Uses Resources]
D --> E[Resources Consumed]
E --> F[Owner Can Reclaim]
style A fill:#4CAF50
style C fill:#2196F3
style D fill:#FF9800Best Practices
1. Calculate Before Delegating
// Always analyze needs first
const needs = await analyzeNeeds(receiverAddress);
const delegateAmount = Math.ceil(needs.energy.deficit / 9.7383); // energy per staked TRX per day, 3 Nov 20262. Use Locks Strategically
- Lock for stable, long-term delegations
- Keep unlocked for flexible, short-term needs
- Consider 3-day default lock period
3. Monitor Resource Usage
- Track receiver's consumption patterns
- Adjust delegations based on actual usage
- Implement alerts for high usage
4. Batch Operations
- Group multiple delegations together
- Reduces transaction overhead
- Easier management and tracking
Common Errors
| Error | Description | Solution |
|---|---|---|
Insufficient staked balance | Not enough staked resources | Stake more TRX first |
Invalid resource type | Must be BANDWIDTH or ENERGY | Use correct resource string |
Receiver address invalid | Malformed receiver address | Verify base58 format |
Already delegated | Resources already delegated to receiver | Check existing delegations |
Use Cases
- DApp Support: Provide resources for users to interact with your DApp
- Gaming: Enable free gameplay by covering resource costs
- DeFi Trading: Support traders with energy for smart contract calls
- Onboarding: Help new users get started without staking
- Resource Rental: Commercial resource delegation services
Related Methods
- wallet/undelegateresource - Reclaim delegated resources
- wallet/freezebalancev2 - Stake TRX for resources
- wallet/getaccountresource - View resource limits