Theme
Push Notification Integrations
Push notification integrations allow your bots to send proactive messages to users outside of an active conversation. This is useful for appointment reminders, status updates, promotional messages, and other scenarios where you need to reach users who are not currently engaged with the chat widget.
Supported Providers
| Provider | Platform | Authentication |
|---|---|---|
| FCM (Firebase Cloud Messaging) | Android, Web | Firebase service account |
| APNs (Apple Push Notification service) | iOS, macOS | APNs key or certificate |
| Web Push (VAPID) | All modern browsers | VAPID key pair |
Configuring FCM
Firebase Cloud Messaging is the standard for push notifications on Android devices and can also deliver to web browsers.
- Go to Settings > Integrations > Add Integration.
- Select Push Notifications as the type, then choose FCM.
- Enter a label (e.g., "Firebase Production").
- Upload or paste your Firebase service account JSON key from the Firebase Console.
- Enter your Firebase Project ID.
- Click Test Connection, then Save.
TIP
Download the service account key from Firebase Console > Project Settings > Service accounts > Generate new private key. Use a dedicated service account with only the Firebase Cloud Messaging API permission.
Configuring APNs
Apple Push Notification service delivers notifications to iOS and macOS devices.
- Select Push Notifications > APNs.
- Choose authentication method: Key (recommended) or Certificate.
- For key-based auth:
- Enter your Key ID and Team ID from Apple Developer.
- Upload the
.p8private key file. - Enter the Bundle ID of your app.
- For certificate-based auth:
- Upload the
.p12certificate file. - Enter the certificate password.
- Upload the
- Select the environment: Sandbox (development) or Production.
- Click Test Connection, then Save.
WARNING
APNs sandbox and production environments are separate. Notifications sent to the wrong environment will fail silently. Make sure the environment setting matches how your app was built and signed.
Configuring Web Push (VAPID)
Web Push uses the VAPID (Voluntary Application Server Identification) protocol to deliver notifications to browsers without requiring a third-party service.
- Select Push Notifications > Web Push.
- Enter a label (e.g., "Web Push Production").
- Enter your VAPID Public Key and VAPID Private Key.
- Enter a contact email (required by the VAPID spec for abuse reporting).
- Click Test Connection, then Save.
If you do not have VAPID keys, you can generate them using the web-push library:
npx web-push generate-vapid-keysPush notification provider configuration showing FCM, APNs, and Web Push provider cards with credential fields, environment selector, and test notification button
Notification Triggers
After configuring a push integration, you can set up triggers that automatically send notifications based on events.
- Go to Settings > Notifications > Triggers (or navigate from the push integration).
- Click Create Trigger.
- Configure the trigger:
| Field | Description |
|---|---|
| Name | Descriptive label for the trigger |
| Event Type | The event that fires the trigger (e.g., conversation.escalated, appointment.reminder) |
| Conditions | Optional filter conditions (e.g., only fire for specific bot IDs or user segments) |
| Message Template | The notification title and body, with support for variable substitution |
| Channel | Which push provider to use (FCM, APNs, Web Push, or all) |
TIP
Use variable placeholders in message templates like {{user.name}} and {{bot.name}} to personalize notifications. Available variables depend on the event type.
Testing Push Delivery
To verify your push integration works end to end:
- Open the integration and click Send Test Notification.
- Select a registered device or browser subscription from the list.
- Enter a test message title and body.
- Click Send.
The test notification should appear on the target device within a few seconds. If it does not arrive, check:
- The device or browser has granted notification permissions
- The push subscription is still valid (subscriptions can expire)
- The credentials in the integration are correct and not expired
Managing Subscriptions
Users who interact with your chat widget or mobile app can opt in to push notifications. Their subscriptions are managed automatically by OmniBots. You can view active subscriptions from the Subscriptions tab on each push integration.
| Column | Description |
|---|---|
| Device/Browser | Identifier for the subscribed endpoint |
| Created | When the subscription was registered |
| Last Active | When the last notification was successfully delivered |
| Status | Active, Expired, or Unsubscribed |
Next Steps
- Configure languages for multilingual notification content
- Learn about notification triggers and delivery analytics
