Our API now includes an optional argument for production methods — createDisposition — which allows you to control whether or not Leanplum automatically creates a new user profile for a non-existing user (based on the user ID you pass in the call).
The createDisposition
argument accepts two possible strings:
CreateIfNeeded
creates a user with the given IDs if one does not already existCreateNever
requires that the user already exists; otherwise the API call is skipped and a warning will be returned.
This was a substantial change to many of our API methods. Now you can set whether or not the following calls will create new user IDs for any users that don't exist yet in your app.
If your API calls rely on Leanplum creating new users, you may need to update them to use
createDisposition=CreateIfNeeded
(see the table of methods below).
Each API method has its own default setting for the createDisposition option.
Methods that will not create new users by default
Method | Default for createDisposition |
---|---|
advance | CreateNever |
getVars | CreateNever |
heartbeat | CreateNever |
pauseSession | CreateNever |
pauseState | CreateNever |
resumeSession | CreateNever |
resumeState | CreateNever |
sendMessage | CreateNever |
stop | CreateNever |
Methods that will create new users by default
You can change this behavior by adding createDisposition=CreateNever
to the call.
Method | Default for createDisposition |
---|---|
setDeviceAttributes | CreateIfNeeded |
setTrafficSourceInfo | CreateIfNeeded |
setUserAttributes | CreateIfNeeded |
start | CreateIfNeeded |
track | CreateIfNeeded |