# Mobile In-App Events and Fields

Use this page to understand the events and fields that the Engage Mobile SDK accepts for Mobile In-App campaign evaluation. The SDK provides the trigger API and campaign measurement events; the customer defines business event names and fields.

Measurement record details belong to the Developer Guide. See [Mobile In-App Measurement](/products/marketing-cloud/engage-studio/channels/mobile-inapp/measurement) for the measurement destination and schema.

Preview
Mobile In-App event contracts are part of the preview experience. Event names, fields, and SDK behavior may change before general availability.

## SDK Event Categories

The SDK supports two event categories for Mobile In-App:

| Category | Events | Owner |
|  --- | --- | --- |
| Trigger input | The event map sent with `trackImmediately` | Customer app and campaign configuration |
| Campaign measurement | `impression`, `click`, `dismiss` | Engage Mobile SDK |


The SDK does not define a fixed list of business events such as `purchase`, `add_to_cart`, or `search`. Those names and their fields are customer-defined and must match the Realtime Personalization configuration.

## Trigger Event Input

`trackImmediately` sends an event map to Realtime Personalization when the app reaches a configured screen or action.

The SDK accepts the following field roles:

| Field role | Typical key | Definition |
|  --- | --- | --- |
| Event name | `event` | Customer-defined name for the trigger. |
| Screen or page context | `screen_name` | Customer-defined screen or page value. |
| Customer identity | `customer_id`, `user_id`, or `td_client_id` | Customer-defined identity key used for targeting or identity resolution. |
| Campaign attributes | Any JSON-serializable key | Customer-defined values used by Personalization rules or message content. |


Field names and data types must match the names configured in Realtime Personalization. The SDK forwards customer-defined fields; it does not create business fields automatically.

```json
{
  "event": "<CUSTOMER_DEFINED_EVENT>",
  "screen_name": "<CUSTOMER_DEFINED_SCREEN>",
  "customer_id": "<CUSTOMER_DEFINED_ID>",
  "<CUSTOMER_DEFINED_FIELD>": "<VALUE>"
}
```

Use only the fields required by the campaign. Do not include API keys, Personalization tokens, passwords, or unnecessary personal data.

## Campaign Measurement Events

When a campaign-delivered message is presented or used, the SDK can create these measurement events:

| Event | Meaning |
|  --- | --- |
| `impression` | The campaign message was presented. |
| `click` | A supported link or Bridge action was used. |
| `dismiss` | The campaign experience was closed. |


The message metadata and action fields for these events are defined by the SDK contract. See the Developer Guide's [Mobile In-App Measurement](/products/marketing-cloud/engage-studio/channels/mobile-inapp/measurement) and [Engage Mobile SDK API and Event Reference](/products/marketing-cloud/engage-studio/channels/mobile-inapp/sdk-reference) pages.

A direct app call to `openUrl` is not a campaign offer and does not create these campaign measurement events.

## Customer-Defined Business Events

If a campaign depends on a business action, the customer app must send the event and fields explicitly. The following names are examples, not SDK-standard events:

- `purchase`
- `add_to_cart`
- `search`
- `content_view`
- `signup`
- Any customer-defined event name


Define the event contract with the campaign owner, configure the matching fields in Realtime Personalization, and implement the event in the app.

## Related Documentation

- [Set Up Mobile In-App Campaigns](/products/marketing-cloud/engage-studio/channels/mobile-inapp/setup-and-prerequisites)
- [Create a Mobile In-App Message](/products/marketing-cloud/engage-studio/channels/mobile-inapp/create-an-in-app-message)
- [Message Types and Appearance](/products/marketing-cloud/engage-studio/channels/mobile-inapp/message-types-and-appearance)
- [Hosted Pages](/products/marketing-cloud/engage-studio/channels/mobile-inapp/rich-landing)
- [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)