API Gateway での REST API の API Gateway ステージ変数リファレンス - Amazon API Gateway

API Gateway での REST API の API Gateway ステージ変数リファレンス

次のような場合に、API Gateway ステージ変数を使用できます。

パラメータマッピング式

ステージ変数は、API メソッドのリクエストまたはレスポンスヘッダーパラメータ用のパラメータマッピング式で、一部を置き換えることなく使用できます。次の例では、$ を使用したり、{...} で囲むことなくステージ変数を参照しています。

  • stageVariables.<variable_name>

マッピングテンプレート

ステージ変数は、次の例に示すように、マッピングテンプレートのどこでも使用できます。

  • { "name" : "$stageVariables.<variable_name>"}

  • { "name" : "${stageVariables.<variable_name>}"}

HTTP 統合 URI

ステージ変数は、次の例に示すように、HTTP 統合 URLの一部として使用できます。

  • プロトコルのない完全な URI – http://${stageVariables.<variable_name>}

  • 完全なドメイン – http://${stageVariables.<variable_name>}/resource/operation

  • サブドメイン – http://${stageVariables.<variable_name>}.example.com/resource/operation

  • パス – http://example.com/${stageVariables.<variable_name>}/bar

  • クエリ文字列 – http://example.com/foo?q=${stageVariables.<variable_name>}

AWS 統合 URI

ステージ変数は、次の例に示すように、AWS URI アクションまたはパスコンポーネントの一部として使用できます。

  • arn:aws:apigateway:<region>:<service>:${stageVariables.<variable_name>}

AWS 統合 URI (Lambda 関数)

ステージ変数は、次の例に示すように、 Lambda 関数名またはバージョン/エイリアスの代わりに使用できます。

  • arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/arn:aws:lambda:<region>:<account_id>:function:${stageVariables.<function_variable_name>}/invocations

  • arn:aws:apigateway:<region>:lambda:path/2015-03-31/functions/arn:aws:lambda:<region>:<account_id>:function:<function_name>:${stageVariables.<version_variable_name>}/invocations

注記

Lambda 関数にステージ変数を使用するには、関数が API と同じアカウントにある必要があります。ステージ変数は、クロスアカウント Lambda 関数をサポートしていません。

Amazon Cognito ユーザープール

ステージ変数は、COGNITO_USER_POOLS オーソライザーの Amazon Cognito ユーザープールの代わりに使用できます。

  • arn:aws:cognito-idp:<region>:<account_id>:userpool/${stageVariables.<variable_name>}

AWS 統合認証情報

ステージ変数は、次の例に示すように、AWS ユーザー/ロールの認証情報 ARN の一部として使用できます。

  • arn:aws:iam::<account_id>:${stageVariables.<variable_name>}