HubSpotとAWS S3の接続
更新日時 2025年11月12日
HubSpotとAWS S3を接続して、HubSpotのデータをS3バケットに同期する方法をご紹介します。
注: HubSpotは、HIPAAデータをAWS S3と共有し ません 。
始める前に
連携をセットアップする前に、お客さまの HubSpotアカウントを AWS S3でのHubSpotデータへのアクセスのベータにオプトインする必要があります。
HubSpotとAWS S3の接続
HubSpotとAWS S3を接続するには、以下の手順を順番に実行する必要があります:
- AWS S3バケットのアクセス許可を設定します。
- IAM ポリシーを作成します。
- AWSでIAMロールを作成します。
- HubSpotとAWS S3を接続します。
- S3 バケットオブジェクトにアクセスするための IAM ユーザーアクセス許可を付与します。
1.S3バケットのアクセス権限を設定する
HubSpotがフォルダーとサブフォルダー内のファイルにアクセスするには、AWS S3バケットとフォルダーに以下の権限が必要です:
- s3:GetBucketLocation
- s3:GetObject
- s3:GetObjectVersion
- s3:リストバケット
- s3:PutObject
- s3:DeleteObject
2. IAMポリシーの作成
- AWS Management Console にログインします。
- ホームダッシュボードで、Services > Security, Identity, & Compliance > IAMをクリックする。
- 左サイドバーで、アカウント設定をクリックします。
- Security Token Service (STS)セクションで、AWS アカウントがあるリージョンに対応する AWS リージョンを探します。クリックしてスイッチを切り替えるで地域をアクティブにする。
- 左側のパネルで、Policiesをクリックします。
- ポリシーの作成をクリックします。
- JSONタブで、 Add new statementをクリックする。
- HubSpotは単一のバケットとフォルダーパスを使用してデータをロードまたはアンロードするために必要な権限を与える以下のポリシードキュメントを追加します。PURGE copyオプションを使用してデータファイルをパージすることもできます。
注:
<bucket>と<prefix>を実際のバケット名とフォルダーパスのプレフィックスに置き換えてください。T 政府リージョンのバケットのAmazonリソース名(ARN)は、 arn:aws-us-gov:s3:::プレフィックスを持つ。s3:prefixの条件を ["*"] または ["] のいずれかに設定する。<path>/*"] は、それぞれ指定したバケットまたはバケット内のパスにある全ての接頭辞へのアクセスを許可する。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:GetObjectVersion",
"s3:DeleteObject",
"s3:DeleteObjectVersion"
],
"Resource": "arn:aws:s3:::<bucket>/<prefix>/*"
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::<bucket>",
"Condition": {
"StringLike": {
"s3:prefix": [
"<prefix>/*"
]
}
}
}
]}
- [次へ]をクリックします。
- 確認および作成セクションに、ポリシー名と、オプションで説明を追加します。
- ポリシーの作成をクリックします。
3. AWSでIAM役割を作成する
AWS管理コンソールでHubSpotのアクセス権を設定するには:
- AWS Management Consoleにログインする。
- ホームダッシュボードで、Services > Security, Identity, & Compliance > IAMをクリックする。
- 左サイドバーで、Rolesをクリックする。
- 役割の作成をクリックする。
- Trusted entity typeセクションで、AWS アカウントを選択する。
- (AWS アカウント) セクションで、[Another AWS account] (別の AWS アカウント ) を選択し、自分の AWS アカウント ID を入力します。後で信頼関係を変更して、HubSpotへのアクセス権を付与します。
- Require external IDを選択し、0000のようなプレースホルダー(仮挿入)IDを入力する。後でIAM役割の信頼関係を変更し、ストレージ連携の外部IDを指定する。外部IDは、HubSpotのようなサードパーティーアプリにAWSリソースへのアクセスを許可するために使用されます。

- [次へ]をクリックします。
- ステップ 1 で作成したポリシーを選択し、次へをクリックします。
- 役割の詳細セクションに、役割名および説明を入力し、役割を識別する。
- 役割の作成をクリックする。
- 役割の要約ページで、ARNの値をコピーする。この値は次のステップで使用する。

