Skip to content
Translated page. The English version is the source of truth.

Активатор — активация адреса ​

Активируйте адрес TRON, который никогда не использовался в сети. У совершенно нового адреса отсутствует запись аккаунта, поэтому он не может получать делегированные Energy или Bandwidth до тех пор, пока не будет активирован. Этот эндпоинт создает аккаунт для вас и возвращает хеш транзакции активации.

Активация — это однократная операция для каждого адреса. Если адрес уже активен, эндпоинт сообщит об этом и ничего не спишет.

Базовый URL эндпоинта ​

https://netts.io/apiv2/activator

Заголовки запроса ​

ЗаголовокОбязательныйОписание
Content-TypeДаapplication/json
X-API-KEYДаВаш API-ключ из панели управления Netts

Ваш user_id определяется на основе API-ключа — передавать его не требуется.


Активация — POST /apiv2/activator ​

Тело запроса ​

json
{ "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE" }
ПолеТипОбязательноеОписание
targetAddressstringДаАдрес TRON для активации. Должен соответствовать шаблону ^T[A-Za-z0-9]{33}$ (34 символа, начинается с T).

Ответ — активирован (200, код 10000) ​

json
{
    "detail": {
        "code": 10000,
        "msg": "Address activated successfully, 1.1 TRX deducted",
        "data": {
            "orderId": "A123456",
            "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
            "activation_cost": 1.1,
            "user_balance_before": 500.00,
            "user_balance_after": 498.90,
            "hash": "0000000000000000000000000000000000000000000000000000000000000000"
        }
    }
}
ПолеТипОписание
orderIdstringНомер заказа активации, всегда A + цифры. Используйте его для сверки.
targetAddressstringАдрес, который был активирован
activation_costfloatСумма, списанная с вашего баланса, в TRX
user_balance_beforefloatБаланс до списания
user_balance_afterfloatБаланс после списания
hashstringХеш транзакции активации. Проверьте его в любом обозревателе блоков TRON.

Ответ — уже активен (200, код 2001) ​

Возвращается, когда адрес уже существует в сети. Никакие средства не списываются.

json
{
    "detail": {
        "code": 2001,
        "msg": "Address is already activated",
        "data": {
            "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
            "status": "already_activated",
            "user_balance": 500.00,
            "activation_cost": 0,
            "activation_required": false
        }
    }
}

Проверяйте code, прежде чем предполагать списание средств: 10000 означает, что вы заплатили, 2001 — что списания не было.

Пример ​

bash
curl -X POST https://netts.io/apiv2/activator \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{"targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE"}'

Стоимость ​

ЭлементСумма
Активация1.1 TRX
Адрес уже активен0

Сумма фиксирована и не зависит ни от адреса, ни от состояния сети. Она списывается с вашего баланса Netts в момент успешной активации — никогда ранее. Неудачная активация не стоит ничего.

Ваш баланс должен покрывать стоимость, в противном случае запрос отклоняется со статусом 403 (1004), и заказ не создается.


Когда это необходимо ​

  • Перед арендой Energy или Bandwidth для нового адреса. Делегирование несуществующему аккаунту завершится ошибкой. Сначала активируйте, затем заказывайте.
  • Перед первым входящим переводом на адрес, который вы сгенерировали самостоятельно.

Вам не нужно вызывать этот эндпоинт для адреса, который когда-либо получал TRX или токен — он уже активен, и вызов просто вернет 2001.

Заказ Energy для нового адреса

Эндпоинт 1-часовой Energy самостоятельно активирует неактивного получателя в рамках заказа, и стоимость активации добавляется к этому заказу. Вызывайте активатор явно, если вам нужно, чтобы адрес был активен до какой-либо аренды — например, чтобы сначала пополнить Bandwidth, для чего действительно требуется активный аккаунт.


Тайминги ​

Активация — это реальная транзакция в сети. Эндпоинт возвращает ответ после ее отправки в сеть и записи факта активации, обычно в течение нескольких секунд.

Адрес становится пригодным для использования только после того, как транзакция будет включена в блок — примерно через ~3 секунды после ответа, поскольку таков интервал блока в TRON. Если ваш следующий шаг зависит от того, активен ли адрес (например, заказ Bandwidth), подтвердите состояние в сети по возвращенному hash, а не вызывайте его немедленно.


Справочник кодов ошибок ​

КодОписаниеHTTP-статус
10000Адрес активирован, баланс списан200
2001Адрес уже активирован, списания не произошло200
-1Недействительный API-ключ / IP отсутствует в белом списке401
1004Недостаточно средств — в сообщении указано, сколько требуется и сколько у вас есть403
-Неверный формат targetAddress (должно быть 34 символа, начинается с T)422
5003Ошибка активации или сервис временно недоступен — повторите попытку позже503
5000Внутренняя ошибка сервера500

Статус 503 означает, что списания не произошло и адрес не был активирован: запрос можно безопасно повторить.

Ограничения частоты запросов ​

Ограничения действуют на каждый исходный IP:

ПериодЛимит
1 секунда5 запросов
1 минута60 запросов

Превышение лимита запросов (429) ​

json
{ "message": "API rate limit exceeded" }

Постоплатные аккаунты ​

