Skip to content

Calcular Custo de Energia

Este endpoint calcula o custo da compra de energia sem criar uma transação.

POST /v1/calculate

Requisição

Parâmetros da Requisição

CampoTipoObrigatórioDescrição
addressstringSimEndereço da carteira TRON (34 caracteres)
energyintegerSimQuantidade de energia a ser comprada (mínimo 32000)
durationintegerSimDuração em horas (1 hora ou 24 horas)
bash
#!/bin/bash
API_TOKEN="seu_token_api"
API_SECRET="seu_segredo_api"
REQUEST_BODY='{
  "address": "ENDERECO_TRX",
  "energy": 32000,
  "duration": 1
}'

# Calcula a assinatura
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)

# Faz a requisição à API
curl -X POST "https://api.tronzap.com/v1/calculate" \
  -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 = 'seu_token_api';
const apiSecret = 'seu_segredo_api';
const requestBody = JSON.stringify({
  address: 'ENDERECO_TRX',
  energy: 32000,
  duration: 1
});

// Calcula a assinatura
const signature = crypto
  .createHash('sha256')
  .update(requestBody + apiSecret)
  .digest('hex');

// Faz a requisição à API
axios({
  method: 'post',
  url: 'https://api.tronzap.com/v1/calculate',
  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 = 'seu_token_api';
$apiSecret = 'seu_segredo_api';
$requestBody = json_encode([
  'address' => 'ENDERECO_TRX',
  'energy' => 32000,
  'duration' => 1
]);

// Calcula a assinatura
$signature = hash('sha256', $requestBody . $apiSecret);

// Faz a requisição à API
$ch = curl_init('https://api.tronzap.com/v1/calculate');
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 = 'seu_token_api'
api_secret = 'seu_segredo_api'
request_body = json.dumps({
  'address': 'ENDERECO_TRX',
  'energy': 32000,
  'duration': 1
})

# Calcula a assinatura
signature = hashlib.sha256((request_body + api_secret).encode()).hexdigest()

# Faz a requisição à API
headers = {
  'Authorization': f'Bearer {api_token}',
  'X-Signature': signature,
  'Content-Type': 'application/json'
}

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

print(response.json())

Resposta

A resposta fornece informações detalhadas do cálculo para a compra de energia.

Campos da Resposta

CampoTipoDescrição
codeintegerCódigo da resposta (0 = sucesso)
resultobjectDados da resposta
result.addressstringO endereço TRON fornecido na requisição
result.energyintegerA quantidade de energia fornecida na requisição
result.durationintegerA duração em horas fornecida na requisição
result.pricefloatPreço total para a compra de energia
result.activation_feefloatPreço para ativação do endereço (se necessário)
result.totalfloatPreço final incluindo ativação, se necessária

Exemplo de Resposta

json
{
    "code": 0,
    "result": {
        "address": "ENDERECO_TRX",
        "energy": 32000,
        "duration": 1,
        "price": 1.67,
        "activation_fee": 0,
        "total": 1.67
    }
}

Exemplo de Resposta (Endereço não ativado)

json
{
    "code": 0,
    "result": {
        "address": "ENDERECO_TRX",
        "energy": 32000,
        "duration": 1,
        "price": 1.67,
        "activation_fee": 1.4,
        "total": 3.07
    }
}

Possíveis Erros

Código do ErroDescrição
1Erro de autenticação (token ou assinatura incorretos)
2Serviço ou parâmetros inválidos
5Carteira não encontrada
10Endereço TRON inválido
11Quantidade de energia inválida
12Duração inválida
500Erro interno do servidor

Observações

  • A quantidade de energia deve ser de pelo menos 32000.
  • São suportadas durações de 1 hora e 24 horas.
  • Este endpoint apenas calcula o custo sem criar uma transação.
  • Para criar uma transação real de compra de energia, use o endpoint Criar Transação.

Tron Energy API Documentation