Меню документации

Сеть — Справочник API

Вспомогательные методы только для чтения данных сети TRON.

МетодПутьОписание
GET/v1/resources/{address}Состояние ресурсов адреса
POST/v1/estimate/transferРасчет энергии для TRC-20 перевода

Сгенерировано из openapi.yaml во время сборки. Базовый URL https://api.tenergy.me/v1 или https://api-nile.tenergy.me/v1 в сети Nile (Окружения). Каждый запрос ниже подписывается в соответствии с разделом Аутентификация, если в строке Аутентификация не указано иное.

Состояние ресурсов адреса

GET /v1/resources/{address} · getAddressResources

Аутентификация: Публичный — учетные данные не требуются; запрос с подписью API-ключа (HMAC) также принимается.

Текущая информация сети об адресе: активирован ли он, сколько свободной энергии и пропускной способности доступно, сколько делегировано и кем, а также какие из делегирований созданы нашей платформой.

Читается напрямую с нашей ноды с кратким кэшированием (as_of указывает на время снимка). Используйте этот метод, чтобы определить, требуется ли заказ вообще — самая дешевая энергия — это та, которую вы не покупаете.

Публичный. Учетные данные не обязательны; для анонимных вызовов действует лимит по IP, и поле our_active_orders возвращает []. Подписанный запрос включает активные заказы данного аккаунта на этот адрес и учитывается в бюджете ключа.

Параметры

ПараметрГдеТипОбязательныйОписание
addresspathstringдаTRON-адрес Base58Check (начинается с T, 34 символа).

Ответы

СтатусЗначение
200OK
400Некорректный запрос — невалидный JSON, неизвестное поле или неверный тип.
401Отсутствуют, некорректны или отклонены учетные данные.
429Слишком много запросов.
500Ошибка на нашей стороне.
503Временно недоступно. При создании заказа это безопасно: ничего не сохранено и средства не списаны, повтор с тем же client_order_id безопасен.

Поля ответа (AddressResources)

ПолеТипОбязательноеОписание
addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
activatedbooleanдаfalse для адреса, который еще ничего не получал в блокчейне.
balance_suninteger (int64)Сумма в SUN (1 TRX = 1 000 000 SUN). Всегда целое число.
holds_usdtboolean | nullИмеет ли адрес ненулевой баланс USDT (TRC-20) — balanceOf > 0 в контракте USDT сети. Перевод USDT на адрес без баланса создает новый слот хранилища и расходует примерно вдвое больше энергии (~131k вместо ~65k). null, если чтение не удалось; остальная часть ответа сохраняется.
energyobjectда
energy.limitintegerОбщий объем энергии, доступный адресу.
energy.usedinteger
energy.availableintegerlimit - used. Объем, который можно потратить на транзакции прямо сейчас.
energy.delegated_inintegerЧасть лимита, полученная через делегирование.
bandwidthobjectда
bandwidth.limitinteger
bandwidth.usedinteger
bandwidth.availableinteger
bandwidth.delegated_ininteger
bandwidth.free_net_limitintegerСуточный бесплатный лимит пропускной способности сети, включен в limit.
our_active_ordersarray of objectСобственные активные заказы аккаунта, доставляющие ресурсы на этот адрес. Делегирования от других провайдеров или аккаунтов учитываются в delegated_in, но не детализируются.
our_active_orders[].order_idstring
our_active_orders[].amountinteger
our_active_orders[].resourceenum: energy, bandwidth, activationenergy — энергия TRON, ресурс для TRC-20 переводов. · bandwidth — пропускная способность TRON (net), расходуемая размером транзакции. · activation — разовая активация аккаунта; amount и tier не применяются.
our_active_orders[].expires_atstring (date-time)
as_ofstring (date-time)даВремя получения данных из сети. Кэшируется на несколько секунд.

Пример ответа 200 из контракта (значения приведены для иллюстрации):

json
{
  "address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
  "activated": true,
  "balance_sun": 4120000,
  "holds_usdt": true,
  "energy": {"limit":131000,"used":0,"available":131000,"delegated_in":131000},
  "bandwidth": {"limit":1600,"used":0,"available":1600,"delegated_in":0,"free_net_limit":600},
  "our_active_orders": [
    {
      "order_id": "ord_01J9Z5P8T3WQ",
      "amount": 65000,
      "resource": "energy",
      "expires_at": "2026-09-11T19:04:07.900Z"
    }
  ],
  "as_of": "2026-09-11T18:40:00.000Z"
}

