Application Integration でサポートされているコネクタをご覧ください。
統合例を試す
Google Cloud プロジェクトで Application Integration を初めて設定するときに、Application Integration により、デフォルトで ExampleIntegration-EcomOrderProcessing という名前の非公開のサンプル統合が作成されます。
サンプル統合を表示する
サンプル統合を表示するには、次の手順を行います。
- Google Cloud コンソールで [Application Integration] ページに移動します。
- 左側のナビゲーション メニューで [Integrations] をクリックして、[Integrations] ページを開きます。
- [ExampleIntegration-EcomOrderProcessing] という名前の統合をクリックします。 
  サンプル統合が、次のレイアウトのような統合エディタで開きます。     
e コマースのサンプル統合
このサンプル統合を使用して、Application Integration のさまざまなトリガー、タスク、コンセプトを実際に体験できます。
このサンプル統合は、次の注文処理オペレーションを実装する基本的な e コマース バックエンドのシナリオを示しています。
- API エンドポイントから次の注文リクエスト ペイロードを受信します。
{ "order_no": "12345", "buyer_id": "raambo", "line_items": [ { "line": 1, "sku": "tr100", "vendor": "Internal", "quantity": 1, "price_per_unit": 10 }, { "line": 2, "sku": "tbz", "vendor": "External", "quantity": 24.0, "price_per_unit": 1 } ] } 
- 注文ペイロードを抽出して、注文の合計金額を計算します。
- 合計注文金額が $100 以上かどうかを確認します。「はい」の場合は、追加の承認を得て続行します。
- 注文アイテムに外部ベンダーがあるかどうかを確認します。ある場合は、REST API 呼び出しを使用してベンダーに詳細情報を送信します。
- 合計注文額、フィルタリングされた外部ベンダーのアイテム、それぞれの HTTP レスポンス ステータスとともに、注文レスポンスを送信します。
次の表に、ExampleIntegration-EcomOrderProcessing で使用されているトリガー、タスク、エッジ条件を示します。
| コンポーネント | 構成 | 説明 | |
|---|---|---|---|
| API トリガー (OrderProcessAPITrigger) | トリガー ID: api_trigger/ecom-order-processing_API_1 | 注文リクエストごとに統合を呼び出します。 | |
| データ マッピング タスク (合計注文金額を確認) | Input | 出力 | order_requestJSON 入力変数を抽出し、FOR_EACH マッピング関数を使用してすべての注文項目を反復処理して、合計注文金額を計算します。
合計注文金額は、GET_PROPERTY とMULTIPLY のマッピング関数を使用して、アイテム  
最終値は double データ型に変換され、 | 
| orders_request.line_items .FOR_EACH(~obj1->~obj1 .GET_PROPERTY("quantity") .TO_DOUBLE() .MULTIPLY(~obj1 .GET_PROPERTY("price_per_unit") .TO_DOUBLE())) .TO_DOUBLE_ARRAY() .SUM() | total_order_value | ||
| エッジの状態 (合計注文金額がしきい値を超えている) | 条件: $total_order_value$ >= $threshold_order_value$ | 合計注文金額が $100 以上かどうかを確認します。「はい」の場合、コントロールは承認タスクに渡されます。 | |
| エッジの状態 (合計注文金額がしきい値を超えていない) | 条件: $total_order_value$ < $threshold_order_value$ | 合計注文金額が $100 未満かどうかを確認します。「はい」の場合、コントロールは外部アイテムのフィルタリング タスクに渡されます。 | |
| 承認タスク (承認) | 受信者: Enter the approver's email address このサンプル統合をテストする目的で、メールを使用して統合が正常に完了したことを確認できます。 | 1 人以上のインテグレーション ユーザーに承認リクエスト メールを送信します。メールには、ユーザーがリクエストを手動で承認または拒否できるインテグレーションへのリンクが含まれます。 | |
| データ マッピング タスク (外部アイテムのフィルタリング) | Input | 出力 | order_requestJSON 入力変数を抽出し、FILTER マッピング関数を使用して、外部ベンダーを含むすべての注文アイテムをフィルタリングします。
フィルタリングされた値は、 | 
| orders_request .GET_PROPERTY("line_items") .FILTER(~obj1->~obj1 .GET_PROPERTY("vendor") .TO_STRING() .EQUALS("External")) | filtered_external_items | ||
| For Each Loop タスク (For Each Loop) | 反復処理するリスト: filtered_external_items
API トリガー ID:  
統合名:  | filtered_external_items変数を反復処理し、配列内の各要素のサブ統合を呼び出します。また、rest_call_response_status内の各実行のレスポンスを照合します。ここで、配列の各要素は 1 つの特定の実行からのレスポンスを受け取ります。 | |
| API トリガー (ExternalOrders を報告) | トリガー ID: api_trigger/ecom-order-processing_API_2 | filter_external_items の各要素について、サブ統合を呼び出します。 | |
| REST エンドポイントの呼び出しタスク (REST エンドポイントを呼び出す) | エンドポイントのベース URL: https://mocktarget.apigee.net/echo
  HTTP メソッド:  
