This is an example of a Registration event:

sd.track('registration', {
    email: '[email protected]',
    username: 'joesmith',
    userId: '97980cfea0067',
    optIn: true,
    firstName: 'Joe',
    lastName: 'Smith',
    name: 'Joe Smith',   
    properties: {
          campaignId: '12345'

Track when users first register or sign up using the track command with the registration event type. Details about the registration are added in an eventObject.

When a user registers with you for the first time, you should call identify and separately also call registration.

emailStringYesThe email address of the user (e.g. [email protected]).
usernameStringNoThe username (e.g. joesmith).
userIdStringNoThe user id. (e.g. 97980cfea0067).
optInBooleanNoA boolean flag indicating whether this contact has opted in to receive marketing email.
firstNameStringNoThe first name of the user (e.g. Joe).
lastNameStringNoThe last name of the user (e.g. Smith).
nameStringNoThe full name of the user. (e.g. Joe Smith).
propertiesObjectNoAn object of extra arguments (e.g. { campaignId: '12345' }).


Next-Gen Identity Identifier Requirements

If your organization is on Next-Gen Identity, email address is no longer required. However, you must ensure that the identifier values present on your Simon Signal events match the identifiers present in your organization's Simon account.

For example: if your account utilizes the User ID identifier and you want to include userId on your Simon Signal events, you must pass us the actual User ID values in the userId field in Signal events and not the values of another identifier.

If there is a non-userId field you want to include in your Signal events, we recommend putting that value in the 'properties' object.


This is an example of an Authentication event:

sd.track('authentication', {
  userId: 'xyz123456',
  isLoggedIn: true,
  ARN: 'arn:aws:sns:us-east-1:123456789:example-arn-2',
  email: '[email protected]',
  properties: {
    appVersion: '3.4.1'


When to use 'identify' vs. 'authentication'

The general method to establish the identity for users is to use the identify call. The authentication event is mainly useful when using Amazon SNS as a channel for push messaging. It's used to tie an ARN identifier with the userId. Always use identify except to specifically provide an ARN.

An authentication event should be called when a user logs in or out of the service. This is a track event with the authentication event type. Details about the product are added in added in an eventObject.

userIdStringYesThe unique userId of the user authenticating
isLoggedInBooleanYesA flag indicating if the user is logging into the system. This should be false.
ARNStringYesThe Amazon AWS ARN the of the user.
emailStringNoThe email address of the user authenticating.
propertiesObjectNoAn object of extra arguments.