API გადახდის მისამართი
TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx
გაგზავნეთ TRX ამ მისამართზე. თქვენი tx ჰეში გამოიყენება ენერგიის დელეგირების მოთხოვნისთვის.

დაასრულეთ Node.js-ის ინტეგრაცია TronWeb გამოყენებით. თითოეული ნაბიჯი წარმოადგენს დამოუკიდებელ კოდის ბლოკს, რომლის კოპირებაც თქვენს პროექტში შეგიძლიათ. სრული მაგალითი ქვემოთაა მოცემული.

წინაპირობები: Node.js 18+, tronweb დაინსტალირებული (npm install tronweb), დაფინანსებული Tron საფულე.

ნაკადი

API გასაღები არ არის. რეგისტრაცია არ არის საჭირო. თქვენი კოდი აგზავნის TRX ჯაჭვის მეშვეობით TronEnergy გადახდის მისამართზე, ხელს აწერს საკუთრების დამადასტურებელ შეტყობინებას და შემდეგ აცხადებს დელეგირებას. Energy დაახლოებით 3 წამში მოვა. შემდეგ თქვენი კოდი აგზავნის USDT დელეგირებული ენერგიის გამოყენებით.

ფასები წრფივია: 16,250 Energy თითო TRX ზე. მინიმალური შეკვეთა 4 TRX (65,000 Energy — ერთი სტანდარტული USDT გადარიცხვა), მაქსიმუმ 1,000 TRX (16.25 მილიონი Energy ). თქვენს მიერ გაგზავნილი თანხა ზუსტად განსაზღვრავს, თუ რამდენი Energy დაბრუნდება — არ არსებობს დონეები ან პაკეტები. ერთი სტანდარტული გადარიცხვისთვის, გაგზავნეთ 4. ახალი საფულის გადარიცხვისთვის, გაგზავნეთ 8. ჯგუფური სამუშაოსთვის, გაგზავნეთ მეტი. ქვემოთ მოცემული კოდი იყენებს trxAmount ცვლადი, რათა მისი შეცვლა ერთ ადგილას შეძლოთ.

ეტაპობრივად

1. დაყენება

დაყენება
const { TronWeb } = require('tronweb'); // destructured: the default import is broken in v6 const tronWeb = new TronWeb({ fullHost: 'https://api.trongrid.io', privateKey: process.env.TRON_PRIVATE_KEY, }); const API = 'https://api.tronnrg.com'; const ADDR = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx'; // API payment address const USDT = 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t';

2. TRX გაგზავნა

გადახდის გაგზავნა
const TRX_AMOUNT = 4; // Linear: 16,250 energy per TRX. Min 4, max 1000. // 4 → 65k (standard) · 8 → 130k (new wallet) · 40 → 650k (10 transfers) const payment = await tronWeb.trx.sendTransaction(ADDR, TRX_AMOUNT * 1e6); console.log('Payment tx:', payment.txid);

3. დელეგაციის მოთხოვნა

პრეტენზიის დელეგირება
// Sign: proves you are the sender const msg = `${payment.txid}:${tronWeb.defaultAddress.base58}`; const sig = await tronWeb.trx.signMessageV2(msg); const delegation = await fetch(`${API}/delegate`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ tx_hash: payment.txid, delegate_to: tronWeb.defaultAddress.base58, signature: sig, }), }).then(r => r.json()); if (delegation.error) { throw new Error(delegation.message); } console.log('Energy delegated:', delegation.energy); // TRX_AMOUNT × 16,250

4. USDT გაგზავნა

აშშ დოლარის გაგზავნა
const contract = await tronWeb.contract().at(USDT); const tx = await contract.transfer( recipientAddress, Math.round(usdtAmount * 1e6) ).send({ feeLimit: 50_000_000 }); console.log('USDT sent:', tx);

შეცდომების დამუშავება

დამუშავების შეცდომები
const result = await fetch(`${API}/delegate`, { ... }) .then(r => r.json()); if (result.error) { switch (result.error) { case 'payment_verification_failed': // Payment not yet indexed on-chain. Wait 3s and retry. break; case 'hash_already_used': // Already claimed. Don't retry. break; case 'signature_mismatch': // Sender of TRX != signer of the message. Sign with the same key. break; case 'delegation_failed': // Provider could not deliver. Retry or contact support with result.ref. break; } }

სრული მაგალითი

დააკოპირეთ ეს ფაილში, დააყენეთ გარემოს ცვლადები და გაუშვით. სკრიპტი აგზავნის TRX , ხელს აწერს შეტყობინებას, აცხადებს დელეგირებას retry-ით და შემდეგ აგზავნის USDT .

delegate-energy.js
const { TronWeb } = require('tronweb'); // destructured: default import is broken in v6 const tronWeb = new TronWeb({ fullHost: 'https://api.trongrid.io', privateKey: process.env.TRON_PRIVATE_KEY, }); const API = 'https://api.tronnrg.com'; const ADDR = 'TFqUiCu1JwLHHnBNeaaVKH7Csm4aA3YhZx'; const USDT = 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t'; async function claimWithRetry(txHash, delegateTo, signature, retries = 3) { for (let i = 0; i < retries; i++) { const res = await fetch(`${API}/delegate`, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ tx_hash: txHash, delegate_to: delegateTo, signature }), }).then(r => r.json()); if (!res.error) return res; if (res.error !== 'payment_verification_failed') throw new Error(res.message); await new Promise(r => setTimeout(r, 3000)); } throw new Error('Transaction not found after retries'); } async function main() { const recipient = 'TRecipientWallet'; const trxAmount = 4; // min 4, max 1000 — you get trxAmount × 16,250 energy // 1. Send TRX (linear pricing: 16,250 energy per TRX) const payment = await tronWeb.trx.sendTransaction(ADDR, trxAmount * 1e6); console.log('Payment:', payment.txid); // 2. Claim delegation // Sign: proves you are the sender const message = `${payment.txid}:${recipient}`; const signature = await tronWeb.trx.signMessageV2(message); const result = await claimWithRetry(payment.txid, recipient, signature); console.log('Delegated:', result.energy, 'energy'); console.log('Delegation tx:', result.delegations[0].tx); // verify on TronScan console.log('Ref:', result.ref); // 3. Send USDT const contract = await tronWeb.contract().at(USDT); const tx = await contract.transfer(recipient, 10 * 1e6).send(); console.log('USDT sent:', tx); } main().catch(console.error);
ყოველთვის დაურთეთ ხელმოწერა. ეს ადასტურებს, რომ თქვენ ხართ ის საფულე, რომელმაც TRX გაგზავნა. მის გარეშე, API უარყოფს მოთხოვნას missing_signature.
Telegram WhatsApp