Base URL: https://api.tronnrg.com Auth: کسی کی ضرورت نہیں۔ تمام endpoints عوامی ہیں۔ Rate limit: 20 requests/second فی IP Payment address: TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx (API کے لیے صرف، manual rentals کے لیے نہیں)

یہ کیسے کام کرتا ہے

تین مراحل۔ کوئی API key نہیں، کوئی sign-up نہیں، کوئی wallet connection نہیں۔ Ownership کو cryptographically ثابت کیا جاتا ہے۔

  1. TRX بھیجیں — 4 TRX (یا اس سے زیادہ) ادائیگی کے پتے پر بھیجیں۔ 4 TRX = 65,000 توانائی۔ 8 TRX = 130,000۔ لکیری۔
  2. دستخط کریں — پیغام پر دستخط کریں {tx_hash}:{delegate_to} اس والٹ کا استعمال کرتے ہوئے جس نے TRX بھیجا۔ یہ ثابت کرتا ہے کہ آپ نے وفاقی اختیار دیا۔
  3. حاصل کریںPOST /delegate کے ساتھ tx_hash، delegate_to، اور signature۔ توانائی تقریباً 3 سیکنڈ میں پہنچ جاتی ہے۔

ادائیگی کا پتہ

TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx
صرف API ادائیگی کا پتہ۔ یہ پتہ API کے ذریعے پروگرام میٹک انضمام کے لیے ہے۔ دستی توانائی کرائے کے لیے اس کا استعمال نہ کریں۔ دستی کرائے کا پتہ مختلف ہے اور پر دستیاب ہے۔tronnrg.com.

اس پتے پر TRX بھیجیں۔ آپ کی ادائیگی کا ٹرانزیکشن ہیش وفاقی کو متحرک کرنے کے لیے آپ کی ٹوکن ہے۔ ہر ہیش صرف ایک بار استعمال ہو سکتا ہے۔

TRX بھیجا گیاتوانائی وفاقیاستعمال کی صورت
4 TRX65,000موجودہ والٹ کو معیاری USDT ٹرانسفر (کم سے کم آرڈر)
8 TRX130,000پہلی بار وصول کنندہ کو USDT ٹرانسفر
16 TRX260,000ایک آرڈر میں چار معیاری ٹرانسفر
40 TRX650,000دس معیاری ٹرانسفر
100 TRX1,625,000تقریباً 25 معیاری ٹرانسفر — چھوٹے پلیٹ فارمز کے لیے عام
1,000 TRX16,250,000زیادہ سے زیادہ آرڈر، تقریباً 250 معیاری ٹرانسفر
درمیان میں کوئی بھی رقمtrx × 16,250مکمل طور پر لکیری۔ کوئی سطریں نہیں، کوئی پیکجز نہیں، کوئی رعایتیں نہیں۔
فارمولا: energy = trxSent × 16,250. حدیں: کم سے کم 4 TRX (65,000 توانائی)، زیادہ سے زیادہ 1,000 TRX (16,250,000 توانائی)۔ دونوں API کی سطح پر نافذ ہیں — کم سے کم رقم سے نیچے کی رقم below_minimum کے ساتھ مسترد کر دی جاتی ہے اور واپس کر دی جاتی ہے؛ زیادہ سے زیادہ سے اوپر کی رقم وفاقی سے پہلے مسترد کر دی جاتی ہے۔

POST /delegate

POST/delegate

ایک توانائی کی نمائندگی کا دعویٰ کریں۔ آپ نے پہلے سے ہی پیمنٹ ایڈریس پر TRX بھیجا ہونا چاہیے۔ ٹرانزیکشن ہیش، وصول کنندہ کا ایڈریس، اور ایک دستخط فراہم کریں جو ثابت کرے کہ آپ بھیجنے والے ہیں۔

