HubSpot Baza wiedzy

Połączenie HubSpot i AWS S3 (BETA)

Autor: HubSpot Support | Sep 18, 2024 3:08:56 PM

Dowiedz się, jak połączyć HubSpot i AWS S3, aby zsynchronizować dane HubSpot z zasobnikiem S3.

Połączenie HubSpot i AWS S3

Aby połączyć HubSpot i AWS S3, należy wykonać poniższe kroki w kolejności:

  1. Konfiguracja uprawnień dostępu dla zasobnika AWS S3
  2. Tworzenie zasad IAM
  3. Utwórz rolę IAM w AWS
  4. Połączenie HubSpot i AWS S3
  5. Przyznanie użytkownikowi IAM uprawnień dostępu do obiektów zasobnika S3

1. Skonfiguruj uprawnienia dostępu dla zasobnika S3

HubSpot potrzebuje następujących uprawnień do zasobnika i folderu AWS S3, aby uzyskać dostęp do plików w folderze i podfolderach:

  • s3:GetBucketLocation
  • s3:GetObject
  • s3:GetObjectVersion
  • s3:ListBucket
  • s3:PutObject
  • s3:DeleteObject

2. Utwórz politykę IAM

  • Zaloguj się do konsoli zarządzania AWS.
  • Na głównym pulpicie nawigacyjnym kliknij Usługi > Bezpieczeństwo, tożsamość i zgodność > IAM.
  • Na lewym pasku bocznym kliknij Ustawienia konta.
  • W sekcji Security Token Service (STS) poszukaj regionu AWS, który odpowiada regionowi, w którym znajduje się Twoje konto AWS. Kliknij, aby włączyć przełącznik, aby aktywować region.
  • W panelu po lewej stronie kliknij opcję Zasady.
  • Kliknij przycisk Utwórz politykę.
  • Na karcie JSON kliknij przycisk Dodaj nową instrukcję.
  • Dodaj poniższy dokument zasad, który nada HubSpot uprawnienia potrzebne do ładowania lub rozładowywania danych przy użyciu pojedynczego zasobnika i ścieżki folderu. Możesz także wyczyścić pliki danych za pomocą opcji PURGE copy.

Uwaga:

  • Pamiętaj, aby zastąpić <bucket> i <prefix> rzeczywistą nazwą zasobnika i prefiksem ścieżki folderu.Nazwy zasobów Amazon (ARN) dla wiader w regionach rządowych mają prefiksarn:aws-us-gov:s3:::.
  • Ustawienie warunku s3:prefix na ["*"] lub ["<ścieżka> /*"] zapewnia dostęp do wszystkich prefiksów odpowiednio w określonym zasobniku lub ścieżce w zasobniku.

{
 "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>/*"
 ]
 }
 }
 }
 ]
}

  • Kliknij przycisk Dalej.
  • W sekcji Sprawdź i utwórz dodaj nazwę polityki i opcjonalny opis.
  • Kliknij przycisk Utwórz politykę.

3. Utwórz rolę IAM w AWS

Aby skonfigurować uprawnienia dostępu dla HubSpot w AWS Management Console:

  • Zaloguj się do konsoli zarządzania AWS.
  • Na głównym pulpicie nawigacyjnym kliknij Usługi > Bezpieczeństwo, tożsamość i zgodność > IAM.
  • Na lewym pasku bocznym kliknij Role.
  • Kliknij przycisk Utwórz rolę.
  • W sekcji Typ zaufanego podmiotu wybierz konto AWS.
  • W sekcji An AWS acount wybierz opcję Another AWS account i wprowadź swój własny identyfikator konta AWS. Później zmienisz relację zaufania, aby dać dostęp do HubSpot.
  • Wybierz opcję Wymagaj zewnętrznego identyfikatora i wprowadź identyfikator zastępczy, taki jak 0000. Później zmienisz relację zaufania dla swojej roli IAM i określisz zewnętrzny identyfikator dla integracji pamięci masowej. Zewnętrzny identyfikator służy do przyznawania dostępu do zasobów AWS aplikacji innej firmy, takiej jak HubSpot.

  • Kliknij przycisk Dalej.
  • Wybierz politykę utworzoną w kroku 1 i kliknij przycisk Dalej.
  • W sekcji Szczegóły roli wprowadź Nazwę roli i Opis, aby zidentyfikować rolę.
  • Kliknij przycisk Utwórz rolę.
  • Na stronie podsumowania roli skopiuj wartość ARN. Wartość ta zostanie użyta w następnym kroku.

