Skip to content

İşlem Oluştur

Enerji satın alma veya adres etkinleştirme için yeni işlem oluşturur.

POST /v1/transaction/new

İstek

İstek Parametreleri

AlanTürGerekliAçıklama
external_idstringHayırİsteğe bağlı dış işlem tanımlayıcısı
servicestringEvetHizmet türü, "energy" veya "activate_address" olmalıdır
paramsobjectEvetHizmet parametreleri nesnesi
params.addressstringEvetTRON cüzdan adresi (34 karakter)
params.energy_amountintegerEvet*Satın alınacak enerji miktarı. service="energy" olduğunda gereklidir
params.durationintegerEvet*Saat cinsinden süre (1 saat veya 24 saat). service="energy" olduğunda gereklidir
params.activate_addressbooleanHayırAdresi etkinleştirip etkinleştirmeyeceği. Enerji hizmeti için isteğe bağlı

* Yalnızca service="energy" olduğunda gereklidir

bash
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
  "external_id": "my-external-id-123",
  "service": "energy",
  "params": {
    "address": "TRX_ADDRESS",
    "energy_amount": 65000,
    "duration": 1
  }
}'

# İmzayı hesapla
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)

# API isteği yap
curl -X POST "https://api.tronzap.com/v1/transaction/new" \
  -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({
  external_id: 'my-external-id-123',
  service: 'energy',
  params: {
    address: 'TRX_ADDRESS',
    energy_amount: 65000,
    duration: 1
  }
});

// İmzayı hesapla
const signature = crypto
  .createHash('sha256')
  .update(requestBody + apiSecret)
  .digest('hex');

// API isteği yap
axios({
  method: 'post',
  url: 'https://api.tronzap.com/v1/transaction/new',
  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([
  'external_id' => 'my-external-id-123',
  'service' => 'energy',
  'params' => [
    'address' => 'TRX_ADDRESS',
    'energy_amount' => 65000,
    'duration' => 1
  ]
]);

// İmzayı hesapla
$signature = hash('sha256', $requestBody . $apiSecret);

// API isteği yap
$ch = curl_init('https://api.tronzap.com/v1/transaction/new');
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({
  'external_id': 'my-external-id-123',
  'service': 'energy',
  'params': {
    'address': 'TRX_ADDRESS',
    'energy_amount': 65000,
    'duration': 1
  }
})

# İmzayı hesapla
signature = hashlib.sha256((request_body + api_secret).encode()).hexdigest()

# API isteği yap
headers = {
  'Authorization': f'Bearer {api_token}',
  'X-Signature': signature,
  'Content-Type': 'application/json'
}

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

print(response.json())

Adres Etkinleştirme için Örnek İstek

bash
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
  "external_id": "my-external-id-123",
  "service": "activate_address",
  "params": {
    "address": "TRX_ADDRESS"
  }
}'

# İmzayı hesapla
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)

# API isteği yap
curl -X POST "https://api.tronzap.com/v1/transaction/new" \
  -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({
  external_id: 'my-external-id-123',
  service: 'activate_address',
  params: {
    address: 'TRX_ADDRESS'
  }
});

// İmzayı hesapla
const signature = crypto
  .createHash('sha256')
  .update(requestBody + apiSecret)
  .digest('hex');

// API isteği yap
axios({
  method: 'post',
  url: 'https://api.tronzap.com/v1/transaction/new',
  headers: {
    'Authorization': `Bearer ${apiToken}`,
    'X-Signature': signature,
    'Content-Type': 'application/json'
  },
  data: requestBody
})
.then(response => console.log(response.data))
.catch(error => console.error(error));

Yanıt

Yanıt, oluşturulan işlem hakkında ayrıntıları sağlar.

Yanıt Alanları

AlanTürAçıklama
codeintegerYanıt kodu (0 = başarılı)
resultobjectYanıt verisi
result.idstringDahili işlem kimliği
result.external_idstringDış işlem kimliği (sağlanmışsa)
result.paramsobjectOrijinal istek parametreleri
result.statusstringİşlem durumu (durum listesine bakın)
result.amountfloatİşlem tutarı
result.created_atstringOluşturma zaman damgası (ISO 8601 formatı)
result.hashstringİşlem hash'i (tamamlanmışsa)

Örnek Yanıt

json
{
    "code": 0,
    "result": {
        "id": "transaction_id",
        "external_id": "my-external-id-123",
        "params": {
            "address": "TRX_ADDRESS",
            "energy_amount": 65000,
            "duration": 1
        },
        "status": "success",
        "amount": 8.25,
        "created_at": "2024-03-22T12:00:00Z",
        "hash": "transaction_hash"
    }
}

Olası Hatalar

Hata KoduAçıklama
1Kimlik doğrulama hatası (yanlış token veya imza)
2Geçersiz hizmet veya parametreler
5Cüzdan bulunamadı
6Yetersiz bakiye
10Geçersiz TRON adresi
11Geçersiz enerji miktarı
12Geçersiz süre
24Adres etkinleştirilmemiş
25Adres zaten etkinleştirilmiş
500Dahili sunucu hatası

Tron Energy API Documentation