پیرامیٹرقسمتفصیل
tx_hashstringضروریTRX پیمنٹ کا 64 حروفی ہیکس ہیش
delegate_tostringضروریTron ایڈریس جو توانائی وصول کرے گا
signaturestringضروریtronWeb.trx.signMessageV2() of tronWeb.trx.signMessageV2()۔ ثابت کرتا ہے کہ آپ پیمنٹ بھیجنے والے ہیں۔
curl -X POST https://api.tronnrg.com/delegate \ -H "Content-Type: application/json" \ -d '{"tx_hash":"TX_HASH","delegate_to":"TWallet","signature":"SIG"}'
const result = await fetch('https://api.tronnrg.com/delegate', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ tx_hash: 'YOUR_TX_HASH', delegate_to: 'TWalletAddress', signature: 'YOUR_SIGNATURE', }), }).then(r => r.json()); if (result.error) { console.error(result.error, result.message); } else { console.log('Delegated:', result.energy, 'energy'); console.log('Ref:', result.ref); }
import requests response = requests.post('https://api.tronnrg.com/delegate', json={ 'tx_hash': 'YOUR_TX_HASH', 'delegate_to': 'TWalletAddress', 'signature': 'YOUR_SIGNATURE', }) result = response.json() if 'error' in result: print(f"Error: {result['error']} - {result['message']}") else: print(f"Delegated: {result['energy']} energy") print(f"Delegation tx: {result['delegations'][0]['tx']}") print(f"Ref: {result['ref']}")
$ch = curl_init('https://api.tronnrg.com/delegate'); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['Content-Type: application/json'], CURLOPT_POSTFIELDS => json_encode([ 'tx_hash' => 'YOUR_TX_HASH', 'delegate_to' => 'TWalletAddress', 'signature' => 'YOUR_SIGNATURE', ]), ]); $result = json_decode(curl_exec($ch), true); curl_close($ch); if (isset($result['error'])) { echo "Error: " . $result['message']; } else { echo "Delegated: " . $result['energy'] . " energy"; }
var client = new HttpClient(); var content = new StringContent( JsonSerializer.Serialize(new { tx_hash = "YOUR_TX_HASH", delegate_to = "TWalletAddress", signature = "YOUR_SIGNATURE" }), Encoding.UTF8, "application/json" ); var response = await client.PostAsync("https://api.tronnrg.com/delegate", content); var json = await response.Content.ReadAsStringAsync(); var result = JsonSerializer.Deserialize<JsonElement>(json); if (result.TryGetProperty("error", out var err)) Console.WriteLine($"Error: {err}"); else Console.WriteLine($"Delegated: {result.GetProperty("energy")} energy");
جواب 200
{ "ref": "nrg_d_42", "delegate_to": "TWalletAddress", "energy": 65000, "cost": 4, "status": "delegated", "delegations": [ { "tx": "a1b2c3d4e5f6...your delegation tx hash", "energy": 65000 } ] }
فیلڈقسمتفصیل
refstringTronNRG حوالہ ID۔ معاونت کی درخواستوں کے لیے یہ ریکارڈ کریں۔
energynumberکل توانائی منتقل کی گئی
costnumberTRX کا چارج
statusstringکامیابی پر "delegated"
delegationsarrayآن چین نمائندگی ٹرانزیکشن ہیشز۔ ہر tx قابلِ تصدیق ہے TronScan پر۔ یہ آپ کی رسید ہے۔

GET /health

GET/health

نگرانی اور اپ ٹائم ٹولز کے لیے زندگی کی جانچ۔ جب API عمل چل رہا ہو تو 200 OK واپس کرتا ہے۔ اپ سٹریم نوڈز یا فراہم کنندگان کی جانچ نہیں کرتا۔

جواب 200
{ "status": "ok" }

غلطی کوڈز

ہر غلطی کے جواب میں error (مستحکم، مشین کے قابلِ فہم) اور message (انسانی قابلِ فہم) ہوتا ہے۔ ہمیشہ اپنے کوڈ میں error پر سوئچ کریں۔

