Skip to content

Stima Quantità Energia ​

Questo endpoint stima la quantità di energia necessaria per effettuare un trasferimento di token senza creare una transazione.

POST /v1/estimate-energy

Richiesta ​

Parametri della Richiesta ​

CampoTipoRichiestoDescrizione
from_addressstringSìIndirizzo wallet TRON del mittente (34 caratteri)
to_addressstringSìIndirizzo wallet TRON del destinatario (34 caratteri)
contract_addressstringNoIndirizzo del contratto intelligente (default: TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t - Tether (USDT))
bash
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
  "from_address": "TRX_FROM_ADDRESS",
  "to_address": "TRX_TO_ADDRESS",
  "contract_address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"
}'

# Calcola la firma
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)

# Effettua la richiesta API
curl -X POST "https://api.tronzap.com/v1/estimate-energy" \
  -H "Authorization: Bearer ${API_TOKEN}" \
  -H "X-Signature: ${SIGNATURE}" \
  -H "Content-Type: application/json" \
  -d "${REQUEST_BODY}"
javascript
const crypto = require('crypto');
const axios = require('axios');

const apiToken = 'your_api_token';
const apiSecret = 'your_api_secret';
const requestBody = JSON.stringify({
  from_address: 'TRX_FROM_ADDRESS',
  to_address: 'TRX_TO_ADDRESS',
  contract_address: 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t'
});

// Calcola la firma
const signature = crypto
  .createHash('sha256')
  .update(requestBody + apiSecret)
  .digest('hex');

// Effettua la richiesta API
axios({
  method: 'post',
  url: 'https://api.tronzap.com/v1/estimate-energy',
  headers: {
    'Authorization': `Bearer ${apiToken}`,
    'X-Signature': signature,
    'Content-Type': 'application/json'
  },
  data: requestBody
})
.then(response => console.log(response.data))
.catch(error => console.error(error));
php
<?php
$apiToken = 'your_api_token';
$apiSecret = 'your_api_secret';
$requestBody = json_encode([
  'from_address' => 'TRX_FROM_ADDRESS',
  'to_address' => 'TRX_TO_ADDRESS',
  'contract_address' => 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t'
]);

// Calcola la firma
$signature = hash('sha256', $requestBody . $apiSecret);

// Effettua la richiesta API
$ch = curl_init('https://api.tronzap.com/v1/estimate-energy');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $requestBody);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
  'Authorization: Bearer ' . $apiToken,
  'X-Signature: ' . $signature,
  'Content-Type: application/json'
]);

$response = curl_exec($ch);
curl_close($ch);

echo $response;
?>
python
import hashlib
import json
import requests

api_token = 'your_api_token'
api_secret = 'your_api_secret'
request_body = json.dumps({
  'from_address': 'TRX_FROM_ADDRESS',
  'to_address': 'TRX_TO_ADDRESS',
  'contract_address': 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t'
})

# Calcola la firma
signature = hashlib.sha256((request_body + api_secret).encode()).hexdigest()

# Effettua la richiesta API
headers = {
  'Authorization': f'Bearer {api_token}',
  'X-Signature': signature,
  'Content-Type': 'application/json'
}

response = requests.post(
  'https://api.tronzap.com/v1/estimate-energy',
  headers=headers,
  data=request_body
)

print(response.json())

Risposta ​

La risposta fornisce informazioni dettagliate di calcolo per l'energia necessaria per effettuare un trasferimento di token.

Campi della Risposta ​

CampoTipoDescrizione
codeintegerCodice di risposta (0 = successo)
request_idstringIdentificatore univoco della richiesta
resultobjectDati della risposta
result.amountintegerQuantità di energia necessaria per effettuare il trasferimento utilizzando il contratto
result.energyintegerQuantità di energia necessaria per effettuare il trasferimento utilizzando il contratto (obsoleto, usa amount)
result.durationintegerDurata in ore (attualmente solo 1 ora è disponibile)
result.pricefloatPrezzo per delegare energia
result.activation_feefloatPrezzo per l'attivazione indirizzo (se richiesto)
result.totalfloatPrezzo finale inclusa l'attivazione se richiesta
result.from_addressstringL'indirizzo TRON del mittente fornito nella richiesta
result.to_addressstringL'indirizzo TRON del destinatario fornito nella richiesta
result.contract_addressstringL'indirizzo del contratto intelligente utilizzato per il calcolo

Esempio di Risposta ​

json
{
    "code": 0,
    "request_id": "bbf74bcd-fb36-4df8-adc8-25f2bacd087b",
    "result": {
        "amount": 64400,
        "energy": 64400,
        "duration": 1,
        "price": 3.66,
        "activation_fee": 0,
        "total": 3.66,
        "from_address": "TRX_FROM_ADDRESS",
        "to_address": "TRX_TO_ADDRESS",
        "contract_address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"
    }
}

Esempio di Risposta (Indirizzo non attivato) ​

json
{
    "code": 0,
    "request_id": "bbf74bcd-fb36-4df8-adc8-25f2bacd087b",
    "result": {
        "amount": 64400,
        "energy": 64400,
        "duration": 1,
        "price": 3.66,
        "activation_fee": 1.4,
        "total": 5.06,
        "from_address": "TRX_FROM_ADDRESS",
        "to_address": "TRX_TO_ADDRESS",
        "contract_address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"
    }
}

Possibili Errori ​

Codice ErroreKeyDescrizione
1authErrore di autenticazione (token o firma errati)
10invalid_tron_addressIndirizzo from non valido
10invalid_tron_addressIndirizzo to non valido
10invalid_tron_addressIndirizzo contratto non valido
35service_unavailableServizio non disponibile
500internal_server_errorErrore interno del server

Note ​

  • Il parametro contract_address è opzionale e per default è TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t (Tether USDT)
  • Questo endpoint stima solo l'energia per effettuare trasferimento USDT senza creare una transazione
  • Per creare una transazione di acquisto energia effettiva, utilizza l'endpoint Crea Transazione

Tron Energy API Documentation