Skip to content

Start Subscription

Creates a new Energy subscription for the specified TRON address.

POST /v1/subscription/start

Request

Request Parameters

FieldTypeRequiredDescription
subscription_idstringYesSubscription type ID (from /v1/subscriptions)
external_idstringNoExternal ID for tracking
paramsobjectYesSubscription parameters
params.addressstringYesTRON address
params.durationintegerYesDuration in days (0 = unlimited)
params.transactions_limitintegerYesTransaction limit (0 = unlimited)
params.activate_addressbooleanNoActivate address if inactive
bash
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
  "subscription_id": "unlimited_energy",
  "external_id": "my-subscription-123",
  "params": {
    "address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
    "duration": 30,
    "transactions_limit": 0,
    "activate_address": true
  }
}'

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

# Execute API request
curl -X POST "https://api.tronzap.com/v1/subscription/start" \
  -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({
  subscription_id: 'unlimited_energy',
  external_id: 'my-subscription-123',
  params: {
    address: 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
    duration: 30,
    transactions_limit: 0,
    activate_address: true
  }
});

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

// Execute API request
axios({
  method: 'post',
  url: 'https://api.tronzap.com/v1/subscription/start',
  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([
  'subscription_id' => 'unlimited_energy',
  'external_id' => 'my-subscription-123',
  'params' => [
    'address' => 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
    'duration' => 30,
    'transactions_limit' => 0,
    'activate_address' => true
  ]
]);

// Calculate signature
$signature = hash('sha256', $requestBody . $apiSecret);

// Execute API request
$ch = curl_init('https://api.tronzap.com/v1/subscription/start');
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({
  'subscription_id': 'unlimited_energy',
  'external_id': 'my-subscription-123',
  'params': {
    'address': 'TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t',
    'duration': 30,
    'transactions_limit': 0,
    'activate_address': True
  }
})

# Calculate signature
signature = hashlib.sha256((request_body + api_secret).encode()).hexdigest()

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

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

print(response.json())

Example request with transaction limit

bash
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
  "subscription_id": "unlimited_energy",
  "params": {
    "address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
    "duration": 0,
    "transactions_limit": 100
  }
}'

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

# Execute API request
curl -X POST "https://api.tronzap.com/v1/subscription/start" \
  -H "Authorization: Bearer ${API_TOKEN}" \
  -H "X-Signature: ${SIGNATURE}" \
  -H "Content-Type: application/json" \
  -d "${REQUEST_BODY}"

Response

Response contains information about the created subscription.

Response Fields

FieldTypeDescription
codeintegerResponse code (0 = success)
resultobjectResponse data
result.idstringCreated subscription ID
result.subscription_idstringSubscription type ID
result.created_atstringCreation date
result.expire_atstringExpiration date (if duration specified)
result.addressstringTRON address
result.statusstringSubscription status
result.external_idstringExternal subscription ID (if specified)
result.paramsobjectOriginal request parameters

Response Example

json
{
  "code": 0,
  "result": {
    "id": "01k33rz57drtqgqcedyn9tvk04",
    "subscription_id": "unlimited_energy",
    "created_at": "2025-08-20T12:58:52+00:00",
    "expire_at": "2025-08-21T12:58:52+00:00",
    "address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
    "status": "active",
    "external_id": null,
    "params": {
      "address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
      "activate_address": false,
      "duration": 1,
      "transactions_limit": 0
    }
  }
}

Possible Errors

Error CodeDescription
1Authentication error (invalid token or signature)
2Invalid service or parameters
5Wallet not found
6Insufficient funds
10Invalid TRON address or address already has an active subscription
24Address must be activated before purchasing subscription
500Internal server error

Tron Energy API Documentation