REST APIとAmazon 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オーソライザなど)。

前のページ: Amazon API Gatewayの概要次のページ: WebSocket APIの基礎