የመሠረት ዩአርኤል፡ https://api.tronnrg.com
ፈቃድ፡ ምንም አያስፈልግም። ሁሉም የመጨረሻ ነጥቦች ይፋዊ ናቸው።
የዋጋ ገደብ፦ በአንድ አይፒ 20 ጥያቄዎች/ሰከንድ
የክፍያ አድራሻ፡ TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx ( API ብቻ፣ በእጅ ለሚሰሩ ኪራዮች አይደለም)
እንዴት እንደሚሰራ
ሶስት ደረጃዎች። API ቁልፍ የለም፣ ምዝገባ የለም፣ የኪስ ቦርሳ ግንኙነት የለም። ባለቤትነት በምስጢራዊነት የተረጋገጠ ነው።
TRX ላክ — 4 TRX (ወይም ከዚያ በላይ) ወደ የክፍያ አድራሻው ይላኩ። 4 TRX = 65,000 ጉልበት። 8 TRX = 130,000። መስመራዊ።
ምልክት - መልዕክቱን ይፈርሙ {tx_hash}:{delegate_to} TRX የላከውን የኪስ ቦርሳ በመጠቀም። ይህ ለውክልናው ፈቃድ እንደሰጡ ያረጋግጣል።
የይገባኛል ጥያቄ — POST /delegate ከ ጋር tx_hash, delegate_toእና signature. Energy በ ~3 ሰከንዶች ውስጥ ይደርሳል።
የክፍያ አድራሻ
TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx
ቅጂ
API ክፍያ አድራሻ ብቻ። ይህ አድራሻ API በኩል ለፕሮግራማዊ ውህደቶች ነው። ይህንን በእጅ ለሚሰሩ የኃይል ኪራዮች አይጠቀሙ። በእጅ የሚከራየው አድራሻ የተለየ እና በ ላይ ይገኛል።
tronnrg.com .
TRX ወደዚህ አድራሻ ይላኩ። የክፍያዎ የግብይት ሃሽ ውክልናውን ለማስጀመር የሚያስችልዎ ቶከን ነው። እያንዳንዱ ሃሽ አንድ ጊዜ ብቻ ነው ጥቅም ላይ ሊውል የሚችለው።
TRX ተልኳል Energy ተላልፏል መያዣ ይጠቀሙ
4 TRX 65,000 መደበኛ USDT ዝውውር ወደ ነባር የኪስ ቦርሳ (ቢያንስ ትዕዛዝ)
8 TRX 130,000 ለመጀመሪያ ጊዜ ተቀባይ USDT ዝውውር
16 TRX 260,000 በአንድ ትዕዛዝ አራት መደበኛ ዝውውሮች
40 TRX 650,000 አስር መደበኛ ዝውውሮች
100 TRX 1,625,000 ~25 መደበኛ ዝውውሮች — ለአነስተኛ መድረኮች የተለመደ
1,000 TRX 16,250,000 ከፍተኛ ትዕዛዝ፣ ~250 መደበኛ ዝውውሮች
በመካከላቸው ያለ ማንኛውም መጠን trx × 16,250ሙሉ በሙሉ መስመራዊ። ደረጃዎች የሉም፣ ፓኬጆች የሉም፣ ቅናሾች የሉም።
ቀመር፡ energy = trxSent × 16,250. ወሰኖች፡ ዝቅተኛ 4 TRX (65,000 ጉልበት)፣ ቢበዛ 1,000 TRX (16,250,000 ኃይል)። ሁለቱም API ደረጃ ተፈጻሚ ይሆናሉ - ከዝቅተኛው በታች ያሉት መጠኖች ከዝቅተኛው በታች ውድቅ ይደረጋሉ እና ተመላሽ ይደረጋሉ፤ ከከፍተኛው በላይ የሆኑ መጠኖች ከመወከልዎ በፊት ውድቅ ይደረጋሉ። በምርት ውስጥ ጠንካራ ኮድ ከማድረግዎ በፊት ሁልጊዜ ከ GET /supply የቀጥታ እሴቶችን ያንብቡ - ከታች ይመልከቱ።
GET /supply
የዋጋ መረጃ እና የክፍያ አድራሻ ያግኙ። ይህ መረጃ ሰጪ የመጨረሻ ነጥብ ነው - ኃይል ሁልጊዜ ይገኛል፣ ክፍያ ከመላክዎ በፊት ማረጋገጥ አያስፈልግዎትም።
cURL
JavaScript
Python
PHP
C#
ቅጂ
curl https://api.tronnrg.com/supply
const supply = await fetch ('https://api.tronnrg.com/supply' )
.then (r => r.json ());
// Energy is always available. Use supply.pay_to for the payment address.
console.log ('Pay to:' , supply.pay_to);
import requests
supply = requests.get ('https://api.tronnrg.com/supply' ).json ()
# Energy is always available. Use supply['pay_to'] for the payment address.
print (supply['pay_to' ])
$supply = json_decode (
file_get_contents ('https://api.tronnrg.com/supply' ),
true
);
// if less than you require, wait and retry
// Energy is always available. Use $supply['pay_to'] for the payment address.
echo $supply ['pay_to' ];
var client = new HttpClient ();
var json = await client.GetStringAsync ("https://api.tronnrg.com/supply" );
var supply = JsonSerializer .Deserialize <JsonElement >(json);
// Energy is always available. Use pay_to for the payment address.
var payTo = supply.GetProperty ("pay_to" ).GetString ();
{
"available" : true ,
"energy_per_trx" : 16250 ,
"min_order_trx" : 4 ,
"max_order_trx" : 1000 ,
"pay_to" : "TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx" ,
"examples" : {
"standard" : { "trx" : 4 , "energy" : 65000 , "note" : "Existing USDT wallet" },
"new_wallet" : { "trx" : 8 , "energy" : 130000 , "note" : "First-time USDT recipient" }
}
}
POST /delegate
የኃይል ውክልና ይጠይቁ። TRX ወደ የክፍያ አድራሻው በሰንሰለት ላይ ልከው መሆን አለበት። የግብይት ሃሹን፣ የተቀባዩን አድራሻ እና ላኪው መሆንዎን የሚያረጋግጥ ፊርማ ይለፉ።
መለኪያ አይነት መግለጫ
tx_hash string ያስፈልጋል የ TRX ክፍያ ባለ 64-ቁምፊ ሄክስ ሃሽ
delegate_to string ያስፈልጋል የኃይል አቅርቦቱን ለመቀበል Tron አድራሻ
signature string ያስፈልጋል tronWeb.trx.signMessageV2() የ tronWeb.trx.signMessageV2()የክፍያ ላኪው መሆንዎን ያረጋግጣል።
cURL
JavaScript
Python
PHP
C#
ቅጂ
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" );
{
"ref" : "nrg_d_42" ,
"delegate_to" : "TWalletAddress" ,
"energy" : 65000 ,
"cost" : 4 ,
"status" : "delegated" ,
"delegations" : [
{ "tx" : "a1b2c3d4e5f6...your delegation tx hash" , "energy" : 65000 }
]
}
መስክ አይነት መግለጫ
ref string TronNRG የማጣቀሻ መታወቂያ። ለድጋፍ ጥያቄዎች ይህንን ይመዝገቡ።
energy number ጠቅላላ የኃይል ውክልና የተሰጠው
cost number TRX ሞልቷል
status string ስኬትን በተመለከተ "ውክልና" ተሰጥቶታል
delegations array በሰንሰለት ላይ የሚደረግ የውክልና ግብይት ሃሽ። እያንዳንዱ tx ሊረጋገጥ የሚችልበት ቀን TronScan ይህ የእርስዎ ደረሰኝ ነው።
GET /health
የክትትል እና የስራ ሰዓት መሳሪያዎችን ለማግኘት የህያውነት ፍተሻ። ተመላሾች 200 OK API ሂደቱ ሲበራ። የላይኛው ኖዶችን ወይም አቅራቢዎችን አይፈትሽም።
የስህተት ኮዶች
እያንዳንዱ የስህተት ምላሽ አለው error (የተረጋጋ፣ በማሽን የሚነበብ) እና message (በሰው ሊነበብ የሚችል)። ሁልጊዜ አብራ error በኮድዎ ውስጥ።
ኮድ ኤችቲቲፒ ትርጉም
invalid_tx_hash400 ባለ 64-ቁምፊ የአስራስድስትዮሽ ሕብረቁምፊ አይደለም
invalid_address400 ትክክለኛ Tron አድራሻ አይደለም
missing_signature400 ምንም ፊርማ አልተሰጠም
invalid_signature401 ፊርማ ሊረጋገጥ አልቻለም
signature_mismatch403 የፈራሚው አድራሻ ከክፍያ ላኪው ጋር አይዛመድም
hash_already_used409 የግብይት ሃሽ አስቀድሞ ተጠይቀዋል
payment_verification_failed404 / 400 የክፍያውን በሰንሰለት ማረጋገጥ አልተሳካም። ያንብቡ message ለተለየው ምክንያት መስክ፡ tx እስካሁን አልተገኘም (404፣ በጥቂት ሰከንዶች ውስጥ እንደገና ይሞክሩ)፣ የተሳሳተ ተቀባይ፣ የ TRX ዝውውር አይደለም፣ ወይም ከ 4 TRX ዝቅተኛው በታች።
delegation_failed400 / 500 አቅራቢው ኃይል ማቅረብ አልቻለም። ክፍያው ከተረጋገጠ በኋላ ውድቀቱ ከተከሰተ፣ ተመላሽ ገንዘብ በራስ-ሰር ወረፋ ይይዛል። ያረጋግጡ refund ይህ ሲከሰት ተቃውሞ።
rate_limited429 ከዚህ አይፒ በሰከንድ በጣም ብዙ ጥያቄዎች። ገደቡ 20/ሰከንድ ነው።
server_error500 ያልተጠበቀ ውስጣዊ ስህተት። በጥቂት ሰከንዶች ውስጥ እንደገና ይሞክሩ።
JavaScript
Python
PHP
ቅጂ
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 ይላኩ፣ ይፈርሙ፣ የይገባኛል ጥያቄዎን እንደገና ይሞክሩት። ይቅዱ እና ያሂዱ።
JavaScript
Python
PHP
cURL
ቅጂ
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