REST API と HTTP API 間で選択する
REST API と HTTP API は、いずれも RESTful API 製品です。REST API は HTTP API よりも多くの機能をサポートしていますが、HTTP API は低価格で提供できるように最小限の機能で設計されています。API キー、クライアントごとのスロットリング、リクエストの検証、AWS WAF の統合、プライベート API エンドポイントなどの機能が必要な場合は、REST API を選択します。REST API に含まれる機能が必要ない場合は、HTTP API を選択します。
次のセクションは、REST API および HTTP API で使用できるコア機能をまとめたものです。
エンドポイントタイプ
エンドポイントタイプは、API Gateway が API 用に作成するエンドポイントを指します。詳細については、「API Gateway API に対してセットアップするエンドポイントタイプを選択する」を参照してください。
セキュリティ
API Gateway は、悪意のあるアクターやトラフィックの急増など、特定の脅威から API を保護するさまざまな方法を提供します。詳細については、「REST API の保護」および「HTTP API の保護」を参照してください。
セキュリティ機能 | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
承認
API Gateway は API へのアクセスを制御し管理する複数のメカニズムをサポートしています。詳細については、「API Gateway での REST API へのアクセスの制御と管理」および「API Gateway での HTTP API へのアクセスの制御と管理」を参照してください。
認証オプション | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
✓ 1 |
|
✓ |
1 Amazon Cognito は JWT オーソライザーと共に使用できます。
2 Lambda 認証 を使用して、REST API の JWT を検証できます。
API 管理
API キーやクライアントごとのレート制限などの API 管理機能が必要な場合は、REST API を選択します。詳細については、「REST API をクライアントに配布する」、「REST API のカスタムドメイン名を設定する」、および「HTTP API のカスタムドメイン名の設定」を参照してください。
機能 | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
||
✓ |
開発
API Gateway API の開発中、API の特性をいくつか決定することになります。これらの特性は API のユースケースによって異なります。詳細については、「API Gateway での REST API の開発」および「API Gateway での HTTP API の開発」を参照してください。
機能 | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
||
✓ |
||
✓ |
||
✓ |
||
✓ |
||
✓ |
モニタリング
API Gateway は、API リクエストをログに記録し、API をモニタリングするためのいくつかのオプションをサポートしています。詳細については、「REST API のモニタリング」および「HTTP API のモニタリング」を参照してください。
特徴 | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
||
✓ |
統合
統合により、API Gateway API がバックエンドリソースに接続されます。詳細については、「REST API 統合の設定」および「HTTP API の統合の設定」を参照してください。
特徴 | REST API | HTTP API |
---|---|---|
✓ |
||
✓ |
||
✓ |