|
| 1 | +--- |
| 2 | +title: Userpilot Mobile Device Mode Destination |
| 3 | +id: 68207e064c022255721ec2d3 |
| 4 | +--- |
| 5 | + |
| 6 | +Userpilot helps product teams deliver personalized in-app experiences to increase growth metrics at every stage of the user journey. When you integrate Userpilot with Segment, you can send your Segment events to Userpilot, enabling you to create more personalized experiences for your users across the product lifecycle. |
| 7 | + |
| 8 | +[Userpilot](https://www.userpilot.com/?utm_source=segmentio&utm_medium=docs&utm_campaign=partners){:target="_blank"} provides in-app guidance, product tours, and contextual onboarding experiences to help teams activate users and drive feature adoption. |
| 9 | + |
| 10 | +Userpilot maintains this destination. For any issues with the destination, [contact the Userpilot Support team ](mailto:[email protected]). |
| 11 | + |
| 12 | +## Getting started |
| 13 | + |
| 14 | +1. From your workspace's [Destination catalog page](https://app.segment.com/goto-my-workspace/destinations/catalog){:target="_blank"}, search for *Userpilot Mobile (Device Mode)*. |
| 15 | +2. Select **Userpilot Mobile** and click **Add Destination**. |
| 16 | +3. Select an existing Source to connect to Userpilot. |
| 17 | +4. Go to the [Userpilot installation dashboard](https://run.userpilot.io/installation){:target="_blank"}, and copy your **App Token**. |
| 18 | +5. Enter the **App Token** in the Userpilot destination settings in Segment. |
| 19 | + |
| 20 | +## Supported methods |
| 21 | + |
| 22 | +Userpilot supports the following methods, as specified in the [Segment Spec](/docs/connections/spec). |
| 23 | + |
| 24 | +### Identify |
| 25 | + |
| 26 | +Send [Identify](/docs/connections/spec/identify) calls to associate a user with traits. These are used for segmentation, personalization, and lifecycle targeting. |
| 27 | + |
| 28 | +```swift |
| 29 | +analytics.identify(userId: "<USER_ID>", traits: [ |
| 30 | + |
| 31 | + "name": "John Doe", |
| 32 | + "plan": "Pro", |
| 33 | + "createdAt": "2019-10-17" |
| 34 | +]) |
| 35 | +``` |
| 36 | + |
| 37 | +Calling Identify from Segment triggers `userpilot.identify`. Segment recommends passing as much data as possible to get the most out of Userpilot. |
| 38 | + |
| 39 | +Data passed in an Identify call can be organized under these different categories: |
| 40 | +* Properties about the user such as `plan` or `userRole` help target a specific segment |
| 41 | +* Properties to personalize the content of the Userpilot experiences, such as `name` or `company` |
| 42 | +* Properties to target users based on their lifecycle, such as `createdAt`, which allows you to target newly created accounts or accounts that have yet to achieve a certain feature in the user lifecycle |
| 43 | + |
| 44 | +These appear within Userpilot's user dashboard and power audience segmentation and targeting. |
| 45 | + |
| 46 | +### Group |
| 47 | +Send [Group](/docs/connections/spec/group) calls to associate users with an account, organization, or project. |
| 48 | + |
| 49 | +```swift |
| 50 | +analytics.group(groupId: "<GROUP_ID>", traits: [ |
| 51 | + "companyName": "Acme Inc.", |
| 52 | + "subscriptionTier": "Enterprise" |
| 53 | +]) |
| 54 | +``` |
| 55 | + |
| 56 | +Calling Group from Segment triggers `userpilot.identify` with company-level traits, allowing you to use company metadata in targeting logic. |
| 57 | + |
| 58 | + |
| 59 | +### Screen |
| 60 | +Send [Screen](/docs/connections/spec/screen) calls to track navigation or screen changes in mobile apps. |
| 61 | + |
| 62 | +```swift |
| 63 | +analytics.screen(title: "Home") |
| 64 | +``` |
| 65 | + |
| 66 | +Calling Screen from Segment triggers `userpilot.screen` event. This allows Userpilot to: |
| 67 | +* Trigger relevant experiences configured for specific pages/screens. |
| 68 | +* Check for ongoing experiences already running. |
| 69 | + |
| 70 | + |
| 71 | +### Track |
| 72 | + |
| 73 | +Send [Track](/docs/connections/spec/track) calls to log user actions or custom events. |
| 74 | + |
| 75 | +```swift |
| 76 | +analytics.track(name: "Added to Cart", properties: [ |
| 77 | + "itemId" : "sku_456", |
| 78 | + "price" : 29.99 |
| 79 | +]) |
| 80 | +``` |
| 81 | + |
| 82 | +Calling Track from Segment triggers `userpilot.track`. These custom events can be used to: |
| 83 | +* Trigger specific experiences (for example, a Carousel or Survey) |
| 84 | +* Monitor user behavior for analytics or lifecycle targeting |
0 commit comments