4. HubSpotとAWS S3の接続
連携をインストールする前に、お客さまのHubSpotアカウントが 「AWS S3でのHubSpotデータへのアクセス 」 ベータ にオプトインされていることを確認してください。- HubSpotアカウントにて、上部のナビゲーションバーに表示されるマーケットプレイスアイコン marketplaceをクリックし、[HubSpotマーケットプレイス]を選択します。
- AWS S3 を検索して選択します。
- [インストール]をクリックします。
- ステップ 3 で設定した IAM ロール名と 、データを保存するバケットの S3 URL パス を入力します。
- [次へ]をクリックします。
- 次のステップで必要になるため、[ AWS IAM User ] と [AWS External ID ] の値を確認してコピーします。次に、「接続されたアプリに進む」をクリックします。
5. IAMユーザーにバケットオブジェクトへのアクセス権限を与える。
- AWS Management Console にログインします。
- ホームダッシュボードで、Services > Security, Identity, & Compliance > IAMをクリックする。
- 左サイドバーで、Rolesをクリックする。
- ステップ3で作成した役割を選択します。
- Trust relationshipsタブを選択し、「編集」 trust policyをクリックする。
- ステップ 3 で記録した値で契約文書を変更します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "AWS": "<hubspot_user_arn>" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "<hubspot_external_id>" } } } ]}
- 上記のポリシーで、以下の2つのフィールドをステップ4で記録した値に変更します:
-
- hubspot_user_arnをSTORAGE_AWS_IAM_USER_ARNの値に変更。
- hubspot_external_idをSTORAGE_AWS_EXTERNAL_IDの値に変更。
上記の手順を完了すると、HubSpotはAWS S3にデータを同期できるようになります。
HubSpotとAWS S3によるデータ同期フォーマット
同期できるデータ
以下のデータをHubSpotからAWS S3に同期できます:
- オブジェクト:標準オブジェクトとカスタムオブジェクト(コンタクト、会社、チケット、製品など)。
- レコード:個々のオブジェクトレコード。
- 関連付け:全ての関連付けタイプと、関連付けられているレコード。
- イベント:標準のHubSpotイベントとカスタム行動イベントの両方に関するイベントデータ。
- セグメント: HubSpotのコンタクトおよび会社のセグメント。
- 担当者:レコード担当者。
- パイプライン:取引パイプラインとチケットパイプラインおよびパイプラインステージ。
- プロパティー:オブジェクトレコードのプロパティーとそれぞれの値(プロパティー履歴を含む)。
各種のオブジェクトデータは、次の2つの方法で整理されて使用可能になります。
- 個別:各オブジェクトタイプがそれぞれに固有のテーブルに格納されます。各テーブルには、同じオブジェクトタイプのレコードのみが含まれます。例えば、
objects_contactsにはコンタクトレコードのみが含まれます。 - 結合:全てのオブジェクトタイプのレコードが1つのデータベースオブジェクトに結合されます。したがって、クエリーを実行するときには、「WHERE objectTypeId='0-1'」のようなフィルターを指定する必要があります。
カスタムオブジェクトには、作成時にIDが割り当てられ、「2-unique_ID」として識別されます。例えば、「2-12345」となります。
objects_xテーブル
利用可能なオブジェクトタイプ(カスタムオブジェクトを含む)ごとに、それぞれ固有のテーブルがあります。これらのテーブルには、OBJECTS_<object type name>の形式で名前が付けられます。ここで、<object type name>はobjecttypeの複数形のラベルです(オブジェクトタイプに複数形がない場合、<object type name>はオブジェクトタイプ名の単数形に「S」を連結したラベルになります)。
下の表に、使用可能なHubSpotオブジェクトタイプの全リストと、各タイプが表すデータの簡単な説明を記載します。その後、それぞれに対応するテーブルについて説明します。
| HubSpotオブジェクトタイプ |
ObjectTypeId |
説明 |
| 0~1 |
貴社と取引している個人に関する情報 |
|
| 0~2 |
個々の企業や組織に関する情報 |
|
| 0~3 |
コンタクトや会社との収益機会に関する詳細 |
|
| 0~4 |
CRMアクション(メモ、タスク、Eメール、ミーティング、コールなど)によるデータが格納されます。 |
|
| 0~5 |
顧客からのサポートリクエストを表します。 |
|
| 0~14 |
購入を検討している見込み客と価格情報を提供するために使用されます。 |
|
| 0~15 |
個別のHubSpotフォーム送信に関する詳細 |
|
| 0~8 |
取引において販売する製品のサブセットを表します。製品は、取引に関連付けられると商品項目になります。 |
|
| 0~11 |
さまざまなチャンネルから受信したメッセージに関する詳細 |
|
| 0~25 |
ランディングページに関する詳細 |
|
| 0~27 |
ToDoリストに関する情報が格納されます。 |
|
| 0~28 |
訪問者やコンタクトのリード情報を収集するために使用されます。 |
|
| 0~29 |
Marketing Hub からのメールに関する詳細 |
|
| AD_ACCOUNT |
0~30 |
Linkedin、Facebook、Googleの広告アカウントに関する情報が格納されます。 |
| 0~31 |
広告キャンペーンに関する詳細。広告キャンペーンには、1つまたは複数の広告が含まれることがあります。 |
|
| AD_GROUP |
0~32 |
広告キャンペーンに含まれている広告の論理的なグループ化 |
| AD |
0~33 |
個々の広告に関する詳細 |
| 0~35 |
関連するマーケティングアセットやコンテンツに関する情報。この情報を基に、全体的なマーケティング活動の有効性を容易に評価できます。 |
|
| SITE_PAGE |
0~38 |
ウェブサイト上の個々のページに関するデータ |
| 0~39 |
ブログ記事に関するデータ |
|
| オブジェクト セグメント |
0~45 |
プロパティーまたはアクティビティーを基準としたオブジェクトレコードのグループ化に関する情報 |
| 0~48 |
他のCRMレコード(例えばコンタクトなど)から発信された通話 |
|
| INVOICE |
0~53 |
請求書を管理し、外部会計システムと同期します。 |
| 0~57 |
HubSpotにインポートされたメディアアセットに関する情報 |
|
| 0~58 |
シーケンスとは、コンタクトを長期的に育成するための、ターゲットを絞った一連のメールテンプレートのことです。 |
|
| 0~72 |
取引分割は、複数のユーザー間で取引クレジットを共有するために使用されます。 |
|
| 0~83 |
チーム全体でセールスドキュメントをアップロードしてコンテンツライブラリーを構築し、コンタクトと共有します。 |
|
| 0~19 |
フィードバックアンケートに対して送信された情報が格納されます。 |
|
| 0~69 |
配信登録には、定期的な支払いの詳細が格納されます。 |
|
| 0~101 |
お客さまからお預かりした資金のデータが格納されます。 |
object_with_object_properties
このテーブルにはHubSpotレコードのデータが格納されます。オブジェクトタイプに含まれるレコードごとに1行を取得できます(例:コンタクト オブジェクト タイプに含まれる全てのコンタクトレコード)。
object_properties_history
このテーブルには過去のプロパティー値が格納されます。コンタクトの場合、直近の45個の値が格納されます。その他全てのオブジェクトでは、直近の20個の値が格納されます。このテーブルには、過去のプロパティー値ごとの行があります。プロパティーの現在の値は、プロパティーの履歴における最新の「UPDATEDAT」タイムスタンプで示されます。
関連付けクエリー
オブジェクトデータと同様に、関連付けデータも2つの方法で整理されます。
- 個別:各関連付けタイプがそれぞれに固有のテーブルに格納されます。各テーブルには、同じ関連付けタイプのレコードのみが含まれます。例えば、
associations_contacts_to_dealsには、コンタクトオブジェクトと取引オブジェクトとの関連付けレコードのみが格納されます。T - 結合:全ての関連付けタイプのレコードが1つのテーブルに結合されます。
associations_x_to_y
関連付けタイプごとに、associations_<association type name>としてラベル付けされた固有のビューがあります(例:associations_contacts_to_deals)。
association_definitions
このテーブルには、HubSpotオブジェクト間で利用可能な全ての関連付けタイプに関する情報が、関連付けタイプごとに1行ずつ表示されます。
property_definitions
この表には、HubSpotアカウントのオブジェクトプロパティーとイベントプロパティーに関する情報が含まれています。イベントプロパティーには、メールの開封やクリックなどの標準イベントと、カスタム行動イベントプロパティーがあります。この情報は、object_propertiesおよびイベントデータにある値を定義する際に役立ちます。
イベント
イベントには、標準のHubSpotイベントとカスタム行動イベントがあります。イベントごとに、events_eventnameとしてラベル付けされた固有のテーブルがあります。
object_and_event_type_definitions
このテーブルには、HubSpotアカウントで使用できる全てのオブジェクトとイベントの定義が格納されます。
同期頻度とデータ構成
データの同期HubSpotとAWS S3間で毎日。データが同期される日ごとにフォルダーが作成されます。以下の各テーブルは、gzip圧縮されたCSVファイルを含むフォルダーとして提供される:
ASSOCIATIONSASSOCIATION_DEFINITIONSEVENTS_[Event name]LISTSLIST_MEMBERSHIPSOBJECTSOBJECT_AND_EVENT_TYPE_DEFINITIONSOBJECT_PROPERTIESOBJECT_PROPERTIES_HISTORYOBJECT_WITH_OBJECT_PROPERTIESOWNERSOWNER_TEAMPIPELINESPIPELINE_STAGESPROPERTY_DEFINITIONSTEAMS
各テーブルにはいくつかのサブフォルダーがある。テーブルのサイズが15MBを超えると、各テーブルフォルダ内に複数のCSVファイルがgzip形式で表示されます。
