メインコンテンツにスキップ
お客さまへの大切なお知らせ:膨大なサポート情報を少しでも早くお客さまにお届けするため、本コンテンツの日本語版は人間の翻訳者を介さない自動翻訳で提供されております。正確な最新情報については本コンテンツの英語版をご覧ください。

SnowflakeでHubSpotデータを照会する

更新日時 2024年 5月 31日

以下の 製品でご利用いただけます(別途記載されている場合を除きます)。

Operations Hub   Enterprise

SnowflakeをH ubSpot アカウントに接続した後、SnowflakeのData Shareを使用して、SnowflakeアカウントからHubSpotのデータを照会することができます。

データラグとSnowflakeのアカウントリージョン

15分ごとに更新されるV2_LIVEスキーマと、毎日更新されるV2_DAILYスキーマにアクセスすることができます。

注: V2_LIVEスキーマの以下の表示条件は、毎日更新されます: association_definitions、owners、pipelines、pipeline_stages。

Snowflake環境を設定する

SnowflakeでHubSpotデータを照会するには、照会元のウェアハウス、データベース、スキーマを選択する必要があります。ワークシートレベルでこれらを設定して自動的にクエリーに含めるか、または手動で追加することができます。

ワークシートレベルでウェアハウス、データベース、スキーマを選択するには、次の手順に従います。

  • ワークシートの一番上の行で、[Worksheet actions]バーをクリックします。

    snowflake-worksheet-settings0
  • ポップアップウィンドウで、次の操作を行います。
    • [Warehouse]ドロップダウンメニューをクリックして、ウェアハウスを選択します。
    • [Database]ドロップダウンメニューをクリックして、HubSpotデータベースを選択します。
    • [Schema]ドロップダウンメニューをクリックして、使用するスキーマを選択します。
        • V2_DAILY: テーブルに基づいたデータを照会するための日次スキーマ。このスキーマのデータは1日1回更新されます。このスキーマを使用すると、クエリーが高速になります。Snowflakeで直接照会する場合に推奨されます。
        • V2_LIVE: HubSpotデータのSecure Viewsに基づくライブスキーマです。このスキーマのデータは最大で15分ごとに更新されます。大規模なデータセットを照会する場合、クエリーに時間がかかることがあります。このような場合は、まずETLプロセスで自分のテーブルにデータをコピーし、そのテーブルを照会することをお勧めします。


      snowflake-worksheet-settings-window0

設定された環境では、HubSpotデータを照会するときに、データベースやスキーマタイプを手動でクエリーに追加する必要がありません。

データベースとスキーマの種類を手動でクエリーに追加するには、データベース名の後にスキーマを追加して、クエリーの先頭に追加します。FROMのフィールドを使用します。例として、以下のような場合が挙げられます。


SELECT objectTypeId, property_createddate
FROM hubspot_share_name.V2_LIVE.objects_deals

LIMIT 1

データの概要

クエリーはSQLで構築され、以下のようなHubSpotのデータを取得することが可能です:

  • オブジェクト:コンタクト、会社、製品など、標準およびカスタムのオブジェクト。 
  • レコード:個々のコンタクトや会社など、個々の記録。 
  • 関連付け:利用可能なすべての関連付けの種類と現在関連付けられているレコード。
  • Eメール: Eメールの開封などHubSpotの標準的なイベントと、カスタムの行動イベントの両方のイベントデータです。
  • リストです: HubSpotのコンタクトリストと会社リストです。
  • 所有者:レコードの所有者として設定されているHubSpotアカウントのユーザー。
  • パイプライン:取引パイプラインとチケットパイプライン(パイプラインステージを含む)。
  • プロパティー:プロパティーの履歴を含む、CRMレコードのプロパティーとその値。

HubSpotのCRMデータモデルについて詳細をご確認ください。

注:データシェアを進化させるにあたり、変更点を導入し、中には破壊的な変更もあります。HubSpot の開発者向け変更ログを配信(サブスクリプション)することを強くお勧めします。これらの変更は、アップデートの前に必ず変更履歴に掲載されます。

返されるデータの制限と順序の設定

クエリーを作成するときに、返されるデータの量と、データが返される順序を制御できます。このためにはLIMITORDER BYをクエリーに追加します。例えば、すべてのコンタクトとそのプロパティーを照会するが、3件の結果だけをコンタクトIDの順で返すには、クエリーを次のように作成します。


SELECT objectTypeId, updatedAt, ingestedAt
FROM objects_deals
ORDER BY objectId
LIMIT 10;

列のデータ型

Snowflakeでデータを照会する場合、返される列は、照会するデータによって異なります。Snowflakeで、指定したテーブルまたはビューで利用可能な列を確認するには、左側のサイドバーでビューを選択します。

ご注意ください。このドキュメントの残りの部分では、テーブルとビューの両方に適用されるコンテキストでは、データベースオブジェクトという語句を使用します。

snowflake-sidebar-view-column-details0


特定の列を返すには、その列をSELECTのフィールドで、クエリーを実行します。例えば、次のようなクエリーでは、以下のようなものだけが返されます。OBJECTIDUpdatedAtの欄があります:


SELECT
objectId, updatedAt
FROM objects_contacts

以下に、クエリーが返す可能性のある列の一般的な定義を示します。以下に記載されていないその他の定義については、上記の各ビューの定義を参照してください。

  • OBJECTTYPEID:オブジェクトのタイプを表すVARCHAR値。例えば、「0-1」はコンタクトオブジェクト、「0-2」は会社オブジェクト、「2-1232」はアカウントのカスタムオブジェクトを表します。リストでは、リストのタイプ(コンタクトや会社など)を指します。object_and_event_type_definitionsビューを使って、アカウント内のすべてのオブジェクトとイベントのIDを照会できます。
  • OBJECTID: HubSpotアカウント内の所定のタイプのオブジェクトの単一レコードを表すBIGINT番号です。レコードを識別するには、オブジェクトタイプIDとオブジェクトIDの両方を使用する必要があります。
  • INGESTEDAT:データ行がSnowflakeに追加された時のタイムスタンプで、TIMESTAMP_NTZ値で表されます。HubSpotでの作成操作または更新操作の論理タイムスタンプとは関係ありません。
    • HubSpotの内部処理により、行の他の列が変更されていなくても、行のインジェスチョンタイムスタンプが更新されることがあります。
    • 最近変更されたデータをコピーするETLプロセスを作成するときには、インジェスチョンタイムスタンプに基づいてクエリーを作成することをお勧めします。また、フローで毎日データをコピーする場合は、遅延を考慮して過去2日間のデータをコピーすることをお勧めします。
  • CREATEDATとUPDATEDAT:データがHubSpotで作成または更新されたときの論理的なタイムスタンプで、TIMESTAMP_NTZ 値で表わされます。これらのタイムスタンプは、HubSpotのタイムスタンプと一致します。例えば、HubSpotでレコード作成日に表示される時刻は、Snowflakeの「CREATEDAT」列のタイムスタンプと同じになります。これらはインジェストのタイムスタンプとは直接関係がなく、これらのプロパティーに基づいてETL処理を行うことは推奨されない。
  • COMBINEDASSOCIATIONTYPE:関連付けの定義を一意に識別するVARCHAR値です。

データ型を変換する

VARCHAR列を持つクエリーから、別の型にした方が望ましいデータが返ってくることがあります。このような場合、Snowflakeの関数を使用してVARCHARデータ型を目的の型に変換することをお勧めします。例えば、オブジェクトレコードのプロパティーは、ほとんどのデータベースオブジェクトではVARCHARデータ型として格納されるが、時には数値やdatetime値を含むこともある。
try_to_number , try_to_timestamp_ntzなどの関数で、VARCHAR データをそれぞれNUMBER型、DATETIME型に変換することができる:


SELECT objectid, value AS amount_str, try_to_number(value) AS amount

FROM object_properties
WHERE objecttypeid='0-3' AND name='amount'
LIMIT 1

