Автопополнение
Автопополнение следит за адресом TRON и пополняет его, как только энергия или bandwidth опускаются ниже заданного вами уровня. Вы выбираете порог, сколько добавлять за раз и срок аренды. Каждое пополнение — обычный заказ, оплаченный с вашего баланса.Как это работает
- Создайте правило для адреса: порог,
add_volumeиduration. - Мы проверяем, сколько энергии (или bandwidth) доступно на адресе, раз в минуту и сразу после каждого исходящего перевода USDT с этого адреса.
- Если уровень ниже порога, мы покупаем для адреса
add_volumeи списываем стоимость с вашего баланса по вашей цене. - Аренда заканчивается по истечении срока. Когда уровень снова опускается ниже порога, правило покупает снова. Так правило и держит адрес обеспеченным: отдельного шага продления нет.
last_read_error_at, а следующая проверка пробует снова.
Создание правила само ничего не покупает. Первое пополнение происходит при следующей проверке, обычно в течение минуты. Ответ на создание показывает, будет ли оно (will_refill_now), и сколько ресурса на адресе прямо сейчас.
Автопополнение реагирует на уже упавший уровень, а не срабатывает заранее, перед переводом. Ставьте порог не ниже того, что нужно вашей следующей транзакции, — тогда к моменту отправки она уже будет покрыта.
Энергия и bandwidth
У двух ресурсов свои эндпоинты и свои правила. На одном адресе могут одновременно действовать правило для энергии и правило для bandwidth; каждое сверяется со своим порогом.
Энергия арендуется на один час. Когда она израсходована или срок истёк, уровень падает, и правило покупает следующий час.
Bandwidth учитывает всё, чем адрес может оплатить транзакцию: бесплатные 600 bandwidth в сутки, которые получает каждый аккаунт, плюс любой застейканный или делегированный bandwidth. Поэтому порог 600 или ниже выполняется за счёт одного лишь бесплатного лимита, пока адрес его не израсходует.
Как выбрать значения
Перевод USDT расходует около 65 000 энергии, если у получателя уже есть USDT, и около 131 000, если нет, плюс примерно 345 bandwidth. Например,threshold_energy: 65000 с add_volume: 131000 покупает запас на два перевода всякий раз, когда остаётся меньше чем на один.
Стоимость
Каждое пополнение — обычный заказ: аренда по вашей ставке плюс фиксированная комиссия, которая берётся за каждое пополнение.estimated_cost_per_refill_trx в ответах списка и создания — полная цена одного пополнения для вашего аккаунта, включая фиксированную комиссию. Чтобы узнать эту цену до создания правила, используйте эндпоинт расчёта цены: энергия, bandwidth. Маленький add_volume с частыми пополнениями платит фиксированную комиссию много раз; крупный — реже.
Правило, созданное с API-ключом, тарифицируется как покупка через этот API-ключ; правило, созданное на сайте, — как покупка на сайте. estimated_cost_per_refill_trx это уже учитывает.
Если адреса ещё нет в сети, первое пополнение заодно активирует его — так же, как обычная покупка. Активация оплачивается сверх и не входит в estimated_cost_per_refill_trx; в заказе она указана в activation_cost_trx.
Суточного лимита расходов нет: правило покупает всякий раз, когда уровень ниже порога и вашего баланса хватает на пополнение.
Заказы и вебхуки
Каждое пополнение появляется в истории заказов (Список заказов) сsource: "autorefill". Чтобы получить только заказы пополнения, вызовите GET /orders?source=autorefill; чтобы выгрузить их файлом, используйте отчёт autorefill.
Правила, созданные с API-ключом, отправляют вебхуки order.updated по своим заказам пополнения — так же, как заказы, оформленные через API. Правила, созданные без API-ключа, их не отправляют.
Статус правила
Пауза после сбоев. Деньги за неудавшееся пополнение возвращаются, как за любой неудавшийся заказ. После 5 неудачных пополнений подряд правило ставится на паузу, а
stopped_reason указывает причину последнего сбоя. consecutive_failures показывает, насколько правило близко к этому пределу; счётчик сбрасывается в 0 после успешного пополнения и при возобновлении правила. Правило на паузе никогда не возобновляется само: устраните причину, затем установите status: "active".
Остановка из-за баланса. Когда баланса не хватает на одно пополнение, правило останавливается со статусом stopped_insufficient_balance. Как только депозит поднимет баланс до цены одного пополнения, правило автоматически вернётся в active. Можно и самому установить status: "active"; если баланса всё ещё не хватает, правило снова остановится при следующей проверке.
Если к аккаунту привязан Telegram, вы получите сообщение при первом пополнении по правилу, а также когда правило ставится на паузу, останавливается из-за баланса или возобновляется.
Лимиты
- Одно правило на адрес и ресурс в аккаунте. Попытка создать второе правило для энергии (или второе правило для bandwidth) на тот же адрес вернёт
409 AUTOREFILL_ADDRESS_TAKEN— вместо этого измените существующее правило. - 20 правил для энергии и 20 правил для bandwidth на аккаунт. Удалённые правила не считаются. Сверх лимита:
409 AUTOREFILL_LIMIT_REACHED. - Адреса контрактов не принимаются, например контракт токена USDT: TRON не позволяет делегировать им ресурсы.
- Создание правил ограничено 10 запросами в минуту на аккаунт, для каждого ресурса отдельно. См. Лимиты запросов.
Изменение и удаление
Изменения действуют со следующей проверки. Пока по правилу покупается пополнение,PATCH и DELETE возвращают 409 AUTOREFILL_IN_PROGRESS — повторите через минуту. Удаление правила не забирает уже купленные энергию или bandwidth: эти аренды действуют до конца своего срока.