Cara Membeli Bandwidth TRON via API — sewa bandwidth (2026)

Alex Goldsmith
Penulis & Peneliti
12 artikel
Tempel ini ke Claude Code atau Cursor — beli energi dan bandwidth

Connect TronRental via its REST API and buy TRON resources — energy and/or bandwidth — for me.

Salin prompt ini dan tempel ke Claude Code, Cursor, atau alat AI apa pun. AI mendaftarkan akun, membuat kunci API, menampilkan alamat deposit, dan membeli energi atau bandwidth via REST API — tanpa pengaturan manual.

Pengaturan permanen: server MCP

1. Salin perintah:

2. Jalankan di terminal Anda — Claude Code akan mendeteksi server. (Cursor / Windsurf: tambahkan npx -y @tronrental-com/mcp-server ke mcp.json.)

Setelah terhubung, asisten mendapat akses langsung ke TronRental: mendaftarkan akun, membuat kunci API, menampilkan alamat deposit, dan membeli energi atau bandwidth — semua lewat teks biasa: «Beli 350 bandwidth untuk alamat T...».

Pelajari lebih lanjut tentang MCP →

Di bawah — untuk yang ingin memahami detail dan membangun integrasi secara manual.

Mengapa menyewa bandwidth?

Setiap transaksi TRON mengonsumsi bandwidth. Setiap alamat yang diaktifkan mendapat 600 bandwidth gratis per hari — tapi itu cepat habis:

  • 600 bandwidth gratis/hari = sekitar 1 transfer USDT (TRC-20) — lalu habis
  • Bandwidth gratis habis → jaringan membakar ~0,35 TRX per transaksi sebagai gantinya

Menyewa bandwidth via API berbiaya ~0,34 TRX untuk 350 unit (satu transfer). Untuk layanan yang melakukan banyak transfer per hari dari satu alamat, menyewa lebih murah dan dapat diprediksi.

Bandwidth adalah sumber daya murah — tapi pada skala besar (pembayaran massal, bursa, bot), TRX yang terbakar menumpuk. Sewa seperti Anda menyewa energi.

Yang Anda butuhkan

  • Akun di tronrental.com
  • Kunci API (Dasbor → API → Buat Kunci)
  • TRX di saldo Anda (Dasbor → Deposit)
  • 5 menit

Mulai cepat: pembelian pertama dalam 3 langkah

Langkah 1 — Cek harga

curl https://api.tronrental.com/v1/bandwidth/prices
{
  "price_sun_1h": 400,
  "price_sun_1d": 630,
  "min_volume": 350,
  "max_volume": 100000,
  "fixed_fee_trx": "0.2"
}

price_sun_1h adalah harga per unit bandwidth untuk sewa 1 jam; price_sun_1d untuk 1 hari. min_volume / max_volume membatasi satu pesanan, fixed_fee_trx ditambahkan di atasnya.

Langkah 2 — Beli bandwidth

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"}'
{
  "id": 1842,
  "status": "pending",
  "volume": 350,
  "price_trx": "0.34",
  "target_address": "TRecipient..."
}

Bandwidth didelegasikan ke target_address — bisa alamat Anda sendiri atau orang lain. 350 unit mencakup satu transfer USDT standar.

Langkah 3 — Konfirmasi pesanan

curl https://api.tronrental.com/v1/orders/1842 \
  -H "X-API-Key: YOUR_API_KEY"
{
  "id": 1842,
  "status": "filled",
  "volume": 350,
  "txid": "a1b2c3..."
}

Saat status menjadi "filled" — bandwidth telah didelegasikan. Sekarang Anda bisa mengirim transaksi.

Hal yang sama di Python

import httpx

API_KEY = "your_api_key"
BASE = "https://api.tronrental.com/v1"
HEADERS = {"X-API-Key": API_KEY}

async def buy_bandwidth(target_address: str, amount: int = 350) -> dict:
    async with httpx.AsyncClient() as client:
        resp = await client.post(
            f"{BASE}/bandwidth/buy",
            headers=HEADERS,
            json={"target_address": target_address, "volume": amount, "duration": "1h"},
        )
        resp.raise_for_status()
        return resp.json()

Hal yang sama di JavaScript

const API_KEY = "your_api_key";
const BASE = "https://api.tronrental.com/v1";

