# Mobile In-App SDK Integration Prerequisites

Use this page when you are preparing an iOS or Android app to request and display Mobile In-App messages. Campaign configuration belongs in the [Mobile In-App Campaign Setup](/products/marketing-cloud/engage-studio/channels/mobile-inapp/setup-and-prerequisites) guide.

Beta
The native SDK integration is in preview. APIs, payloads, package distribution, and event schemas may change before general availability.

## Required Values

Prepare these values before integrating the SDK:

- A write-only API key for event ingestion.
- A Records endpoint for the account region.
- A Personalization endpoint.
- A Personalization token.
- A destination database and table for trigger events.
- An event schema that identifies the screen or action that should trigger a message.


Keep the write-only API key and Personalization token outside message content and `profileContext`.

## Configure Realtime Personalization for the App

Complete the app-facing Realtime Personalization configuration before testing a trigger event:

1. Enable **Realtime Personalization 2.0** for the account.
2. Configure the RT event tables that receive mobile app events.
3. Configure **ID stitching** when campaigns require a unified customer identity.


The campaign owner creates the Parent Segment, Realtime Personalization entry, and Personalization Section in the [Mobile In-App Campaign Setup](/products/marketing-cloud/engage-studio/channels/mobile-inapp/setup-and-prerequisites) guide.

## Define the Trigger Event Contract

The app must send an event when a customer reaches a screen or performs an action that can trigger a campaign. The event name, screen name, customer identifier, and targeting attributes must use the names configured in Realtime Personalization.

For the supported event namespaces and fields, see [Engage Mobile SDK API and Event Reference](/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-reference).

The SDK does not infer business events such as `purchase`, `add_to_cart`, or `search`. The app must create and send those events when a campaign depends on them.

## Install the Native SDK Integration

Use the platform-specific integration guide for the SDK artifact you received:

- [iOS SDK Integration](/products/marketing-cloud/engage-studio/channels/mobile-inapp/developer-guide-ios)
- [Android SDK Integration](/products/marketing-cloud/engage-studio/channels/mobile-inapp/developer-guide-android)
- [Hosted Pages WebView and Bridge Integration](/products/marketing-cloud/engage-studio/channels/mobile-inapp/rich-landing-integration)


The app must initialize the Core SDK once, configure the Personalization endpoint and token, and call the platform-specific `TDEngage.install` method before the first trigger event.

## Verify the Integration

Before creating a campaign, verify the following:

- RT events arrive in the expected table.
- The customer ID resolves as expected.
- The Parent Segment contains the test customer.
- The Personalization entry and Section are active and available to the app.
- A test event causes the app to request a message.
- The Engage Mobile SDK can display the response.
- The app safely handles a response with no matching message.


For implementation failures, see [Mobile In-App SDK Troubleshooting](/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-troubleshooting).

## Related Documentation

- [Set Up Mobile In-App Campaigns](/products/marketing-cloud/engage-studio/channels/mobile-inapp/setup-and-prerequisites)
- [Engage Mobile SDK API and Event Reference](/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-reference)
- [Mobile In-App Measurement](/products/marketing-cloud/engage-studio/channels/mobile-inapp/measurement)
- [Mobile In-App SDK Troubleshooting](/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-troubleshooting)