Skip to content

Calcola Prezzo ​

POST /v1/orders/calculate

Restituisce il prezzo esatto in TRX per un ordine ipotetico senza crearne uno. Usalo per mostrare agli utenti il costo prima che si impegnino con un deposito.

Questo è un endpoint di puro calcolo del prezzo — non interagisce con la rete TRON.

Corpo della richiesta ​

FieldTypeRequiredDescription
durationintegersìDurata del noleggio delle risorse in ore. Deve essere 1.
activationbooleannoSe true, include la commissione di attivazione dell'account nel total. Il valore predefinito è false.
resources.energyintegerno*Quantità di energia da consegnare.
resources.bandwidthintegerno*Quantità di bandwidth da consegnare.

* Almeno uno tra resources.energy e resources.bandwidth deve essere maggiore di zero.

Esempi ​

bash
curl -X POST https://api.tronzap.com/v1/orders/calculate \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "duration": 1,
    "activation": false,
    "resources": {
      "energy": 65000,
      "bandwidth": 345
    }
  }'
javascript
const response = await fetch('https://api.tronzap.com/v1/orders/calculate', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Accept': 'application/json',
  },
  body: JSON.stringify({
    duration: 1,
    activation: false,
    resources: { energy: 65000, bandwidth: 345 },
  }),
})
const data = await response.json()
console.log(data.result.total, data.result.currency)
php
$response = file_get_contents('https://api.tronzap.com/v1/orders/calculate', false, stream_context_create([
  'http' => [
    'method' => 'POST',
    'header' => "Content-Type: application/json\r\nAccept: application/json",
    'content' => json_encode([
      'duration' => 1,
      'activation' => false,
      'resources' => ['energy' => 65000, 'bandwidth' => 345],
    ]),
  ],
]));
$data = json_decode($response, true);
echo $data['result']['total'] . ' ' . $data['result']['currency'];
python
import requests

resp = requests.post('https://api.tronzap.com/v1/orders/calculate', json={
    'duration': 1,
    'activation': False,
    'resources': {'energy': 65000, 'bandwidth': 345},
})
result = resp.json()['result']
print(result['total'], result['currency'])

Risposta ​

json
{
  "code": 0,
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "result": {
    "energy":     { "amount": 65000, "price": 2.34 },
    "bandwidth":  { "amount": 345,   "price": 0.35 },
    "activation": { "required": false, "price": 0 },
    "total": 2.69,
    "currency": "TRX",
    "duration": 1
  }
}

Con activation: true (attivazione di un nuovo account):

json
{
  "code": 0,
  "request_id": "550e8400-e29b-41d4-a716-446655440000",
  "result": {
    "energy":     { "amount": 65000, "price": 2.34 },
    "bandwidth":  { "amount": 345,   "price": 0.35 },
    "activation": { "required": true, "price": 1.40 },
    "total": 4.09,
    "currency": "TRX",
    "duration": 1
  }
}

Campi della risposta ​

FieldTypeDescription
energy.amountintegerEco della quantità di energia richiesta.
energy.pricenumberCosto in TRX per l'energia.
bandwidth.amountintegerEco della quantità di bandwidth richiesta.
bandwidth.pricenumberCosto in TRX per il bandwidth.
activation.requiredbooleanEco del flag activation inviato.
activation.pricenumberCosto in TRX dell'attivazione. 0 quando non richiesta.
totalnumberSomma dei prezzi di energia + bandwidth + attivazione.
currencystringSempre TRX.
durationintegerEco della durata richiesta.

total corrisponde all'importo di create-order

Il total di questo endpoint è uguale all'amount che POST /v1/orders richiederà, dati gli stessi input e il medesimo risultato di activation.

TronZap Partner Documentation