Аккаунты на постоплатном тарифе используют те же эндпоинт, заголовки и тело запроса. Разница заключается в том, как оплачивается активация:

  • С вашего депозита ничего не списывается. Каждая успешная активация добавляется к сумме задолженности по вашему аккаунту в валюте расчетов, согласованной в договоре. Вы оплачиваете ее по счету в соответствии с договоренностями.
  • Для вашего аккаунта установлен кредитный лимит. Пока сумма задолженности находится в пределах лимита, активации принимаются даже с нулевым депозитом.
  • Оплачивается только завершенная активация. Уже активный адрес (2001) и неудачная активация не стоят ничего.

Постоплатный тариф подключается Netts для аккаунта по запросу. Каждый ответ сообщает, как оплачивается активация: paymentMode имеет значение postpaid или prepaid.

Дополнительные поля запроса ​

ПолеТипОбязательноеОписание
testbooleanНетtrue — только рассчитать стоимость и проверить адрес. Ничего не активируется и не выставляется к оплате
freezePricebooleanНетtrue — зафиксировать цену по вашему договору на 60 секунд. Ничего не активируется и не выставляется к оплате
quoteIdstringНетАктивировать по цене котировки, выданной через freezePrice для того же адреса
priceCurrencystringНетTRX (по умолчанию) или валюта вашего договора, как в settlement.asset. Для постоплатных аккаунтов суммы в валюте договора включаются всегда

quoteId нельзя комбинировать с test или freezePrice. Любое другое поле в теле запроса отклоняется.

Проверка цены (test: true) ​

json
{ "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH", "test": true }
json
{
    "detail": {
        "code": 10010,
        "msg": "Test calculation",
        "data": {
            "amount": 1,
            "unitPriceSun": null,
            "discount": null,
            "energyTRX": "0.000000",
            "activationTRX": "1.100000",
            "wouldCostTRX": "1.100000",
            "paidTRX": 0,
            "paymentMode": "postpaid",
            "activationCheck": "inactive",
            "alt": {"USDC": {"energy": "0.000000", "activation": "0.364333", "total": "0.364333"}},
            "fxAt": "2026-10-19T07:17:33.475335+00:00",
            "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH"
        }
    }
}

activationCheck: inactive — адрес требует активации и будет выставлен к оплате; active — адрес уже активен, wouldCostTRX равен 0; unknown — не удалось проверить в данный момент.

alt.<currency> — те же суммы в валюте вашего договора. fxAt — время использованного курса обмена.

Котировка с фиксированной ценой (freezePrice: true) ​

  1. Отправьте запрос с "freezePrice": true. Ответ содержит код 10011 (Quote issued), те же поля, что и при проверке цены, а также quoteId и expiresAt.
  2. В течение 60 секунд отправьте запрос с "quoteId": "<quoteId>" и тем же targetAddress.
  3. Активация тарифицируется по цене котировки — цене по вашему договору на момент создания котировки.

Котировку можно использовать один раз. Истекшая или уже использованная котировка отклоняется, и активация не выполняется.

Успешная активация ​

json
{
    "detail": {
        "code": 10000,
        "msg": "Address activated successfully, 1.1 TRX service cost, postpaid",
        "data": {
            "orderId": "A564125",
            "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH",
            "activation_cost": 1.1,
            "user_balance_before": 0.0,
            "user_balance_after": 0.0,
            "hash": "bd9ea6ef92ce4ba6553af3930a03abe874cdfcc2399b7fdd9abdb11570de2920",
            "paymentMode": "postpaid",
            "activationTRX": "1.100000",
            "totalTRX": "1.100000"
        }
    }
}
ПолеОписание
activation_costСтоимость активации в TRX. Для постоплатных аккаунтов она не списывается с депозита
user_balance_before / user_balance_afterВаш депозит — без изменений для постоплатных аккаунтов
paymentModepostpaid
activationTRX / totalTRXТочные суммы, 6 знаков после запятой
quoteId, altПрисутствуют, если активация была запрошена с котировкой

Кредитный лимит исчерпан (402) ​

json
{
    "detail": {
        "code": 1004,
        "msg": "Postpaid credit limit reached.",
        "paymentMode": "postpaid",
        "reason": "limit_reached"
    }
}

Ничего не активируется и к оплате не выставляется. Новые активации снова принимаются после зачисления вашего платежа или увеличения лимита.

Коды ошибок постоплаты ​

КодHTTPОписание
10010200Результат проверки цены (test)
10011200Котировка выдана (freezePrice)
1004402Кредитный лимит постоплаты исчерпан
4100400Неверный запрос
4101400Неподдерживаемая priceCurrency
4102400quoteId скомбинирован с test или freezePrice
4103409Котировка уже использована
4104409Срок действия котировки истек
4106404Котировка не найдена
4107409Параметры запроса отличаются от котировки
4108400Неверный формат quoteId
4109422Недоступно для суб-аккаунтов
5032503Цена временно недоступна
5033503Курс обмена временно недоступен
5034503Биллинг временно недоступен — активация не была принята
5036503Проверка кредита временно недоступна — повторите попытку позже

Для всех приведенных выше ответов 4xx и 503 ничего не активируется и к оплате не выставляется.


Примечания ​

  • Идемпотентность лежит на вас. У эндпоинта нет ключа идемпотентности. Повторение запроса для адреса, который уже активен, безопасно и бесплатно (2001), но два одновременных запроса для одного и того же нового адреса могут быть обработаны оба. Сериализуйте вызовы активации для каждого адреса на своей стороне.
  • Формат orderId — A + цифры, он уникален для всех активаций.
  • Вебхуки для активации в настоящее время не отправляются — ответ и hash служат подтверждением. Вебхуки сейчас охватывают только подтвержденные делегирования Energy, см. Вебхуки.