POST запросы по умолчанию не идемпотентны, поэтому для них используется заголовок Idempotency-Key.
Как это работает
- Ключ — произвольная уникальная строка, которую генерирует клиент на каждую логическую операцию. Рекомендуем использовать UUID v4.
- Ключ привязан к конкретному проекту и endpoint`y и действует 30 минут, после чего повторный запрос будет обработан как новый.
- Повторный запрос с тем же ключом и тем же телом вернёт сохранённый ответ — новая
сущность не создаётся. В этом случае ответ содержит заголовок
X-Idempotency-Replay: true.
Конфликты
При конфликте поIdempotency-Key приходит 409 с одним из двух кодов:
idempotency_key_reused— тот же ключ использован с другим телом запроса.idempotency_in_progress— первый запрос с этим ключом ещё обрабатывается (повтор пришёл слишком рано).
Один ключ — одна логическая операция. Не переиспользуйте ключ для разных платежей
и генерируйте новый при каждом новом намерении создать платёж или возврат.