Skip to main content

Channels

Categories and suppression

NON_SUPPRESSIBLE_CATEGORIES = ["payment", "system", "transactional"]. Users can never mute these categories; gating only applies to suppressible ones (currently marketing).

Targeting

Push / in-app / live activity

Targeted by include_aliases.external_id = [auth.users.id]. The mobile SDK sets it on login.

SMS

Targeted by include_phone_numbers with the E.164 phone resolved from user_metadata.phone / user_phone.
horizon-api holds no device tokens. The mobile SDK must call OneSignal.login(auth.users.id) so OneSignal can resolve the external_id the backend targets.

Result classification