4. Połączenie HubSpot i AWS S3

  • Upewnij się, że Twoje konto HubSpot jest włączone do tej wersji beta: Dostęp do danych HubSpot w AWS S3.
  • Przejdź do tego adresu URL i wybierz swoje konto HubSpot.
  • W prawym górnym rogu kliknij opcję Zainstaluj aplikację.
  • Wprowadź nazwę roli IAM skonfigurowaną w kroku 3 i ścieżkę URL S3 dla zasobnika, do którego mają zostać zrzucone dane.
  • Kliknij przycisk Dalej.
  • Przejrzyj i skopiuj wartości AWS IAM User i AWS External ID, ponieważ będą one potrzebne w następnym kroku. Następnie kliknij przycisk Continue to Connected Apps.

5. Przyznanie użytkownikowi IAM uprawnień dostępu do obiektów zasobnika

  • Zaloguj się do konsoli zarządzania AWS.
  • Na głównym pulpicie nawigacyjnym kliknij Usługi > Bezpieczeństwo, tożsamość i zgodność > IAM.
  • Na lewym pasku bocznym kliknij Role.
  • Wybierz rolę utworzoną w kroku 3.
  • Wybierz zakładkę Relacje zaufania i kliknij Edytuj zasady zaufania.
  • Zmodyfikuj dokumenty polisy za pomocą wartości zarejestrowanych w kroku 3.

{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Sid": "",
 "Effect": "Allow",
 "Principal": {
 "AWS": "<hubspot_user_arn>"
 },
 "Action": "sts:AssumeRole",
 "Condition": {
 "StringEquals": {
 "sts:ExternalId": "<hubspot_external_id>"
 }
 }
 }
 ]
}

W powyższej polityce zmień następujące dwa pola na wartości zarejestrowane w kroku 4:

  • hubspot_user_arn do wartości STORAGE_AWS_IAM_USER_ARN
  • hubspot_external_id do wartości STORAGE_AWS_EXTERNAL_ID

Po wykonaniu powyższych kroków HubSpot może zsynchronizować dane z AWS S3.

Format danych do synchronizacji między HubSpot i AWS S3

Dostępne dane do synchronizacji

Możesz zsynchronizować następujące dane z HubSpot do AWS S3:

  • Obiekty: standardowe i niestandardowe obiekty, takie jak kontakty, firmy, bilety lub produkty.
  • Rekordy: indywidualne rekordy obiektów.
  • Asocjacje: wszystkie typy asocjacji i powiązane rekordy.
  • Zdarzenia: dane zdarzeń zarówno dla standardowych zdarzeń HubSpot, jak i niestandardowych zdarzeń behawioralnych.
  • Listy: Listy kontaktów i firm HubSpot.
  • Właściciele: zarejestrowani właściciele.
  • Potoki: potoki transakcji i zgłoszeń oraz etapy potoku.
  • Właściwości: właściwości i ich wartości w rekordach obiektów, w tym historia właściwości.

Dane obiektów różnych typów są zorganizowane i dostępne na dwa sposoby:

  • Indywidualny: każdy typ obiektu jest przechowywany we własnej tabeli i zawiera tylko rekordy tego samego typu obiektu. Na przykład objects_contacts zawiera tylko rekordy kontaktów.
  • Combined: wszystkierekordy dla wszystkich typów obiektów są łączone w jeden obiekt bazy danych. W związku z tym podczas wysyłania zapytania należy określić filtr typu "WHERE objectTypeId='0-1'

