IntegrationAttribute
Attributes for third-party integrations with Superwall.
Purpose
Enumeration of integration attributes that allow you to sync user identifiers from your analytics and attribution providers with Superwall. This enables better user tracking and attribution across platforms.
Signature
enum IntegrationAttribute {
adjustId,
amplitudeDeviceId,
amplitudeUserId,
appsflyerId,
brazeAliasName,
brazeAliasLabel,
onesignalId,
fbAnonId,
firebaseAppInstanceId,
iterableUserId,
iterableCampaignId,
iterableTemplateId,
mixpanelDistinctId,
mparticleId,
clevertapId,
airshipChannelId,
kochavaDeviceId,
tenjinId,
posthogUserId,
customerioId;
}Values
Prop
Type
Usage
Setting a single integration attribute:
await Superwall.shared.setIntegrationAttribute(
IntegrationAttribute.mixpanelDistinctId,
'user_123',
);Setting multiple integration attributes:
await Superwall.shared.setIntegrationAttributes({
IntegrationAttribute.mixpanelDistinctId: 'user_123',
IntegrationAttribute.amplitudeUserId: 'amp_456',
IntegrationAttribute.adjustId: 'adjust_789',
});Removing an integration attribute:
// Set to null to remove
await Superwall.shared.setIntegrationAttribute(
IntegrationAttribute.mixpanelDistinctId,
null,
);Syncing with analytics providers:
void _syncAnalyticsIds() async {
// Get IDs from your analytics SDKs
final mixpanelId = await MixpanelSDK.getDistinctId();
final amplitudeId = await AmplitudeSDK.getUserId();
// Sync with Superwall
await Superwall.shared.setIntegrationAttributes({
IntegrationAttribute.mixpanelDistinctId: mixpanelId,
IntegrationAttribute.amplitudeUserId: amplitudeId,
});
}Related
setIntegrationAttribute()- Set a single integration attributesetIntegrationAttributes()- Set multiple integration attributes at once
How is this guide?
Edit on GitHub