リクエスト本文:  | https://mocktarget.apigee.net/echo への REST 呼び出しを行います。 | |
サンプル統合を公開してテストする
統合を公開するには、統合デザイナー ツールバーの [公開] をクリックします。
統合が正常に公開されると、公開された統合の実行ログを表示、検査できます。ログを表示するには、[ View execution logs for this integration] をクリックします。実行ログのページが表示されます。
View execution logs for this integration] をクリックします。実行ログのページが表示されます。
統合エディタからテストする
サンプルの統合をテストするには、次の手順を行います。
- 統合エディタのツールバーで [テスト] をクリックし、[OrderProcessAPITrigger] を選択します。[テスト統合] ペインが表示されます。 
- orders_request入力変数を編集するように求められます。このテストでは、- quantityの値を- 240に更新します。更新した- orders_request入力変数は、次のようになります。- { "order_no": "12345", "buyer_id": "raambo", "line_items": [ { "line": 1, "sku": "tr100", "vendor": "Internal", "quantity": 1, "price_per_unit": 10 }, { "line": 2, "sku": "tbz", "vendor": "External", "quantity": 240, "price_per_unit": 1 } ] } 
- [Test Integration] をクリックします。
  更新された orders_request 数量は 200 より大きいため、サンプルのインテグレーションでは、承認タスクの受信者フィールドに指定されたメールアドレスへ承認リクエスト メールを送信します。承認が完了すると、統合注文オペレーションは正常に完了します。
テストの詳細については、インテグレーションをテストして公開するをご覧ください。
次の手順で実行ログを調べて、特定のインテグレーションのステータスとペイロードを表示します。
- 統合エディタで、 [View execution logs for this integration] をクリックします。実行ログのページが表示されます。 [View execution logs for this integration] をクリックします。実行ログのページが表示されます。
- [Execution Logs] ページでは、統合の実行の試行ごとに関する詳細を確認できます。各エントリには、以下のような実行の試行の詳細が含まれます。
- 連携名
- 実行 ID
- ステータス
- 開始時刻
- 所要時間
- 統合バージョン
- トリガー ID
 
- 実行された統合の横にある展開の矢印(>)をクリックすると、展開された統合のタスクと変数のリストと、タスクのステータスと変数のペイロードが表示されます。
REST API 呼び出しを使用してテストする
テストケース 1: デフォルトの入力を使用してリクエストを送信する
  curl -X POST -H "Content-Type: application/json" -d '{"trigger_id":"api_trigger/ecom-order-processing_API_1"}' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"
テストケース 2: カスタム入力を使用してリクエストを送信する
  curl -X POST -H "Content-Type: application/json" -d '{ "triggerId": "api_trigger/ecom-order-processing_API_1", "inputParameters": { "orders_request": { "jsonValue": "{\n \"order_no\": \"12345\",\n \"buyer_id\": \"raambo\",\n \"line_items\": [{\n \"line\": 1.0,\n \"sku\": \"tr100\",\n \"vendor\": \"Internal\",\n \"quantity\": 1.0,\n \"price_per_unit\": 10.0\n }, {\n \"line\": 2.0,\n \"sku\": \"tbz\",\n \"vendor\": \"External\",\n \"quantity\": 24.0,\n \"price_per_unit\": 2.0\n }]\n}" } } }' 'https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME:execute' -H "Authorization: Bearer $(gcloud auth print-access-token)"
次のように置き換えます。
- PROJECT_ID: Google Cloud プロジェクトの ID。
- LOCATION: インテグレーションのロケーション。Application Integration のロケーションをご覧ください。
- INTEGRATION_NAME: インテグレーションの名前。
テスト出力
API は、すべての統合出力変数値を含む統合実行レスポンスを返します。
割り当てと上限
割り当てと上限については、割り当てと上限をご覧ください。