Event Streams Data
Details on all properties available for Event Streams and Webhooks.
Event properties
The event
object includes the following properties:
Event ID
Type: UUID
The event ID generated by OneSignal. Each event.kind
will have a unique ID. For the message ID, use message.id
.
Usage:
{{ event.id }}
Type
Type: String
The type of message and event (e.g. message.push.received
, message.push.sent
).
Usage:
{{ event.kind }}
The message
can be: iam
, push
, email
, sms
.
The event can be:
sent
- The push, email, or sms was sent to the Subscriptionreceived
- The push or email was received by the Subscription. See Confirmed Delivery.clicked
- The in-app, push, or email link was clicked by the user.failed
- The push, email, or sms failed to send. See message results for details.unsubscribed
- The push, email, or sms Subscription became unsubscribed.opened
- The email was opened. See Email Message Reports for details.spam
- The user reported email as spam. See Email deliverability for details.bounce
- The email address bounced. See Email Message Reports for details.suppressed
- The email was not sent because the email address is on the Suppression list.page_displayed
- A card on the in-app carousel displayed to the user.impression
- The in-app displayed to the user.
Timestamp
Type: Integer
The UNIX timestamp of the event.
Usage:
{{ event.timestamp }}
UTC datetime
Type: String
A human-readable time of the event in UTC (specifically an ISO string like "2024-02-21T23:45:15.228Z").
Usage:
{{ event.datetime }}
App ID
Type: UUID
The OneSignal App ID.
Usage:
{{ event.app_id }}
Subscription type
Type: String
The subscription type (e.g. iOS
, Android
, Chrome
, Email
, SMS
, etc).
Usage:
{{ event.subscription_device_type }}
Subscription ID
Type: UUID
The OneSignal Subscription ID.
Usage:
{{ event.subscription_id }}
OneSignal User ID
Type: UUID
The OneSignal created User ID.
Usage:
{{ event.onesignal_id }}
External User ID
Type: String
Your User ID set as the OneSignal External ID alias. Can be empty if not set in OneSignal.
Usage:
{{ event.external_id }}
Example Input
{
"event.kind": "{{ event.kind }}",
"event.id": "{{ event.id }}",
"event.timestamp": "{{ event.timestamp }}",
"event.datetime": "{{ event.datetime }}",
"event.app_id": "{{ event.app_id }}",
"event.subscription_device_type": "{{ event.subscription_device_type }}",
"event.subscription_id": "{{ event.subscription_id }}",
"event.onesignal_id": "{{ event.onesignal_id }}",
"event.external_id": "{{ event.external_id }}"
}
Message properties
The message
object is designed to keep you informed of the messages sent to the end-user. It includes properties like id
, template_id
, and content
, which contains the actual text of the message.
Message ID
Type: UUID
The message ID generated by OneSignal.
Usage:
{{ message.id }}
Message Name
Type: String
The name of the message as set in the dashboard or using the API name
property.
Usage:
{{ message.name }}
Message Title
Type: Object
The title of the push message or email subject as set in the dashboard or using the API headings
or email_subject
properties.
Usage:
{{ message.title }}
Message Contents
Type: Object
The contents of the push or SMS message as set in the dashboard or using the API contents
property (clipped at 50 characters). Email contents (email_body
) are not provided.
Usage:
{{ message.contents }}
Template ID
Type: UUID
The template ID for a message sent via Journeys or the API template_id
property.
Usage:
{{ message.template_id }}
Launch URL
Type: String
The message's launch URL (when using only one URL that is web and app agnostic). See URLs, Links and Deep Links for details.
Usage:
{{ message.url }}
App-Specific URL
Type: String
The message's launch URL when using both a web and app-specific URL. See URLs, Links and Deep Links for details.
Usage:
{{ message.app_url }}
Web-Specific URL
Type: String
The message's launch URL when using both a web and app-specific URL. See URLs, Links and Deep Links for details.
Usage:
{{ message.web_url }}
Example Message Object
{
"message.id": "f3c9cd09-10d7-4f59-b9bc-66e16607f1d5",
"message.name": "the-name-you-set",
"message.title": "Claim 50% Off Today", // email subject example
"message.title": "{'en':'the message title/headings'}", // push title example
"message.contents": "{'en':'the message content'}",
"message.template_id": "the-template-uuid-if-set",
"message.url": "the-message-url",
"message.app_url": "the-message-app-url",
"message.web_url": "the-message-web-url"
}
User properties
OneSignal ID
Type: String
The user’s OneSignal ID.
Usage
{{ user.onesignal_id }}
External ID
Type: String
The user’s External ID.
Usage:
{{ user.external_id }}
Tags
Type: Object
The user’s tags.
Usage:
- Tags object:
{{ user.tags }}
- Specific tags:
{{ user.tags.your_tag }}
Language
Type: String
The user’s language.
Usage:
{{ user.language }}
Subscription properties
Subscription ID
Type: String
The ID of the subscription the message was sent to.
Usage:
{{ user.subscription.id }}
App ID
Type: String
The ID of the app.
Usage:
{{ user.subscription.app_id }}
Subscription Token
Type: String
The token for the subscription the message was sent to.
- If the type is Email, the token will be an email address.
- If the type is SMS, the token will be a phone number in E.164 format.
- If the type is one of the Push options, the token will be a push token.
Usage:
{{ user.subscription.subscription_token }}
Session Count
Type: Number
The session count for the subscription the message was sent to.
Usage:
{{ user.subscription.session_count }}
Language
Type: String
The language set on the subscription the message was sent to.
Usage:
{{ user.subscription.language }}
Game Version
Type: String
The game version set on the subscription the message was sent to.
Usage:
{{ user.subscription.game_version }}
Last Active
Type: Number
The last active time set on the subscription the message was sent to.
Usage:
{{ user.subscription.last_active }}
Play Time
Type: Number
The play time set on the subscription the message was sent to.
Usage:
{{ user.subscription.play_time }}
Amount Spent
Type: Number
The amount spent on the subscription the message was sent to.
Usage:
{{ user.subscription.amount_spent }}
Created At
Type: Number
The creation time of the subscription the message was sent to.
Usage:
{{ user.subscription.created_at }}
Subscribed
Type: Boolean
Indicates whether the subscription the message was sent to is currently subscribed.
Usage:
{{ user.subscription.subscribed }}
SDK
Type: String
The SDK version set on the subscription the message was sent to.
Usage:
{{ user.subscription.sdk }}
Device Model
Type: String
The device model set on the subscription the message was sent to.
Usage:
{{ user.subscription.device_model }}
Device OS
Type: String
The device operating system set on the subscription the message was sent to.
Usage:
{{ user.subscription.device_os }}
Tags
Type: Object
The user’s tags. You can access the entire object or specific tags.
Usage:
- All Tags:
{{ user.tags }}
- Specific Tag:
{{ user.tags.your_tag }}
Updated about 14 hours ago