Vero Destination
Our Vero destination code is all open-source on GitHub if you want to check it out: Javascript, Server.
Getting Started
Vero helps you send targeted emails to customers based on their behavior. When you toggle on Vero in Segment, this is what happens:
- Our CDN is updated within 45 minutes. Then our snippet will start asynchronously loading Vero’s m.js onto your page. This means you should remove Vero’s snippet from your page.
- Since Vero only records custom events and custom user data, no events or users will appear in Vero until you start using the API outlined below.
Vero is supported on the client-side, server-side and mobile.
Identify
Client Side
When you call identify
on analytics.js, we augment traits
to have traits.id
set to the userId
, and then call Vero’s user
with the augmented traits object. You should provide both a traits.email
and a userId
for Vero to work best.
If no email
is attached, the user is created in Vero but cannot be emailed. If you send omit the userId
, Vero will use the email as the ID, which is is not recommended. Check out the Vero docs for more information.
A userId
is a required value for all types of calls. Be sure you call identify
with a userId
for subsequent track
calls to populate into Vero correctly. For server side calls, you will have to manually pass in the userId
at the top level.
Server Side
When you call identify
from one of our server-side languages, we’ll call Vero’s REST API and update the traits for the customer with that userId
. If your userId
is an email, we’ll also set the trait email
as your userId
in the update call.
Track
When you call track
, we’ll send the event to Vero with the event name
and properties
you provide. Events will be matched to the current user.
You can also unsubscribe users by sending a track
event, passing in the user’s ID as a property
, like so:
analytics.track('Unsubscribe', {
id: '12345'
});
Note: If you’d like to explicitly specify a user’s email with track events that is not an event metadata, you can send that under context.traits.email
!
Sending Data from Vero
Vero supports sending email events to other tools on the Segment platform. These events will be sent as track
calls to the other destinations you’ve turned on.
To enable this feature,
- Log into Vero and go to Settings
- Then go to Integrations
- Hit ‘view’ next to the Segment integration
- Enter in your Segment write key at the bottom.
Group
When you call group
, the traits
included in the call will be set to the current user’s Group property in Vero.
Alias
Our alias
method can be used from your server to “re-identify” an existing user identity to a new one.
Most of the time this happens when you identify a visitor by their email address after they opt in, then later re-identify with a database ID when they become registered users.
To connect the two identities you’ll need to alias
their current identity to their new one.
Here’s a python example of using alias
to update the identity from an email address to a database ID:
analytics.alias('example@example.com', '8765309')
Features
Tags
The destination is capable of both adding and removing tags in Vero for a given user. Because tags
is not a common property of events, this functionality is invoked via an destination specific option.
To start using this feature, please pass an object called tags
with the following properties:
id optional |
String | The user Id to associate tags with. If this is not specified, the destination will simply use the userId from the event itself. |
action required |
String | Must be either ‘add’ or ‘remove’. Indicates whether you would like to add or remove the tags for the given user. |
values required |
Array | An array of strings representing the tags to either add or remove.<td markdown="span">
</tr>
</table>
Here is an example using our Node.js library:
javascript
analytics.identify('324LKJF', {
email: 'example@example.com'
}, {
integrations: {
Vero: {
tags: {
id: '235FAG', // This is optional! If not defined, we default to the event's userId (ie: 324LKJF)
action: 'add',
values: ['warriors', 'giants', 'niners']
}
}
}
})
|
Personas
You can send computed traits and audiences generated through Segment Personas to this destination as a user property. To learn more about Personas, reach out for a demo.
For user-property destinations, an identify call will be sent to the destination for each user being added and removed. The property name will be the snake_cased version of the audience name you provide with a true/false value. For example, when a user first completes an order in the last 30 days, we will send an identify call with the property order_completed_last_30days: true
, and when this user no longer satisfies we will set that value to false
.
When the audience is first created an identify call is sent for every user in the audience. Subsequent syncs will only send updates for those users which were added or removed since the last sync.
Supported Sources and Connection Modes
The first step is to make sure Vero supports the source type and connection mode you’ve chosen to implement. You can learn more about what dictates the connection modes we support here.
Web | Mobile | Server | |
---|---|---|---|
📱 Device-mode | ✅ | ||
☁️ Cloud-mode | ✅ | ✅ | ✅ |
To learn more about about Connection Modes and what dictates which we support, see here.
We offer an optional Cloud-based Connection Mode for Web data with Vero. As a reminder, this removes the Vero javascript library from your site, improving performance.
This destination requires a Device-based Connection Mode for Mobile data. Follow the steps above to ensure you have packaged the Vero SDK with Segment’s.
Settings
Segment lets you change these destination settings from your Segment dashboard without having to touch any code.
API Key
You can find your API key in your Vero Settings.
Auth Token
Your auth token allows you to send data to Vero through our server-side libraries. You can find your auth_token
on Vero’s account page.
Need support?
Questions? Problems? Need more info? Contact us, and we can help!