Какой вид запроса лучше использовать для изменения статуса объекта

«Какой вид запроса лучше использовать для изменения статуса объекта» — вопрос из категории API и интеграции, который задают на 24% собеседований Бизнес Аналитик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для изменения статуса объекта лучше использовать HTTP PATCH или PUT запрос, в зависимости от семантики:

  • PATCH – если изменяется только статус (частичное обновление).
  • PUT – если объект заменяется целиком, включая статус.

Пример PATCH-запроса в REST API:

PATCH /api/orders/123  
{  
  "status": "completed"  
}  

Почему не POST? POST обычно для создания, а не модификации.
Почему не GET? GET не должен изменять состояние (идемпотентность).

Если статус меняется часто, можно добавить эндпоинт вида PATCH /api/orders/123/status.