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