オブジェクトのクエリー

以下では、特定のHubSpotオブジェクトやレコードのデータを照会する方法と、返されるデータを説明します。 

さまざまな種類のオブジェクトデータは、2つの方法で整理され、利用することができます。 

  • 個別です。各オブジェクトタイプは独自のビューに格納され、同じオブジェクトタイプのレコードのみを含みます。例えば、objects_contactsはコンタクトレコードのみを含みます。これにより、問い合わせの際にobjecttypeidを指定する必要がなくなる。これらのビューは、ObjectTypeIds を知る必要がないため、クエリーが簡単です。また、各行がオブジェクトとそのプロパティーの現在のバージョンに対応する、より使いやすいフォーマットでデータを返します。クエリーが遅くならない限り、これらのビューを使用してオブジェクトデータを取得することが推奨されます。詳しくは下記のObjects_X viewsでご覧ください。 
  • 結合される。すべてのオブジェクトタイプのすべてのレコードが1つのデータベースオブジェクトに結合されます。したがって、問い合わせの際には、「WHERE objectTypeId='0-1'」のようなフィルターを指定する必要があります。例えば、問い合わせの際に以下のようなobjecttypeidを使用することができる。
オブジェクト名 ObjectTypeId
コンタクト 0-1
会社 0-2
商品項目 0-8

カスタムオブジェクトには、作成時にIDが割り当てられ、「2-unique_ID」として識別されます。例えば「2-12345」などです。object_and_event_type_definitionsについて詳細をご確認ください。

これらのデータベースオブジェクトは、objects_xビューから得られるものより優れたクエリパフォーマンスが必要な場合に一般的に適しています。詳細は、下記のobject_with_object_properties、object_properties、object_properties_historyをご覧ください。

objects_x views

このデータベースオブジェクトでは、カスタムオブジェクトを含む利用可能な各オブジェクトタイプは、特定のビューを持ち、各ビューにはその特定のオブジェクトタイプのオブジェクトのレコードのみが含まれます。これらのビューは、OBJECTS_ <object type name>というフォーマットに従って命名されます。<object type name>は、オブジェクトタイプの複数形ラベルです(オブジェクトタイプに複数形がない場合、<object type name>は、オブジェクトタイプ名の単数形ラベルに "S" を結合しただけのものになります)。

このビューに対するクエリは、オブジェクト内の各レコードに対して1行を返し、オブジェクトの各プロパティーは個別の列として利用できます。

HubSpot(つまり非カスタム)のオブジェクトタイプの一覧と、それらが表すデータの簡単な説明、および対応するビューは以下のとおりです。

 

HubSpot オブジェクトタイプ

ObjectTypeId

説明

コンタクト

0-1

あなたのビジネスに関わる個人に関する情報

会社名

0-2

個々の企業・団体に関する情報

取引

0-3

コンタクトや会社との収益機会に関する詳細。 

ENGAGEMENT

0-4

メモ、タスク、Eメール、ミーティング、コールなど、CRMのアクションからのデータを保存します。

チケット

0-5

お客さまからのヘルプやサポートの依頼を代行する。

見積もり

0-14

購入希望者と価格情報を共有するために使用します。

フォーム送信

0-15

HubSpotのフォームに対する個別投稿の詳細です。

LINE_ITEM

0-8

取引で販売される製品のサブセットを表す。製品は取引に紐付けられると、商品項目になります。

コミュニケーション

0-11

複数のチャンネルからの受信メッセージの詳細。

LANDING_PAGE

0-25

ランディングページの詳細

 タスク

0-27

ToDoリストに関する情報を格納

フォーム

0-28

訪問者やコンタクトのリード情報を収集するために使用します。

マーケティングメール

0-29

Marketing Hub からのメールに関する詳細

AD_ACCOUNT

0-30

Linkedin、Facebook、Googleの広告アカウントに関する情報を保存します。

AD_CAMPAIGN

0-31

広告キャンペーンの詳細です。広告キャンペーンには、1つまたは複数の広告を含めることができます。

AD_GROUP

0-32

広告キャンペーン内の広告の論理的なグループ化

AD

0-33

個別広告の詳細

キャンペーン

0-35

関連するマーケティング資産やコンテンツの情報により、集合的なマーケティング活動の効果を容易に測定することができます。

SITE_PAGE

0-38

ウェブサイト内の個別ページに関するデータ

ブログ_投稿

0-39

ブログ記事に関するデータ

オブジェクトリスト

0-45

オブジェクトレコードのプロパティーまたはアクティビティーに基づくグループ化に関する情報

CALL

0-48