Расчет энергии для TRC-20 перевода

POST /v1/estimate/transfer · estimateTransferEnergy

Аутентификация: API-ключ (HMAC).

Сколько энергии потребит TRC-20 перевод с адреса from_address на адрес to_address, и сколько будет стоить аренда этого объема. По умолчанию используется контракт USDT (TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t), если contract_address не указан.

Значение зависит от того, есть ли уже у получателя ненулевой баланс этого токена — перевод новому получателю обходится примерно в два раза дороже — поэтому оба адреса обязательны. Оценка рассчитывается с помощью симуляции triggerConstantContract на нашей ноде, поэтому она отражает актуальное состояние контракта, а не статические таблицы.

Добавьте запас надежности перед заказом: симуляция выполняется сейчас, а транзакция отправляется позже, и баланс получателя может измениться. Поле recommended_amount уже включает платформенный запас и является рекомендуемым объемом для заказа.

Тело запроса

JSON (TransferEstimateRequest), обязательно.

ПолеТипОбязательноеОписание
from_addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
to_addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
contract_addressstringКонтракт TRC-20. По умолчанию USDT TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t.
amountstring | nullСумма перевода в минимальных неделимых единицах токена строкой decimal, чтобы избежать потери точности. Влияет на симуляцию незначительно; опустите, если неизвестно.
tierenum: 5m, 15m, 1h, 1d, 3d, 30dТарифный план длительности аренды. По умолчанию 1h.

Пример тела запроса из контракта (иллюстративные значения):

json
{
  "from_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
  "to_address": "TXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}

Ответы

СтатусЗначение
200OK
400Некорректный запрос — невалидный JSON, неизвестное поле или неверный тип.
401Отсутствуют, некорректны или отклонены учетные данные.
429Слишком много запросов.
500Ошибка на нашей стороне.
503Временно недоступно. При создании заказа это безопасно: ничего не сохранено и средства не списаны, повтор с тем же client_order_id безопасен.

Поля ответа (TransferEstimate)

ПолеТипОбязательноеОписание
from_addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
to_addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
contract_addressstringдаTRON-адрес Base58Check (начинается с T, 34 символа).
recipient_holds_tokenbooleanИмеет ли получатель уже ненулевой баланс этого токена. Для нового адреса затраты энергии возрастают примерно вдвое.
energy_requiredintegerдаЭнергия, фактически затраченная при симуляции перевода.
recommended_amountintegerдаРекомендуемый объем заказа — energy_required плюс страховой запас на случай изменения состояния сети между оценкой и отправкой. Заказывайте именно это значение.
bandwidth_requiredinteger
tierenum: 5m, 15m, 1h, 1d, 3d, 30dСрок аренды. GET /v1/prices возвращает тарифы, доступные прямо сейчас. Не зашивайте список жестко в код; запрошенный тариф, отсутствующий в /prices, будет отклонен с ошибкой 2003 tier_unavailable.
price_sun_per_unitinteger
energy_amount_suninteger (int64)Сумма в SUN (1 TRX = 1 000 000 SUN). Всегда целое число.
activate_amount_suninteger (int64)Комиссия за активацию to_address, если он еще не активирован в сети.
total_amount_suninteger (int64)Общая сумма в SUN (1 TRX = 1 000 000 SUN). Всегда целое число.
burn_alternative_suninteger (int64)Стоимость того же перевода при сжигании TRX по текущей базовой цене энергии в сети, для сравнения. Рассчитывается из параметра сети (getEnergyFee), а не из константы. С 29.08.2025 этот параметр равен 100 SUN за единицу энергии; в примере 130,285 × 100. Любой код, все еще использующий 210, обращается к устаревшей константе.
as_ofstring (date-time)даВремя расчета.

Пример ответа 200 из контракта (значения приведены для иллюстрации):

json
{
  "from_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
  "to_address": "TXXxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
  "contract_address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
  "recipient_holds_token": false,
  "energy_required": 130285,
  "recommended_amount": 131000,
  "bandwidth_required": 345,
  "tier": "1h",
  "price_sun_per_unit": 20,
  "energy_amount_sun": 2620000,
  "activate_amount_sun": 1200000,
  "total_amount_sun": 3820000,
  "burn_alternative_sun": 13028500,
  "as_of": "2026-09-11T18:41:00.000Z"
}

    ↑ ↓ — выбрать · Enter — открыть · Esc — закрыть