Тільки FYI, відповіді тут неправильні.
Побачити:
https://restfulapi.net/rest-api-design-tutorial-with-example/
https://restfulapi.net/rest-put-vs-post/
https://restfulapi.net/http-methods/#patch
ВСТАНОВИТИ
Використовуйте API PUT в першу чергу для оновлення існуючого ресурсу (якщо ресурс не існує, тоді API може вирішити створити новий ресурс чи ні). Якщо за допомогою API PUT створено новий ресурс, початковий сервер ПОВИНЕН інформувати агента користувача за допомогою відповіді коду відповіді HTTP 201 (Створено), а якщо існуючий ресурс модифікований, то 200 (OK) або 204 (Без вмісту) коди відповідей ПОВИННІ надсилатись, щоб вказати на успішне заповнення запиту.
Якщо запит проходить через кеш, а Request-URI ідентифікує одну або кілька кешованих сутностей, ці записи ПОВИННІ розглядатися як застарілі. Відповіді на цей метод не можна кешувати.
Використовуйте PUT, коли ви хочете змінити окремий ресурс, який уже є частиною збору ресурсів. PUT повністю замінює ресурс. Використовуйте PATCH, якщо запит оновлює частину ресурсу.
ЛІП
Запити HTTP PATCH мають частково оновити ресурс. Якщо ви бачите, що запити PUT також модифікують сутність ресурсу, щоб зробити це більш зрозумілим - метод PATCH є правильним вибором для часткового оновлення існуючого ресурсу, і PUT слід використовувати лише в тому випадку, якщо ви замінюєте ресурс повністю.
Тому ви повинні використовувати його таким чином:
POST /device-management/devices : Create a new device
PUT /device-management/devices/{id} : Update the device information identified by "id"
PATCH /device-management/devices/{id} : Partial-update the device information identified by "id"
Практики RESTful вказують, що не має значення, що ви ВСТАНОВИТИ в / {id} - вміст запису має бути оновлений до того, що надається корисним навантаженням, але GET / {id} все одно має посилатися на той самий ресурс.
Іншими словами, PUT / 3 може оновитись до ідентифікатора корисного навантаження до 4, але GET / 3 все одно повинен посилатись на те саме корисне навантаження (і повертати той із ідентифікатором, встановленим на 4).
Якщо ви вирішили, що ваш API вимагає однакових ідентифікаторів в URI та корисному навантаженні, ваша робота - переконатися, що він збігається, але обов’язково використовуйте PATCH замість PUT, якщо ви виключаєте ідентифікатор із корисного навантаження, який повинен бути там повністю . Тут прийнята відповідь помилилася. PUT повинен замінити весь ресурс, де-як виправлення може бути частковим.