ローコードアプリ開発プラットフォームRetool でCvent 連携アプリを作成

CData Connect Server を使ってCvent のデータの仮想OData API エンドポイントを作成して、Retool からCvent のデータを使ったアプリを作成する方法。

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

最終更新日:2021-11-15

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

Retool はローコードでWebベースの業務アプリケーションを構築できるクラウドサービスです。この記事では、CData Connect Server を経由して Retool からCvent に連携するアプリを作成する方法を説明します。

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

Cvent の仮想OData API エンドポイントを作成

まずCData Connect Server でデータソースへの接続およびOData API エンドポイント作成を行います。

  1. CData Connect Server にログインして、Databases をクリックします。 データベースを追加
  2. 利用できるデータソースアイコンから"Cvent" を選択します。
  3. Cvent に接続するために必要なプロパティを入力します。

    Cvent への認証を行う前に、ワークスペースとOAuth アプリケーションを作成する必要があります。

    ワークスペースの作成

    ワークスペースを作成するには:

    1. Cvent にサインインし、App Switcher(ページ右上の青いボタン) -> Admin に移動します。
    2. Admin メニューから、Integrations -> REST API に移動します。
    3. Developer Management の新しいタブが立ち上がります。新しいタブでManage API Access をクリックします。
    4. Workspace を作成し、名前を付けます。開発者にアクセスさせたいスコープを選択します。スコープは、開発者がアクセスできるデータドメインを制御します。
      • All を選択すると、開発者は任意のスコープ、およびREST API にこれから追加されるスコープを選択できます。
      • Custom を選択すると、開発者がOAuth アプリで選択できるスコープを、選択したスコープに制限できます。本製品によって公開されるすべてのテーブルにアクセスするには、次のスコープを設定する必要があります。
        event/attendees:readevent/attendees:writeevent/contacts:read
        event/contacts:writeevent/custom-fields:readevent/custom-fields:write
        event/events:readevent/events:writeevent/sessions:delete
        event/sessions:readevent/sessions:writeevent/speakers:delete
        event/speakers:readevent/speakers:writebudget/budget-items:read
        budget/budget-items:writeexhibitor/exhibitors:readexhibitor/exhibitors:write
        survey/surveys:readsurvey/surveys:write

    OAuth アプリケーションの作成

    Workspace を設定して招待すると、開発者はサインアップしてカスタムOAuth アプリを作成できます。手順については、ヘルプドキュメントカスタムOAuth アプリケーションの作成を参照してください。

    Cvent への接続

    OAuth アプリケーションを作成したら、次の接続プロパティを設定してCvent に接続します。

    • InitiateOAuthGETANDREFRESH。OAuthAccessToken を自動的に取得およびリフレッシュするために使用します。
    • OAuthClientId:OAuth アプリケーションに関連付けられたClient ID。これは、Cvent Developer Portal のApplications page ページにあります。
    • OAuthClientSecret:OAuth アプリケーションに関連付けられたClient secret。これは、Cvent Developer Portal のApplications page ページにあります。
    接続を設定
  4. Test Database をクリックします。
  5. Permission -> Add をクリックして、新しいユーザーを追加し、適切な権限を指定します。
  6. API タブをクリックして OData API エンドポイントが生成されていることを確認します。

Resource の登録

続いてRetool 側の手順を進めていきます。Retool ではまず、構成したAPI にアクセスするためのリソース情報を登録します。

  1. Retool にログインし、「Resouces」から「Create new」をクリックします。
  2. 接続できるサービスの一覧が表示されるので「REST API」を選択します。
  3. REST APIの設定画面では以下の通り必要な情報を入力します。Base URLには事前に作成したAPI のリソースエンドポイントを指定します。Headers には生成したユーザーの認証トークンを「x-cdata-authtoken」ヘッダーとして指定します。
  4. リソースを作成後、アプリの作成確認ダイアログが出てくるので、今回はこれで作成してしまいます。(もちろんテンプレートなどを使っても構いません。)
  5. 任意の名称を指定してください。

一覧画面の作成

リソースの登録が完了したら一覧画面を作成しましょう。

  1. まず、先程登録したAPIのコネクションを使って、データを取得するための「Query」を定義します。すでに登録されているQueryの名前を変更し内部のAPIを定義を調整します。
  2. デフォルトで Action Type、つまりAPIリクエストのメソッドが「GET」なので、このままでもデータは取得できます。ただ、初期状態ではすべての項目を取得してしまうので、API Serverがサポートするクエリパラメータを使って、取得項目やフィルター条件等を指定します。
  3. URL parmeters を記述したら、設定を保存して実行してみましょう。以下のようにデータが取得できればOKです。
  4. あとはこのデータを画面に表示するための「Table」UIコンポーネントを画面に配置します。
  5. デフォルトえはJSON形式のサンプルデータが表示されているので、これを変更します。
  6. 先程のクエリ名と対象のオブジェクト名を「{{QueryName.data.value}}」といった形で指定するだけでOKです。これだけで簡単に一覧画面が構成できました。
  7. 作成した画面はプレビューモードで動作確認できます。

このように、CData Connect Serverを経由することで、API 側の複雑な仕様を意識せずにAPI 連携をしたアプリをRetool で開発できます。他にも多くのデータソースに対応するCData Connect Server の詳細をこちらからご覧ください。

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。