Содержание

#api

Идемпотентная операция — это операция, которая при многократном вызове не изменяет состояние системы

Результат идемпотентного вызова может меняться

Классически идемпотентны: GET, PUT, DELITE

Не учитывают текущее состояние

Прокси серверы могут не повторять POST PATCH запросы тк они неидемпотентны

Свойство системы не меняться при многократных одинаковых запросах

В некоторых публичных API для обеспечения идемпотентности, в запросах необходимо передавать заголовок Idempotency-Key UUID (4версии)

Если клиент пытается создать объект который уже есть - 409 HTTP

Когда сервис получит запрос с заголовком Idempotency-Key, он проверит, была ли ранее создана операция с таким UUID. Если операция была создана, сервер вернет объект Operation с текущим статусом этой операции.

Любой API создания ресурсов должен быть идемпотентным

При удалении возвращать HTTP 410 - ресурс удалён и больше недоступен