WCF アプリケーションで HubSpot のデータ の OData サービスを公開

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
この記事では、WCF サービスアプリケーションを開発してHubSpot のデータの OData フィードを生成する方法を解説します。

CData ADO.NET Provider for HubSpot を使用すると、Windows Communication Foundation(WCF)フレームワークを活用してサービス指向アプリケーションを素早く開発し、HubSpot のデータを OData コンシューマーに提供できます。この記事では、接続用の Entity Data Model を作成し、WCF Data Service を構成して OData サービスを公開する方法を解説します。公開したフィードは、Power Pivot や CData ADO.NET Provider for OData を使用するアプリケーションなど、さまざまな OData クライアントから利用できます。

HubSpot データ連携について

CData は、HubSpot のライブデータにアクセスし、統合するための最も簡単な方法を提供します。お客様は CData の接続機能を以下の目的で使用しています:

  • API の更新や変更を気にすることなく、HubSpot にアクセスできます。
  • 追加の構成手順なしで、HubSpot のカスタムオブジェクトやフィールドにアクセスできます。
  • SQL ストアドプロシージャを使用して、添付ファイルのアップロード・ダウンロード、エンゲージメントの挿入、カスタムオブジェクトやフィールドの作成・削除などの機能的な操作を実行できます。

ユーザーは、Tableau、Power BI、Excel などの分析ツールと HubSpot を統合し、当社のツールを活用して HubSpot データをデータベースやデータウェアハウスにレプリケートしています。

他のお客様が CData の HubSpot ソリューションをどのように使用しているかについては、ブログをご覧ください:Drivers in Focus: Simplified HubSpot Connectivity


はじめに


OData サービスの作成

以下の手順で、OData 経由でHubSpot のデータへの接続を提供する WCF サービスアプリケーションを作成します。

  1. Visual Studio を開き、新しいプロジェクトを作成します。WCF Service Application テンプレートを選択します。
  2. 自動生成された IService.cs と Service1.svc を削除します。
  3. Entity Framework 6 をインストールします:

    Visual Studio のパッケージマネージャーコンソールを使用して、最新バージョンの Entity Framework をインストールします。以下のコマンドを実行すると、Entity Framework が自動的にダウンロード・インストールされます。

    Install-Package EntityFramework
  4. Entity Framework プロバイダーを登録します:
    1. App.config または Web.config ファイルの "providers" セクションに、以下のプロバイダーエントリを追加します。Entity Framework のインストールが成功していれば、このセクションはすでに存在しているはずです。
      <configuration>
      ...
      <entityFramework>
        <providers>
          ...
          <provider invariantName="System.Data.CData.HubSpot" type="System.Data.CData.HubSpot.HubSpotProviderServices, System.Data.CData.HubSpot.Entities.EF6" />
        </providers>
      </entityFramework>
      </configuration>
    2. インストールディレクトリの lib/4.0 にある System.Data.CData.HubSpot.Entities.dll への参照を追加します。
    3. プロジェクトをビルドして、EF6 のセットアップを完了します。
  5. Project -> Add New Item -> ADO.NET Entity Data Model をクリックします。
  6. 表示される Entity Data Model ウィザードで、'EF Designer from Database' オプションを選択します。
  7. Choose Your Connection ダイアログが表示されたら、New Connection をクリックします。
  8. Connection properties ダイアログで、CData HubSpot Data Source を選択し、必要な認証情報を入力します。

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

    HubSpot はOAuth 認証 およびPrivateAppToken ベース認証をサポートします。

    OAuth

    HubSpot は埋め込みOAuth 認証情報を提供しており、デスクトップアプリケーションまたはヘッドレスマシンから簡単に接続できます。 Web アプリケーションから接続するには、カスタムOAuth アプリケーションを作成する必要があります。 OAuth 経由で接続するには、すべての認証フローでAuthSchemeOAuth に設定します。 ヘルプドキュメントでは、利用可能なOAuth フローでのHubSpot への認証について詳しく説明します。 カスタムOAuth アプリケーションの作成についての情報と、すでに埋め込みOAuth 認証情報を持つ認証フローでもカスタムOAuth アプリケーションを作成したほうがよい場合の説明については、「カスタムOAuth アプリケーションの作成」セクション を参照してください。

    また、PrivateAppToken ベース認証についてはヘルプドキュメントの「接続の確立」セクションを参照してください。

  9. OData クライアントからアクセスさせたい HubSpot のテーブルとビューを選択します。
  10. Project -> Add New Item -> WCF Data Service をクリックします。
  11. データソースクラスを指定し、新しい WCF Data Service へのアクセスを構成します。以下の例では、エンティティの Access Rule が All に設定されています。これは、すべてのユーザーがデータの読み取りと変更を行えることを意味します。

      
    using System;
    using System.Collections.Generic;
    using System.Data.Services;
    using System.Data.Services.Common;
    using System.Linq;
    using System.ServiceModel.Web;
    using System.Web;
    
    namespace HubSpotService{
      public class HubSpotDataService : DataService<HubSpotEntities> {
        public static void InitializeService(DataServiceConfiguration config) {
          config.SetEntitySetAccessRule("*", EntitySetRights.All);
          config.DataServiceBehavior.MaxProtocolVersion = DataServiceProtocolVersion.V3;
        }
      }
    }
    	
  12. プロジェクトを実行します。これで、OData 対応アプリケーションから Salesforce データにアクセスし、変更を反映できるようになります。ブラウザでフィードにアクセスできます。フィードは次のように表示されます:

Power Pivot から OData サービスを利用する

これで、任意の OData クライアント(例:Excel Power Pivot)からサービスを利用できます。

  1. Excel を開き、Power Pivot Window ボタンをクリックします。
  2. 新しいポップアップが表示されます。From Data Feeds オプションを選択します。
  3. 表示される Table Import Wizard で、OData URL を入力します(例:http://localhost:12449/HubSpotDataService.svc/)。
  4. OData サービスへの接続後、ウィンドウ下部の Next ボタンをクリックします。
  5. ウィザードの次のウィンドウに、利用可能なテーブルの一覧が表示されます。インポートするテーブルを選択し、Finish をクリックします。
  6. Close をクリックして、Power Pivot にデータをインポートします。

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

HubSpot Data Provider の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

HubSpot Icon HubSpot ADO.NET Provider お問い合わせ

HubSpot マーケティング自動化プラットフォーム(連絡先、取引、電子メール、会社など)を組み込んだパワフルな.NET アプリケーションを短時間・低コストで作成して配布できます。