Obiekty niestandardowe będą miały przypisany identyfikator w momencie tworzenia i będą identyfikowane jako 2-unique_ID. Na przykład 2-12345.

objects_x tables

Każdy dostępny typ obiektu, w tym obiekty niestandardowe, ma swoją własną tabelę. Tabele te są nazywane zgodnie z formatem OBJECTS_<object type name>, gdzie <object type name> jest etykietą formy liczby mnogiej objecttype.(Należy pamiętać, że jeśli typ obiektu nie ma formy liczby mnogiej, wówczas <object type name> będzie etykietą formy liczby pojedynczej nazwy typu obiektu połączonej z "S").

Poniżej znajduje się pełna lista dostępnych typów obiektów HubSpot, krótki opis reprezentowanych przez nie danych oraz odpowiadające im tabele.

Typ obiektu HubSpot

ObjectTypeId

Opis

KONTAKT

0-1

Informacje o osobach wchodzących w interakcje z firmą

FIRMA

0-2

Informacje o poszczególnych firmach lub organizacjach

DEAL

0-3

Szczegółowe informacje o możliwościach uzyskania przychodu z kontaktu lub firmy.

ZAANGAŻOWANIE

0-4

Przechowuje dane z działań CRM, w tym notatki, zadania, wiadomości e-mail, spotkania i połączenia.

BILET

0-5

Reprezentowanie próśb klientów o pomoc lub wsparcie.

QUOTE

0-14

Służy do udostępniania informacji o cenach potencjalnym nabywcom.

FORM_SUBMISSION

0-15

Szczegóły poszczególnych zgłoszeń dla formularza HubSpot.

LINE_ITEM

0-8

Reprezentuje podzbiór produktów sprzedawanych w ramach transakcji. Gdy produkt jest dołączony do transakcji, staje się pozycją liniową.

ROZMOWA

0-11

Szczegóły wiadomości przychodzących z wielu kanałów.

LANDING_PAGE

0-25

Szczegóły dotyczące stron docelowych

ZADANIE

0-27

Przechowuje informacje o listach zadań do wykonania

FORMA

0-28

Służy do zbierania informacji o odwiedzających i kontaktach.

MARKETING_EMAIL

0-29

Szczegóły dotyczące wiadomości e-mail z centrum marketingowego

AD_ACCOUNT

0-30

Przechowuje informacje o kontach reklamowych na Linkedin, Facebooku i Google.

AD_CAMPAIGN

0-31

Szczegóły dotyczące kampanii reklamowych. Kampania reklamowa może zawierać jedną lub więcej reklam

AD_GROUP

0-32

Logiczne grupowanie reklam w ramach kampanii reklamowej

AD

0-33

Szczegóły dotyczące poszczególnych reklam

KAMPANIA

0-35

Informacje o powiązanych zasobach marketingowych i treściach, dzięki czemu można łatwo zmierzyć skuteczność wspólnych działań marketingowych.

SITE_PAGE

0-38

Dane dotyczące poszczególnych stron w witrynach

BLOG_POST

0-39

Dane dotyczące wpisów na blogu

LISTA OBIEKTÓW

0-45

Informacje o grupach rekordów obiektów na podstawie ich właściwości lub działań

POŁĄCZENIE

0-48

Połączenia wykonane przez inne rekordy CRM, na przykład kontakty

FAKTURA

0-53

Zarządzanie i synchronizacja faktur z zewnętrznymi systemami księgowymi

MEDIA_BRIDGE

0-57

Informacje o zasobach multimedialnych zaimportowanych do HubSpot

SEKWENCJA

0-58

Sekwencja to seria ukierunkowanych szablonów wiadomości e-mail, które mają na celu pielęgnowanie kontaktów w czasie

DEAL_SPLIT

0-72

