HubSpotのデータをPostgreSQLまたはMySQLにエクスポートする
更新日時 2026年10月7日
注: スーパー管理者である場合は、この機能を使用するには、アカウントをデータポータルベータ版 にオプトインしてください。
一部の機能にはHubSpotクレジットが必要 データスタジオ内の単一のデータウェアハウスソースからHubSpot CRMへデータを直接同期しても、HubSpotクレジットは消費されません。同期の前にデータスタジオでデータを準備する場合(たとえば、計算フィールドを作成したり、他のデータソースと結合したりする場合など)、それらの操作には HubSpotクレジットが消費されます。
サマリー
「Data Out」を使用して、選択した HubSpot CRM データを、ご自身が管理する PostgreSQL または MySQL データベースにエクスポートします。オブジェクト、関連付け、およびイベントのデータをデータベース内のテーブルに同期させ、SQL を使用してデータをクエリしたり、ビジネスインテリジェンスやアナリティクスツールで活用したりすることができます。
同期が行われるたびに、選択されたデータの完全なスナップショットが作成されます。同期が成功すると、宛先テーブル内の以前のスナップショットが置き換えられます。
始める前に
要件を理解する
- お使いのアカウントのリージョンに対応するHubSpotのIP範囲から、PostgreSQLまたはMySQLデータベースにアクセスできる必要があります。
- データベースサーバーは、SSL接続に対応している必要があります。
- 必要な権限を持つデータベースユーザーが必要です:
- PostgreSQL:
CREATE対象スキーマに対する権限および書き込みアクセス権。 - MySQL:
CREATEデータベースへのアクセス権と書き込み権限。
- PostgreSQL:
- データベースユーザーがテーブルを作成し、データを書き込めるようにしてください。
- HubSpotアカウントとデータベースコンソールは、それぞれ別のタブで開いたままにしておいてください。
HubSpotのIPアドレスを許可する
アカウントの地域に対応するHubSpotのIP範囲を、データベースサーバーの許可リストに追加してください。
| 地域 | IPアドレス範囲 |
|---|---|
| NA1 | 54.174.62.128/26 |
| EU1 | 143.244.87.0/25 |
| AP1 | 216.157.42.32/27 |
| NA2 | 216.157.40.32/27 |
| NA3 | 216.157.41.32/27 |
制限事項と考慮事項を理解する
- 同期処理が実行されるたびに、選択されたデータの完全なスナップショットが作成されます。
- 同期が正常に完了すると、宛先テーブル内の以前のスナップショットが置き換えられます。
- HubSpotでは、以前のスナップショットは保持されません。
- 同期中にテーブルでエラーが発生した場合、そのテーブルの以前のデータは、次に同期が正常に完了するまで引き続き利用可能です。
- 各オブジェクトタイプ、イベントタイプ、または関連付けのペアは、アカウントごとに1つの定期的なPostgreSQL同期と1つの定期的なMySQL同期に含めることができます。
- 同期が行われるたびに、宛先テーブルの内容が上書きされます。データベースプロバイダに追加されたテーブルレベルの権限や設定は、同期のたびに保持されません。
- 別のデータベースユーザーを使用して再接続する場合は、そのユーザーに、HubSpotが管理する既存のスキーマ、データベース、またはテーブルへのアクセス権を付与する必要があります。
HubSpotをPostgreSQLまたはMySQLに接続する
- HubSpotアカウントで、[その他]をクリックし、[データ管理]>[データスタジオ]に移動します。アカウントに[その他]が表示されない場合は、[データ管理]>[データスタジオ]に直接移動します。
- 右上の「外部データソースを接続」をクリックします。
- [ データソースの追加 ] パネルで、データベースプロバイダーを検索するか、参照して選択します。
- 「PostgreSQL」または「MySQL」をクリックしてください。
- データベース接続情報を入力してください:
- ホスト
- 港湾
- SSL
- ユーザー名
- パスワード
- PostgreSQLの場合は、HubSpotがスキーマを作成するデータベースの名前を入力してください。
- 「PostgreSQL に接続」または「MySQL に接続」をクリックします。
HubSpotは、接続されたデータベースユーザーを使用して、テーブルを作成し、データベースにデータを読み込みます。
同期を設定
- エクスポートするデータソースを選択してください:
- オブジェクト
- 関連付け
- イベント
- 含めるオブジェクト、プロパティー、関連付け、またはイベントを選択してください。
- 同期を実行する頻度と開始タイミングを選択してください。
- 「同期を開始」をクリックしてください。
ベータ版期間中は、利用可能な同期周波数が変動する場合があります。選択肢としては、「1回」、「6時間ごと」、「12時間ごと」、「毎日」、「毎週」、「毎月」などがあります。
エクスポートしたデータにアクセスする
HubSpotは、各宛先ごとにHubSpotが管理するスキーマまたはデータベースを作成します。
PostgreSQL
PostgreSQLのテーブルは、以下の形式を採用しています:
<database>.hubspot_data_out_<destination-id>.<table-name>
例えば、次のような使い方が考えられます。
your_database.hubspot_data_out_456."OBJECT_WITH_OBJECT_PROPERTIES"
your_database.hubspot_data_out_456."EVENTS_VISITED_PAGE"
your_database.hubspot_data_out_456."ASSOCIATIONS_CONTACTS_TO_COMPANIES"
MySQL
MySQLのテーブルは、以下の形式を採用しています:
hubspot_data_out_<destination-id>.<table-name>
例えば、次のような使い方が考えられます。
hubspot_data_out_456.OBJECT_WITH_OBJECT_PROPERTIES
hubspot_data_out_456.EVENTS_VISITED_PAGE
hubspot_data_out_456.ASSOCIATIONS_CONTACTS_TO_COMPANIES
正確なスキーマ名やデータベース名は、同期設定ページで確認できます。
テーブル名と列名
テーブル名および列名は、エクスポートされたデータに基づいています。PostgreSQL の識別子は、最大 63 文字まで含めることができます。MySQL の識別子は、最大 64 文字まで含めることができます。長い名前は、所定の制限内に収まるよう短縮されます。
HubSpot は、引用符で囲まれ、大文字小文字が区別される名前で PostgreSQL のテーブルとカラムを作成します。PostgreSQLでクエリを実行する際は、二重引用符を使用し、テーブル名やカラム名の大文字・小文字の区別を正確に守ってください。
MySQLの場合は、バッククォートを使用し、表示されている大文字小文字の区別を厳守してください。テーブル名の大文字小文字の区別は、MySQLサーバーの設定によって異なる場合があります。
列のタイプ
| エクスポートされた型 | PostgreSQL | MySQL |
|---|---|---|
| 文字列型 | TEXT |
LONGTEXT |
| 数値、32ビット | INTEGER |
INT |
| 数値、64ビット | BIGINT |
BIGINT |
| タイムスタンプ | TIMESTAMP |
DATETIME(6) |
| ブーリアン | BOOLEAN |
TINYINT(1) |
| 小数 | NUMERIC |
DECIMAL |
「PROPERTIESテーブルのOBJECT_WITH_OBJECT_PROPERTIESテーブルの列は、JSON形式の文字列として保存されます。PostgreSQLではTEXT PostgreSQL内ではLONGTEXT MySQLでは、ネイティブなJSONカラム型としてではなく、
オブジェクトテーブル
オブジェクトデータを選択すると、HubSpot は以下のテーブルをエクスポートします。
OBJECT_PROPERTIES
この表には、オブジェクトのプロパティー値ごとに1行ずつ含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
OBJECTTYPEID |
文字列型 | オブジェクトタイプのID。たとえば、連絡先では0-1を使用します。 |
OBJECTID |
数 | レコードのID。 |
NAME |
文字列型 | プロパティー名。 |
VALUE |
文字列型 | プロパティー値。 |
UPDATEDAT |
タイムスタンプ | HubSpot でプロパティーの値が最後に更新された日時。 |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
OBJECT_WITH_OBJECT_PROPERTIES
このテーブルには、各オブジェクトレコードごとに1行が含まれています。選択されたプロパティー値は、PROPERTIES列にグループ化されます。
| 縦棒 | タイプ | 説明 |
|---|---|---|
OBJECTTYPEID |
文字列型 | オブジェクトタイプのID。たとえば、連絡先では0-1を使用します。 |
OBJECTID |
数 | レコードのID。 |
PROPERTIES |
テキスト(JSON) | そのレコードに対して選択されたプロパティー値で、JSON形式の文字列として格納されています。 |
UPDATEDAT |
タイムスタンプ | HubSpotにおいて、レコードの選択されたプロパティーが最後に更新された日時。 |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
このテーブルには、さまざまなオブジェクトタイプのオブジェクトデータがまとめられています。特定のオブジェクトタイプOBJECTTYPEID特定のオブジェクトタイプのレコードを読み取るには。
- お問い合わせ先:
0-1 - カスタムオブジェクト:
2-{unique_id}、例えば2-12345
OBJECT_PROPERTIES_HISTORY
この表には、プロパティー変更履歴が記載されています。プロパティーの過去の値ごとに1行が含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
OBJECTTYPEID |
文字列型 | オブジェクトタイプのID。 |
OBJECTID |
数 | レコードのID。 |
NAME |
文字列型 | プロパティー名。 |
VALUE |
文字列型 | その時点でのプロパティー価値。 |
UPDATEDAT |
タイムスタンプ | HubSpotでその値が設定された日時。 |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
特定のレコードおよびプロパティーの完全な履歴を表示するには、結果をUPDATEDATで並べ替えてください。
関連付けテーブル
関連付けデータを選択すると、HubSpotは関連付けレコードと関連付け定義をエクスポートします。
ASSOCIATIONS
このテーブルには、2つのレコード間の選択された関連付けごとに1行が含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
COMBINEDASSOCIATIONTYPEID |
文字列型 | 関連付け定義の固有ID。 |
ASSOCIATIONCATEGORY |
文字列型 | 関連付けタイプの発生元。値には以下が含まれますHUBSPOT_DEFINED、USER_DEFINED、またはINTEGRATOR_DEFINED。 |
ASSOCIATIONTYPEID |
数 | そのカテゴリ内における関連付け定義の識別子。 |
FROMOBJECTID |
数 | ソースレコードのID。 |
TOOBJECTID |
数 | 宛先レコードのID。 |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
ASSOCIATION_DEFINITIONS
この表には、選択された関連付けの定義ごとに1行ずつ含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
COMBINEDASSOCIATIONTYPEID |
文字列型 | 関連付け定義の固有ID。 |
CATEGORY |
文字列型 | 関連付けタイプの発生元。 |
ID |
数 | そのカテゴリ内における関連付け定義の識別子。 |
FROMOBJECTTYPEID |
文字列型 | ソースオブジェクト型のID。 |
TOOBJECTTYPEID |
文字列型 | 宛先オブジェクト型のID。 |
NAME |
文字列型 | 関連付け定義の名前。 |
LABEL |
文字列型 | 関連付け定義のラベル。 |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
ISMAINASSOCIATIONDEFINITION |
ブーリアン | HubSpot が、この関連付けの定義を、関連付けられたレコード上でプライマリ関連付けとして表示するかどうか。 |
ペアごとの関連付けテーブル
選択された関連付けのペアについて、HubSpotでは以下の形式の表をエクスポートすることも可能です:
ASSOCIATIONS_<FROM_OBJECT_TYPE>_TO_<TO_OBJECT_TYPE>
例えば、次のような使い方が考えられます。
ASSOCIATIONS_CONTACTS_TO_COMPANIES
これらのテーブルには、関連付けレコードおよび関連付け定義のメタデータが含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
COMBINEDASSOCIATIONTYPEID |
文字列型 | 関連付け定義の固有ID。 |
ASSOCIATIONCATEGORY |
文字列型 | 関連付けタイプの発生元。 |
ASSOCIATIONTYPEID |
数 | そのカテゴリ内における関連付け定義の識別子。 |
[FROMOBJECTTYPE]_OBJECTID |
数 | ソースレコードのID。例えば、CONTACT_OBJECTID . |
[TOOBJECTTYPE]_OBJECTID |
数 | 宛先レコードのID。例えば、COMPANY_OBJECTID . |
INGESTEDAT |
タイムスタンプ | データがエクスポート元へ最後に取り込まれた日時。 |
TOOBJECTTYPEID |
文字列型 | 宛先オブジェクト型のID。 |
FROMOBJECTTYPEID |
文字列型 | ソースオブジェクト型のID。 |
NAME |
文字列型 | 関連付け定義の名前。 |
LABEL |
文字列型 | 関連付け定義のラベル。 |
ISMAINASSOCIATIONDEFINITION |
ブーリアン | HubSpot が、この関連付けの定義を、関連付けられたレコード上でプライマリ関連付けとして表示するかどうか。 |
イベントテーブル
イベントデータを選択すると、HubSpotはイベントタイプごとに1つのテーブルをエクスポートします。イベントテーブル名は、以下の形式を使用します:
EVENTS_<EVENT_NAME>
例えば、次のような使い方が考えられます。
EVENTS_VISITED_PAGE
各イベントテーブルには、標準のイベント列と、選択されたイベントプロパティーごとに1つの列が含まれています。
| 縦棒 | タイプ | 説明 |
|---|---|---|
EVENTTYPEID |
文字列型 | イベントタイプのID。 |
ID |
文字列型 | 一意のイベントID。 |
OBJECTTYPEID |
文字列型 | そのイベントに関連付けられているオブジェクトタイプのID。 |
OBJECTID |
数 | そのイベントに関連付けられたレコードのID。 |
INGESTEDAT |
タイムスタンプ | イベントがエクスポートソースに取り込まれた日時。 |
OCCURREDATDATEINT |
数 | イベントの日付をYYYYMMDD形式で指定してください。 |
OCCURREDAT |
タイムスタンプ | そのイベントが発生した日時。 |
PROPERTY_<PROPERTY_NAME> |
文字列型 | 選択されたイベントのプロパティー。たとえば、プロパティー名page_titleエクスポートされたプロパティは、PROPERTY_PAGE_TITLEとしてエクスポートされます。 |
同期状況を監視する
- HubSpotアカウントで、[その他]をクリックし、[データ管理]>[データ連携]に移動します。アカウントに[その他]が表示されない場合は、[データ管理]>[データ連携]に直接移動します。
- 左側の「アプリの同期」をクリックします。
- PostgreSQL または MySQL の同期を検索するか、選択してください。
同期の詳細ページでは、同期ステータス、最終同期日時、エラー、同期のアクティビティー状況、および同期履歴を確認できます。また、同期を一時停止したり、アーカイブしたり、手動で実行したりすることもできます。
同期ステータス
| ステータス | 説明 |
|---|---|
| 同期中 | 現在、同期処理が実行中です。 |
| 同期済み | 前回の同期実行は正常に完了しました。 |
| 失敗 | 前回の同期実行でエラーが発生しました。 |
| アーカイブ済み | 同期設定がアーカイブされたか、削除されました。 |
同期の失敗を解決する
同期に失敗した場合:
- HubSpotのUIには「失敗」というステータスが表示され、どのテーブルが成功し、どのテーブルが失敗したかを示すテーブルレベルの詳細情報が表示されます。
- テーブルは、HubSpotがすべてのデータの読み込みを完了してから初めて更新されます。
- テーブルの同期に失敗した場合、そのテーブルの以前のデータは、次に同期が正常に完了するまでそのまま残ります。
- 次回の予定された同期では、自動的に再度完全同期が試行されます。
- 同期の詳細ページから、手動で同期を実行することができます。
以前の実行で正常に処理されたテーブルは、その後の実行でエラーが発生しても変更されません。
よくある質問
エクスポートしたデータをどのように照会すればよいですか?
SQL を使用して、宛先スキーマまたはデータベース内のテーブルをクエリします。
PostgreSQL
-- Read all contact records
SELECT *
FROM your_database.hubspot_data_out_456."OBJECT_WITH_OBJECT_PROPERTIES"
WHERE "OBJECTTYPEID" = '0-1';
-- Read a property from the PROPERTIES column
SELECT
"OBJECTID",
json_extract_path_text("PROPERTIES"::json, 'email') AS email
FROM your_database.hubspot_data_out_456."OBJECT_WITH_OBJECT_PROPERTIES"
WHERE "OBJECTTYPEID" = '0-1';
MySQL
-- Read all contact records
SELECT *
FROM `hubspot_data_out_456`.`OBJECT_WITH_OBJECT_PROPERTIES`
WHERE `OBJECTTYPEID` = '0-1';
-- Read a property from the PROPERTIES column
SELECT
`OBJECTID`,
JSON_EXTRACT(`PROPERTIES`, '$.email') AS email
FROM `hubspot_data_out_456`.`OBJECT_WITH_OBJECT_PROPERTIES`
WHERE `OBJECTTYPEID` = '0-1';
1つのデータ型を複数の同期でエクスポートすることはできますか?
各オブジェクトタイプ、イベントタイプ、または関連付けのペアは、HubSpotアカウントごとに、PostgreSQLの定期同期1回およびMySQLの定期同期1回に含めることができます。
たとえば、連絡先がすでに定期的なPostgreSQLの保存先にエクスポートされている場合、最初の設定をアーカイブするまでは、別の定期的なPostgreSQLの設定に連絡先を追加することはできません。それでも、連絡先を定期的なMySQL設定に同時にエクスポートすることは可能です。
オブジェクト固有のテーブルはサポートされていますか?
次のようなオブジェクト固有のテーブルOBJECTS_CONTACTS、といったオブジェクト固有のテーブルは、現時点ではサポートされていません。「使用」OBJECT_WITH_OBJECT_PROPERTIESを使用して、OBJECTTYPEIDを使用して、特定のオブジェクトタイプのレコードを取得します。
センシティブデータは対応していますか?
現在、「Data Out」ではセンシティブデータはサポートされていません。機密性の高いプロパティーは、エクスポートの対象から除外される場合があります。
HubSpotは以前のスナップショットを保存していますか?
いいえ。同期が正常に完了するたびに、宛先テーブルは最新のスナップショットで上書きされます。HubSpotでは、以前のスナップショットは保持されません。
同期中にテーブルでエラーが発生した場合、そのテーブルが正常に更新されるまで、以前のデータはそのままで残ります。
HubSpotでは、私が管理するステージング・バケットが使われていますか?
いいえ。HubSpotはデータをParquet形式でエクスポートし、ステージングは内部で管理しています。PostgreSQL や MySQL については、お客様所有のステージング・バケットを用意する必要はありません。
データベースのユーザーを変更するとどうなりますか?
別のデータベースユーザーを使用して再接続する場合は、その新しいユーザーに対して、HubSpotが管理する既存のスキーマ、データベース、またはテーブルへのアクセス権を付与する必要があります。
