[[📚Web APIの設計]] [[第3章 プログラミングインターフェイスを設計する#3.2 APIのゴールをREST APIに置き換える]]の読書メモ
この章では[[APIゴールキャンバス]]を使って洗い出された[[APIゴールキャンバス#^api-goal-canvas-goal|APIのゴール]]をREST APIに置き換える方法を紹介してます。
# APIゴールキャンバスをREST APIにマッピングする手順
APIのゴールは次の4つの手順でREST APIに置き換えることができます。
1. 各リソースとそれらの関係を特定
2. アクション、パラメータ、戻り値を特定
3. リソースのパスを設計
4. アクションをHTTPで表す
^four-step-of-api-goal-rest-api-mapping
![[3.2 APIのゴールをREST APIに置き換える#^replace-api-goals-with-rest-api]]
REST APIでは、リソース(パス)に対してHTTPメソッドをリクエストすることでそのリソースを操作します。
この操作の流れは、APIゴールキャンバスで洗い出したAPIのゴールの書き方と対応しています。
![[APIゴールキャンバス#^api-goal-canvas-goal|APIのゴール]]
リソースはURLのパスによって識別され、アクションはHTTPメソッドによって表されます。
次に、APIのゴールを用いてREST APIを設計する具体的な手順について説明します。
REST APIを設計するとは、リソース同士の関係性を整理し、
# 各手順の詳細説明
[[第3章 プログラミングインターフェイスを設計する#3.2.5 REST APIとHTTPの早見表]]でAPIゴールキャンバスからREST APIを設計する流れの全体像が紹介されています。
![[3.2 APIのゴールをREST APIに置き換える#^rest-api-http-quick-reference]]
※早見表の中の矢印番号は4つの手順の番号とズレがあるので要注意^[図3-5の番号とも対応していないため書籍のミスに思われます]
- 早見表→手順
- ①→該当なし
- ②→①
- ③→②
- ④→③、④
ここからは、この早見表の詳細を説明していきます。
## 1. 各リソースとそれらの関係を特定
## 2. アクション、パラメータ、戻り値を特定
## 3. リソースのパスを設計
## 4. アクションをHTTPで表す