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

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



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

API Server の設定

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

Harvest への接続

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

  1. API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。 接続を追加
  2. 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Harvest」を選択します。
  3. 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
    CData コネクタの追加方法はこちら >>
  4. それでは、Harvest への接続設定を行っていきましょう! 接続設定
  5. まず、Profile 接続プロパティをディスク上のHarvest プロファイルの場所に設定します(例:C:\profiles\Harvest.apip)。次に、ProfileSettings 接続プロパティをHarvest の接続文字列に設定します(以下を参照)。

    Harvest API プロファイル設定

    Harvest に認証するには、トークン認証またはOAuth 標準のいずれかを使用できます。自分のデータに接続するにはBasic 認証を使用します。他のユーザーが自分のデータに接続できるようにするにはOAuth を使用します。

    トークン認証の使用

    トークン認証を使用するには、ProfileSettings 接続プロパティでAPIKey にHarvest パーソナルアクセストークンを設定します。APIKey に加えて、ProfileSettings でAccountId を設定して接続します。

    OAuth 認証の使用

    まず、Harvest でOAuth2 アプリケーションを登録します。アプリケーションはHarvest ID の「Developers」セクションから作成できます。

    以下の接続プロパティを設定すると、接続できるようになります。

    • ProfileSettings:ProfileSettings でAccountId を設定します。
    • AuthScheme:OAuth に設定します。
    • OAuthClientId:アプリ設定で指定したclient ID に設定します。
    • OAuthClientSecret:アプリ設定で指定したclient secret に設定します。
    • CallbackURL:アプリ設定で指定したRedirect URI に設定します。
    • InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用して、ドライバーがOAuthAccessToken を取得および更新する方法を管理できます。
  6. 接続情報の入力が完了したら、「保存およびテスト」をクリックします。

まず、Profile 接続プロパティをディスク上のHarvest プロファイルの場所に設定します(例:C:\profiles\Harvest.apip)。次に、ProfileSettings 接続プロパティをHarvest の接続文字列に設定します(以下を参照)。

Harvest API プロファイル設定

Harvest に認証するには、トークン認証またはOAuth 標準のいずれかを使用できます。自分のデータに接続するにはBasic 認証を使用します。他のユーザーが自分のデータに接続できるようにするにはOAuth を使用します。

トークン認証の使用

トークン認証を使用するには、ProfileSettings 接続プロパティでAPIKey にHarvest パーソナルアクセストークンを設定します。APIKey に加えて、ProfileSettings でAccountId を設定して接続します。

OAuth 認証の使用

まず、Harvest でOAuth2 アプリケーションを登録します。アプリケーションはHarvest ID の「Developers」セクションから作成できます。

以下の接続プロパティを設定すると、接続できるようになります。

  • ProfileSettings:ProfileSettings でAccountId を設定します。
  • AuthScheme:OAuth に設定します。
  • OAuthClientId:アプリ設定で指定したclient ID に設定します。
  • OAuthClientSecret:アプリ設定で指定したclient secret に設定します。
  • CallbackURL:アプリ設定で指定したRedirect URI に設定します。
  • InitiateOAuth:GETANDREFRESH に設定します。InitiateOAuth を使用して、ドライバーがOAuthAccessToken を取得および更新する方法を管理できます。

API Server のユーザー設定

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

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

Harvest 用のAPI エンドポイントの作成

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

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

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

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

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

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

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

OData エンドポイントをAPI Server に追加したら、Harvest のデータへのライブ接続が可能なアプリを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 のユーザーに設定します([email protected])。
    • Password を上記のユーザーのPAT に設定します。
    • API Call を展開して、「GET」コマンドを選択してURL を先ほど設定したOData エンドポイントに設定します。
    API Call を設定
  4. 「Initialize call」ボタンをクリックしてレスポンスのデータ型を必要に応じて調整します。 call を初期化
  5. 必要な変更を加えた後、「SAVE」をクリックします。 データ型を保存

App UI の設定

API Connector を設定したら、Bubble アプリでHarvest のデータを取得できます。本記事では、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」をクリックしてHarvest からデータが取得できたことを確認します。 アプリをプレビュー

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

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

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

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

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

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

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

CData API Server お問い合わせ