Por que alugar energia?
Cada transferência USDT (TRC-20) na TRON requer energia. Sem ela, a rede queima seu TRX:
- 65.000 energia × 100 SUN = 6,43 TRX (~$1,60) — destinatário possui USDT
- 131.000 energia × 100 SUN = 13,28 TRX (~$3,30) — destinatário não possui USDT
Alugar energia via API custa ~1,80 TRX para 65K e ~3,60 TRX para 131K. Isso é 72% mais barato.
Com 50 transferências por dia, você economiza ~230 TRX diariamente — aproximadamente $1.700/mês. Difícil argumentar contra a matemática.
O que você vai precisar
- Conta em tronrental.com
- Chave API (Painel → API → Criar Chave)
- TRX no seu saldo (Painel → Depósito)
- 5 minutos
Início rápido: primeira compra em 3 passos
Passo 1 — Verificar o preço
curl https://api.tronrental.com/v1/prices{
"energy_price_sun": 33,
"energy_price_trx_per_65k": "2.12",
"energy_price_trx_per_131k": "4.24",
"burn_cost_trx": "6.43",
"savings_percent": "67.0"
}Os preços são dinâmicos, atualizados a cada 60 segundos. energy_price_sun é o preço por unidade de energia. Outros campos são pré-calculados para conveniência.
Passo 2 — Comprar energia
curl -X POST https://api.tronrental.com/v1/energy/buy \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"target_address": "TRecipient...", "energy_amount": 65000, "duration": "1h"}'{
"order_id": 1842,
"status": "pending",
"energy_amount": 65000,
"price_trx": "2.12",
"target_address": "TRecipient..."
}A energia é delegada ao target_address — pode ser seu próprio endereço ou de outra pessoa.
Passo 3 — Confirmar o pedido
curl https://api.tronrental.com/v1/orders/1842 \
-H "X-API-Key: YOUR_API_KEY"{
"order_id": 1842,
"status": "filled",
"energy_amount": 65000,
"tx_hash": "a1b2c3..."
}Quando o status se tornar "filled" — a energia foi delegada. Agora você pode enviar sua transferência USDT.
O mesmo em Python
import httpx
API_KEY = "your_api_key"
BASE = "https://api.tronrental.com/v1"
HEADERS = {"X-API-Key": API_KEY}
async def buy_energy(target_address: str, amount: int = 65_000) -> dict:
async with httpx.AsyncClient() as client:
resp = await client.post(
f"{BASE}/energy/buy",
headers=HEADERS,
json={"target_address": target_address, "energy_amount": amount, "duration": "1h"},
)
resp.raise_for_status()
return resp.json()O mesmo em JavaScript
const API_KEY = "your_api_key";
const BASE = "https://api.tronrental.com/v1";
async function buyEnergy(targetAddress, amount = 65000) {
const resp = await fetch(`${BASE}/energy/buy`, {
method: "POST",
headers: {
"X-API-Key": API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
target_address: targetAddress,
energy_amount: amount,
duration: "1h",
}),
});
if (!resp.ok) throw new Error(`API error: ${resp.status}`);
return resp.json();
}Quanta energia comprar?
| Cenário | Energia | Por quê |
|---|---|---|
| Destinatário possui USDT | 65.000 | Transferência padrão |
| Destinatário não possui USDT | 131.000 | Primeira transferência para este endereço custa 2x |
Não tem certeza? Verifique antes de comprar:
curl "https://api.tronrental.com/v1/tools/check-energy?address=TRecipient..."{
"has_usdt": true,
"energy_needed": 64285,
"rental_cost_trx": "2.12"
}Limites: mínimo 32.000 energia por pedido, máximo 5.000.000.
Alugando largura de banda
Além de energia, a TRON usa largura de banda para todas as transações. Todo endereço ativado recebe 600 de largura de banda gratuita por dia — suficiente para 1 transferência USDT. A partir da segunda transferência, a rede queima TRX pela largura de banda (~0,35 TRX).
Se seu serviço faz múltiplas transferências por dia de um endereço — alugar largura de banda é mais barato.
Preços
curl https://api.tronrental.com/v1/bandwidth/prices{
"price_per_day_trx": "9.6",
"min_volume": 350,
"max_volume": 100000,
"fixed_fee_trx": "0.2"
}Fórmula: (volume / 1000) × 0,4 TRX + 0,2 TRX taxa fixa.
Compra
curl -X POST https://api.tronrental.com/v1/bandwidth/buy \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"target_address": "TRecipient...", "volume": 350, "duration": "1h"}'350 largura de banda = 1 transferência USDT. Mínimo 350, máximo 100.000.
Exemplo completo: comprar energia → enviar USDT
Padrão do mundo real — compre energia para o endereço remetente, aguarde a delegação e então envie USDT:
import asyncio
import httpx
API_KEY = "your_api_key"
BASE = "https://api.tronrental.com/v1"
HEADERS = {"X-API-Key": API_KEY}
async def buy_energy_and_wait(target: str, amount: int = 65_000) -> str:
async with httpx.AsyncClient() as client:
resp = await client.post(
f"{BASE}/energy/buy",
headers=HEADERS,
json={"target_address": target, "energy_amount": amount, "duration": "1h"},
)
data = resp.json()
if resp.status_code == 400:
raise Exception(f"Purchase failed: {data.get('detail', data)}")
resp.raise_for_status()
order_id = data["order_id"]
for _ in range(10):
await asyncio.sleep(3)
check = await client.get(f"{BASE}/orders/{order_id}", headers=HEADERS)
order = check.json()
if order["status"] == "filled":
return order["tx_hash"]
raise TimeoutError(f"Order {order_id} not filled after 30s")
async def send_usdt_with_energy(sender: str, recipient: str, amount_usdt: float):
tx_hash = await buy_energy_and_wait(sender, amount=65_000)
print(f"Energy delegated: {tx_hash}")
# ... your USDT transfer logic here (tronpy, tronweb, etc.)Tratamento de erros
| Status HTTP | O que significa | O que fazer |
|---|---|---|
| 400 | Requisição inválida (endereço inválido, saldo insuficiente) | Leia a mensagem de erro, corrija e tente novamente |
| 429 | Limite de taxa excedido (100 req/min) | Aguarde e tente novamente com backoff |
| 5xx | Erro do servidor | Tente novamente com backoff exponencial |
FAQ
Quão rápido a energia é delegada?
Geralmente 3–5 segundos. A energia é delegada on-chain no próximo bloco.
E se eu comprar energia mas não fizer uma transferência?
A energia expira após 1 hora. O custo do aluguel não é reembolsado — você está pagando pela delegação, não pelo uso.
Há limite de taxa?
100 requisições por minuto por chave API. Mais que suficiente para a maioria dos casos de uso.
Posso comprar energia para o endereço de outra pessoa?
Sim. Defina target_address para qualquer endereço TRON válido. Você não precisa ser o proprietário.
Onde está a documentação completa?
docs.tronrental.com — todos os endpoints, schemas de requisição/resposta, configuração de webhooks e mais.