REST APIとAPI Gatewayの基礎

REST APIの基本と、API Gatewayで利用できるエンドポイントタイプ、代表的ユースケース、構成要素を整理します。

REST APIとAmazon API Gatewayの基礎

REST APIとは?

REST APIは、Webサービス同士がやりとりするための仕組み(API)の一つです。AWSでは「Amazon API Gateway」を使ってREST APIを作ることができます。

REST APIのエンドポイントタイプ

REST APIには、3つのエンドポイントタイプがあります。

| タイプ | 説明 | |---|---| | エッジ最適化APIエンドポイント | 世界中のユーザーに近い場所(CloudFrontのエッジ)からAPIを提供します。 | | リージョンAPIエンドポイント | 指定したAWSリージョン内でAPIを提供します。同じリージョンのサービスと連携しやすいです。 | | プライベートAPIエンドポイント | インターネットからはアクセスできず、VPCエンドポイントからのみアクセスできます。 |

REST APIの主なユースケース

  1. サーバーレスアプリのバックエンド
    モバイルアプリなどのバックエンドをLambdaやDynamoDBで構築し、API Gatewayで外部公開します。Cognitoで認証もできます。

  2. VPC間・アカウント間のプライベートAPI連携
    パブリックなインターネットからのアクセスを許可せずに、VPCエンドポイントからのみのアクセスを許可することで、セキュアにアクセスする構成が可能です。

  3. オンプレミスからAWSのAPIへアクセス
    社内システム(オンプレミス)からVPNやDirect Connect経由でAWSのAPIにアクセスできます。

  4. API Gateway経由でコンテナアプリにアクセス
    バックエンドがECSなどのコンテナの場合、NLB(ネットワークロードバランサー)を使ってAPI Gatewayと連携します。

REST APIの構成要素

  • リソース
    APIで扱うデータや機能の単位。例:/users/users/{id}

  • メソッド
    HTTPの操作方法。例:GET(取得)、POST(作成)、PUT(更新)、DELETE(削除)など。

  • メソッドリクエスト
    APIに送るデータや認証情報。

  • 統合リクエスト/レスポンス
    バックエンド(LambdaやECSなど)とのやりとりの設定。

  • メソッドレスポンス
    API Gatewayが返すレスポンスの設定。

  • モデル
    データの型や構造の定義。リクエストやレスポンスで利用する。

  • ステージ
    APIの公開環境(例:dev、staging、prod)。

  • オーソライザ
    認証・認可の仕組み(IAM、Cognito、Lambdaオーソライザなど)。

重要ポイント

  • RESTはWebで一般的なAPI設計スタイル
  • エッジ最適化/リージョン/プライベートの3タイプ
  • Cognito等で認証も組み合わせ可能
  • リソース/メソッド/ステージ等の構成を理解する
  • バックエンド統合(Lambda/ECSなど)を設計する

このトピックの学習を完了しますか?

完了状態はいつでも切り替えられます