こんにちは!リードエンジニアの杉本です。
Yoom は さまざまなSaaS とノーコードで連携し、業務を自動化するSaaS 連携データベースです。この記事では、CData Connect Cloud を経由して Yoom からMongoDB
に接続し、MongoDB のデータを利用したフローボットを作成する方法を紹介します。
CData Connect Cloud は、MongoDB のデータのクラウド to クラウドの仮想OData インターフェースを提供し、Yoom からリアルタイムにMongoDB
データへ接続することができます。
Connect Cloud アカウントの取得
以下のステップを実行するには、CData Connect Cloud のアカウントが必要になります。こちらから製品の詳しい情報とアカウント作成、30日間無償トライアルのご利用を開始できますので、ぜひご利用ください。
CData Connect Cloud の設定
Yoom でMongoDB MongoDB のデータをリアルタイムで操作するには、Connect Cloud からMongoDB に接続し、コネクションにユーザーアクセスを提供してMongoDB のデータのOData エンドポイントを作成する必要があります。
Connect Cloud からMongoDB に接続
CData Connect Cloud では、簡単なクリック操作ベースのインターフェースでデータソースに接続できます。
- Connect Cloud にログインし、 Add Connection をクリックします。
- Add Connection パネルから「MongoDB」を選択します。
-
必要な認証プロパティを入力し、MongoDB に接続します。
MongoDB への接続には、Server、Database、User、Password プロパティを設定します。MongoDB
コレクションにテーブルとしてアクセスするには、自動スキーマ検出を使用することができます。もちろんスキーマ定義の.rsd
ファイルを編集して自分でスキーマ定義を書くことも可能です。スキーマに縛られないフリーフォーマットクエリを投げることもできます。
- Create & Test をクリックします。
- Edit MongoDB Connection ページのPermissions タブに移動し、ユーザーベースのアクセス許可を更新します。
Connect Cloud にMongoDB OData エンドポイントを追加する
MongoDB に接続したら、目的のテーブルのOData エンドポイントを作成します。
- OData ページに移動し、 Add to create new OData endpoints をクリックします。
- MongoDB コネクション(例:MongoDB1)を選択し、Next をクリックします。
- 使用するテーブルを選択し、Confirm をクリックします。
パーソナルアクセストークン(PAT)の取得
OAuth 認証をサポートしていないサービス、アプリケーション、プラットフォーム、またはフレームワークから接続する場合は、認証に使用するパーソナルアクセストークン(PAT)を作成できます。きめ細かなアクセス管理を行うために、サービスごとに個別のPAT を作成するのがベストプラクティスです。
- Connect Cloud アプリの右上にあるユーザー名をクリックし、User Profile をクリックします。
- User Profile ページで、Personal Access Tokens セクションまでスクロールし、Create PAT をクリックします。
- PAT に名前を付け、Create をクリックします。
- パーソナルアクセストークンは作成時にしか表示されないため、必ずコピーして安全に保存してください。
コネクションとOData エンドポイントが構成されたら、Yoom からMongoDB に接続できるようになります。
Yoom でフローボットを作成
Web API の準備が整ったので、Yoom にてフローボットの作成を進めていきます。
- まず、Yoom にログインします。
- フローボットを新規作成します。
ループ設定
フローボットのトリガー設定後、プロセスを作成します。まずはデータを複数行データベースに追加するため、ループ処理を設定します。ループを件数分実行するための一意のデータをMongoDB から取得します。
- CData Connect Cloud コネクタを利用して、MongoDB のデータを取得します。+ ボタンでプロセスを追加し、オペレーションタイプの選択から「アプリと連携する」を選択します。
- アプリ一覧から「CData Connect」を選択します。
- アカウント情報を登録します。アクセストークンに、Connect Cloud のアカウント(メールアドレス)とPAT をコロンで繋ぎ、Base64 エンコードしたものを設定します。
- アクション選択では、「レコードの一覧を取得」を選択します。アクション設定画面では、Connect Cloud のOData で設定したテーブル名を設定します。アウトプットを追加し、データをリスト形式で取得する設定をします。JSONPath には「$.value[*].カラム名」を指定します。
- データ取得設定を保存し、ループ処理(同じ処理を繰り返す)を追加します。
ループで利用したデータを元に他カラムのデータを取得
ループで利用した一意のデータをキーにして、MongoDB の他カラムのデータを取得します。
- ループ分岐の右側のフローでアプリ連携のプロセスを追加し、「特定のレコードを取得」アクションを設定します。
- プライマリーキーの値を設定します。「アウトプットを入力」から「ループ変数」を選択します。
- アウトプットを設定します。入力形式はテキスト、JSONPath は「value[0].カラム名」を設定します。
Yoom データベースに追加
Yoom データベースに取得したデータを追加する処理を作成します。
- オペレーションタイプの選択から「データベースを操作する」を選択し、データベース一覧からYoom データベースを選択します。
- データベースとテーブルを指定し、実行アクションで「レコードを追加する」を選択します。
- データ取得時に設定したアウトプットを、データベースのカラムに設定します。
フローボットの完成
MongoDB のデータをYoom データベースに追加するフローボットが完成しました。
- フローボットを実行し、Yoom データベースにMongoDB のデータが追加されることを確認します。
このように、CData Connect Cloud を経由することで、API 側の複雑な仕様を意識せずにSaaS と連携したフローボットをYoom で作成できます。。他にも多くのデータソースに対応するCData Connect Cloud
の詳細をこちらからご覧ください。