Amplitude
Last updated
Last updated
Integrate Nami with Amplitude so you can send data from Nami to other services that you use and build audiences based on Nami ML attributes.
Our Amplitude integration is available on our paid plans. Please contact us if you are interested in this feature.
This is a server-side integration where Nami sends data directly to Amplitude. There is minimal SDK work required to enable it. See the User ID section below.
Nami uses Amplitude HTTP V2 to send events. To prepare to setup the Nami to Amplitude integration, you need a few things from your Amplitude dashboard.
To get started, you will need to locate the Amplitude project that you want to send Nami data to. Navigate to Amplitude > **Organization Settings **> Projects
On this screen copy and save the API Key and the Secret Key. You'll need these to set up Amplitude in the Nami Control Center in the next section.
In the Nami Control Center, you'll need to set up 1 Amplitude integration for each app. For example if you have a staging
and production
app on Nami, you may want to send data for each to Amplitude.
Log in to the Nami Control Center and Navigate to the Integrations screen. Then scroll down to All Integrations and click the Amplitude tile.
On the next screen toggle on Enable Integration.
Enter a Name for the integration
Enter your Amplitude Endpoint for the URL field
Standard Endpoint - https://api2.amplitude.com/2/httpapi
EU Residency Endpoint - https://api.eu.amplitude.com/2/httpapi
Enter the API Key you located from the Amplitude dashboard.
Select a value to use for the User ID in the dropdown.
Most apps will use External ID
for the User ID in this step. For more details on the User ID, see the Amplitude User ID section.
Select the Nami events you wish to send to Amplitude in the last section of the screen by expanding and clicking the checkboxes. An overview of these data is provided in the next section. When complete click Add New Integration.
Click 'Add New Integration' to save your changes
The following events generated by the Nami ML platform are currently available to be sent to Amplitude. You may choose any subset of these events to be sent.
device.impression
device.transaction
user.journey.trial.converted
user.journey.trial.did_not_convert
user.journey.trial.started
user.subscription.cancelled
user.subscription.expired
user.subscription.in_grace_period
user.subscription.paused
user.subscription.purchased
user.subscription.renewal_in_grace_period
user.subscription.renewed
user.subscription.resumed
See our full list of Event Types here as well as more documentation on how to interpret each event.
Amplitude uses a User ID field to define users in their platform. It is important that you properly set this ID in the Nami ML platform so that users in our platform are properly linked with users in Amplitude.
There are 2 different IDs that are available to be used as the Customer ID.
Nami User ID This is Nami's internal ID that tracks a user in our platform. If you have no other identifier you may use this.
External ID This is the identifier that you set in the SDK with a call to login. We expect most customers to use the External ID for the Amplitude User ID.
We provide the following user attributes on all user.*
events sent to Amplitude.
For more information, see the documentation on Amplitude's website.
User Attribute | Description |
---|---|
namiml_active_entitlements
Array of entitlement_ref_id
's for each active entitlement that the user currently has access to.
namiml_active_skus
Array of sku_ref_id
's for the associated purchases with each active entitlement the user currently has access to.
namiml_device_ids
Array of UUIDs for each device that belongs to the user.
namiml_device_platforms
Array of app_platform_id
's for each device.
namiml_former_subscriber
True if the user previously paid for a subscription and currently does not have an active subscription.
namiml_in_grace_period
True if the user is currently in grace period, false otherwise.
namiml_in_trial_period
True if the user is currently in a free trial, false otherwise.
namiml_in_intro_offer_period
True if the user is currently in an intro offer period, false otherwise.