> ## 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.

# OneSignal

> Deliver mobile and web push notifications using OneSignal with fresh data from your data warehouse

## Overview

With the OneSignal destination, Hightouch can:

* Update tags on existing devices via the external unique ID

## Setup

To set up the OneSignal destination, navigate to Destinations and Add New. We can find the keys needed to access OneSignal at OneSignal > Settings > Keys & IDs.

![](https://mintcdn.com/hightouch-3c037897/L_vQfA0JQEpeGUUo/images/destinations/destination-onesignal-setup.png?fit=max\&auto=format\&n=L_vQfA0JQEpeGUUo\&q=85\&s=4d85d6a5d939beb64fbc70c963ec6a70)

## Modes

### Updating tags via external unique ID

The destination is configured by default to update tags via external unique ID. In this mode, tags are added or updated on existing devices using the external unique ID.

This mode is good for the following scenarios:

* Adding LTV based on external unique ID to a device
* Assigning segment data to a device

| Name | Description |
| :- | :- |
| Hightouch Column Containing OneSignal External User ID | The column containing the external user ID of the OneSignal device, which is contained in the OneSignal field `external_user_id` |
| Hightouch Column to OneSignal Tag Mappings | A list of columns that will be pushed to tags in OneSignal. Each column and it's value for each row will be a key:value pair in the device's tags. |

## 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).
