REST API では PATCH と PUT のどちらを使うべきですか? [closed] 質問する

REST API では PATCH と PUT のどちらを使うべきですか? [closed] 質問する

次のシナリオに適した方法で REST エンドポイントを設計したいと考えています。

グループがあります。各グループにはステータスがあります。グループは管理者によって有効または無効にできます。

エンドポイントを次のように設計すべきでしょうか

PUT /groups/api/v1/groups/{group id}/status/activate

または

PATCH /groups/api/v1/groups/{group id}

with request body like 
{action:activate|deactivate}

ベストアンサー1

既存のリソースを更新しているため、このPATCH方法はここで正しい選択です。グループ ID は、リソース全体を置き換えるPUT場合にのみ使用してください。

部分的なリソース変更に関する詳しい情報は、RFC 5789具体的には、PUT以下のようになります。

ハイパーテキスト転送プロトコル (HTTP) を拡張するいくつかのアプリケーションでは、部分的なリソース変更を行う機能が必要です。既存の HTTP PUT メソッドでは、ドキュメントの完全な置き換えしかできません。この提案では、既存の HTTP リソースを変更するための新しい HTTP メソッド PATCH を追加します。

おすすめ記事