Bubble で使えるDynamics CRM のデータ連携用のバックエンドAPI をノーコードで開発

杉本和也
杉本和也
リードエンジニア
ノーコードツールBubble から Dynamics CRM のデータに接続するためのバックエンドAPI Server をCData API Server で構築



CData API Server を使って、Bubble から Dynamics CRM に接続してデータを取得する方法を説明します。

Dynamics CRM データ連携について

CData は、Microsoft Dynamics CRM のライブデータへのアクセスと統合を簡素化します。お客様は CData の接続機能を以下の目的で活用しています:

  • Dynamics CRM 2011+ サービスおよび Dynamics CRM Online のデータの読み取りと書き込みができます。
  • カスタマイズ可能なキャッシュと、インテリジェントなクエリ集約・分離により、Dynamics CRM のネイティブ機能を拡張できます。
  • Azure Active Directory、Azure マネージド サービス ID 認証情報、クライアントシークレットまたは証明書を使用した Azure サービスプリンシパルなど、さまざまな方法で Dynamics CRM に安全に認証できます。

CData のお客様は、データをデータウェアハウスにレプリケートしたい場合(他のデータソースと併せて)や、Microsoft エコシステム内のお気に入りのデータツール(Power BI、Excel など)または外部ツール(Tableau、Looker など)からライブ Dynamics CRM データを分析したい場合など、さまざまな理由で当社の Dynamics CRM 接続ソリューションを使用しています。


はじめに


API Server の設定

以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなDynamics CRM OData サービスを作成していきましょう。

Dynamics CRM への接続

Bubble からDynamics CRM のデータを操作するには、まずDynamics CRM への接続を作成・設定します。

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Dynamics CRM」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、Dynamics CRM への接続設定を行っていきましょう! 接続設定
  5. Dynamics CRM 接続プロパティの取得・設定方法

    Dynamics CRM では、インスタンスごとに接続文字列の設定が必要です。 Authentication セクションでは、有効なDynamics CRM のUser、Password の入力、およびDynamics CRM Server Organization root のURL を設定します。さらに、CRMVersion プロパティに、'CRM2011+' もしくは'CRMOnline' を設定します。IFD コンフィグレーションもサポートされていますので、InternetFacingDeployment をTRUE に設定してください。

    また、Security Token Service(STS)、もしくはAD FS エンドポイントをSTSURL プロパティに設定することもできます。 この値はGetSTSUrl ストアドプロシージャで取得できます。 Office 365 ユーザーはデフォルトSTS URL にCRMVersion の設定だけで接続することができます。

  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

Dynamics CRM 接続プロパティの取得・設定方法

Dynamics CRM では、インスタンスごとに接続文字列の設定が必要です。 Authentication セクションでは、有効なDynamics CRM のUser、Password の入力、およびDynamics CRM Server Organization root のURL を設定します。さらに、CRMVersion プロパティに、'CRM2011+' もしくは'CRMOnline' を設定します。IFD コンフィグレーションもサポートされていますので、InternetFacingDeployment をTRUE に設定してください。

また、Security Token Service(STS)、もしくはAD FS エンドポイントをSTSURL プロパティに設定することもできます。 この値はGetSTSUrl ストアドプロシージャで取得できます。 Office 365 ユーザーはデフォルトSTS URL にCRMVersion の設定だけで接続することができます。

API Server のユーザー設定

次に、API Server 経由でDynamics CRM にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。

  1. 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
  2. 次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
  3. その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。

Dynamics CRM 用のAPI エンドポイントの作成

ユーザーを作成したら、Dynamics CRM のデータ用のAPI エンドポイントを作成していきます。

  1. まず、「API」ページに移動し、 「 テーブルを追加」をクリックします。
  2. アクセスしたい接続を選択し、次へをクリックします。
  3. 接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。

OData のエンドポイントを取得

以上でDynamics CRM への接続を設定してユーザーを作成し、API Server でDynamics CRM データのAPI を追加しました。これで、OData 形式のDynamics CRM データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。

オンプレミスDB やファイルからのAPI Server 使用(オプション)

オンプレミスRDB やExcel/CSV などのファイルのデータを使用する場合には、API Server のCloug Gateway / SSH ポートフォワーディングが便利です。是非、Cloud Gatway の設定方法 記事を参考にしてください。

Dynamics CRM のデータに接続したアプリを作成

OData エンドポイントをAPI Server に追加したら、Dynamics CRM のデータへのライブ接続が可能なアプリをBubble で作成できます。

Bubble API Connector を設定

まずは、Bubble からCData API Server にアクセスするためのAPI Connector を設定します。

  1. アプリ内で、Plugins タブをクリックして Add plugins をクリックします。
  2. 「API Connector」を検索して「Install」をクリックします。 API Connector プラグインのインストール
  3. インストール後、「Add another API」ボタンをクリックしてAPI を設定します。
    • API に名前を設定します。
    • Authentication を「HTTP Basic Auth」に設定します。
    • Username をAPI Server のユーザーに設定します(user@mydomain.com)。
    • Password を上記のユーザーのPAT に設定します。
    • API Call を展開して、「GET」コマンドを選択してURL を先ほど設定したOData エンドポイントに設定します。
    API Call を設定
  4. 「Initialize call」ボタンをクリックしてレスポンスのデータ型を必要に応じて調整します。 call を初期化
  5. 必要な変更を加えた後、「SAVE」をクリックします。 データ型を保存

App UI の設定

API Connector を設定したら、Bubble アプリでDynamics CRM のデータを取得できます。本記事では、Excel ライクなテーブルを表示できるUI コンポーネントでデータをリクエストします。

  1. Plugin タブで、「Excel-like HandsonTable」をインストールします。 Excel-like HandsonTable プラグインを追加
  2. Design タブで、「Excel Table」をワークスペースに追加します。 Excel Table をアプリに追加
  3. Excel Table のData source で、「Get data from an external API」を選択します。
  4. Type of content を「API Call value」に設定します。
  5. Data source を"API Server - <API Call の値>"(またはこれと同等な値)に設定します。 Excel Table をAPI Call にバインド
  6. 「Preview」をクリックしてDynamics CRM からデータが取得できたことを確認します。 アプリをプレビュー

この時点で、バックエンドAPI を設定する手間なくDynamics CRM のデータへのライブ接続を持つアプリケーションを開発できます。

クラウドアプリケーションからDynamics CRM のデータへのライブ接続

Bubble からDynamics CRM のリアルタイムデータに直接接続できるようになりました。これで、Dynamics CRM のデータを複製せずにより多くの接続とアプリを作成できます。

まとめと30日の無償評価版のご案内

このように Dynamics CRM 内のデータをBubble で利用することができるようになります。CData API Server は、30日の無償評価版があります。是非、お試しいただき、Bubble からのデータ参照を体感ください。

はじめる準備はできましたか?

詳細はこちら、または無料トライアルにお申し込みください:

CData API Server お問い合わせ