API для реальных заказов
Опрос статуса, повторы и идемпотентность
Безопасно повторяйте запросы, соблюдайте Retry-After и прекращайте опрос по двум финальным флагам.
На этой странице
Rentron не отправляет уведомлений и обратных вызовов. Источник истины — GET /v1/energy/orders/{id}.
Рекомендуемый опрос статуса
После создания опрашивайте URL из Location через 1, 2, 5 секунд, затем каждые 10 секунд. Если одновременно отслеживаете много заказов, добавляйте небольшое случайное смещение интервала.
Прекращайте опрос только при lifecycle_final === true и delivery_final === true.
Матрица повторов
| Результат | Что делать |
|---|---|
Ошибка сети или истекло время ожидания GET |
Повторить с увеличивающейся паузой. |
Истекло время ожидания POST заказа |
Повторить то же тело запроса и тот же client_request_id. |
429 |
Подождать число секунд из Retry-After. |
500 / 503 на GET |
Повторить с увеличивающейся паузой и небольшим случайным смещением. |
400, 413, 415 |
Исправить запрос; автоматический повтор бесполезен. |
401 |
Исправить ключ, подпись, метку времени или список разрешённых IP-адресов. |
Конфликт идемпотентности 409 |
Не менять запрос автоматически; проверить повторное использование ID. |
Почему нужны два флага
delivery_final завершает попытку доставки, а lifecycle_final — весь срок аренды. После успешной доставки заказ может оставаться активным до rental_finished. Проверка только status или одного флага приводит к преждевременному завершению процесса.
Ограничения частоты
Лимиты применяются отдельно к публичному времени, подписанным запросам и созданию заказов. Не пытайтесь угадывать лимит: обрабатывайте 429 и Retry-After как часть контракта.
Rentron