Hull Destination
Hull quick info
Hull accepts Track, Identify, and Group calls. If you reference it in the Integrations object, call it “Hull”.
Hull accepts cloud-mode data from all Segment source types. It does not offer device-mode connections.
Hull is the one place to collect, transform, enrich, filter, search and segment customer data in all your tools.
It helps you creates a single actionable profile and uniform segments that sync to all your tools and make cross-channel, end-to-end personalization easy.
Getting Started
Hull receives data from Segment using the Segment Ship. Here’s how to install it:
Install the Segment Ship on your organization. If you just installed Hull, click on “Add a ship” on the overview page.
Pick the Segment Ship from the list.
Enter the Segment ship Settings, Copy the API Key
Paste it into your destinations page. Alternatively, just click the “Enable with Segment” button.
Tracking Data from anonymous users and Leads
Enable Guest Users in your Dashboard’s Settings > User Authentication > Login Options. This will create users for each identify
call, even those without a User ID which is useful to track Leads.
This is disabled by default because it can greatly increase the number of users in your database. When enabled, users will be tracked from their very first visit and action, allowing you to build segments based on complete customer journeys.
Publishing data back to Segment
If you enter your Segment Write Key in the Ship’s settings, then Hull will send customer data to Segment. When a user enters or leaves a Hull segment, a new identify
call with be sent with the following traits :
analytics.identify(userId, {
"hull_segments": ["all","matching","segment","names"],
"custom_1": "value_1",
"custom_2": "value_2",
},{
"groupId": "user's group Id if he has one"
})
In the Ship settings, you can choose which traits are sent to Segment.com. This lets you send any trait that has been computed or collected from enrichment steps to other tools.
You can also filter in the Ship Settings the customer segments will be sent back to Segment.com to those matching one or more of your Hull segments.
Features
Hull supports the identify
, page
, screen
, track
, and group
methods.
Hull stores customer properties and events and makes them available for segmentation in the Dashboard.
From there you can create and save audiences, transform and enrich customer data with Ships.
Identify
Every user identified on Segment with a userId
will be created as a User on Hull. Segment’s userId
will be mapped to Hull’s external_id
field.
The following traits will be stored as first level fields on the User object
- address
- created_at
- description
- first_name
- image
- last_name
- name
- phone
- picture
- username
All other attributes from the identify
call will be stored as custom traits on Hull.
Track
Every track
in Segment will create a new Event on Hull with "source":"segment"
.
Screen
Every screen
in Segment will create a new Event on Hull with "source":"segment"
and "event":"screen"
.
Page
Every page
in Segment will create a new Event on Hull with "source":"segment"
and "event":"page"
.
Group
Group calls in Segment will apply the group’s traits as traits on the users that belong to the group.
For instance:
analytics.group("123", { name: "Wonderful", city: "Paris" });
will add the following traits on all users that belong to the group :
{
"group": {
"id": "123",
"name": "Wonderful",
"city": "Paris"
}
}
Internally, we flatten objects and use ‘/’ as a separator. They’re really stored as traits_group/name
. Our sources handle nesting for you when you receive data coming from Hull
Note: This feature is optional and not enabled by default. You should only enable it if your users can only belong to one group.
Personas
You can send computed traits and audiences generated using Segment Personas to this destination as a user property. To learn more about Personas, contact us for a demo.
For user-property destinations, an identify call is sent to the destination for each user being added and removed. The property name is the snake_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Personas sends an Identify call with the property order_completed_last_30days: true
. When the user no longer satisfies this condition (for example, it’s been more than 30 days since their last order), Personas sets that value to false
.
When you first create an audience, Personas sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.
Supported Sources and Connection Modes
Before you start, make sure Hull supports the source type and connection mode you’ve chosen to implement. You can learn more about connection modes here.
Web | Mobile | Server | |
---|---|---|---|
📱 Device-mode | ⬜️ | ⬜️ | ⬜️ |
☁️ Cloud-mode | ✅ | ✅ | ✅ |
Segment offers an optional Device-based Connection Mode for Mobile data going to Hull, so that you can use Hull features that collect data directly from the mobile device. To do this, you must package the Segment-Hull mobile SDK with the Segment mobile library.
Settings
Segment lets you change these destination settings from the Segment app without having to touch any code.
API Key
Get your API key from the Segment Ship settings in your Hull Account
This page was last modified: 02 Dec 2020
Need support?
Questions? Problems? Need more info? Contact us, and we can help!