

# API Gateway コンソールを使用して API 統合リクエストを設定する
<a name="how-to-method-settings-console"></a>

 API メソッドの設定でメソッドとその動作を定義します。メソッドを設定するには、メソッドが公開されるリソース (ルート ("/") を含む)、HTTP メソッド (`GET`、`POST` など)、ターゲットバックエンドとの統合方法を指定する必要があります。メソッドのリクエストと応答によって、APIはどのパラメータを受け取ることができ、応答はどのようなものかを明記し、呼び出し元アプリケーションとの取り決めが指定されます。

 以下の手順では、API Gateway コンソールを使用して統合リクエストを作成する方法を示します。

**Topics**
+ [Lambda 統合をセットアップする](#how-to-method-settings-console-lambda)
+ [HTTP 統合をセットアップする](#how-to-method-settings-console-http)
+ [AWS のサービス統合をセットアップする](#how-to-method-settings-console-aws)
+ [Mock 統合をセットアップする](#how-to-method-settings-console-mock)

## Lambda 統合をセットアップする
<a name="how-to-method-settings-console-lambda"></a>

Lambda 関数統合を使用して、API を Lambda 関数と統合します。API レベルで、非プロキシ統合を作成する場合はこれが `AWS` 統合タイプになり、`AWS_PROXY`プロキシ統合を作成する場合は 統合タイプになります。

**Lambda 統合をセットアップするには**

1. **[リソース]** ペインで、**[メソッドの作成]** を選択します。

1. **[メソッドタイプ]** には [HTTP メソッド] を選択します。

1. [**統合タイプ**] で、[**Lambda 関数**] を選択します。

1. Lambda プロキシ統合を使用するには、**[Lambda プロキシ統合]** をオンにします。Lambda プロキシ統合の詳細については、「[API Gateway Lambda プロキシの統合について理解する](set-up-lambda-proxy-integrations.md#api-gateway-create-api-as-simple-proxy)」を参照してください。

1. **[Lambda 関数]** に、Lambda 関数の名前を入力します。

    API とは異なるリージョンで Lambda 関数を使用している場合は、ドロップダウンメニューからリージョンを選択し、Lambda 関数の名前を入力します。クロスアカウントの Lambda 関数を使用している場合は、関数 ARN を入力します。

1. 29 秒のデフォルトのタイムアウト値を使用するには、**[デフォルトタイムアウト]** をオンのままにします。カスタムのタイムアウトを設定するには、**[デフォルトタイムアウト]** を選択してから、タイムアウト値を `50` ～ `29000` ミリ秒の間で入力します。

1. (オプション) 以下のドロップダウンメニューを使用して、メソッドリクエストの設定を構成できます。**[メソッドリクエストの設定]** を選択し、メソッドリクエストを設定します。詳細については、「[API Gateway コンソールで API Gateway メソッドリクエストを編集する](how-to-set-up-method-using-console.md#how-to-method-settings-callers-console)」のステップ 3 を参照してください。

   メソッドを作成した後で、メソッドリクエストの設定を構成することもできます。

1. **[メソッドの作成]** を選択します。

## HTTP 統合をセットアップする
<a name="how-to-method-settings-console-http"></a>

HTTP 統合を使用して、API を HTTP エンドポイントと統合します。API レベルで、これは `HTTP` 統合タイプです。

**HTTP 統合をセットアップするには**

1. **[リソース]** ペインで、**[メソッドの作成]** を選択します。

1. **[メソッドタイプ]** には [HTTP メソッド] を選択します。

1. **[統合タイプ]** で､ **[HTTP]** を選択します｡

1. HTTP プロキシ統合を使用するには、**[HTTP プロキシ統合]** をオンにします。HTTP プロキシ統合の詳細については、「[API Gateway の HTTP プロキシ統合を設定する](setup-http-integrations.md#api-gateway-set-up-http-proxy-integration-on-proxy-resource)」を参照してください。

1. [**HTTP メソッド**] で、HTTP バックエンドのメソッドに最も厳密に一致する HTTP メソッドタイプを選択します。

1. **[エンドポイント URL]** に、メソッドで使用する HTTP バックエンドの URL を入力します。

1. **[コンテンツ処理]** には、コンテンツ処理動作を選択します。

1. 29 秒のデフォルトのタイムアウト値を使用するには、**[デフォルトタイムアウト]** をオンのままにします。カスタムのタイムアウトを設定するには、**[デフォルトタイムアウト]** を選択してから、タイムアウト値を `50` ～ `29000` ミリ秒の間で入力します。

1. (オプション) 以下のドロップダウンメニューを使用して、メソッドリクエストの設定を構成できます。**[メソッドリクエストの設定]** を選択し、メソッドリクエストを設定します。詳細については、「[API Gateway コンソールで API Gateway メソッドリクエストを編集する](how-to-set-up-method-using-console.md#how-to-method-settings-callers-console)」のステップ 3 を参照してください。

   メソッドを作成した後で、メソッドリクエストの設定を構成することもできます。

1. **[メソッドの作成]** を選択します。

## AWS のサービス統合をセットアップする
<a name="how-to-method-settings-console-aws"></a>

AWS のサービス統合を使用して、API を AWS のサービスと直接統合します。API レベルで、これは `AWS` 統合タイプです。

次のいずれかを実行するために IAM API Gateway を作成するには:
+ 新しい Lambda 関数の作成
+ Lambda 関数へのリソース許可を設定します。
+ その他の Lambda サービスアクションを実行します。

**[AWS のサービス]** を選択する必要があります。

**AWS のサービス統合をセットアップするには**

1. **[リソース]** ペインで、**[メソッドの作成]** を選択します。

1. **[メソッドタイプ]** には [HTTP メソッド] を選択します。

1. **[統合タイプ]** で､**[AWS のサービス]** を選択します｡

1. [**AWS リージョン**] で、このメソッドがアクションの呼び出しに使用する AWS リージョンを選択します。

1. **[AWS のサービス]** で、このメソッドが呼び出す AWS のサービスを選択します。

1.  **[AWS サブドメイン]** に、AWS のサービスで使用されるサブドメインを入力します。通常、このフィールドは空欄にします。一部の AWS のサービスでは、ホストの一部としてサブドメインをサポートすることができます。可用性と詳細は、サービスのドキュメントを参照してください。

1. [**HTTP メソッド**] で、アクションに対応する HTTP メソッドタイプを選択します。適切な HTTP メソッドタイプについては、**[AWS のサービス]** で選択した AWS サービスの API リファレンスドキュメントを参照してください。

1. **[アクションタイプ]** には、API アクションを使用する場合は **[アクション名の使用]** を、カスタムリソースパスを使用する場合は **[パス上書きの使用]** を選択します。利用できるアクションとカスタムリソースパスについては、**[AWS のサービス]** で選択した AWS のサービスに関する API リファレンスドキュメントを参照してください。

1. **[アクション名]** または **[パス上書き]** のいずれかを入力します。

1. **[実行ロール]** には、メソッドがアクションの呼び出しに使用する IAM ロールの ARN を入力します。

   IAM ロールを作成するには、[ステップ 1: AWS のサービスプロキシの実行ロールを作成する](getting-started-aws-proxy.md#getting-started-aws-proxy-add-roles) の指示を使用できます。アクセスポリシーを、必要な数のアクションおよびリソースステートメントと共に指定します。詳細については、「[Amazon API Gateway と IAM の連携方法](security_iam_service-with-iam.md)」を参照してください。

   アクションおよびリソースステートメントの構文については、**[AWS のサービス]** で選択した AWS サービスのドキュメントを参照してください。

   IAM ロールの信頼関係で、以下のように指定して、API Gateway が AWS アカウントに代わってアクションを実行できるようにします。

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Sid": "",
         "Effect": "Allow",
         "Principal": {
           "Service": "apigateway.amazonaws.com"
         },
         "Action": "sts:AssumeRole"
       }
     ]
   }
   ```

------

1. 29 秒のデフォルトのタイムアウト値を使用するには、**[デフォルトタイムアウト]** をオンのままにします。カスタムのタイムアウトを設定するには、**[デフォルトタイムアウト]** を選択してから、タイムアウト値を `50` ～ `29000` ミリ秒の間で入力します。

1. (オプション) 以下のドロップダウンメニューを使用して、メソッドリクエストの設定を構成できます。**[メソッドリクエストの設定]** を選択し、メソッドリクエストを設定します。詳細については、「[API Gateway コンソールで API Gateway メソッドリクエストを編集する](how-to-set-up-method-using-console.md#how-to-method-settings-callers-console)」のステップ 3 を参照してください。

   メソッドを作成した後で、メソッドリクエストの設定を構成することもできます。

1. **[メソッドの作成]** を選択します。

## Mock 統合をセットアップする
<a name="how-to-method-settings-console-mock"></a>

 API Gateway をバックエンドとして使用して静的レスポンスを返す場合は、Mock 統合を使用します。API レベルで、これは `MOCK` 統合タイプです。一般的に、API が最終版ではないものの、テスト用に API レスポンスを生成して関連チームのブロックを解除する場合は、`MOCK` 統合を使用します。`OPTION` メソッドの場合、API Gateway は、適用された API リソースに CORS が有効のヘッダーを返すように `MOCK` 統合をデフォルトに設定します。

**Mock 統合をセットアップするには**

1. **[リソース]** ペインで、**[メソッドの作成]** を選択します。

1. **[メソッドタイプ]** には [HTTP メソッド] を選択します。

1. **[統合タイプ]** で､ **[Mock]** を選択します｡

1. (オプション) 以下のドロップダウンメニューを使用して、メソッドリクエストの設定を構成できます。**[メソッドリクエストの設定]** を選択し、メソッドリクエストを設定します。詳細については、「[API Gateway コンソールで API Gateway メソッドリクエストを編集する](how-to-set-up-method-using-console.md#how-to-method-settings-callers-console)」のステップ 3 を参照してください。

   メソッドを作成した後で、メソッドリクエストの設定を構成することもできます。

1. **[メソッドの作成]** を選択します。