製品をチェック

製品の詳細・30日間の無償トライアルはこちら

CData Connect

SaaS 連携データベース Yoom を使ってJSON データを使ったフローボットを作成する

CData Connect Server を使ってJSON データのOData API エンドポイントを作成して、Yoom のフローボットでJSON データを利用する方法。

杉本和也
リードエンジニア

最終更新日:2022-12-09

こんにちは!リードエンジニアの杉本です。

Yoom は さまざまなSaaS とノーコードで連携し、業務を自動化するSaaS 連携データベースです。この記事では、CData Connect Server を経由して Yoom からJSON に接続し、JSON データを利用したフローボットを作成する方法を紹介します。

CData Connect Server は、JSON データのクラウド to クラウドの仮想OData インターフェースを提供し、Yoom からリアルタイムにJSON データへ接続することができます。

ホスティングについて

Yoom からCData Connect Server に接続するには、利用するConnect Server インスタンスをネットワーク経由での接続が可能なサーバーにホスティングして、URL での接続を設定する必要があります。CData Connect がローカルでホスティングされており、localhost アドレス(localhost:8080 など)またはローカルネットワークのIP アドレス(192.168.1.x など)からしか接続できない場合、Yoom はCData Connect Server に接続することができません。

クラウドホスティングでの利用をご希望の方は、AWS MarketplaceGCP Marketplace で設定済みのインスタンスを提供しています。


CData Connect Server の設定

Yoom でJSON JSON データをリアルタイムで操作するには、Connect Server からJSON に接続し、コネクションにユーザーアクセスを提供してJSON データのOData エンドポイントを作成する必要があります。

JSON データの仮想データベースを作成する

CData Connect Server は、シンプルなポイントアンドクリックインターフェースを使用してデータソースに接続し、データを取得します。まずは、右側のサイドバーのリンクからConnect Server をインストールしてください。

  1. Connect Server にログインし、「CONNECTIONS」をクリックします。 データベースを追加
  2. 一覧から「JSON」を選択します。
  3. JSON に接続するために必要な認証プロパティを入力します。

    データソースへの認証については、ヘルプドキュメントの「はじめに」を参照してください。CData 製品は、JSON API を双方向データベーステーブルとして、JSON ファイルを読み取り専用ビュー(ローカル ファイル、一般的なクラウドサービスに保存されているファイル、FTP サーバー)としてモデル化します。HTTP Basic、Digest、NTLM、OAuth、FTP などの主要な認証スキームがサポートされています。詳細はヘルプドキュメントの「はじめに」を参照してください。

    URI を設定して認証値を入力したら、DataModel を設定してデータ表現とデータ構造をより厳密に一致させます。

    DataModel プロパティは、データをどのようにテーブルに表現するかを制御するプロパティで、次の基本設定を切り替えます。

    • Document(デフォルト):JSON データのトップレベルのドキュメントビューをモデル化します。CData 製品 は、ネストされたオブジェクト配列を集約されたJSON オブジェクトとして返します。
    • FlattenedDocuments:ネストされた配列オブジェクトと親オブジェクトを、単一テーブルに暗黙的に結合します。
    • Relational:階層データから個々の関連テーブルを返します。テーブルには、親ドキュメントにリンクする主キーと外部キーが含まれています。

    リレーショナル表現の設定についての詳細は、ヘルプドキュメントの「JSON データのモデリング」を参照してください。また、以下の例で使用されているサンプルデータも確認できます。データには人や所有する車、それらの車に行われたさまざまなメンテナンスサービスのエントリが含まれています。

    Amazon S3 内のJSON への接続

    URI をバケット内のJSON ドキュメントに設定します。さらに、次のプロパティを設定して認証します。

    • AWSAccessKey:AWS アクセスキー(username)に設定。
    • AWSSecretKey:AWS シークレットキーに設定。

    Box 内のJSON への接続

    URI をJSON ファイルへのパスに設定します。Box へ認証するには、OAuth 認証標準を使います。 認証方法については、Box への接続 を参照してください。

    Dropbox 内のJSON への接続

    URI をJSON ファイルへのパスに設定します。Dropbox へ認証するには、OAuth 認証標準を使います。 認証方法については、Dropbox への接続 を参照してください。ユーザーアカウントまたはサービスアカウントで認証できます。ユーザーアカウントフローでは、以下の接続文字列で示すように、ユーザー資格情報の接続プロパティを設定する必要はありません。 URI=dropbox://folder1/file.json; InitiateOAuth=GETANDREFRESH; OAuthClientId=oauthclientid1; OAuthClientSecret=oauthcliensecret1; CallbackUrl=http://localhost:12345;

    SharePoint Online SOAP 内のJSON への接続

    URI をJSON ファイルを含むドキュメントライブラリに設定します。認証するには、User、Password、およびStorageBaseURL を設定します。

    SharePoint Online REST 内のJSON への接続

    URI をJSON ファイルを含むドキュメントライブラリに設定します。StorageBaseURL は任意です。指定しない場合、ドライバーはルートドライブで動作します。 認証するには、OAuth 認証標準を使用します。

    FTP 内のJSON への接続

    URI をJSON ファイルへのパスが付いたサーバーのアドレスに設定します。認証するには、User およびPassword を設定します。

    Google Drive 内のJSON への接続

    デスクトップアプリケーションからのGoogle への認証には、InitiateOAuth をGETANDREFRESH に設定して、接続してください。詳細はドキュメントの「Google Drive への接続」を参照してください。

    コネクションを設定(Salesforce の場合)。
  4. Test Connection」をクリックします。
  5. 「Permission」->「 Add」とクリックし、適切な権限を持つ新しいユーザー(または既存のユーザー) を追加します。

仮想データベースが作成されたら、Yoom を含むお好みのクライアントからJSON に接続できるようになります。

Yoom でフローボットを作成

Web API の準備が整ったので、Yoom にてフローボットの作成を進めていきます。

  1. まず、Yoom にログインします。
  2. フローボットを新規作成します。

ループ設定

フローボットのトリガー設定後、プロセスを作成します。まずはデータを複数行データベースに追加するため、ループ処理を設定します。ループを件数分実行するための一意のデータをJSON から取得します。

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

ループで利用したデータを元に他カラムのデータを取得

ループで利用した一意のデータをキーにして、JSON の他カラムのデータを取得します。

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

Yoom データベースに追加

Yoom データベースに取得したデータを追加する処理を作成します。

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

フローボットの完成

JSON データをYoom データベースに追加するフローボットが完成しました。

  1. フローボットを実行し、Yoom データベースにJSON データが追加されることを確認します。

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