کوڈHTTPمطلب
invalid_tx_hash40064 حروفی ہیکس سٹرنگ نہیں ہے
invalid_address400درست Tron ایڈریس نہیں ہے
missing_signature400کوئی دستخط فراہم نہیں کیا گیا
invalid_signature401دستخط کی تصدیق نہیں کی جا سکی
signature_mismatch403دستخط کنندہ کا ایڈریس پیمنٹ بھیجنے والے سے مماثل نہیں ہے
hash_already_used409ٹرانزیکشن ہیش پہلے سے دعویٰ کیا جا چکا ہے
payment_verification_failed404 / 400پیمنٹ کی آن چین تصدیق ناکام۔ مخصوص وجہ کے لیے message فیلڈ پڑھیں: ٹی ایکس ابھی تک نہیں ملا (404، کچھ سیکنڈ میں دوبارہ کوشش کریں)، غلط وصول کنندہ، TRX منتقلی نہیں، یا 4 TRX سے کم۔
delegation_failed400 / 500فراہم کنندہ توانائی فراہم نہیں کر سکا۔ اگر ناکامی پیمنٹ کی تصدیق کے بعد واقع ہوئی تو رقم واپسی خودکار طور پر قطار میں ڈالی جاتی ہے۔ ایسی صورت میں refund آبجیکٹ چیک کریں۔
rate_limited429اس IP سے فی سیکنڈ بہت زیادہ درخواستیں۔ حد 20/سیکنڈ ہے۔
server_error500غیر متوقع اندرونی خرابی۔ کچھ سیکنڈ میں دوبارہ کوشش کریں۔
const result = await fetch('https://api.tronnrg.com/delegate', { ... }) .then(r => r.json()); if (result.error) { switch (result.error) { case 'payment_verification_failed': // Most common cause: tx not yet indexed. Wait 3s and retry. // Read result.message for the specific cause. break; case 'hash_already_used': // Already claimed. Don't retry. break; case 'signature_mismatch': // Signer != payment sender. Sign with the same key that sent TRX. break; case 'delegation_failed': // Refund queued automatically if payment was verified. if (result.refund) console.log('Refund queued:', result.refund); break; } }
result = requests.post('https://api.tronnrg.com/delegate', json=data).json() if 'error' in result: if result['error'] == 'payment_verification_failed': # Most common cause: tx not yet indexed. Wait 3s and retry. pass elif result['error'] == 'hash_already_used': # Already claimed. Don't retry. pass elif result['error'] == 'signature_mismatch': # Signer != payment sender. Sign with the same key. pass elif result['error'] == 'delegation_failed': # Refund queued automatically if payment was verified. pass
if (isset($result['error'])) { switch ($result['error']) { case 'payment_verification_failed': // Most common cause: tx not yet indexed. Wait 3s and retry. break; case 'hash_already_used': // Already claimed. Don't retry. break; case 'signature_mismatch': // Signer != payment sender. Sign with the same key. break; case 'delegation_failed': // Refund queued automatically if payment was verified. break; } }

واپسی

اگر آپ کی ادائیگی کی تصدیق کے بعد ڈیلیگیشن ناکام ہو تو TRX کی واپسی خودکار طور پر قطار میں لگائی جاتی ہے اور بھیجنے والے کے پتے پر واپس بھیجی جاتی ہے۔ غلطی کے جواب میں واپسی کی چیز تلاش کریں۔

رقم واپسی کے ساتھ خرابی
{ "error": "delegation_failed", "message": "Energy delegation failed. Your payment will be refunded.", "ref": "nrg_d_43", "refund": { "type": "queued", "to": "TSenderAddress", "amount": 4 } }

مکمل مثال

مکمل سرے سے سرے تک بہاؤ: TRX بھیجیں، دستخط کریں، دوبارہ کوشش کے ساتھ دعویٰ کریں۔ کاپی اور چلائیں۔

const API = 'https://api.tronnrg.com'; const ADDR = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx'; async function rentEnergy(delegateTo, trxAmount = 4) { // 1. Send TRX to the payment address const payment = await tronWeb.trx.sendTransaction(ADDR, trxAmount * 1e6); // 2. Sign: proves you are the sender const message = `${payment.txid}:${delegateTo}`; const signature = await tronWeb.trx.signMessageV2(message); // 3. Claim delegation (retry if tx not indexed yet) let result; for (let i = 0; i < 3; i++) { result = await fetch(`${API}/delegate`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ tx_hash: payment.txid, delegate_to: delegateTo, signature, }), }).then(r => r.json()); if (!result.error) break; if (result.error !== 'payment_verification_failed') throw new Error(result.message); await new Promise(r => setTimeout(r, 3000)); } if (result.error) throw new Error(result.message); return result; } // Usage — send any amount between 4 and 1,000 TRX const result = await rentEnergy('TWalletThatNeedsEnergy', 4); // 4 TRX → 65k energy // rentEnergy(addr, 8) // → 130,000 energy (new-wallet transfer) // rentEnergy(addr, 40) // → 650,000 energy (10 transfers) // rentEnergy(addr, 1000) // → 16,250,000 energy (max) console.log(result.energy); // trxAmount × 16,250 console.log(result.delegations[0].tx); // on-chain tx hash console.log(result.ref); // "nrg_d_42"
import requests import time API = 'https://api.tronnrg.com' ADDR = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx' def rent_energy(delegate_to, trx_amount=4): # 1. Send TRX to ADDR (via your Tron library) tx_hash = send_trx(ADDR, trx_amount) # your TRX send function # 2. Sign: proves you are the sender message = f'{tx_hash}:{delegate_to}' signature = tron.trx.sign_message_v2(message) # 3. Claim delegation (retry if tx not indexed yet) for attempt in range(3): result = requests.post(f'{API}/delegate', json={ 'tx_hash': tx_hash, 'delegate_to': delegate_to, 'signature': signature, }).json() if 'error' not in result: return result if result['error'] != 'payment_verification_failed': raise Exception(result['message']) time.sleep(3) raise Exception('Transaction not found after retries') # Usage result = rent_energy('TWalletThatNeedsEnergy', 4) print(f"Delegated: {result['energy']} energy") print(f"Delegation tx: {result['delegations'][0]['tx']}") print(f"Ref: {result['ref']}")
<?php $api = 'https://api.tronnrg.com'; $addr = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx'; function rentEnergy($api, $txHash, $delegateTo, $signature) { // 1. Send TRX to $addr (via iexbase/tron-api) // $payment = $tron->sendTrx($addr, 4); // $txHash = $payment['txid']; // 3. Claim delegation (retry if tx not indexed yet) for ($i = 0; $i < 3; $i++) { $ch = curl_init("${api}/delegate"); curl_setopt_array($ch, [ CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => ['Content-Type: application/json'], CURLOPT_POSTFIELDS => json_encode([ 'tx_hash' => $txHash, 'delegate_to' => $delegateTo, 'signature' => $signature, ]), ]); $result = json_decode(curl_exec($ch), true); curl_close($ch); if (!isset($result['error'])) return $result; if ($result['error'] !== 'payment_verification_failed') throw new Exception($result['message']); sleep(3); } throw new Exception('Transaction not found after retries'); } // Usage $result = rentEnergy($api, $txHash, 'TWalletThatNeedsEnergy'); echo "Delegated: " . $result['energy'] . " energy\n"; echo "Delegation tx: " . $result['delegations'][0]['tx'] . "\n"; echo "Ref: " . $result['ref'] . "\n";
# 1. Send TRX to TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx # Pricing is linear at 16,250 energy per TRX. # Min 4 TRX (65,000 energy), max 1,000 TRX (16.25M energy). # (use your wallet or tronweb CLI) # 2. Sign the message {tx_hash}:{delegate_to} (proves you are the sender) # (use tronWeb.trx.signMessageV2 in your code) # 3. Claim delegation with tx hash + signature curl -X POST https://api.tronnrg.com/delegate \ -H "Content-Type: application/json" \ -d '{ "tx_hash": "YOUR_PAYMENT_TX_HASH", "delegate_to": "TWalletThatNeedsEnergy", "signature": "YOUR_SIGNATURE" }' # Response includes delegations[].tx — the on-chain hash you can verify on TronScan
Telegram WhatsApp