The following table shows how ARLO contact fields are mapped to HubSpot contact properties:
| HubSpot Property | ARLO Field | Notes |
|---|---|---|
firstname |
FirstName |
Contact's first name |
lastname |
LastName |
Contact's last name |
email |
Email |
Primary email address |
phone |
PhoneWork |
Work phone number |
mobilephone |
PhoneMobile |
Mobile phone number |
address |
addressLink?.StreetLine1 |
Street address (null if not available) |
city |
addressLink?.City |
City (null if not available) |
state |
addressLink?.StateOrProvince |
State (converted to state code) |
zip |
addressLink?.PostCode |
Postal/ZIP code (null if not available) |
country |
addressLink?.Country |
Country (USA is converted to "United States") |
arlo_unique_identifier |
UniqueIdentifier |
Unique identifier from ARLO |
? are optional and will be set to null if not available in the ARLO data.
The following table shows how ARLO event fields are mapped to HubSpot section properties:
| HubSpot Property | ARLO Field | Notes |
|---|---|---|
section_title |
Code + " - " + Name + " - " + startDateTimeLocal?.toISOString()?.split('T')[0] |
Formatted title combining code, name, and start date |
section |
Code + " - " + Name + " - " + startDateTimeLocal?.toISOString()?.split('T')[0] |
Same as section_title |
arlo_unique_identifier |
UniqueIdentifier |
Unique identifier from ARLO |
campus |
LocationName |
Event location name |
category |
eventData?.Category |
Event category |
course_type |
eventData?.CourseType |
Type of course |
event_billing_date |
eventData?.BillingDate |
Billing date for the event |
event_end_date |
FinishDateTimeFormatted |
Formatted end date and time |
event_name |
Name |
Name of the event |
event_series_code |
eventData?.SeriesCode |
Series code for recurring events |
event_start_date |
StartDateTimeFormatted |
Formatted start date and time |
event_status |
mappedStatus |
Status mapped from ARLO to HubSpot format using the following mapping:
|
event_venue |
venueName || LocationName |
Venue name or location name as fallback |
event_venue_address |
fullPhysicalAddress |
Complete venue address formatted as: "StreetLine1, City, StateOrProvince, PostCode" Example: "123 Main St, New York, NY, 10001" Each component is optional and will be omitted if not available |
instructor |
eventData?.Instructor |
Primary instructor |
leader_role_1 |
presenter2Role |
Role of first leader |
leader_role_2 |
presenter1Role |
Role of second leader |
leader_role_3 |
presenter3Role |
Role of third leader |
leader_1 |
Presenter1Email |
First leader's HubSpot ID (looked up via HubSpot API using presenter's email from ARLO custom field Presenter1Email) |
leaders |
Presenter2Email |
Second leader's HubSpot ID (looked up via HubSpot API using presenter's email from ARLO custom field Presenter2Email) |
leader_3 |
Presenter3Email |
Third leader's HubSpot ID (looked up via HubSpot API using presenter's email from ARLO custom field Presenter3Email) |
line_of_business |
eventData?.LineOfBusiness |
Line of business |
moderncampus_event_id |
eventData?.ModernCampusEventID |
Modern Campus event ID |
netsuite_event_id |
eventData?.NetSuiteEventID |
NetSuite event ID |
potential_attendees |
eventData?.PotentialAttendees |
Number of potential attendees |
region_market |
eventData?.RegionMarket |
Region or market |
registered_assistants |
eventData?.RegisteredAssistants |
Number of registered assistants |
registered_attendees |
eventData?.RegisteredAttendees |
Number of registered attendees |
registered_attendees__nc_ |
eventData?.RegisteredAttendeesNC |
Number of non-credit registered attendees |
registered_waitlist |
eventData?.RegisteredWaitlist |
Number of waitlisted registrations |
room |
eventData?.Room |
Room information |
schedule_type |
eventData?.ScheduleType |
Type of schedule |
student_section_completion_status |
eventData?.StudentSectionCompletionStatus |
Student completion status |
section_schedule |
formatSessions(allSessions) |
Formatted schedule of all sessions with dates and times. Each session is formatted as:DayOfWeek, Month Day, Year - StartTime - EndTime TimeZoneExample: "Mon, Jan 15, 2024 - 9:00AM - 5:00PM EST"
|
? are optional and will be set to null if not available in the ARLO data.Presenter1Email for the first leaderPresenter2Email for the second leaderPresenter3Email for the third leadercrm/v3/owners/?email=.
The following associations are created in HubSpot to maintain relationships between different entities:
| From Object | To Object | Association Type | Notes |
|---|---|---|---|
| Contact | Section | contact_to_section |
Associates a contact with a section they are registered for |
| Section | Contact | section_to_contact |
Reverse association of contact_to_section |
| Section | Owner | section_to_owner |
Associates a section with its primary instructor/owner |
| Owner | Section | owner_to_section |
Reverse association of section_to_owner |
The following table shows how ARLO registration fields are mapped to HubSpot deal properties:
| HubSpot Property | ARLO Field | Notes |
|---|---|---|
arlo_unique_identifier |
UniqueIdentifier |
Unique identifier from ARLO registration |
dealname |
Event.Code + " - " + Event.StartDateTime |
Formatted name combining event code and start date |
section_completion_status |
Status |
Status mapped as follows:
|
arlo_event_unique_identifier |
Event.UniqueIdentifier |
ARLO event ID |
arlo_contact_unique_identifier |
Contact.UniqueIdentifier |
ARLO contact ID |
event_id |
Event.EventID |
HubSpot section (event) ID |
contact_id |
Contact.ContactID |
HubSpot contact ID |
final_grade |
Outcome |
Registration outcome |
attendance |
Attendance |
Attendance status, mapped as follows:
|
pipeline |
HUBSPOT_PIPELINE_ID |
HubSpot pipeline ID from environment variables |
dealstage |
HUBSPOT_PIPELINE_STAGE_ID |
HubSpot pipeline stage ID from environment variables |
amount |
OrderLine.LineAmount |
Registration amount from order line |
discount_used__arlo_ |
OrderLine.Description |
Description of any discount applied |
arlo_order_id |
Order.OrderID |
ARLO order ID |
deal_to_contact: Links the registration to the registered contactsection_to_contact: Links the event section to the registered contactsection_to_deal: Links the event section to the registrationdeal_to_section: Links the registration to the event sectionTo deploy the ARLO Webhook Processor, follow these steps:
./deploy.sh