AWS API Gateway で REST API を作成・デプロイする手順 — サンプルから API キー設定まで
目次
はじめに
AWS には API Gateway というサービスがあり、Lambda や EC2 と組み合わせることで、独自の REST API を手軽に公開できます。しかし実際に触ってみると、API キー・ステージ・使用量プランと設定項目が多く、初回は何から手を付ければよいか迷いがちです。
本記事では、AWS が提供しているサンプル API をインポートして REST API の作成からデプロイ・動作確認までを一通り体験する手順を解説します。サービスを初めて触る方や「まず動かして全体像を把握したい」という方の参考になれば幸いです。
設定の全体フロー
今回行う作業は以下の5ステップです。
- REST API を作成する(AWS サンプルをインポート)
- API キーを作成する
- メソッドの API キー要求を有効にする
- ステージと使用量プランを作成する
- API をデプロイして動作確認する
AWS API Gateway で REST API を作成・デプロイする5ステップ
1. REST API を作成する
課題:API Gateway の設定構造を理解しながらゼロから API を定義するのは初回には難しい。
解決策:AWS がデフォルトで用意しているサンプル API をインポートして、最小手順で動く状態を作る。
AWS コンソールから API Gateway サービスを開き、REST API の「構築」ボタンをクリックします。

REST API の作成画面が開いたら、画面を一番下までスクロールして 「インポート」 ボタンをクリックします。API Gateway のサービスを一通り確認するのであれば、AWS 提供のサンプルをそのまま使うのが最短です。

インポートが完了すると、サンプルのリソース構成が展開された状態で REST API が作成されます。ただし、この時点ではまだデプロイされておらず外部から呼び出せません。引き続き設定を進めます。

2. API キーを作成する
課題:デプロイした API は誰でも呼び出せる状態になるため、不特定多数のアクセスを防ぐ仕組みが必要。
解決策:API キーを発行し、リクエストヘッダーでの認証を要求する。
左メニューの「API キー」を開き、「アクション」タブから「API キーの作成」を選択します。

任意の名前を付けて保存します。

作成後は「表示する」をクリックして API キーの値を確認し、手元にコピーしておきます。このキーは後の動作確認で使用します。

3. メソッドの API キー要求を有効にする
課題:API キーを作成しただけでは、各メソッドへのリクエスト時に認証は要求されない。
解決策:各リソースのメソッドリクエスト設定で「API キーの必要性」を true に変更する。
左メニューの「リソース」を開き、有効にしたいメソッド(GET や PUT など)をクリックします。デフォルトでは「API キーの必要性」が「不要」になっています。

メソッドの概要画面から「メソッドリクエスト」をクリックします。

メソッドリクエストの設定ページで、「API キーの必要性」を true に変更して保存します。

4. ステージと使用量プランを作成する
課題:API をデプロイするには「ステージ」が必要で、さらに API キーを有効に機能させるには「使用量プラン」でステージと API キーを紐付ける必要がある。
解決策:まずステージを作成し、続けて使用量プランで API キーを関連付ける。
左メニューの「ステージ」から「作成」をクリックし、ステージ名(例: dev)を入力して作成します。ステージは開発環境・本番環境など URL を分けて管理するために使います。

ステージが作成されると、スロットリング(リクエスト数制限)などの詳細設定が行えます。今回はデフォルトのままで構いません。

次に左メニューの「使用量プラン」から「作成」をクリックします。使用量プランは、ステージと API キーを紐付けてアクセス制御を完成させる設定です。名前とリクエスト制限を入力して「次へ」をクリックします。

次のページで先ほど作成したステージを選択して「次へ」をクリックします。

最後に作成済みの API キーを選択して「完了」をクリックします。これで使用量プランの設定が完了し、API キーによるアクセス制御が有効になります。

5. API をデプロイして動作確認する
課題:API キーの設定を変更した後は再デプロイしなければ変更が反映されない。
解決策:リソースメニューから「API のデプロイ」を実行し、対象のステージを指定する。
左メニューの「リソース」を開き、「アクション」タブから「API のデプロイ」を選択します。

デプロイ先として先ほど作成した dev ステージを選択し、「デプロイ」をクリックします。

デプロイが完了したら、curl コマンドで動作を確認します。YOUR_API_KEY には作成した API キーの値を、YOUR_API_ID と YOUR_REGION には API Gateway コンソールに表示された値を入力してください。
curl -H 'x-api-key: YOUR_API_KEY' https://YOUR_API_ID.execute-api.YOUR_REGION.amazonaws.com/dev
以下のように HTML が返ってくれば成功です。

{"message":"Forbidden"} が返ってきた場合は、API キーの値・URL・使用量プランの設定を見直してください。API キーが正しく紐付けられていないケースが多いです。
ブラウザで URL にアクセスすると、返却された HTML がそのまま表示されます。


まとめ:AWS API Gateway で REST API を公開するために押さえるポイント
今回の記事で紹介したポイントをまとめます。
- AWS サンプルをインポートすることで、リソース定義をゼロから書かずに REST API の全体像を手早く体験できる
- API キー単体を作成しただけでは認証は機能しない。メソッドリクエストの「API キーの必要性」を true に変更して初めて有効になる
- 使用量プランでステージと API キーを紐付けることで、ステージごとに異なる API キーやリクエスト制限を設定できる
- API キーの設定変更後は必ず再デプロイしないと変更が反映されない点に注意






ディスカッション
コメント一覧
まだ、コメントがありません