imu-note
いむたろ
いむたろ
@imutaroh
新卒エンジニア / データ基盤 × AI

What — リクエスト1行目の先頭に書く動詞

HTTP メソッドは、リクエストの1行目の先頭に書く動詞で、「この URL に対して何をしたいか」をサーバーに伝える部品。 POST /users HTTP/1.1POST がそれ。サーバーはまずこの動詞を見て、同じ URL への処理を「読む・作る・変える・消す」に振り分ける。

種類は HTTP の仕様上9個+2026年6月に標準化された QUERY(RFC 10008・「ボディを持てる安全な GET」)があるが、API を叩くのに使うのは実質この5個で足りる。

How — 5個の意味と1本の判定軸

判定軸は1本:サーバーのデータが変わるかどうか。変わらないのは GET だけで、残り4つは全部「書き込み系」。

メソッド意味ボディ成功時の典型
GET取得(データは変わらない)なし200 OK+中身
POST新規作成あり201 Created
PUT丸ごと置き換えあり(全項目)200 / 204
PATCH一部だけ更新あり(変える項目だけ)200
DELETE削除なし204 No Content

どのメソッドを書くかは叩く側が選ぶ。ただし選択肢は API 側がドキュメントで指定している——「このエンドポイントは GET と POST を受け付ける」と決まっていて、外れたメソッドを送ると 405 Method Not Allowed が返る。迷ったら自分で推理せず、ドキュメントの指定をそのまま写す。

落とし穴

  • ブラウザのアドレスバーから送れるのは GET だけ。URL を打って Enter は常に GET になる。POST 以降を試すには curl-X かコードが要る(-d を付けると curl は自動で POST にしてくれる)
  • PUT と PATCH の混同。PUT は「全項目を送り直して丸ごと置き換え」なので、送り忘れた項目が消える扱いになる API がある。1項目だけ直したいときは PATCH

関連

  • API — API まわりの地図
  • REST — この動詞を「どの URL と組み合わせるか」の流儀(資源×メソッドの表)
  • HTTPリクエストの構造 — メソッドが収まる場所(4点セットの1つ目)
  • curl-X でメソッドを指定して送るコマンド