Api - AWS Serverless Application Model

Api

Api イベントソースタイプを説明するオブジェクトです。AWS::Serverless::Api リソースが定義されている場合、パスとメソッドの値は、API の OpenApi 定義にあるオペレーションに対応している必要があります。

AWS::Serverless::Api が定義されていない場合、関数の入出力は HTTP リクエストと HTTP レスポンスの表現です。

例えば、JavaScript API を使用すると、statusCode および body キーを持つオブジェクトを返すことによって、レスポンスのステータスコードと本文を制御できます。

構文

AWS Serverless Application Model (AWS SAM) テンプレートでこのエンティティを宣言するには、以下の構文を使用します。

プロパティ

Auth

この特定の Api とパスとメソッドの認証設定です。

DefaultAuthorizer が指定されていない場合に個々のパス上にある API の DefaultAuthorizer 設定の認証設定を上書きする、またはデフォルトの ApiKeyRequired 設定を上書きするために役立ちます。

タイプ: ApiFunctionAuth

必須: いいえ

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

Method

この関数が呼び出される HTTP メソッドです。オプションには DELETEGETHEADOPTIONSPATCHPOSTPUT、および ANY があります。詳細については、「API Gateway デベロッパーガイド」の「HTTP メソッドをセットアップする」を参照してください。

タイプ: 文字列

必須: はい

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

Path

この関数が呼び出される URI パスです。/ で始まる必要があります。

タイプ: 文字列

必須: はい

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

RequestModel

この特定の Api とパスとメソッドに使用するリクエストモデルです。これは、AWS::Serverless::Api リソースの Models セクションに指定されているモデルの名前を参照する必要があります。

タイプ: RequestModel

必須: いいえ

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

RequestParameters

この特定の API、パス、メソッドのリクエストパラメータ設定です。すべてのパラメータ名は method.request で始まり method.request.headermethod.request.querystring、または method.request.path に制限する必要があります。

リストには、パラメータ名の文字列と RequestParameter オブジェクトの両方を含めることができます。文字列の場合、Required および Caching プロパティはデフォルトで false になります。

タイプ: [ String | RequestParameter ] のリスト

必須: いいえ

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

RestApiId

RestApi リソースの識別子です。これには、指定されたパスとメソッドを持つオペレーションが含まれている必要があります。通常、このテンプレートで定義される AWS::Serverless::Api リソースを参照するように設定されます。

このプロパティを定義しない場合は、AWS SAM が生成された OpenApi ドキュメントを使用してデフォルトの AWS::Serverless::Api リソースを作成します。そのリソースには、RestApiId を指定しない同じテンプレート内の Api イベントによって定義されるすべてのパスとメソッドの和集合が含まれます。

これは、別のテンプレートで定義された AWS::Serverless::Api リソースを参照できません。

タイプ: 文字列

必須: いいえ

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

TimeoutInMillis

50~29,000 ミリ秒のカスタムタイムアウトです。

注記

このプロパティを指定すると、AWS SAM は OpenAPI の定義を変更します。OpenAPI の定義は、DefinitionBody プロパティを使用してインラインで指定する必要があります。

タイプ: 整数

必須: いいえ

デフォルト = 29,000 ミリ秒 (29 秒)

CloudFormation との互換性: このプロパティは AWS SAM に固有であり、CloudFormation に同等のものはありません。

基本的な の例

YAML

Events: ApiEvent: Type: Api Properties: Path: /path Method: get RequestParameters: - method.request.header.Authorization - method.request.querystring.keyword: Required: true Caching: false