各製品の資料を入手。
詳細はこちら →SaaS 連携データベース Yoom を使ってPingOne のデータを使ったフローボットを作成する
CData Connect Server を使ってPingOne のデータのOData API エンドポイントを作成して、Yoom のフローボットでPingOne のデータを利用する方法。
最終更新日:2022-12-09
こんにちは!リードエンジニアの杉本です。
Yoom は さまざまなSaaS とノーコードで連携し、業務を自動化するSaaS 連携データベースです。この記事では、CData Connect Server を経由して Yoom からPingOne に接続し、PingOne のデータを利用したフローボットを作成する方法を紹介します。
CData Connect Server は、PingOne のデータのクラウド to クラウドの仮想OData インターフェースを提供し、Yoom からリアルタイムにPingOne データへ接続することができます。
ホスティングについて
Yoom からCData Connect Server に接続するには、利用するConnect Server インスタンスをネットワーク経由での接続が可能なサーバーにホスティングして、URL での接続を設定する必要があります。CData Connect がローカルでホスティングされており、localhost アドレス(localhost:8080 など)またはローカルネットワークのIP アドレス(192.168.1.x など)からしか接続できない場合、Yoom はCData Connect Server に接続することができません。
クラウドホスティングでの利用をご希望の方は、AWS Marketplace やGCP Marketplace で設定済みのインスタンスを提供しています。
CData Connect Server の設定
Yoom でPingOne PingOne のデータをリアルタイムで操作するには、Connect Server からPingOne に接続し、コネクションにユーザーアクセスを提供してPingOne のデータのOData エンドポイントを作成する必要があります。
PingOne のデータの仮想データベースを作成する
CData Connect Server は、シンプルなポイントアンドクリックインターフェースを使用してデータソースに接続し、データを取得します。まずは、右側のサイドバーのリンクからConnect Server をインストールしてください。
- Connect Server にログインし、「CONNECTIONS」をクリックします。
- 一覧から「PingOne」を選択します。
-
PingOne に接続するために必要な認証プロパティを入力します。
PingOne に接続するには以下のプロパティを設定します。
- Region:自身のPingOne 組織のデータがホスティングされている地域。
- AuthScheme:PingOne に接続する際に使用する認証の種類。
- WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。
WorkerAppEnvironmentId の設定
WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。
はじめに、このプロパティの値を見つけます。
- 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
- OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
- 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
- リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
-
Environment ID フィールドの値をコピーします。
以下の例に似たものになるはずです:
WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'
次に、WorkerAppEnvironmentId をEnvironment ID フィールドの値に設定します。
AuthorizationServerURL の設定
AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。
OAuth でのPingOne への認証
PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。
- ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
- ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
- 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。
OAuth(認可コードグラント)
AuthScheme をOAuth に設定します。
デスクトップアプリケーション
OAuth アクセストークンの取得およびリフレッシュ
以下を設定して、接続してください。
- InitiateOAuth:GETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
- OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
- OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333
接続すると、本製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。
- ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
- OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。
ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。
Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。
- 「 Test Connection」をクリックします。
- 「Permission」->「 Add」とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー) を追加します。
仮想データベースが作成されたら、Yoom を含むお好みのクライアントからPingOne に接続できるようになります。
Yoom でフローボットを作成
Web API の準備が整ったので、Yoom にてフローボットの作成を進めていきます。
- まず、Yoom にログインします。
- フローボットを新規作成します。

ループ設定
フローボットのトリガー設定後、プロセスを作成します。まずはデータを複数行データベースに追加するため、ループ処理を設定します。ループを件数分実行するための一意のデータをPingOne から取得します。
- CData Connect Server コネクタを利用して、PingOne のデータを取得します。+ ボタンでプロセスを追加し、オペレーションタイプの選択から「アプリと連携する」を選択します。
- アプリ一覧から「CData Connect」を選択します。
- アカウント情報を登録します。アクセストークンに、Connect Server のアカウント(メールアドレス)とPAT をコロンで繋ぎ、Base64 エンコードしたものを設定します。
- アクション選択では、「レコードの一覧を取得」を選択します。アクション設定画面では、Connect Server のOData で設定したテーブル名を設定します。アウトプットを追加し、データをリスト形式で取得する設定をします。JSONPath には「$.value[*].カラム名」を指定します。
- データ取得設定を保存し、ループ処理(同じ処理を繰り返す)を追加します。





ループで利用したデータを元に他カラムのデータを取得
ループで利用した一意のデータをキーにして、PingOne の他カラムのデータを取得します。
- ループ分岐の右側のフローでアプリ連携のプロセスを追加し、「特定のレコードを取得」アクションを設定します。
- プライマリーキーの値を設定します。「アウトプットを入力」から「ループ変数」を選択します。
- アウトプットを設定します。入力形式はテキスト、JSONPath は「value[0].カラム名」を設定します。

Yoom データベースに追加
Yoom データベースに取得したデータを追加する処理を作成します。
- オペレーションタイプの選択から「データベースを操作する」を選択し、データベース一覧からYoom データベースを選択します。
- データベースとテーブルを指定し、実行アクションで「レコードを追加する」を選択します。
- データ取得時に設定したアウトプットを、データベースのカラムに設定します。


フローボットの完成
PingOne のデータをYoom データベースに追加するフローボットが完成しました。
- フローボットを実行し、Yoom データベースにPingOne のデータが追加されることを確認します。

このように、CData Connect Server を経由することで、API 側の複雑な仕様を意識せずにSaaS と連携したフローボットをYoom で作成できます。。他にも多くのデータソースに対応するCData Connect Server の詳細をこちらからご覧ください。