API для реальных заказов
Создание заказа
Создайте идемпотентный заказ аренды Energy и получите зафиксированную сумму и URL для проверки статуса.
/v1/energy/ordersНа этой странице
Каждое бизнес-событие должно иметь стабильный уникальный client_request_id. Это обязательная защита от дублей при сетевых повторах.
Тело запроса
{"client_request_id":"order-1042","address":"TXYZ","energy":65000,"duration_hours":1,"expected_total_trx":"3.200000"}
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
client_request_id |
string | да | Ваш уникальный ID операции. Повторяйте его только для того же заказа. |
address |
string | да | Корректный TRON-адрес получателя. |
energy |
integer | да | Положительный объём, кратный размеру порции. |
duration_hours |
integer | да | Разрешённый срок из полученных параметров аренды. |
expected_total_trx |
string | да | Точный total_trx из последней котировки, строго с шестью знаками после точки. |
Лишние JSON-поля запрещены. Отправляйте Content-Type: application/json.
Ответ 201 или 200
{"id":"7c0c9a54-517c-4bbb-a946-bf14bf86c113","client_request_id":"order-1042","address":"TXYZ","energy":65000,"duration_hours":1,"total_trx":"3.200000","status":"created","lifecycle_final":false,"delivery_final":false,"created_at":1784376000,"updated_at":1784376000,"failure":null}
201 Created— новый заказ; заголовокLocationсодержит/v1/energy/orders/{id}.200 OK— точный идемпотентный повтор, возвращён уже существующий заказ.409 Conflictсcode: energy_order_idempotency_conflict— тот жеclient_request_idиспользован с другим адресом, объёмом или сроком.409 Conflictсcode: energy_price_changed— получите новую котировку и подтвердите ещё раз. Заказ не создан, TRX не удержаны.
Идемпотентность
Если время ожидания истекло, не генерируйте новый ID. Повторите тот же JSON и тот же client_request_id. Новый ID создавайте только для нового бизнес-события.
Поля состояния
status показывает стадию заказа. Для автоматического завершения используйте lifecycle_final и delivery_final, а не список строковых статусов. Подробности — в получении заказа.
Ошибки
Возможны 400, 401, 409, 413, 415, 429, 503. Небезопасно автоматически повторять 400, 401, 409, 413 или 415 без исправления причины.
Rentron