> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hightouch.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Xtremepush

> Sync data to Xtremepush as user profiles, to trigger campaigns, or to maintain user list membership.

## Supported syncing

| Type | Description | Supported Sync Modes | API Reference |
| - | - | - | - |
| **User profiles** | Sync data from any source to Xtremepush user profiles | Upsert | [User profiles docs](https://docs.xtremepush.com/reference/user-profile-import) |
| **User lists** | Sync data from any source to maintain Xtremepush user list memberships | Add, Remove | [User lists docs](https://docs.xtremepush.com/reference/list-import) |
| **Campaign triggers** | Trigger campaigns using source data | Insert | [Campaign triggers docs](https://docs.xtremepush.com/reference/campaign-execute) |
| **Events** | Sync data from any source to Xtremepush events | Insert | [Events docs](https://docs.xtremepush.com/reference/event-batch-hit) |

For more information about sync modes, refer to the [sync modes](https://docs.hightouch.com/syncs/types-and-modes.md#sync-modes) docs.

## Connect to Xtremepush

Go to the [**Destinations** overview page](https://app.hightouch.com/destinations?from=docs) and click the **Add destination** button. Select **Xtremepush** and click **Continue**. You can then authenticate Hightouch to **Xtremepush**.

Enter the following fields into Hightouch:

* **Base URL**
* **App token**

## Sync configuration

Once you've set up your Xtremepush destination and have a [model](https://docs.hightouch.com/getting-started/concepts.md#models) to pull data from, you can set up your sync configuration to begin syncing data. Go to the [**Syncs** overview page](https://app.hightouch.com/syncs?from=docs) and click the **Add sync** button to begin. Then, select the relevant model and the Xtremepush destination you want to sync to.

### Syncing user profiles

Sync data from any source to Xtremepush user profiles.

#### Record matching

To match rows from your model to user profiles in Xtremepush, you need to select the model column that contains values that match the **User ID** field.
Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync user profile fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to default and custom user profile fields.
Ensure your model's columns have the same data types as the fields you want to sync to.

#### Delete behavior

The [delete behavior](https://docs.hightouch.com/syncs/overview.md#delete-behavior) you select dictates what to do when a row no longer appears in your model's query results. You have the following options:

| Behavior | Description |
| - | - |
| **Do nothing** | Keep the user profile in Xtremepush with all its synced fields |
| **Clear** | Clear all the mapped fields, but keep the user profile in Xtremepush |
| **Delete** | Delete the synced user profiles from Xtremepush |

### Syncing user lists

Sync data from any source to maintain Xtremepush user list memberships.

#### Record matching

You can match rows from your model to user lists in Xtremepush on any column in your model and any field in Xtremepush. Ensure the data types of the model column and Xtremepush field you select match.
Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync user list fields via [field mapping](https://docs.hightouch.com/syncs/mapping-data.md).
You can map data from any of your model columns to the default user list fields.
Ensure your model's columns have the same data types as the fields you want to sync to.

### Syncing campaign triggers

Trigger campaigns using source data.

> [!WARNING]
>
> To ensure syncs send each event, your event model must use a truly unique [primary key](https://docs.hightouch.com/getting-started/concepts.md#unique-primary-key-requirement). See the [events syncs](https://docs.hightouch.com/syncs/types-and-modes.md#event-syncs) documentation for more information.

#### Record matching

You can match rows from your model to campaign triggers in Xtremepush on any column in your model and any field in Xtremepush. Ensure the data types of the model column and Xtremepush field you select match.
Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync event properties via field mapping.

### Syncing events

Sync data from any source to Xtremepush events.

> [!WARNING]
>
> To ensure syncs send each event, your event model must use a truly unique [primary key](https://docs.hightouch.com/getting-started/concepts.md#unique-primary-key-requirement). See the [events syncs](https://docs.hightouch.com/syncs/types-and-modes.md#event-syncs) documentation for more information.

#### Record matching

You can match rows from your model to events in Xtremepush on any column in your model and any field in Xtremepush. Ensure the data types of the model column and Xtremepush field you select match.
Refer to the [record matching docs](https://docs.hightouch.com/syncs/record-matching.md) for more information.

#### Field mapping

Hightouch lets you sync event properties via field mapping.

## Tips and troubleshooting

To see the exact API requests and responses from each sync run, use the [live debugger](https://docs.hightouch.com/syncs/debugger.md). To get notified by Slack, PagerDuty, SMS, or email when a sync fails, set up [sync alerts](https://docs.hightouch.com/syncs/alerting.md). If you run into an issue this page doesn't cover, [contact support](#pylon-chat).
