# Connect OneSignal

> Send push notifications to web and mobile subscribers from Caramel Journeys and Broadcasts.

Connect OneSignal to send push notifications through Caramel's **Journeys** and **Broadcasts**. Push is a delivery channel alongside Email, SMS, and WhatsApp — you write the message once and Caramel sends it via OneSignal to your subscribers.

> **Plan** OneSignal counts as one integration slot. See [Usage and limits](../billing/usage-and-limits).

## Before you begin

- You need a OneSignal account with at least one app configured. Sign up at [onesignal.com](https://onesignal.com).
- From your OneSignal dashboard, collect:
  - **App ID** — found in **Settings → Keys & IDs**.
  - **REST API Key** — found in **Settings → Keys & IDs** next to the App ID.
- You also need to install the OneSignal SDK on your website or mobile app so subscribers can opt in to push. (OneSignal's docs cover SDK setup — that step is outside Caramel.)

## Connect

1. Open **Integrations** and find the OneSignal card.
2. Click **Connect**. The OneSignal settings panel opens.
3. Enter your **App ID** and **REST API Key**.
4. Click **Save**. Caramel validates the credentials against OneSignal and sets the status to **Connected**.

<!-- screenshot: OneSignal settings panel showing the App ID and REST API Key fields -->

## Choose which events send push notifications

After connecting, open the **Events** section to toggle which Caramel events trigger a push:

- Form submitted
- Reward earned
- Appointment reminder
- Custom journey message (Push channel)

Toggle each event on or off. Click **Save events**.

## Send a test push

1. In the OneSignal settings panel, click **Send test push**.
2. Caramel sends a test notification to a subscribed device to confirm the connection is working.

> **Note** If no subscribers are enrolled yet (for example, right after installing the OneSignal SDK), the test will report "no subscribed devices." This is expected — the connection is valid.

## Use push in Journeys and Broadcasts

Once connected, **Push** appears as a channel option when composing a Journey step or a Broadcast. Caramel sends the message to all subscribers matching the target segment via OneSignal.

## Disconnect

1. Open **Integrations** and click the OneSignal card.
2. Click **Disconnect** and confirm. Push sending stops; no subscriber data in OneSignal is affected.

## Next steps

- [Journeys](../marketing/journeys) — add a Push step to an automated campaign
- [Broadcasts](../marketing/broadcasts) — send a one-time push to a segment
- [Connect an integration](connect-an-integration)