async function buyBandwidth(targetAddress, amount = 350) {
  const resp = await fetch(`${BASE}/bandwidth/buy`, {
    method: "POST",
    headers: {
      "X-API-Key": API_KEY,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      target_address: targetAddress,
      volume: amount,
      duration: "1h",
    }),
  });
  if (!resp.ok) throw new Error(`API error: ${resp.status}`);
  return resp.json();
}

Berapa banyak bandwidth yang harus dibeli?

SkenarioBandwidthMengapa
Satu transfer USDT350Ukuran transfer TRC-20 standar
Beberapa transfer dari satu alamat350 × N600/hari gratis hanya mencakup transfer pertama

Tidak yakin berapa bandwidth gratis yang tersisa? Cek sebelum membeli:

curl "https://api.tronrental.com/v1/tools/address-info?address=TRecipient..."
{
  "bandwidth_used": 0,
  "bandwidth_limit": 600,
  "is_activated": true
}

Batas: minimum 350 bandwidth per pesanan, maksimum 100.000. Durasi: "1h" dan "1d".

Menyewa energi

Bandwidth mencakup transaksinya sendiri, tapi transfer USDT (TRC-20) juga butuh energi — dan di situlah biaya sebenarnya. Tanpa energi, jaringan membakar 6,43–13,28 TRX per transfer.

Jika Anda mengirim USDT, hampir selalu butuh energi juga. Menyewanya berbiaya ~1,80 TRX untuk 65K daripada membakar 6,43 TRX.

Pembelian

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...", "volume": 65000, "duration": "1h"}'

65.000 energi = 1 transfer USDT (penerima sudah memegang USDT), 131.000 jika penerima belum pernah memegang USDT. Lihat panduan API energi khusus untuk detailnya.

Contoh lengkap: beli bandwidth → kirim transaksi

Pola dunia nyata — beli bandwidth untuk alamat pengirim, tunggu delegasi, lalu kirim transaksi:

import asyncio
import httpx

API_KEY = "your_api_key"
BASE = "https://api.tronrental.com/v1"
HEADERS = {"X-API-Key": API_KEY}


async def buy_bandwidth_and_wait(target: str, amount: int = 350) -> str:
    async with httpx.AsyncClient() as client:
        resp = await client.post(
            f"{BASE}/bandwidth/buy",
            headers=HEADERS,
            json={"target_address": target, "volume": 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["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["txid"]

        raise TimeoutError(f"Order {order_id} not filled after 30s")


async def send_usdt_with_resources(sender: str, recipient: str, amount_usdt: float):
    bw_tx = await buy_bandwidth_and_wait(sender, amount=350)
    print(f"Bandwidth delegated: {bw_tx}")
    # ... your USDT transfer logic here (tronpy, tronweb, etc.)

Penanganan kesalahan

Status HTTPArtinyaApa yang harus dilakukan
400Permintaan buruk (alamat tidak valid, saldo kurang)Baca pesan kesalahan, perbaiki dan coba lagi
429Batas laju terlampaui (100 req/menit)Tunggu dan coba lagi dengan backoff
5xxKesalahan serverCoba lagi dengan backoff eksponensial

FAQ

Seberapa cepat bandwidth didelegasikan?

Biasanya 3–5 detik. Bandwidth didelegasikan on-chain di blok berikutnya.

Apakah saya perlu membeli bandwidth? Bukankah gratis?

Setiap alamat mendapat 600 bandwidth gratis per hari — cukup untuk ~1 transfer USDT. Jika Anda mentransfer lebih dari itu dari satu alamat per hari, jaringan membakar TRX untuk bandwidth, dan menyewa lebih murah.

Bandwidth atau energi — apa yang saya butuhkan untuk transfer USDT?

Keduanya. Bandwidth mencakup catatan transaksi (~350 unit); energi mencakup eksekusi smart contract (65.000 unit). Energi yang mahal — kebanyakan menyewa keduanya.

Bisakah saya membeli bandwidth untuk alamat orang lain?

Bisa. Atur target_address ke alamat TRON valid mana pun. Anda tidak perlu memilikinya.

Di mana dokumentasi lengkapnya?

docs.tronrental.com — semua endpoint, skema permintaan/respons, pengaturan webhook, dan lainnya.

Bagikan:

Apakah ini bermanfaat?