他のCRMレコードによる通話(例:コンタクト

請求書

0-53

請求書の管理および外部会計システムとの同期

MEDIA_BRIDGE

0-57

HubSpotにインポートされたメディアアセットの情報

シーケンス

0-58

シーケンスとは、コンタクトを長期的に育成するための、ターゲットを絞った一連のメールテンプレートのことです。

DEAL_SPLIT

0-72

取引分割は、複数のユーザー間で取引クレジットを共有するために使用されます。

セールス・ドキュメント

0-83

セールスドキュメントは、チーム全体でコンテンツのライブラリーを構築し、コンタクトとドキュメントをアップロードして共有することができます。

フィードバック投稿

0-19

フィードバックアンケートに投稿された情報を保存します。

サブスクリプション

0-69

定期的な支払いの詳細が含まれています。

コマースペイメント

0-101

お客さまからお預かりした資金のデータが含まれます



各データベースオブジェクトは、以下の列を返す。

列名

タイプ

説明

OBJECTTYPEID

Varchar

オブジェクトタイプのID(例:コンタクトの場合は「0-1」)。

OBJECTID

数値

レコードのID (例:IDが「123752」のコンタクトレコード)。

UPDATEDAT

タイムスタンプ

このオブジェクトがHubSpotで最後に更新された日付と時刻。 

INGESTEDAT

タイムスタンプ

データが最後にSnowflakeにインジェストされた日時。 

PROPERTY_*

Varchar

オブジェクトのプロパティーの最新バージョンを含む個々の列。(property_definitionsで指定されている)日付または数値のタイプを持つ各オブジェクトプロパティーに対して、2つの列が存在します: 

  1. プロパティー値を文字列として含む列。列名はproperty_unparsed_[name]となります。例えば、DEALオブジェクトのプロパティーであるdeal_amountは、property_unparsed_deal_amount列を持つことになります。
  2. ネイティブ型に変換された値を含む列。例えば、DEALオブジェクトのプロパティーであるdeal_amountは、property_deal_amountという列を持つことになります。無効なデータのためにネイティブ型への変換に失敗した場合、この列にはNULLが含まれることに注意。

例1


全てのコンタクトの名、姓、ライフサイクルステージを取得します。

クエリーを実行します。


SELECT objectId, property_firstname AS firstname, property_lastname AS lastname,property_lifecyclestage AS lifecyclestage

FROM objects_contact

リターンです。

OBJECTID

FIRSTNAME

LASTNAME

LIFECYCLESTAGE

54325098

Hobbes

Baron

lead

96805401

Milo

Gold

lead

6922028

Henry

Riley

lead

例2

 

最大3つの案件の案件名とステージを取得します。

クエリーを実行します。


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals

LIMIT 3

戻り値:

OBJECTID

プロパティー取引ネーム

property_dealstage

property_dealamount

38960439

案件名 1

閉所恐怖症

34199

321740651

テスト取引 123

14845019

8383663

98392101

ポップアップキャノピー

閉所恐怖症

9309007

 

例3

 

金額上位3件の案件名とステージを取得する。

クエリー:

取引金額データは数値データ型として利用できるため、変換やキャストを行うことなく、順序付けに利用することができる。


SELECT objectId, property_dealName, property_dealStage,
property_amount AS dealAmount

FROM objects_deals
ORDER BY property_amount DESC
LIMIT 3


戻り値:

OBJECTID

プロパティー取引ネーム

property_dealstage

property_dealamount

98392101

ポップアップキャノピー

閉所恐怖症

9309007

321740651

テスト取引 123

14845019

8383663

38960439

案件名 1

閉所恐怖症

34199

object_with_object_properties

このデータベースオブジェクトには、HubSpotのレコードのデータが含まれています。このデータベースオブジェクトへの問い合わせは、オブジェクトタイプ内の各レコードに対して1行を返します(例:contactsオブジェクトタイプ内の全てのcontactレコード)。全てのプロパティーは、Snowflake Variant / JSON列であるProperties列に格納されます。 

このビューでは、以下の列が返されます。

列名 タイプ 説明
OBJECTTYPEID Varchar オブジェクトタイプのID(例:コンタクトは0-1 ).
OBJECTID 数値 レコードのID(例えば、コンタクトレコードのIDが123752 ).
PROPERTIES バリエーション レコードのプロパティーの値。
UPDATEDAT タイムスタンプ HubSpotでのレコードの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

ご注意:2022年1月25日、object_with_object_propertiesテーブルおよびビューのtimestampという列は、HubSpotでオブジェクトレコードが最後に更新された日時を表し、updateatになります。これは、残りのデータ共有で、datetime データがどのように表現されているかを合わせるためです。

これは画期的な変更であるため、新しい列 updatedatがテーブルとビューに追加されまし た。今後90日間、この2つの新しい列は、置き換えようとしている列であるtimestampと共存することになる。

90日後の2022年1月25日に、テーブルとビューから列のタイムスタンプが削除されます。この日付以降、タイムスタンプ列を使用してobject_with_object_propertiesテーブルまたはビューを照会しようとすると、失敗します。

例1

すべてのコンタクトとそのプロパティーを取得します。

クエリー:


SELECT objectTypeId, objectId, properties
FROM object_with_object_properties
WHERE objectTypeId = '0-1'


戻り値:

OBJECTTYPEID OBJECTID PROPERTIES
0-1 38960439 {"createdate": "1504656970152"... }
0-1 321740651 { "createdate": "1590183081949"... } 
0-1 98392101 { "createdate": "1533566477279"... }
... ... ...

2

最大3つの取引の取引名とステージを取得します。

クエリー:


SELECT

objectId,
properties:dealname::string AS dealname,
properties:dealstage::string AS dealstage,
properties:amount::number AS dealamount
FROM object_with_object_properties
WHERE objectTypeId = '0-3'
LIMIT 3;


戻り値:

OBJECTID DEALNAME DEALSTAGE DEALAMOUNT
38960439 Deal name 1 クローズド・ロスト 7488939
321740651 Deal name 1 閉所恐怖症 9292029
98392101 Deal name 1 クローズド・ロスト 62626528

objects

このデータベースオブジェクトは、object_with_object_properties データベースオブジェクトのデータのサブセットである。返される各行には、各レコードのオブジェクトIDが含まれています。このデータベースオブジェクトは、既存のレコードのみを返します。HubSpotでレコードが削除されると、このデータベースオブジェクトから削除されます。このデータベースオブジェクトは、object_with_object_propertiesテーブルのデータのサブセットである。返される各行には、各レコードのオブジェクトIDが含まれています。このビューでは、既存のレコードのみが返されます。HubSpotでレコードが削除されると、そのレコードはこのビューから除去されます。 

このデータベースオブジェクトは、アカウントに大量のデータがあり、object_with_object_propertiesやobject_xビューのパフォーマンスが低下している場合に有効でしょう。このデータベース・オブジェクトを object_properties データベース・オブジェクトと一緒に使うことで、 object_with_object_properties のデータを複製しつつ、どのプロパティーが返されるかを 制御することが可能になります。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTTYPEID Varchar オブジェクトタイプのID(例:コンタクトは0-1 ).
OBJECTID 数値 レコードのID(例えば、コンタクトレコードのIDが123752 ).
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。列のデータ型について詳細をご確認ください。

例1

すべてのコンタクトレコードを取得します。

クエリー:


SELECT objectTypeId, objectId
FROM objects
WHERE objectTypeId = '0-1'


戻り値:

OBJECTTYPEID OBJECTID
0-1 36721864
0-1 103580363
0-1 56047670
... ...

object_properties

このデータベースオブジェクトはobject_with_object_propertiesデータベースオブジェクトのサブセットである。各行には、与えられたレコードに設定されている現在のプロパティー値が含まれています。例えば、コンタクトの場合は「First name」プロパティーと「Last name」プロパティーに対してそれぞれ1行ずつがあります。レコードがプロパティーの値を持っていない場合、その行は空の文字列で表示されるか、まったく表示されません。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTTYPEID Varchar オブジェクトタイプのID(例:コンタクトは0-1 ).
OBJECTID 数値 レコードのID(例えば、コンタクトレコードのIDが123752 ).
NAME Varchar プロパティーの名前。
VALUE タイムスタンプ プロパティーの値。
UPDATEDAT タイムスタンプ HubSpotでのレコードの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

すべてのコンタクトの名前、姓、市町村のプロパティーを取得します。

クエリー:


SELECT objectTypeId, objectId, name, value
FROM object_properties
WHERE objectTypeId = '0-1'
AND name IN ('firstname', 'lastname', 'city')
ORDER BY objectId;


戻り値:

OBJECTTYPEID OBJECTID NAME VALUE
0-1 10401 firstname Brian
0-1 10401 city Dublin
0-1 10401 lastname Gallagher
0-1 23451 firstname Fernando
0-1 23451 lastname Fierro
0-1 25751 firstname Charles
... ... ... ...

例2

すべてのコンタクトの名前、姓、ライフサイクルステージを取得し、結合してコンタクトごとに1行にまとめます。この例では、SQLのPIVOT構文を使用しています。

クエリー:


SELECT objectId, firstname, lastname, lifecyclestage
FROM
(
SELECT objectId, name, value
FROM object_properties
WHERE objectTypeId = '0-1'
AND name IN ('firstname', 'lastname', 'lifecyclestage')
)
PIVOT(MAX(value) FOR name IN ('firstname', 'lastname', 'lifecyclestage')) AS p(objectId, firstname, lastname, lifecyclestage);

 

戻り値:

OBJECTTYPEID OBJECTID FIRSTNAME LASTNAME LIFECYCLESTAGE
0-1 54325098 Hobbes Baron lead
0-1 96805401 Milo Gold lead
0-1 6922028 Henry Riley lead
... ... ... ... ...

object_properties_history

このデータベースオブジェクトは、過去のプロパティー値を含む。コンタクトの場合、最新の45個の値が含まれています。その他のすべてのオブジェクトでは、最新の20個の値が含まれています。過去のプロパティー値ごとに1行ずつ表示されます。プロパティーの現在の値は、プロパティーの履歴における最新の「UPDATEDAT」タイムスタンプによって決まります。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTTYPEID Varchar オブジェクトタイプのID(例:コンタクトは0-1 ).
OBJECTID 数値 レコードのID(例えば、コンタクトレコードのIDが123752 ).
NAME Varchar プロパティーの名前。
VALUE タイムスタンプ プロパティーの値。
UPDATEDAT タイムスタンプ HubSpotでのデータの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

1つのコンタクトの1つのプロパティーの履歴を取得します。

クエリー:


SELECT objectId, name, value, updatedAt
FROM object_properties_history
WHERE objectTypeId = '0-1'
AND objectId = 136493192
AND name = 'hs_predictivescoringtier'
ORDER BY UPDATEDAT DESC;

 
戻り値:

OBJECTID NAME VALUE UPDAT

136493192

hs_predictivescoringtier

ティア1

2022-06-22 22:45:05.931

136493192

hs_predictivescoringtier

tier_2

2021-09-18 08:20:56.622

136493192

hs_predictivescoringtier

tier_3

2019-11-31 18:20:22.851

...

...

...

...

例2

ライフサイクルステージが「登録読者」であったことがあるすべてのコンタクトの現在の名前を取得します。

クエリー:


SELECT
objectId,
properties:firstname::string AS firstname,
properties:lastname::string AS lastname
FROM object_with_object_properties
WHERE object_with_object_properties.objectTypeId = '0-1'
AND objectId IN (
SELECT objectId
FROM object_properties_history
WHEREobject_properties_history.objectTypeId = '0-1'
AND object_properties_history.name = 'lifecyclestage'
AND object_properties_history.value = 'subscriber'
);


戻り値:

OBJECTID FIRSTNAME LASTNAME
54325098 Hobbes Baron
96805401 Milo Gold
6922028 Henry Riley
... ... ...

関連付けのクエリー

オブジェクトデータと同様に、関連付けデータも2つの方法で整理される。

  • 個別です。各関連付けタイプは独自のビューに保存され、そのタイプのレコードのみが含まれます。例えば、associations_contacts_to_dealsには、コンタクトオブジェクトと取引オブジェクトの間の関連レコードのみが格納されます。これにより、問い合わせの際にassociationtypeidを指定する必要がなくなります。これらのビューは、CRMのデータモデルに精通している必要がないため、問い合わせが非常に簡単です。また、objects_xビューとの結合で簡単に使用できるように、2つのオブジェクト間の関連レコードの拡張された説明を返します。クエリーが遅くならない限り、これらのビューを使用して関連データを取得することをお勧めします。詳しくは下記のassociations_x_to_y viewsをご覧ください。 
  • 結合される。すべての関連付けタイプのすべてのレコードが1つのデータベースオブジェクトに結合されます。したがって、問い合わせの際には、「WHERE combinedassociationtypeid='0-32' 」のようなフィルターを指定する必要があるのです。詳しくは、下記のassociationとassociation_definitionsをご覧ください。

associations_x_to_y views

各関連付けのタイプは、associations_ <association type name>(例:associations_contacts_to_deals)とラベル付けされた独自のビューを持っています。各ビューは、associationデータベースオブジェクトのデータのサブセットであり、特定のcombinedassociationtypeidのレコードのみを含んでいます。

各データベースオブジェクトは、以下の列を返す。

列名

タイプ

説明

COMBINEDASSOCIATIONTYPEID

Varchar

関連付け定義の固有ID。

関連付けカテゴリー

Varchar

関連付けタイプのソース。のいずれかです。hubspot_defined, user_defined, integrator_defined のいずれか。

関連付けタイプID

Varchar

特定の関連付けカテゴリー内の関連付け定義の固有のID、すなわち、関連付けカテゴリー内の2つの定義が同じassociationtypeidを持つことはありません。 

FROMOBJECTTYPEID

Varchar

関連付け定義のソースとなるオブジェクトタイプID。

フロムオブジェクトタイプ

Varchar

関連付け定義のソースとなるオブジェクトタイプの名前です。

TOOBJECTTYPEID

Varchar

関連付けの定義の宛先となるオブジェクトタイプ ID。

TOOBJECTTYPE

Varchar

関連付けの定義の宛先となるオブジェクトタイプの名前です。

NAME

Varchar

関連付け定義の名前。

LABEL

Varchar

関連付け定義の説明です。

ISMAINASSOCIATIONDEFINITION

ブール値

関連付け定義がメインタイプであるかどうか。trueの場合、HubSpotが関連するレコードに表示する定義となります。

[FROMOBJECTTYPE_OBJECTID] 例:ASSOCIATIONS_CONTACTS_TO_DEALSビューの場合、これはCONTACT_OBJECTIDになります。

数値

ソースオブジェクトのオブジェクトID。

[TOOBJECTTYPE_OBJECTID] 例えば、ASSOCIATIONS_CONTACTS_TO_DEALSビューでは、これはDEAL_OBJECTIDになります。

数値

デスティネーションオブジェクトのオブジェクトID。

INGESTEDAT

タイムスタンプ

データが最後にSnowflakeにインジェストされた日時。

例1

 

特定のコンタクトに関連付けされたすべての取引を取得します。

クエリー:


SELECT
contact_objectId, deal_objectId

FROM associations_contacts_to_deals

WHERE contactId = 6626541373

 

リターンです。

contact_objectid

DEAL_OBJECTID

6626541373

233620335

6626541373

90253678

例2

 

ボゴタのタイムゾーンにある全てのコンタクトとその案件を取得します。


SELECT contacts.property_firstname contact_firstname,

contacts.property_lastname contact_lastname,
contacts.property_email contact_email,
deals.property_dealtype deal_type, deals.property_amount deal_amount
FROM objects_contacts contacts
JOIN associations_contacts_to_deals assoc on
assoc.contact_objectid=contacts.objectid
JOIN objects_deals deals on deals.objectid=assoc.deal_objectid
where contacts.property_hs_timezone='america_slash_bogota'.

 

CONTACT_FIRSTNAME

CONTACT_LASTNAME

コンタクトEMAIL

DEAL_TYPE

DEAL_AMOUNT

デビッド

マガルハイス

dmagalhaes@example.com

ニュービジネス

74848

Fernanda

ロドリゲス

fmoreira@example.com

ニュービジネス

253530

例3

 

全コンタクトと各コンタクトの成約金額の合計を取得します。


SELECT SUM(deals.property_hs_closed_amount) AS
total_closed_amount, contacts.property_email contact_email
FROM objects_contacts contacts
JOIN associations_contacts_to_deals assoc on
assoc.contact_jectid=contacts objectid JOIN objects_deals on assoc.contact_email JOIN objects_contacts_to_deals on as assoc.contact_email contact_objectid=contacts.objectid
、JOIN objects_deals deals on deals.objectid=assoc.deal_objectid
、GROUP BY contact_email
、ORDER BY total_closed_amount DESC。

 

戻り値:

総閉鎖量

コンタクトEMAIL

98474793

johndoe@riverview.com

849488

sallymae@longford.com

association_definitions

このデータベースオブジェクトには、HubSpotオブジェクト間で利用可能なすべての関連タイプに関する情報が含まれており、関連タイプごとに1行ずつあります。このデータベースオブジェクトとassociationsデータベースオブジェクトを結合して、レコード固有の関連情報を取得することができます。

同じオブジェクトの間に複数のタイプの関連付けを設定できます。メインの関連付けタイプは、レコードが関連付けされたときにHubSpotに表示されるタイプで、以下のような関連付けを使用します。ISMAINASSOCIATIONDEFINITIONですtrue .

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
COMBINEDASSOCIATIONTYPEID Varchar 関連付け定義の固有ID。
CATEGORY Varchar 関連付けタイプのソース。の1つです:HUBSPOT_DEFINED , USER_DEFINED , INTEGRATOR_DEFINED
ID 数値 そのカテゴリー内の関連付け定義の識別子。
FROMOBJECTTYPEID Varchar 関連付け定義のソースであるオブジェクトのID。
TOOBJECTTYPEID Varchar 関連付け定義の宛先であるオブジェクトのID。
NAME Varchar 関連付け定義の名前。
LABEL Varchar 関連付け定義のラベル。
ISMAINASSOCIATIONDEFINITION ブール値 関連付け定義がメインタイプであるかどうか。trueの場合、この定義はHubSpotで関連付けられているレコードに表示される定義です。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。列のデータ型について詳細をご確認ください。

例1 

アカウントで利用可能な関連付けのタイプを取得します。

クエリー:


SELECT combinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, name
FROM association_definitions
ORDER BY category, id

 
戻り値:

COMBINEDASSOCIATIONTYPE FROMOBJECTTYPEID TOOBJECTTYPEID NAME
0-1 0-1 0-2 CONTACT_TO_COMPANY
0-2 0-2 0-1 COMPANY_TO_CONTACT
0-3 0-3 0-1 DEAL_TO_CONTACT
0-4 0-1 0-3 CONTACT_TO_DEAL
0-5 0-3 0-2 DEAL_TO_COMPANY
... ... ... ...

例2

取引と会社の間で利用可能な関連付けタイプを取得します。

クエリー:


SELECTcombinedAssociationTypeId, fromObjectTypeId, toObjectTypeId, name
FROM association_definitions
WHERE fromObjectTypeId = '0-3' AND toObjectTypeId = '0-2'
AND isMainAssociationDefinition = true

ORDER BY category, id


戻り値:

COMBINEDASSOCIATIONTYPE FROMOBJECTTYPEID TOOBJECTTYPEID NAME
0-5 0-3 0-2 DEAL_TO_COMPANY
0-271 0-3 0-2 DEAL_TO_PRIMARY_COMPANY
0-341 0-3 0-2 DEAL_TO_COMAPNY_UNLABELED

associations

このデータベースオブジェクトは、特定のレコード間の関連付けに関する情報を含んでいます。各行は、オブジェクト間の関連付けを表します。参照されたレコードが削除されても、このデータベースオブジェクトに行が存在する場合があります。レコードが存在しているかどうかは、objectsテーブルと結合することで確認できます。

このデータベースオブジェクトは、アカウントに大量のデータがあり、associations_x_to_yビューのパフォーマンスが低下している場合に有効です。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
COMBINEDASSOCIATIONTYPEID Varchar 関連付け定義の固有ID。
FROMOBJECTID 数値 ソースオブジェクトのID。
TOOBJECTID 数値 ターゲットオブジェクトのID。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。列のデータ型について詳細をご確認ください。

例1

関連付けられている取引とコンタクトをすべて取得します。

クエリー:


SELECT combinedAssociationTypeId, fromObjectId, toObjectId
FROM associations
WHERE combinedAssociationTypeId = '0-5'

 
戻り値:

結合関連付けタイプID FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335
0-5 6616436082 3866015468
0-5 6690805943 7132752747
... ... ...

例2 

特定のコンタクト(コンタクトID:「3005」)に関連付けられているチケットをすべて取得します。

クエリー:


SELECT combinedAssociationTypeId, fromObjectId, toObjectId
FROM associations
WHERE associationCategory = 'HUBSPOT_DEFINED'
AND combinedAssociationTypeId = '0-15'
AND fromObjectId = 3005;


戻り値:

COMBINEDASSOCIATIONTYPE FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335

例3 

特定のコンタクト(コンタクトID:「4464」)に関連付けられている取引をすべて取得します。この例では「combinedAssociationTypeId」をハードコーディングする代わりに、association_definitionsと結合しています。

クエリー:


SELECT combinedAssociationTypeId, fromObjectId toObjectId,
FROM associations
WHERE
combinedAssociationTypeId = (
SELECT combinedAssociationTypeId
FROM association_definitions
WHERE fromObjectTypeId = '0-1'
AND toObjectTypeId = '0-3'
AND isMainAssociationDefinition)
AND fromObjectId = 4464;


戻り値:

結合関連付けタイプID FROMOBJECTID TOOBJECTID
0-5 6626541373 233620335

担当者からの問い合わせ

owners

このデータベースオブジェクトには、HubSpot アカウントのユーザーに関する情報が含まれています。ユーザーはレコード所有者として設定できます。ユーザーには、そのコンテキストに応じてユーザーIDと所有者IDの両方が含まれます。どちらのIDも同じユーザーを識別するために使用できます。 

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OWNERID 数値 ユーザーの所有者ID。
USERID 数値 ユーザーのユーザーID。この列が「NULL」のユーザーは削除されています。
EMAIL Varchar ユーザーのEメールアドレス。
FIRSTNAME Varchar ユーザーの名前。
LASTNAME Varchar ユーザーの姓。
ARCHIVED ブール値 ユーザーが削除されているかどうか。
CREATEDAT タイムスタンプ HubSpotでのユーザーの作成日時。詳細については、列のデータ型を参照してください。
UPDATEDAT タイムスタンプ HubSpotでのユーザーの最終更新日時。詳細については、列のデータ型を参照してください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。

例1 

すべてのユーザーを取得します。のことです。WHERE archived = falseフィルターは、返されたデータから削除されたユーザーを削除します。

クエリー:


SELECT ownerId, userId, email, firstname, lastname
FROM owners
WHERE archived = false

 
戻り値:

OWNERID ユーザーID EMAIL FIRSTNAME LASTNAME
29584574 4621126 233620335 Hobbes Baron
30532717 4874784 3866015468 Pablo Walters
30580321 925511 7132752747 Milo Gold
... ... ... ... ...

例2

所有者IDで特定の所有者を取得します。

クエリー:


SELECT ownerId, userId, email, firstname, lastname
FROM owners
WHERE ownerId = 29584574;


戻り値:

OWNERID ユーザーID EMAIL FIRSTNAME LASTNAME
29584574 4621126 233620335 Hobbes Baron

例3

すべてのコンタクトとその担当者を取得します。このクエリーは、object_with_object_propertiesとコンタクトプロパティー「hubspot_owner_id」を使用して担当者にレコードを結合します。


SELECT
contact.objectId contactid,
contact.property_firstname contact_firstname,
contact.property_lastname contact_lastname,
contact.property_hubspot_owner_id contact_hubspot_owner_id,
owner.firstname owner_firstname,
owner.lastname owner_lastname,
owner.email owner_email
FROM objects_contacts contact

JOIN owners owner ON contact.property_hubspot_owner_id = owner.ownerId


戻り値:

CONTACTID CONTACT_FIRSTNAME CONTACT_LASTNAME CONTACT_HUBSPOT_OWNER_ID OWNER_FIRSTNAME OWNER_LASTNAME OWNER_EMAIL
113834202 リチャード Greenfield 29584574 Hobbes Baron hobbes.b@business.com
53540801 フォード Karl 30241125 Milo Gold milo.g@business.com
... ... ... ... ... ... ...

チームへの問い合わせ

チーム

HubSpotのチームを使用して、組織の目的やレポートの目的に合わせてユーザーをグループに分けることができます。メインチームと追加チームを設定できます。

このデータベースオブジェクトには、HubSpotアカウントのチームに関する情報が含まれています。 

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
TEAMID 数値 チームIDです。
TEAMNAME Varchar チーム名です。
PARENTTEAMID 数値 親チームのチームID。
CHILDTEAMIDS 配列 子チームのチームID。
PRIMARYOWNERMEMBERS Varchar チームのプライマリーメンバーの担当者ID。
SECONDARYOWNERMEMBERS ブール値 チームのセカンダリーメンバーの担当者ID。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

全てのチームを取得します。

クエリー:

SELECT teamId,teamName, primaryOwnerMembers

FROM teams

戻り値:

TEAMID TEAMNAME PRIMARYOWNERMEMBERS
29584574 サブチーム [233620335, 1234553]
30532717 Super Team [3866015468, 126221873]
3058032 A Team [7132752747]

owner_team

このデータベースオブジェクトには、担当者とHubSpotアカウントのチームの対応付けに関する情報が含まれています。 

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
TEAMID 数値 チームIDです。
OWNERID 数値 ユーザーの所有者ID。 
ISTEAMPRIMARY ブール値 このチームが、この担当者のプライマリーチームであるかどうか。
INGESTEDAT タイムスタンプ データが最後にSnowflakeに取り込まれた日時。

例1

指定したチームのすべての担当者を取得します。

クエリー:

SELECT teamId, ownerId, isTeamPrimary
FROM teams
WHERE teamId = 29584574

返されるデータ

TEAMID TEAMNAME ISTEAMPRIMARY
29584574 233620335 TRUE
29584574 1234553 TRUE 

パイプラインのクエリー

以下では、取引とチケットのパイプラインのデータ(アカウントで利用可能なパイプラインとそのステージなど)を照会する方法を説明します。

このデータをオブジェクトデータと結合することで、パイプラインの全体像を把握できます。例えば、objects_deals_view やobject_with_object_propertiesデータとpipelinesデータを結合することで、取引とそのパイプラインを照会することができます。

pipelines

このデータベースオブジェクトは、アカウント内の取引およびチケットパイプラインに関する情報を含んでいます。返される各行はそれぞれ1つのパイプラインを表しています。

このテーブルでは、以下の列が返されます。

列名 タイプ 説明
PIPELINEID Varchar パイプラインのID。
OBJECTTYPEID Varchar パイプラインに含めることができるオブジェクト(取引やチケットなど)のID。
LABEL Varchar HubSpotでのパイプラインの名前。
DISPLAYORDER 数値 HubSpotでパイプラインが表示される順序。
ARCHIVED ブール値 パイプラインが削除されているかどうか。
CREATEDAT タイムスタンプ パイプラインの作成日時。
UPDATEDAT タイムスタンプ HubSpotでのデータの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

利用可能なすべての取引パイプラインを、HubSpotでの順序で取得します。

クエリー:


SELECT objectTypeId, pipelineId, label
FROM pipelines
WHERE objectTypeId = '0-3'
AND not archived
ORDER BY displayorder;

 
戻り値:

OBJECTTYPEID PIPELINEID LABEL
0-3 1bed503c-37f7-4f51-9d40-7598902673f4 Sales Pipeline
0-3 12659678 Licenses Pipeline
0-3 75e28846-ad0d-4be2-a027-5e1da6590b98 New Business
... ... ...

例2

特定のパイプライン内の取引を取得します。object_with_object_propertiespipelinesを結合します。

クエリー:


SELECT

deals.objectId deal_id,
deals.property_dealname deal_name,
pipelines.label pipeline_name
FROM objects_deals deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.property_pipeline = pipelines.pipelineid
WHERE pipelines.objectTypeId = '0-3';


戻り値:

DEAL_ID DEAL_NAME PIPELINE_NAME
605140072 Meowmix Global Signup Sales Pipeline
605457408 Friskies Rebrand Sales Pipeline
604362473 Fresh Step App Build Sales Pipeline

 

例3

 

上記例2と同様に、特定のパイプライン内の案件を取得する。しかし、joinでobjects_dealsを使用する代わりに、object_with_object_propertiesを使用する。


SELECT
deals.objectId deal_id,
deals.properties:dealname::varchar deal_name,
pipelines.label pipeline_name
FROM object_with_object_properties deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.properties:pipeline::string = pipelines.pipelineid
WHERE deals.objecttypeId = '0-3'
AND pipelines.objectTypeId = '0-3';

 

戻り値: 

DEAL_ID

DEAL_NAME

PIPELINE_NAME

605140072

Meowmix Global Signup

Sales Pipeline

605457408

Friskies Rebrand

Sales Pipeline

604362473

Fresh Step App Build

Sales Pipeline

pipeline_stages

このビューには、パイプライン内の個々のステージに関する情報が含まれています。オブジェクトタイプID、パイプラインID、ステージIDの組み合わせによりステージを識別します。pipelinesとの結合には、オブジェクトタイプIDとパイプラインIDを使用します。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
PIPELINEID Varchar パイプラインのID。
STAGEID Varchar ステージのIDです。
LABEL Varchar HubSpotにおけるステージの名前です。
DISPLAYORDER 数値 HubSpotでパイプラインが表示される順序。
METADATA バリエーション ステージのJSON形式の説明(オープンかクローズかを含む
ARCHIVED ブール値 パイプラインステージが削除されたかどうか。
CREATEDAT タイムスタンプ パイプラインステージが作成されたとき。

例1 

「Sales pipeline」という名前の取引パイプラインのパイプラインステージを取得します。

クエリー:


SELECT pipelineid, stageId, label
FROM pipeline_stages
WHERE not archived
AND pipelineid = (
SELECT pipelineid
FROM pipelines
WHERE objectTypeId = '0-3'
AND not archived
AND label = 'Sales Pipeline' LIMIT 1)
ORDER BY displayorder;

 
戻り値:

PIPELINEID STAGEID LABEL
941650 941651 Contacted
941650 941652 Appt scheduled
941650 941653 Invoice sent
... ... ...

例2

すべての取引とそれぞれのパイプラインステージを取得します。

クエリー:


SELECT

deals.objectId deal_id,
deals.properties:dealname::varchar deal_name,
pipelines.label pipeline_name,
pipeline_stages.label pipeline_stage_name
FROM object_with_object_properties deals
INNER JOIN pipelines
ON deals.objectTypeId = pipelines.objectTypeId
AND deals.properties:pipeline::string = pipelines.pipelineid
INNER JOIN pipeline_stages
ON deals.objectTypeId = pipeline_stages.pipelineid
AND deals.properties:pipeline::string = pipeline_stages.pipelineid
AND deals.properties:dealstage::string = pipeline_stages.stageId
WHERE deals.objecttypeId = '0-3';


戻り値:

DEAL_ID DEAL_NAME PIPELINE_NAME PIPELINE_STAGE_NAME
605140072 Meowmix Global Signup Sales Pipeline Contract sent
605457408 Friskies Rebrand Sales Pipeline Appt scheduled
604362473 Fresh Step App Build Sales Pipeline Contract signed
... ... ... ...

プロパティーに関するお問い合わせ

property_definitions

このデータベースオブジェクトには、HubSpotアカウントのオブジェクトプロパティーとイベントプロパティーに関する情報が含まれています。イベントプロパティーには、メールの開封やクリックなどの標準イベントと、カスタム行動イベントのプロパティーがあります。この情報は、object_propertiesおよびeventsのデータにある値を定義する際に役立ちます。

オブジェクトタイプIDと名前を組み合わせることで、特定のプロパティーを識別できます。同様の情報をproperties APIで取得できます。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTYPEID Varchar イベントに関連するオブジェクトのID。
NAME Varchar プロパティーの内部名。
LABEL Varchar プロパティーのラベル。
DESCRIPTION Varchar プロパティーの説明。
TYPE Varchar プロパティーのタイプ(例:文字列、数値、日時)。
FIELDTYPE Varchar プロパティーのフィールドタイプ。プロパティーがHubSpotとフォームでどのように表示されるかを定義します(例:checkbox、select)。
DISPLAYORDER 数値 プロパティーの表示順。
GROUPNAME Varchar プロパティーのグループ名。
OPTIONS バリエーション 列挙プロパティーの場合は、プロパティーのオプションの配列であり、各オプションの属性(表示順、ラベルなど)が含まれます。
CREATEDUSERID 数値 プロパティーを作成したユーザーのID。
REFERENCEDOBJECTTYPE Varchar プロパティーが参照するオブジェクトのタイプ。所有者のプロパティーの場合は「OWNER」という値が返されます。
CALCULATED ブール値 プロパティーが計算プロパティーであるかどうか
EXTERNALOPTIONS ブール値 プロパティーのオプションが外部システムで定義されているかどうか。
HASUNIQUEVALUE ブール値 プロパティーの値が一意であるかどうか。APIでプロパティーを作成するときにのみ設定できます。
HIDDEN ブール値 プロパティーがHubSpotで非表示であるかどうか。
SHOWCURRENCYSYMBOL ブール値 数値プロパティーの値の形式が通貨であるかどうか。
FORMFIELD ブール値 このプロパティーをフォームで使用できるかどうか。
READONLYDEFINITION ブール値 プロパティーをHubSpotで編集できるかどうか。
READONLYVALUE ブール値 プロパティーの値をHubSpotで編集できるかどうか。
HUBSPOTDEFINED ブール値 プロパティーがHubSpotによって作成されたのか、ユーザーによって作成されたのか。
ARCHIVED ブール値 プロパティーが削除されているかどうか。
CREATEDAT タイムスタンプ HubSpotでのプロパティーの作成日時。
UPDATEDAT タイムスタンプ HubSpotでのデータの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

すべてのコンタクトプロパティーの名前と説明を取得します。

クエリー:


SELECT name, label, description
FROM property_definitions
WHERE objectTypeId = '0-1'

 
戻り値:

NAME LABEL DESCRIPTION
entered_sql_stage Entered SQL stage SQLステージ日のカウントを開始する。
first_conversion_event_name
First Conversion このコンタクトが送信した最初のフォーム。
address Street address コンタクトの住所。

イベントクエリー

イベントには、標準的なHubSpotイベントとカスタム行動イベントがあります。各イベントには、それぞれデータベース・オブジェクトがあり、ラベルは次のようになっています。events_eventname .

名前  
イベント_広告_インタラクション 広告の詳細と、広告をクリックしたりフォームを送信したりして広告とインタラクションしたコンタクト。
イベント_広告_測定指標_インポート_v0

広告の詳細とそのパフォーマンス指標。
イベント_コール_キーワード 通話中に参加者が発言したキーワードの詳細。
イベント_clicked_link_in_email_v2

コンタクトがマーケティングメール内でクリックしたリンク。
イベント_クリックされたリンク_追跡された受信トレイ_メール_v8 コンタクトが「コミュニケーションの受信トレイ」メール内でクリックしたリンク。
イベント_Cookie_バナークリック Cookieをクリックしたコンタクト
イベント_Cookie_バナー_表示数 Cookieを表示したコンタクト
イベント_ドキュメント_共有_v2 外部リンクでコンタクトと共有される営業資料。
イベント_ドキュメント_ビューイング_v2 外部リンクを開いて表示した営業資料やコンタクト。
イベント_ドキュメント_完了_v2 営業文書とそれをクローズしたコンタクト。
イベント_hs_scheduled_email_v2 HubSpotのメールサーバーに送信されるEメール。
イベント_mta_delivered_email_v2 HubSpotのメールサーバーから受信者に正常に配信されたメール。
イベント_mta_bounced_email_v2 受信者のEメールサーバーによって拒否されたEメール配信の試み。
イベント_開封済み_メール_v2 コンタクト別のメール開封数
イベント_報告されたスパムメール_v2 受信者がスパムとして分類したEメール。
イベント_アップデイト_メール_配信登録状況_v2 受信者によるEメール配信登録の変更。
イベント_開封済み_追跡済み_受信トレイ_メール_v8 コミュニケーション受信トレイのメールをコンタクト別に開封。
イベント_mb_media_played コンタクト別の動画再生アクティビティー。
events_v2_contact_booked_meeting_through_sequence コンタクトは、シーケンスを通じてミーティングを予約しました。
イベント_v2_contact_enrolled_in_sequence コンタクトは、順次登録されています。
イベント_v2_contact_finished_sequence シーケンスは終了しました。
イベント_v2_contact_replied_sequence_email シーケンスの送信メール(またはシーケンスの登録を解除した受信メール)に返信した担当者。
イベント_v2_contact_unenrolled_from_sequence シーケンスから登録されていないコンタクト。
イベント_v2_contact_unenrolled_manually_from_sequence ユーザーが手動でコンタクトを登録解除しました。
イベント_v2_contact_unsubscribed_sequence_email コンタクトが配信登録を中止し、シーケンスが登録解除された。
イベント_v2_sequence_email_bounced シーケンスメールがバウンス(不達)になった。
イベント_v2_sequence_errored シーケンスエラーにより登録が解除されました。
events_v2_sequence_step_executed シーケンスステップを実行した。
イベント訪問ページ コンタクト別のウェブサイトページ訪問数。
EVENTS_ <INTEGRATION_EVENT_NAME>_ <UNIQUE_IDENTIFIER> 連携イベント ( Timeline V3 API )

イベントタイプIDとIDを組み合わせることで、イベントを識別できます。返される列はイベントによって異なります。イベントのプロパティーごとに1つの列が返されます。すべてのイベントで返される列を以下に示します。

ご注意ください。HubSpotは、すべてのイベントテーブルとビューに2つの新しい列を追加しました。

  • occurredat
  • occurredatdateint

これらの列は、次のように置き換わります。occuredatoccuredatdateintの列を2022年11月24日に掲載しました。この日付になると、古い列は使用できなくなり、その列を使用してイベントを含むデータベースオブジェクトやビューを照会しようとすると失敗します。Snowflakeデータ共有の変更点についての詳細はこちらをご覧ください。



列名 タイプ 説明
EVENTTYPEID Varchar OBJECTTYPEID に似たイベントタイプの ID
object_and_event_type_definitionsビューを使用して、アカウント内の全てのイベントタイプ ID をクエリーすることができます。
ID Varchar これはイベントの種類ごとにユニークです。あるイベントタイプにおいて、同じIDを持つレコードは2つ存在しない。
OBJECTTYPEID Varchar イベントを完了したオブジェクトのタイプ。例えば、Eメールのリンクをクリックすると、次のように表示されます。0-1を、コンタクトオブジェクトを表すこの列で表現します。
OBJECTID 数値 イベントを完了したレコードのID。
OCCURREDAT タイムスタンプ イベントが発生した時点。

OCCURREDATDATEINT

 

数値 イベントが発生した時点を表す数字。と同じデータを含む。OCCURREDAT列で、数値としてフォーマットされ、テーブルのクラスターキーの一部として使用されます。たいていの場合はOCCURREDATは、この数値の代わりにタイムスタンプを使用します。

OCCUREDATDATEINT

数値

イベントが発生した時点を表す数字。と同じデータを含む。OCCURREDAT列で、数値としてフォーマットされ、テーブルのクラスターキーの一部として使用されます。たいていの場合はOCCURREDATは、この数値の代わりにタイムスタンプを使用します。

注:この列は2022年11月24日に非推奨となり、次のように置き換わります。OCCURREDATDATEINT .

OCCUREDAT タイムスタンプ

イベントが発生した時点。

注:この列は2022年11月24日に非推奨となり、次のように置き換わります。OCCURREDAT .

INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。列のデータ型について詳細をご確認ください。
PROPERTY_* Varchar イベントのプロパティーを含む個々の列。

例1

最新の50件のEメールのクリックイベントを取得します。

クエリー:


SELECT eventTypeId, objectTypeId, objectId, occuredAt, property_hs_click_raw_url AS hs_click_raw_url
FROM events_clicked_link_in_email_V2
ORDER BY occuredAt

LIMIT 50;


戻り値:

EVENTTYPEID OBJECTTYPEID OBJECTID OCCUREDAT HS_CLICK_RAW_URL
4-666288 0-1 45318579 2016-08-04 21:06:43.245 http://website.com?utm_campaign=Launch&utm_source=hs_email&utm_medium=email&utm_content=32520579
4-666288 0-1 80701 2016-08-29 13:31:28.622 https://cta-image-cms2.hubspot.com/ctas/v2/public/cs/ci/?pg=f0f6585a-08fc-4273-8422-49cfaddcf8d8&pid=1976760&ecid=ACsprvtkRbakerw4BiWlaDL7xFAqau1aW9m1_PAqSfQiWarY69X7Ds42zHGYTCfhHJLrXUP86Nxu
4-666288 0-1 26146013 2017-11-30 14:27:11.528 https://hubs.ly/H097a37a?utm_source=hs_email&utm_medium=email&utm_content=58251290
... ... ... ... ...

例2

クリックしたコンタクトのEメールのクリックイベントをすべて取得します。このクエリーは、object_with_object_propertiesと結合することでコンタクトデータを取得します。

クエリー:


SELECT
click.occuredat click_timestamp,
click.property_hs_click_raw_url click_url,
contact.properties:firstname::varchar contact_firstname,
contact.properties:lastname::varchar contact_lastname
FROM events_clicked_link_in_email_V2 click
LEFT JOIN object_with_object_properties contact
ON click.objectTypeId = contact.objectTypeId
AND click.objectId = contact.objectId
LIMIT 3;


戻り値:

CLICK_TIMESTAMP CLICK_URL CONTACT_FIRSTNAME CONTACT_LASTNAME
2019-01-04 22:35:41.264 https://help.website.com/articles/tutorial/how-to-use-email-tool?utm_source=hs_automation&utm_medium=email&utm_content=68042217 Hobbes Baron
2018-11-08 09:37:41.400 https://www.website.net/webinar-case-study?utm_source=hs_automation&utm_medium=email&utm_content=55200164 Milo Gold
2018-11-08 09:37:41.426 https://www.website.net/contact?utm_source=hs_automation&utm_medium=email&utm_content=55200164 Harlow Villari
... ... ... ...

オブジェクトとイベントタイプのクエリ

object_and_event_type_definitions

このデータベースオブジェクトには、HubSpotアカウントで利用可能なすべてのオブジェクトとイベントの定義が含まれています。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTTYPEID Varchar パイプラインに含めることができるオブジェクト(取引やチケットなど)のID。
FULLYQUALIFIEDNAME Varchar オブジェクトまたはイベントの名前。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。列のデータ型について詳細をご確認ください。

例1

HubSpotアカウントで利用可能なすべてのオブジェクトとイベントを取得します。

クエリー:


SELECT objectTypeId, fullyQualifiedName
FROM object_and_event_type_definitions;

 
戻り値:

OBJECTTYPEID FULLYQUALIFIEDNAME
0-1 CONTACT
0-8 LINE_ITEM
0-11 CONVERSATION
... ...

リストクエリ

以下では、利用可能なコンタクトリストと会社リスト、それらのリストに含まれるレコードなど、リストを照会する方法について説明します。

lists

このデータベースオブジェクトには、HubSpotのコンタクトおよび会社リストに関する情報が含まれています。1つのリストにつき1つの行を返します。列にはリストの詳細(リストの名前、サイズ、含まれるレコードのオブジェクトタイプなど)が含まれます。各リスト内の個々のレコードに関する情報は含まれません(list_membershipを参照)。 

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
OBJECTTYPEID Varchar リスト内のレコードのタイプ(例:コンタクト、会社)。
LISTID 数値 リストのID。list-membershipsテーブルの「LISTID」に結合します。
CLASSICLISTID 数値 コンタクトリストに固有のIDで、HubSpotのリストのURLに含まれるIDと一致します。
NAME Varchar リストの名前。
SIZE 数値 リストのレコード数。
CREATEDBYUSERID 数値 リストを作成したユーザーのID。
CREATEDAT タイムスタンプ HubSpotでリストが作成された時点。
UPDATEDBYUSERID 数値 リストを最後に更新したユーザーのID。
UPDATEDAT タイムスタンプ HubSpotでの日付の最終更新日時。列のデータ型について詳細をご確認ください。 
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。

例1

すべてのコンタクトリストを取得します。

クエリー:


SELECT listId, name, size
FROM lists
WHERE objectTypeId = '0-1';

 
戻り値:

LISTID NAME SIZE
118131 Weekly outreach 103
66156 Blog subscribers 455
771852 Top subscribers 2021 37
... ... ...

例2

「Top subscribers 2021」という名前の特定のコンタクトリストを取得します。 

クエリー:


SELECT listId, name, size 
FROM lists
WHERE objectTypeId = '0-1'
AND
listName = 'Top subscribers 2021';


戻り値:

LISTID NAME SIZE
771852 Top subscribers 2021 37

list_membership

このデータベースオブジェクトは、どのレコードがどのリストのメンバーであるかの情報を持ち、リスト内のレコードごとに1行が存在する。例えば、500人のコンタクトを持つ「ブログ」登録読者リストがある場合、データベースオブジェクトは500行を返します。 

含まれるのはリストIDとオブジェクトIDのみです。詳しくは、listsデータベース・オブジェクトと結合してください。

このデータベースオブジェクトは、以下の列を返すことができる。

列名 タイプ 説明
LISTID Varchar リストのID。listsテーブルのHS_LIST_ID列に結合します。
OBJECTID Varchar リスト内のレコードのID。
UPDATEDAT タイムスタンプ HubSpotでのデータの最終更新日時。列のデータ型について詳細をご確認ください。
INGESTEDAT タイムスタンプ データが最後にSnowflakeにインジェストされた日時。 

例1

「Top subscribers 2021」リストに含まれているすべてのコンタクトのIDを取得します。

クエリー:


SELECT objectId
FROM list_memberships
INNER JOIN lists
ON list_memberships.listId = lists.listId
WHERE lists.objectTypeId = '0-1'
AND lists.name = 'Top Subscribers 2021';

 
戻り値:

OBJECTID
54325098
96805401
6922028
...

例2

Top subscribers 2021リストに登録されているコンタクトの詳細の姓と名を取得します。

クエリー:


SELECT

contact.objectId AS objectid,
contact.property_firstname AS firstname,
contact.property_lastname AS lastname
FROM objects_contacts contact
INNER JOIN list_memberships ON contact.objectId = list_memberships.objectId
INNER JOIN lists ON list_memberships.listId = lists.listId
WHERE lists.objectTypeId = '0-1'
AND lists.name = 'Top Subscribers 2021'


戻り値:

OBJECTID

FIRST NAME

LAST NAME

54325098

Hobbes

Baron

96805401

Milo

Gold

6922028

Henry

Riley

...

...

...

よくある質問

HubSpotアプリからレポートと同様のデータを作成したいのですが、どのようにすればよいですか?


一般的には、比較対象のレポートに存在する列を確認することになるでしょう。レポートのグラフ化が表形式でない場合、表に変換すると、レポートに含まれる列が表示されます。これらの列は通常、オブジェクト・タイプまたはイベント・タイプのプロパティーである。次のステップは、列が対応するオブジェクトタイプのプロパティーを把握することです。property_definitionsに問い合わせることで可能です。


SELECT * FROM property_definitions

WHERE label = [column_name]

 

一部のプロパティー名は、通常、アプリ上でより説明的な名前に解決されるため、必ずしも完全に一致しない場合があります。このような場合、property_definitionsのlabel(あるいはdescription)列でLIKE演算子を使ったあいまい検索が有効です。

列がどのオブジェクトタイプに属するかを決定した後、何を問い合わせるかを決定するのは簡単なことです。その型に対応するobject_xビューを検索すればよいのです。

このデータ型を別のデータ型にリンクさせるにはどうすればよいですか(例:キャンペーン用のフォームを取得する方法)?


2つ以上の異なるレコードを互いにリンクさせる必要がある場合は、関連付けをご覧ください。関連付けは、HubSpotのCRM上のさまざまなオブジェクトの間の関係を表します。2つの型の間で可能なすべての異なる関連付けはassociation_definitionsにリストされている。上記の例では、キャンペーンがリンクされている全てのフォームを知るために、ASSOCIATIONS_CAMPAIGNS_TO_FORMSをクエリーする必要があります。


SELECT campaigns.property_hs_name campaign_name,
forms.property_hs_form_id form_id
FROM objects_campaigns campaigns
JOIN associations_campaigns_to_forms assoc ON
assoc.campaign_objectid=campaigns.objectid
JOIN objects_forms forms ON forms.objectid=assoc.form_objectid
GROUP BY campaign_name

HubSpotとSnowflakeの連携状況を知るにはどうすればよいですか?

HubSpotとSnowflakeの連携の障害や問題についてのリアルタイムのステータスアップデートを受け取るには、data_share_statusビューにクエリーします:

SELECT * FROM hubspot.public.data_share_status
LIMIT 1

と表示されます:

STATUS メッセージ UPDAT
よっしゃー ただいまのところ、事件性はありません 2023-04-10 09:21:20.123

このビューでは、連携ステータスの更新を逆時系列で提供します。このクエリーの結果をダッシュボードに連携することで、連携のパフォーマンスを追跡し、ダウンタイムや停止を検出することができます。 

この記事はお役に立ちましたか?
こちらのフォームではドキュメントに関するご意見をご提供ください。HubSpotがご提供しているヘルプはこちらでご確認ください。