Identify users in Capacitor SDK
Adapty creates an internal profile ID for every user. However, if you have your own authentication system, you should set your own Customer User ID. You can find users by their Customer User ID in the Profiles section and use it in the server-side API, which will be sent to all integrations.
Setting customer user ID on configuration
If you have a user ID during configuration, just pass it as customerUserId
parameter to .activate()
method:
import { adapty } from '@adapty/capacitor';
try {
await adapty.activate({
apiKey: 'YOUR_PUBLIC_SDK_KEY',
params: {
customerUserId: 'YOUR_USER_ID'
}
});
} catch (error) {
console.error('Failed to activate Adapty:', error);
}
Setting customer user ID after configuration
If you don't have a user ID in the SDK configuration, you can set it later at any time with the .identify()
method. The most common cases for using this method are after registration or authorization, when the user switches from being an anonymous user to an authenticated user.
import { adapty } from '@adapty/capacitor';
try {
await adapty.identify({ customerUserId: 'YOUR_USER_ID' });
console.log('User identified successfully');
} catch (error) {
console.error('Failed to identify user:', error);
}
Request parameters:
Parameter | Presence | Description |
---|---|---|
customerUserId | required | A string user identifier. |
Resubmitting of significant user data
In some cases, such as when a user logs into their account again, Adapty's servers already have information about that user. In these scenarios, the Adapty SDK will automatically switch to work with the new user. If you passed any data to the anonymous user, such as custom attributes or attributions from third-party networks, you should resubmit that data for the identified user.
It's also important to note that you should re-request all paywalls and products after identifying the user, as the new user's data may be different.
Logging out and logging in
You can logout the user anytime by calling .logout()
method:
import { adapty } from '@adapty/capacitor';
try {
await adapty.logout();
console.log('User logged out successfully');
} catch (error) {
console.error('Failed to logout user:', error);
}
You can then login the user using .identify()
method.