REST APIとは?GET/POSTの違いと基本を簡単解説

まずは、これだけ

REST APIは、URLで「何を」、メソッドで「どうするか」を伝えるAPIの作法。
たとえば GET /posts は「投稿一覧を取得して」というお願いです。

REST APIではURLで資源を指定し、メソッドで操作を伝えることを示した図解
URL:対象の資源 メソッド:行いたい操作

REST APIは「資源」と「操作」で考える

REST APIは、Webでよく使われるAPIの設計スタイルです。厳密な定義を全部覚えるより、まずは「URLで対象を選び、メソッドで操作を伝える」と捉えると理解しやすくなります。

投稿データなら /posts、ユーザーデータなら /users のように、URLは扱いたいものを示します。そのうえで、取得するのか、作成するのか、更新するのかをHTTPメソッドで伝えます。

資源

投稿、ユーザー、注文など、APIで扱うデータや対象。

URL

/posts のように、どの資源へお願いするかを示す。

メソッド

取得・作成・更新・削除など、何をしたいかを示す。

GETとPOSTの違いは「見る」と「作る」

初心者が最初に押さえたいのは、GETPOST です。GETはデータを取りに行くとき、POSTは新しいデータを作るときによく使います。

GET、POST、PUT、PATCH、DELETEの基本的な役割を並べた図解
REST APIでは、HTTPメソッドを使い分けて「取得」「作成」「更新」「削除」などの意図を伝えます。
GET

データを取得する。検索結果や一覧表示でよく使う。

POST

新しいデータを作成する。投稿や登録でよく使う。

PUT / PATCH / DELETE

置き換え、一部更新、削除など、既存データへの操作に使う。

例:投稿一覧を取得するリクエスト

ブログの投稿一覧を表示したいときは、アプリが GET /posts のようなリクエストを送ります。サーバーは投稿データを探し、成功すれば 200 OK と一緒に結果を返します。

GET /postsで投稿一覧を取得し、200 OKとJSON形式のレスポンスを受け取る流れ
GET /posts は「投稿という資源を取得したい」という意味のリクエストです。
1 画面を開く 投稿一覧が必要になる
2 GETを送る /posts へ取得を依頼
3 探す サーバーが投稿を取得
4 返す JSONなどで結果を返す
5 表示する 画面に投稿一覧を並べる

ここまでのまとめ

REST APIは、APIの中でもWebでよく使われる考え方です。URLで対象となる資源を選び、GETやPOSTなどのメソッドで操作の種類を伝えます。

迷ったら「どのデータに、何をしたいのか」で見る。REST APIは、URLとメソッドの組み合わせで読むと分かりやすくなります。