How Suprsend identifies a user

SuprSend identifies users with immutable distinct_id. It’s best to map the same identifier in your DB with distinct_id in SuprSend. Do not use identifiers that can be changed like email or phone number. You can view synced users by searching distinct_id on Users page.

Identify user and Set Push token

1

Create/Identify a new user

You can identify a user using theSuprSend.shared.identify() method. iospsuh token is automatically set in user’s profile when this method is called. Call this method as soon as you know the identity of user, that is after login authentication. If you don’t call this method, user will be identified using distinct_id (uuid) that sdk generates internally.

We internally create an event called $user_login. You can see this event on SuprSend workflows event list and you can configure a workflow on it.

SuprSend.shared.identify(identity: distinct_id)
 
//Example
SuprSend.shared.identify(identity: "291XXXXX-62XX-4dXX-b2XX");
SuprSend.shared.identify(identity: "johndoe@suprsend.com");
ParametersTypeDescription
distinct_idint, bigint, string, UUIDmandatory Unique identifier for a user across devices or between multiple logins.
2

Call reset to clear user data on log-out

As soon as the user logs out, call SuprSend.shared.reset() method to clear data attributed to a user. This will generate a new random distinct_id and clear all super properties. This allows you to handle multiple users on a single device.

When you call this method, we internally create an event called $user_logout. You can see this event on the SuprSend workflows event list and you can configure a workflow on it.

SuprSend.shared.reset(unsubscribeNotification: true) // unsubscribeNotification flag is needed to be set true so that push token will be detatched from user after logout

Don’t forget to call reset on user logout. If not called, user id will not reset and multiple tokens and channels will get added to the user_id who logged in first on the device.