Set up message integrations
Integrations allow you to distribute messages to your players while they aren’t interacting with your game. Players may be offline, inactive for a long time, or may have deleted the game, but with the right integration, you can still reach them.
Supported integrations #
| Integration | Delivery type |
|---|---|
| OneSignal | Push notification and email |
| Apple Push Notification Service (APNS) | Push notification |
| Firebase Cloud Messaging (FCM) | Push notification |
| Facebook App-to-User (Facebook A2U) | Push notification |
| Webhook | HTTP request to a configured endpoint |
Set up an integration #
- Go to Settings > Integrations.
- Under Message Integrations, select the integration you want to configure.
- Enter the required credentials and select Save.

You can configure multiple integrations. Each schedule and direct message lets you select which integrations to use at send time.
Match players to integrations #
For Satori to deliver a message through an integration, the player’s device token must be stored in the corresponding default property. The game client is responsible for capturing and writing this token to Satori when the player grants notification permissions.
| Integration | Default property |
|---|---|
| OneSignal | PushTokenOneSignalPlayerID |
| APNS | pushTokenIos |
| FCM | pushTokenAndroid |
| Facebook A2U | pushTokenFacebookA2U |
When a message is sent, Satori checks which integrations are enabled for that schedule and delivers through each one where a matching token exists for the player.
Webhook integration #
The Webhook integration sends an HTTP POST request to a configured endpoint when a message is triggered. Use it to connect Satori’s messaging to an external system not covered by the built-in integrations. For setup instructions and payload details, see Integrate webhooks.
Delivery errors #
When an external provider fails to deliver a message, the error is surfaced in the Console UI. Open the relevant message schedule or direct message to view the error details returned by the provider.
Use delivery errors to diagnose common issues: expired or missing device tokens, invalid integration credentials, or provider-side failures. You don’t need to check the external provider’s dashboard separately.
