Application Integration でサポートされているコネクタをご覧ください。
API ペイロードを取得してメールを送信する
Application Integration でサンプル統合を作成する方法について説明します。次の手順では、完全な統合の実行に必要なトリガー、タスク、エッジ、変数、データ マッピングを構成する方法を説明します。
概要
このクイックスタートでは、公開 API からページビューの数を取得し、データを使用可能な形式に変換して、生成されたリストをメールで送信します。これらはすべて統合エディタ内で行うことができます。
このタスクを Google Cloud コンソールで直接行う際の順を追ったガイダンスについては、「ガイドを表示」をクリックしてください。
新しい統合を作成する
新しい統合を作成するには、次の手順を行います。
- Google Cloud コンソールで [Application Integration] ページに移動します。
- ナビゲーション メニューで [統合] をクリックします。[統合] のページが表示されます。
- [統合を作成] をクリックします。
- [統合の作成] ダイアログで名前と説明を入力します。
このクイックスタートでは、名前
my-test-integration
と説明Integration for quickstart
を入力します。 - 統合のリージョンを選択します。
- [作成] をクリックして統合エディタを開きます。
API トリガーを追加して構成する
統合を構成する一連のタスクを開始するには、トリガーが必要です。使用可能な任意のトリガーを使用して統合を開始できます。このクイックスタートでは、API トリガーを使用します。
API トリガーを構成する手順は次のとおりです。
- 統合エディタで [トリガー] をクリックし、使用可能なトリガーのリストを表示します。
- 統合エディタで [API トリガー] をクリックします。
- トリガーを構成するには、[API トリガー] をクリックします。トリガー構成ペインが表示されます。
- Application Integration では、トリガーの [ラベル] と [トリガー ID] が自動的に入力されます。トリガー ID は自動生成されており、その値は編集できません。ただし、[ラベル] プロパティの値を編集することはできます。
プロパティへの変更は自動的に保存されます。
タスクを追加して構成する
タスクは、変数を入力として受け取り、出力として変数を生成する、実行可能な一連のステップです。トリガーと同様、統合では任意の使用可能なタスクが使用できます。このクイックスタートでは、REST エンドポイントの呼び出し、データ マッピング、メールの送信の各タスクを使用します。各タスクの構成の詳細は、次の手順で説明します。
REST エンドポイントの呼び出しタスクを構成する
REST エンドポイント呼び出しタスクを構成するには、次の操作を行います。
- [Tasks] を選択して、使用可能なタスクのリストを表示します。
- 統合エディタで [REST エンドポイントの呼び出し] をクリックして配置します。
-
[API トリガー] のコントロール ポイントにカーソルを合わせてからクリックして線を [REST エンドポイントの呼び出し] タスクのコントロール ポイントまでドラッグすることで、[API トリガー] から [REST エンドポイントの呼び出し] へのエッジ接続を追加します。エッジは、API トリガータスクから REST エンドポイント呼び出しタスクへの制御のフローを示します。
エッジは、統合の 2 つの要素間の接続です。接続は、ある要素(タスクまたはトリガー)から別の要素への制御フローの方向を示します。エッジの詳細については、エッジをご覧ください。
- タスクを構成するには、[REST エンドポイントの呼び出し] をクリックします。タスク構成ペインが表示されます。次のプロパティ値を設定します。
- ラベル: このタスクのカスタム名を入力します。たとえば、「
Call REST Endpoint Task
」と入力します。 - 認証: このクイックスタートでは、認証プロファイルは必要ありません。他のユースケースで認証プロファイルを使用する方法について詳しくは、Application Integration で認証プロファイルを作成するをご覧ください。
- タスク入力: REST エンドポイントを呼び出すための詳細を入力します。ここに入力した情報は、REST エンドポイントの呼び出しタスクの入力として使用されます。 次の図は、REST エンドポイントの呼び出しタスクの [タスク入力] セクションと [HTTP 設定] セクションを示しています。
次の情報を入力します。
- エンドポイント ベース URL: 「
https://wikimedia.org/api/rest_v1/metrics/pageviews/per-article/en.wikipedia/desktop/user/Tree/monthly/20201001/20201031
」と入力します。wikimedia.org の一般公開 API から、Tree という名前の記事の、特定の月のページビュー数が返されます。 - HTTP メソッド: プルダウン リストを使用して [
GET
] を選択します。
- エンドポイント ベース URL: 「
- HTTP 設定: Application Integration によって、次の値が入力されます。
- リダイレクトのフォロー:
True
- Task should fail on HTTP Error:
True
- リダイレクトのフォロー:
- タスク出力: REST エンドポイントの呼び出しのレスポンス データの出力を格納するために、Application Integration により、ここには次の 3 つの変数が入力されます。
次の図は、REST エンドポイントの呼び出しタスクの [タスクの出力] セクションとその他のセクションを示しています。
次の情報を確認します。
- responseHeader(REST エンドポイントの呼び出し): この変数は、REST エンドポイントの呼び出しタスクに関連付けられたレスポンス ヘッダーのデータを保持します。変数データの型は、
String
(STR)です。 - responseBody(REST エンドポイントの呼び出し): この変数は、REST エンドポイントの呼び出しタスクに関連付けられたレスポンス本文のデータを保持します。変数データの型は、
String
(STR)です。 - responseStatus(REST エンドポイントの呼び出し): この変数は、REST エンドポイントの呼び出しタスクに関連付けられたレスポンス ステータスのデータを保持します。変数データの型は、
String
(STR)です。
- responseHeader(REST エンドポイントの呼び出し): この変数は、REST エンドポイントの呼び出しタスクに関連付けられたレスポンス ヘッダーのデータを保持します。変数データの型は、
- 残りのフィールドには、次のデフォルト値が含まれている必要があります。
- このタスクの実行戦略:
When all tasks succeed
- 次のタスクの実行ポリシー:
Run all match
- このタスクの実行戦略:
プロパティへの変更は自動的に保存されます。
- ラベル: このタスクのカスタム名を入力します。たとえば、「
データ マッピング タスクを追加して構成する
データ マッピング タスクを構成するには:
- [Tasks] を選択して、使用可能なタスクのリストを表示します。
- [データ マッピング] をクリックして、統合エディタに配置します。
- [REST エンドポイントの呼び出し] のコントロール ポイントの上にカーソルを合わせてからクリックし、[データ マッピング] タスクのコントロール ポイントまでドラッグし、[REST エンドポイント呼び出し] から [データ マッピング] にエッジ接続を追加します。エッジは、Call REST Endpoint タスクからData Mapping タスクへの制御のフローを示します。
- タスクを構成するには、[データ マッピング] タスクをクリックします。タスクの構成ペインが表示されます。
- [データ マッピング エディタを開く] をクリックします。
データ マッピング エディタを使用すると、使用可能な変換関数を使用して、入力変数を目的の出力変数にマッピングできます。出力は、他の統合タスクまたはトリガーの変数として使用できます。 データを変数として渡す方法の詳細については、変数をご覧ください。
このクイックスタートでは、responseBody(Call REST Endpoint) を入力として使用して、マッピングを作成します。
- responseBody 変数を [Variables] ペインから最初の [Input] 行にドラッグします。
- responseBody 変数チップの [+ (Add a function)] をクリックして、使用可能な関数のリストを表示します。入力関数でデータを変換するには、いくつかの関数を適用できます。
この場合、ペイロードを JSON に変換し、次にレスポンス配列を反復処理して、メール通知に必要なプロダクト名のリストを取得できます。 方法は次のとおりです。
- [
TO_JSON()
] を選択し、responseBody 文字列を JSON に変換します。 - responseBody 変数チップでもう一度 [+(関数を追加)] をクリックして、
GET_PROPERTY()
関数を選択してチェーンします。 GET_PROPERTY()
の入力パラメータを追加するには、[変数または値] をクリックし、[値] に「items
」と入力します。この関数は、JSON ペイロードからプロパティを抽出します。この関数のパラメータとして
items
プロパティに渡します。これにより、プロダクト名のみのリストが返されます。他の商品情報は含まれません。関数は次のようになります。responseBody(Call REST Endpoint).TO_JSON().GET_PROPERTY(items)
- 関数を削除する、または取り消すには、- 記号をクリックします。
- [
- [Output] 列の最初のフィールドをクリックして、変換されたデータの値を保持する新しい変数を作成します。次のフィールドに値を入力します。
- [名前] フィールドに「
JSONList
」と入力します。 - [変数の型] のリストから [統合からの出力] を選択します。
- [データ型] リストから [JSON] を選択します。
- 変数を作成してペインを閉じるには、[作成] をクリックします。新しい JSONList 変数が、データ マッピング エディタの左側にある [変数] リストに表示されます。
- [名前] フィールドに「
- マッピングが完了したら、データ マッピング エディタを閉じます。変更は自動的に保存されます。 次の図は、このクイックスタートで作成したマッピングを含むデータ マッピング エディタを示しています。
メール送信タスクを追加して構成する
メール送信タスクを構成するには、次のようにします。
- 統合エディタで [タスク] を選択して、使用可能なタスクのリストを表示します。
- 統合エディタで [メール送信] をクリックして配置します。
- [データ マッピング] のコントロール ポイントにカーソルを合わせてからクリックし、[メール送信] タスクのコントロール ポイントまでドラッグし、[データ マッピング] から [メール送信] タスクにエッジ接続を追加します。エッジは、Data Mapping タスクからSend Email タスクへの制御フローを示します。
- タスクを構成するには、[メール送信] をクリックします。タスクの構成ペインが表示されます。[タスク入力] セクションで、次のプロパティを設定します。
- 送信先: メールアドレスを入力します。このメールを使用して、統合が正常に完了していることを確認します。
- 件名: 「
Email from Application Integration
」と入力します。 - 書式なしテキストの本文: データ マッピング タスクで前に作成した
JSONList
変数を選択します。 - 残りのオプションはデフォルト構成のままにします。
プロパティへの変更は自動的に保存されます。
必要なエッジ接続を確認する
統合内のタスクとトリガー間にエッジ接続を追加したことを確認します。接続は、ある要素(タスクまたはトリガー)から別の要素への制御フローの方向を示します。エッジの詳細については、エッジをご覧ください。
次の図のように、完成した接続が表示されます。
統合をテストする
新しい統合をテストするには:
- 統合エディタのツールバーで、[Test] をクリックします。
[テスト統合] ペインが表示されます。
- [Test Integration] をクリックします。
テストの詳細については、統合をテストして公開するをご覧ください。
正常に完了すると、[Send Email] タスクで指定したメールアドレスに JSON 値を含むメールが送信されます。ご自身のメール クライアントでメールの受信を確認します。
統合によって送信されるメールには、次のような本文が含まれています。
[{ "project": "en.wikipedia", "article": "Tree", "granularity": "monthly", "timestamp": "2020100100", "access": "desktop", "agent": "user", "views": 33828.0 }]
メールの内容の確認に加え、ログを調査して、特定の統合のステータスとペイロードを表示できます。ログを表示するには:
- 統合エディタのツールバーで、[ログ] をクリックします。
- [Execution Logs] ページでは、統合の実行の試行ごとに関する詳細を確認できます。各エントリには、以下のような実行の試行の詳細が含まれます。
- 連携名
- 実行 ID
- ステータス
- 開始
- 期間
- 統合バージョン
- トリガー ID
- Cloud Logging
- 実行された統合の横にある展開の矢印(>)をクリックすると、展開された統合のタスクと変数のリストと、タスクのステータスと変数のペイロードが表示されます。
割り当てと上限
割り当てと上限については、割り当てと上限をご覧ください。