Podziały transakcji są używane do dzielenia kredytów transakcji między wielu użytkowników

SALES_DOCUMENT

0-83

Dokumenty sprzedaży tworzą bibliotekę treści dla całego zespołu, umożliwiając przesyłanie i udostępnianie dokumentów kontaktom.

FEEDBACK_SUBMISSION

0-19

Przechowuje informacje przesłane w ankiecie zwrotnej.

SUBSKRYPCJA

0-69

Subskrypcje zawierają szczegóły powtarzających się płatności

PŁATNOŚĆ HANDLOWA

0-101

Zawiera dane o środkach zebranych od klientów

object_with_object_properties

Ta tabela zawiera dane z rekordów HubSpot. Można uzyskać jeden wiersz dla każdego rekordu w ramach typu obiektu (np. wszystkie rekordy kontaktów w typie obiektu kontakty).

object_properties_history

Ta tabela zawiera historyczne wartości nieruchomości. W przypadku kontaktów zawiera 45 ostatnich wartości. Dla wszystkich innych obiektów zawiera 20 ostatnich wartości. Tabela zawiera wiersz dla każdej historycznej wartości właściwości. Bieżąca wartość właściwości jest określana przez najnowszy znacznik czasu UPDATEDAT w historii właściwości.

Zapytania dotyczące stowarzyszenia

Podobnie jak dane obiektów, dane asocjacji są zorganizowane na dwa sposoby:

  • Indywidualne: każdy typ asocjacji jest przechowywany we własnej tabeli i zawiera tylko rekordy tego typu. Na przykład associations_contacts_to_deals zawiera tylko rekordy asocjacji między obiektami kontaktów i transakcji. T
  • Combined: wszystkie rekordy dla wszystkich typów powiązań są łączone w jednej tabeli.

associations_x_to_y

Każdy typ asocjacji ma swój własny widok, oznaczony jako associations_<association type name> np. associations_contacts_to_deals.

association_definitions

Ta tabela zawiera informacje o wszystkich dostępnych typach powiązań między obiektami HubSpot, z jednym wierszem na typ powiązania.

property_definitions

Ta tabela zawiera informacje o właściwościach obiektów i właściwościach zdarzeń na koncie HubSpot. Właściwości zdarzeń obejmują standardowe zdarzenia, takie jak otwarcia i kliknięcia wiadomości e-mail, oraz niestandardowe właściwości zdarzeń behawioralnych. Informacje te mogą być pomocne przy definiowaniu wartości znalezionych w object_properties i danych zdarzeń.

Wydarzenia

Zdarzenia obejmują standardowe zdarzenia HubSpot i niestandardowe zdarzenia behawioralne. Każde zdarzenie ma własną tabelę, oznaczoną jako events_eventname.

object_and_event_type_definitions

Ta tabela zawiera definicje wszystkich obiektów i zdarzeń dostępnych na koncie HubSpot.

Częstotliwość synchronizacji i organizacja danych

Dane są synchronizowane codziennie między HubSpot i AWS S3. Dla każdego dnia, w którym dane są synchronizowane, tworzony jest folder. Każda z poniższych tabel będzie dostępna jako folder z rozpakowanymi plikami CSV:

ASSOCIATIONS
ASSOCIATION_DEFINITIONS
EVENTS_[Event name]
LISTS
LIST_MEMBERSHIPS
OBJECTS
OBJECT_AND_EVENT_TYPE_DEFINITIONS
OBJECT_PROPERTIES
OBJECT_PROPERTIES_HISTORY
OBJECT_WITH_OBJECT_PROPERTIES
OWNERS
OWNER_TEAM
PIPELINES
PIPELINE_STAGES
PROPERTY_DEFINITIONS
TEAMS

Dla każdej tabeli będzie kilka podfolderów. Jeśli rozmiar tabeli przekracza 15 MB, w każdym folderze tabeli będzie znajdować się wiele plików CSV w formacie gzip.