User Properties

1. Introduction

By setting various user properties, such as level, and ID, you can automatically get powerful analytics insights from the Tapjoy dashboard. For example, by setting user level whenever your user gains or passes level, you can get a picture of how your users are distributed throughout the levels of your game:

Objective-C
Swift
[Tapjoy setUserLevel:1]; // Set the user level to 1

This will let you see charts in the "Game Trend" section of the Analytics dashboard.

2. User ID

You can set a user ID. Some Tapjoy SDK integrations do not need to do this. Tapjoy’s SDK will automatically generate a user ID for you. But there are certain situations in which you will want to specify your own user ID:

  1. If you are using Tapjoy with self-managed currency, you must specify a user ID. This is so that when Tapjoy’s server sends your server a message that a user has earned some currency, it knows which user to identify as the recipient.
  2. If you are using managed currency and want your users to be able to keep their currency balance across multiple devices, then you must specify your own user ID, and make sure it is the same across all devices for a given user.

Failure to set the user ID properly (or setting in in a situation where you should be letting Tapjoy’s SDK set it for you) will result in users not getting rewarded for Tapjoy activities, or having user balances strangely appear and disappear.

NOTE: If you plan on using Push to Earn campaigns, this will need to be set before the connect call.

NOTE: For data privacy and GDPR-compliance reasons, you may NOT use email address, phone number, real name, or any other personally identifiable information in the user ID you set with this call.

If you need to set a user ID, you can do so with the following code (no dashboard setting is necessary):

Objective-C
Swift
[Tapjoy setUserID:@"A_UNIQUE_USER_ID"];

If you want to check the user ID there is a getter available:

Objective-C
Swift
NSString *userID = [Tapjoy getUserID];

3. Custom Parameters

You can set custom parameters like so:

Objective-C
Swift
[Tapjoy setCustomParameter:@"[PARAMETER]"];

Please contact support for more information on this.

4. Notes

Should I put setUserLevel whenever user starts game/app?

No. Call only once when an initialization or changes of user level happened.

How can I reset level information?

Send negative integer instead of level. [Tapjoy setUserLevel:-1];