How to connect Gmail + Slack + OneSignal
Zapier lets you send info between Gmail and Slack and OneSignal automatically—no code required. With 5,000+ supported apps, the possibilities are endless.
- Free forever for core features
- 14 day trial for premium features & apps
Do even more with Gmail + Slack + OneSignal
With Zapier, you can do more than just connect your apps - you can automate entire processes from beginning to end! Check out the following list of triggers and actions you can use with Gmail, Slack, and OneSignal. And don’t forget that you can add more apps and actions to create complex workflows.
Label/Mailbox
Search String
This works the same as the search bar you see in Gmail. For example:
from:amy OR from:david
orsubject:dinner label:my-family
. Learn more.
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planSearch StringRequired
By default this search will trigger on emails in all folders, including Sent emails, which most people don't want. To limit results, like to your inbox, include
in:inbox
.This works the same as the search bar you see in Gmail. For example:
from:amy OR from:david
orin:inbox subject:dinner label:my-family
. Learn more.
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planSubjectRequired
To
Who will this email be sent to? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Cc
Who should be cc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Bcc
Who should be bcc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.From
Select an email address or alias from your Gmail Account. Defaults to the primary email address.
From Name
Customize the from name (but must be sent via the email address you connected).
Body Type
BodyRequired
Signature
Include a default signature with the email? Will be placed at end of the message after a line break and another "--" line. Note: Only signatures set as your Gmail account email/alias "Signature Defaults" > "For New Emails Use" are displayed.
Label/Mailbox
Attachments
A file to be attached. Can be an actual file or a public URL which will be downloaded and attached.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.NameRequired
Can have parents via a simple forward slash syntax: "Parent/Child"
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Message to Remove Label(s) FromRequired
Label(s) to RemoveRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Search StringRequired
This works the same as the search bar you see in Gmail. For example:
from:amy OR from:david<
orsubject:dinner label:my-family
. Learn more. Note: Only one email will be returned by the search.
ActionThis is an event a Zap performs.SearchFind existing data in your appTrigger for Bot Messages?
If
no
, only messages sent by users will trigger the Zap. Ifyes
, messages sent by users and slackbots will trigger the Zap.Warning: Slackbots don't have profiles. If
yes
, don't depend on user profile information being present. Also, avoid Zap loops where Zaps trigger and post slackbot messages to the same channel!
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.ChannelRequired
Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel. Note: This trigger only supports attachment information for messages generated by bots. If you need to retrieve attachment information from non-bots, see this help document.
Trigger for Bot Messages?
If
no
, only messages sent by users will trigger the Zap. Ifyes
, messages sent by users and slackbots will trigger the Zap.Warning: Slackbots don't have profiles. If
yes
, don't depend on user profile information being present. Also, avoid Zap loops where Zaps trigger and post slackbot messages to the same channel!
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.Channel
Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel.
User Name
Trigger on files created by a single user.
Shared
Trigger when files are shared with you. Please note that this will trigger on created files as well.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.ChannelRequired
Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel.
Trigger for Bot Messages?
If
no
, only messages sent by users will trigger the Zap. Ifyes
, messages sent by users and slackbots will trigger the Zap.Warning: Slackbots don't have profiles. If
yes
, don't depend on user profile information being present. Also, avoid Zap loops where Zaps trigger and post slackbot messages to the same channel!
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.Reaction
Only triggers when this reaction is added to a message. Use the dropdown to select one of your team's custom emoji or select
Use a Custom Value
and enter the name of a standard emoji. Use this cheat sheet for reference and be sure not to include the colons. Note that you cannot use an emoji's alias in this field.Channel
Only triggers on reactions added on messages in this public channel. Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel.
User
Only triggers on reactions added by this user.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.New User
Triggers when a new Slack user is created / first joins your org.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.ChannelRequired
UsersRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Send Multi Message
Toggle to send to multiple users.
Message TextRequired
Specify text of the message to send. Check out the formatting help doc for advanced options.
Send as a bot?
If you choose
no
, this message will appear to come from you. Direct messages are always sent by bots.Bot Name
Specify the bot name which appears as a bold username above the message inside Slack. Defaults to
Zapier
. When usingSchedule At
, this field will be ignored by slack.Bot Icon
Either an image url or an emoji available to your team (surrounded by
:
). For example,https://site.com/icon_256.png
or:robot_face:
. When usingSchedule At
, this field will be ignored by slack.Include a link to this Zap?
If you choose
yes
, a link to this Zap will be added to the end of the message, making it easy for you and your team to edit the Zap with one click.Attach Image by URL
If specified, this will upload the given image URL to Slack and attach it to the message separately.
Auto-Expand Links?
Should Slack try to automatically expand links in this message? For example: turn a YouTube link into a playable widget.
Link Usernames and Channel Names?
If
no
, any usernames and channels mentioned won't be linked (or mentioned). Also affects@channel
and@group
. Unfortunately,@here
notifications cannot be sent by Zapier.Schedule At
Schedule the message to be posted later. Cannot be more than 120 days in the future. If you do schedule a message, rather than post it immediately, this Zap step will not return a
ts
orpermalink
field. This option does not supportBot Name
andBot Icon
customization and will default to Zapier as bot name and icon.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.ChannelRequired
Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel.
Message TextRequired
Specify text of the message to send. Check out the formatting help doc for advanced options.
Send as a bot?
If you choose
no
, this message will appear to come from you. Direct messages are always sent by bots.Bot Name
Specify the bot name which appears as a bold username above the message inside Slack. Defaults to
Zapier
. When usingSchedule At
, this field will be ignored by slack.Bot Icon
Either an image url or an emoji available to your team (surrounded by
:
). For example,https://site.com/icon_256.png
or:robot_face:
. When usingSchedule At
, this field will be ignored by slack.Include a link to this Zap?
If you choose
yes
, a link to this Zap will be added to the end of the message, making it easy for you and your team to edit the Zap with one click.Attach Image by URL
If specified, this will upload the given image URL to Slack and attach it to the message separately.
Auto-Expand Links?
Should Slack try to automatically expand links in this message? For example: turn a YouTube link into a playable widget.
Link Usernames and Channel Names?
If
no
, any usernames and channels mentioned won't be linked (or mentioned). Also affects@channel
and@group
. Unfortunately,@here
notifications cannot be sent by Zapier.Schedule At
Schedule the message to be posted later. Cannot be more than 120 days in the future. If you do schedule a message, rather than post it immediately, this Zap step will not return a
ts
orpermalink
field. This option does not supportBot Name
andBot Icon
customization and will default to Zapier as bot name and icon.File
Include a file to send along with your message. NOTE: Bot names/icons cannot be customized when sending a File.
Thread
If you want this to be part of a thread, you'll need the timestamp (Ts) of the parent message. For example:
1345232312616.1231232
.If you get the message from a trigger, select "use a custom value" from the dropdown and connect accordingly by selecting the Ts field.
Otherwise, add a search step and fetch the message you want.
Broadcast To Channel?
If true, posts in the thread and channel. See here for more info. Ignored unless the message is part of a thread.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.First Name
Fields left blank will be ignored.
Last Name
Fields left blank will be ignored.
Title
Fields left blank will be ignored.
Email
Changing a user's email address will send an email to both the old and new addresses, and also post a slackbot to the user informing them of the change.
User
Update selected values on this user's profile. This argument may only be specified by team admins on paid teams. Defaults to your status, when blank.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Owner
Determines which App Extensions will appear in the dropdown below.
App ExtensionRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Search QueryRequired
Search query to use for finding matching messages. See the Slack Search Documentation for more information on constructing a query.
Sort By
Sort messages by their match strength or by their date. Default is score.
Sort Direction
Sort matching messages in ascending or descending order. Default is descending.
ActionThis is an event a Zap performs.SearchFind existing data in your appIDRequired
Search is case-insensitive
Return Raw Results?
For most responses, we prettify the result we get from Slack. If we're missing a field you're expecting, set this to true
ActionThis is an event a Zap performs.SearchFind existing data in your appUsernameRequired
The leading
@
is optionalReturn Raw Results?
For most responses, we prettify the result we get from Slack. If we're missing a field you're expecting, set this to true
ActionThis is an event a Zap performs.SearchFind existing data in your appNotification ContentRequired
Title
The title to be displayed above the content of your notification on each device that receives it. This will default to your application title.
Send Time
Send the notifications at this time. This will default to immediately.
Open URL
An optional URL to be opened when the user clicks your notification.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
New Label
Triggers when you add a new label.
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planLabel/Mailbox
(Note: If no Label/Mailbox is selected, this Zap will trigger on all e-mails, including Drafts.)
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planNew Starred Email
Triggers when you receive a new email and star it within two days.
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planLabel(s) to Add
Message to be LabeledRequired
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Trigger Instructions
Important
If you are using a Gmail trigger for this Zap, we recommend only triggering off of "Inbox" messages to avoid Zap Loops.
For the "New Email Matching Search" Gmail trigger, please add
label:inbox
to the end of your "Search String."For the "New Email", "New Labeled Email", and "New Thread" Gmail triggers, please select
INBOX
for the "Label/Mailbox" field.ThreadRequired
If you're not using a Gmail trigger for this Zap, we recommend adding a Search step to find the thread you want.
To
Who will this email be sent to? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Cc
Who should be cc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Bcc
Who should be bcc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.From
Select an email address or alias from your Gmail Account. Defaults to the primary email address.
From Name
Customize the from name (but must be sent via the email address you connected).
Body Type
BodyRequired
Signature
Include a default signature with the email? Will be placed at end of the message after a line break and another "--" line. Note: Only signatures set as your Gmail account email/alias "Signature Defaults" > "For New Emails Use" are displayed.
Label/Mailbox
Attachments
A file to be attached. Can be an actual file or a public URL which will be downloaded and attached.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.To
Who will this email be sent to? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Cc
Who should be cc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Bcc
Who should be bcc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.From
Select an email address or alias from your Gmail Account. Defaults to the primary email address.
From Name
Reply To
Specify a single reply address other than your own.
SubjectRequired
Body Type
If using the HTML option, you must add any and all formatting (paragraphs, lists, etc) directly using HTML. Learn more.
BodyRequired
Signature
Include a default signature with the email? Will be placed at end of the message after a line break and another "--" line. Note: Only signatures set as your Gmail account email/alias "Signature Defaults" > "For New Emails Use" are displayed.
Label/Mailbox
Attachments
A file to be attached. Can be an actual file or a public URL which will be downloaded and attached.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Trigger Instructions
Important
If you are using a Gmail trigger for this Zap, we recommend only triggering off of "Inbox" messages to avoid Zap Loops.
For the "New Email Matching Search" Gmail trigger, please add
label:inbox
to the end of your "Search String."For the "New Email", "New Labeled Email", and "New Thread" Gmail triggers, please select
INBOX
for the "Label/Mailbox" field.ThreadRequired
If you're not using a Gmail trigger for this Zap, we recommend adding a Search step to find the thread you want.
To
Who will this email be sent to? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Cc
Who should be cc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Bcc
Who should be bcc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.From
Select an email address or alias from your Gmail Account. Defaults to the primary email address.
From Name
Reply To
Specify a single reply address other than your own.
Body Type
If using the HTML option, you must add any and all formatting (paragraphs, lists, etc) directly using HTML. Learn more.
BodyRequired
Label/Mailbox
Attachments
A file to be attached. Can be an actual file or a public URL which will be downloaded and attached.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Search StringRequired
This works the same as the search bar you see in Gmail. For example:
from:amy OR from:david<
orsubject:dinner label:my-family
. Learn more. Note: Only one email will be returned by the search.To
Who will this email be sent to? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Cc
Who should be cc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.Bcc
Who should be bcc'd on this email? Multiple email addresses can be entered either individually, or as a comma separated list, eg.
test@example.com,example@example.com
.From
Select an email address or alias from your Gmail Account. Defaults to the primary email address.
From Name
Reply To
Specify a single reply address other than your own.
SubjectRequired
Body Type
If using the HTML option, you must add any and all formatting (paragraphs, lists, etc) directly using HTML. Learn more.
BodyRequired
Signature
Include a default signature with the email? Will be placed at end of the message after a line break and another "--" line. Note: Only signatures set as your Gmail account email/alias "Signature Defaults" > "For New Emails Use" are displayed.
Label/Mailbox
Attachments
A file to be attached. Can be an actual file or a public URL which will be downloaded and attached.
ActionThis is an event a Zap performs.Search or writeFind existing data in your app, or create a new record if no data is foundNew Channel
Triggers whenever a new #channel is created.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.Include Alias
Choose yes to trigger when someone creates a new name for an existing emoji.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.User Name
Linked mentions of this user will trigger the zap. Make sure to specify a value for one or both of username or a highlight word. Specifying both a username and a highlight word means that both the linked username and word need to be included in a message to trigger the zap.
Highlight Word
Mentions of this word will trigger the zap. Case insensitive. Make sure to specify a value for one or both of username or a highlight word. Specifying both a username and a highlight word means that both the linked username and word need to be included in a message to trigger the zap.
Trigger for Bot Messages?
If
no
, only messages sent by users will trigger the Zap. Ifyes
, messages sent by users and slackbots will trigger the Zap.Warning: Slackbots don't have profiles. If
yes
, don't depend on user profile information being present. Also, avoid Zap loops where Zaps trigger and post slackbot messages to the same channel!
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.New Pushed Message
Triggers when you click the "Push to Zapier" button from a message in Slack.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.New Saved Message
Triggers when you save a message.
Try ItTriggerThis is the start of your ZapInstantThis event starts a Zap instantly.TextRequired
The actual reminder text that should be sent to yourself or a user. To include URLs, Slack uses this syntax.
Remind when?Required
Slack parses natural language like "in 15 minutes" or "every Thursday". Times are relative to when the Zap actually runs.
Remind who?
Pick a user to remind. If you pick no one, you will be reminded.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.ChannelRequired
Only channels you are a member of will appear in this list. If you can't find your channel, click the Load More button or switch to the Custom tab and enter the channel's ID. Once live, the trigger will work even if you are not a member of the channel.
Message TextRequired
Specify text of the message to send. Check out the formatting help doc for advanced options.
Send as a bot?
If you choose
no
, this message will appear to come from you. Direct messages are always sent by bots.Bot Name
Specify the bot name which appears as a bold username above the message inside Slack. Defaults to
Zapier
. When usingSchedule At
, this field will be ignored by slack.Bot Icon
Either an image url or an emoji available to your team (surrounded by
:
). For example,https://site.com/icon_256.png
or:robot_face:
. When usingSchedule At
, this field will be ignored by slack.Include a link to this Zap?
If you choose
yes
, a link to this Zap will be added to the end of the message, making it easy for you and your team to edit the Zap with one click.Attach Image by URL
If specified, this will upload the given image URL to Slack and attach it to the message separately.
Auto-Expand Links?
Should Slack try to automatically expand links in this message? For example: turn a YouTube link into a playable widget.
Link Usernames and Channel Names?
If
no
, any usernames and channels mentioned won't be linked (or mentioned). Also affects@channel
and@group
. Unfortunately,@here
notifications cannot be sent by Zapier.Schedule At
Schedule the message to be posted later. Cannot be more than 120 days in the future. If you do schedule a message, rather than post it immediately, this Zap step will not return a
ts
orpermalink
field. This option does not supportBot Name
andBot Icon
customization and will default to Zapier as bot name and icon.File
Include a file to send along with your message. NOTE: Bot names/icons cannot be customized when sending a File.
Thread
If you want this to be part of a thread, you'll need the timestamp (Ts) of the parent message. For example:
1345232312616.1231232
.If you get the message from a trigger, select "use a custom value" from the dropdown and connect accordingly by selecting the Ts field.
Otherwise, add a search step and fetch the message you want.
Broadcast To Channel?
If true, posts in the thread and channel. See here for more info. Ignored unless the message is part of a thread.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Channel NameRequired
Name for the channel to be created. Channel names are normalized by converting to lowercase, replacing any non-allowed characters with hyphens or underscore, and truncating to 80 characters.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.ChannelRequired
TopicRequired
Slack will auto-link @names and #channels where applicable.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Status Text
Leave empty to clear.
Status Emoji
Use any emoji that's available in your Slack team, with leading and trailing
:
.If emoji is blank when text isn't,
:speech_balloon:
is used by default. If both text and emoji are empty, your status will be cleared.Expiration Time
Provide a specific date & time for this status to expire. Statuses will not expire by default.
You can also specify a duration for this status by entering in a value like
in 60 minutes
, for example. Check out other ways you can use this field here.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.Raw Request User Info
Note: Zapier's Slack app supports a limited set of OAuth scopes/permissions, thus many of Slack's API endpoints aren't currently feasible.
Api Docs Info
API docs for Slack are located here https://api.slack.com/methods
HTTP MethodRequired
URLRequired
Requests can only be made to domains associated by this application.
Query String Parameters
These params will be URL-encoded and appended to the URL when making the request.
Headers
Authentication headers are included automatically
Additional Request Headers
Zapier will apply these optional headers and values to the request in addition to any headers created as part of the authentication mechanism.
Body
Zapier will pass this along raw. If you would like to provide complex JSON, try a "Code by Zapier" step to build the structure and pass it along here. For example,
{"foo": "bar"}
is perfectly valid.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.EmailRequired
Search is case-insensitive
Return Raw Results?
For most responses, we prettify the result we get from Slack. If we're missing a field you're expecting, set this to true
ActionThis is an event a Zap performs.SearchFind existing data in your appFull NameRequired
We search the normalized name, so don't worry about accents
Return Raw Results?
For most responses, we prettify the result we get from Slack. If we're missing a field you're expecting, set this to true
ActionThis is an event a Zap performs.SearchFind existing data in your appNew Notification Created
Triggers when you have one or more new notifications created.
Try ItTriggerThis is the start of your ZapScheduledZapier checks for new data every 15 min on the Free planContent by Language
Required unless `content_available=true` or `template_id` is set.
The notification's content (excluding the title), a map of language codes to text for each language.
Each hash must have a language code string for a key, mapped to the localized text you would like users to receive for that language. This field supports inline substitutions. English must be included in the hash.
Example:
en
:English content
es
:Spanish content
Click here to see the list of allowed language codes.
Please use the two-letter language code as the label, then your message for that language as the value. The value for 'en' will be used as the default for all unspecified languages.
Heading by Language
The notification's title, a map of language codes to text for each language. Each hash must have a language code string for a key, mapped to the localized text you would like users to receive for that language. A default title may be displayed if a title is not provided. This field supports inline substitutions.
Example:
en
:An English title
es
:A Spanish title
Subtitle by Language
Supported on iOS 10+ only.
The notification's subtitle, a map of language codes to text for each language. Each hash must have a language code string for a key, mapped to the localized text you would like users to receive for that language. A default title may be displayed if a title is not provided. This field supports inline substitutions.
Example:
{"en": "English Subtitle", "es": "Spanish Subtitle"}
Template ID
Use a template you setup on our dashboard. You can override the template values by sending other parameters with the request. The template_id is the UUID found in the URL when viewing a template on our dashboard.
Example:
.be4a8044-bbd6-11e4-a581-000c2940e62c
iOS Content Available
Supported on iOS only.
Sending
true
wakes your app from background to run custom native code (Apple interprets this ascontent-available=1
). Note: Not applicable if the app is in the "force-quit" state (i.e app was swiped away). Omit thecontents
field to prevent displaying a visible notification.iOS Mutable Content
Sending
true
allows you to change the notification content in your app before it is displayed. TriggersdidReceive(_:withContentHandler:)
on your UNNotificationServiceExtension.Filters
Due to the complexity of supporting different types of user targeting, this field uses JSON to describe targeting filters.
Please see our documentation on Sending to Users Based on Filters.
An example from our documentation is below:
[ {"field": "tag", "key": "level", "relation": ">", "value": "10"}, {"field": "amount_spent", "relation": ">","value": "0"} ]
Note: This field is incompatible with other targeting parameters like
included_segments
orexcluded_segments
.Segment Names to Send ToRequired
The segment names you want to target. Users in these segments will receive a notification. This targeting parameter is only compatible with
excluded_segments
.Example:
["Active Users", "Inactive Users"]
. UseAll
to send to all users.Segment Names of Excluded Users
The names of segments for users to exclude from receiving this notification. If a user is a member of any of the segments in this list, they will not receive the notification.
Can not be combined with include_player_ids, include_ios_tokens, include_android_reg_ids, include_wp_urls, or tags.
Player (User) IDs to Send To
OneSignal device ids to send this message to.
Can not be combined with included_segments, excluded segments, or tags.
IOS Device Tokens to Send To
IOS tokens to send this notification to. If a OneSignal user does not yet exist with this token, a new user will be created.
Can not be combined with included segments, excluded segments, or tags.
Android Reg IDs to Send To
Android registration ids to send this notification to. If a OneSignal user does not yet exist with a specified registration id, a new user will be created.
Can not be combined with included_segments, excluded segments, or tags.
Amazon Reg IDs to Send To
Amazon registration ids to send this notification to. If a OneSignal user does not yet exist with a specified registration id, a new user will be created.
Can not be combined with included_segments, excluded segments, or tags.
Windows Phone 8.0 URIs to Target
Windows Phone device URLs to send this notification to. If a OneSignal user does not yet exist with one of these URLs, a new user will be created.
Can not be combined with included segments, excluded segments, or tags.
Windows Phone 8.1 URIs to Target
Windows Phone 8.1 device URLs to send this notification to. If a OneSignal user does not yet exist with one of these URLs, a new user will be created.
Can not be combined with included segments, excluded segments, or tags.
Send to IOS
Send this message to iOS devices?.
Send to Android
Send this message to Android devices?.
Send to Windows Phone 8.0
Send to Windows Phone 8.0 apps?.
Send to Windows Phone 8.1
Send to Windows Phone 8.1 devices.
Send to Amazon Kindle Devices
Send to Amazon ADM devices?.
Send to Chrome Web Push Devices
Send to Chrome Web Notification subscribers?.
Send to Firefox Web Push Devices
Send to Firefox Web Notification subscribers?
Send to Safari on Mac OS X
Send to Safari browser on Mac OS X (iOS not supported).
Send to All Supported Browsers
Send to all supported web browsers including Chrome, Firefox, and Safari on Mac OS X, and Chrome on Android web browsers.
Send to Chrome App or Extension
Send to Google Chrome App/Extension? .
Custom Data
Custom key value pairs that you can programmatically read in your app's code.
Browser URL to Open
When the user opens the notification their web browser will open this url. Example:
http://google.com
.iOS Media Attachments
IOS 10+ only.
Adds media attachments to notifications. Set as JSON object, key as a media id of your choice and the value as a valid local filename or URL. User must press and hold on the notification to view.
Do not set
mutable_content
to download attachments. The OneSignal SDK does this automaticallyExample:
{"id1": "``https://domain.com/image.jpg``"}
.Android Big Picture
Specific Android picture to display in the expanded view. Can be a drawable resource name or a URL.
Amazon Big Picture
Picture to display in the expanded view. Can be a drawable resource name or a URL.
Chrome Extensions Big Picture
Note: Not for web push. For web push, please see web_push_image instead.
Large picture to display below the notification text. Must be a local URL.
Native App Buttons
Buttons to add to the notification. The key should be the ID of the button (Readable in your app code when a user presses the button), and the value should be the label shown to users for the button. Supported when using the OneSignal Plugin in your app with iOS 8.0 and Android 4.1+ devices.
Web Push Buttons
Chrome 48+ only.
Add action buttons to web push notifications.</p>
Unlike native buttons above, the key below should be the button text, and the value should be the URL users are navigated to when clicking the action button.
.Custom iOS Buttons (Ios_category
Category APS payload, use with
registerUserNotificationSettings:categories
in your Objective-C / Swift code.</p>Example:
iOS 10+ This will trigger your [UNNotificationContentExtension](https://developer.apple.com/reference/usernotificationsui/unnotificationcontentextension) whose ID matches this category.calendar
category which contains actions likeaccept
anddecline
Android Background Layout
Allowing setting a background image for the notification. This is a JSON object containing the following keys. See our Background Image documentation for image sizes.
image
- Asset file, android resource name, or URL to remote image.headings_color
- Title text color ARGB Hex format. Example(Blue):"FF0000FF"
.
Example: `{"image": "https://domain.com/background_image.jpg", "headings_color": "FFFF0000", "contents_color": "FF00FF00"}`.contents_color
- Body text color ARGB Hex format. Example(Red):"FFFF0000"
Android Small Icon
Specific Android icon to use. If blank the app icon is used. Must be the drawable resource name.
Android Large Icon
Specific Android icon to display to the left of the notification. If blank the small_icon is used. Can be a drawable resource name or a URL.
Amazon Small Icon
Specific Amazon icon to use. If blank the app icon is used. Must be the drawable resource name.
Amazon Large Icon
Specific Amazon icon to display to the left of the notification. If blank the
adm_small_icon
is used. Can be a drawable resource name or a URL.Web Push Icon
Sets the web push notification's icon. An image URL linking to a valid image. Common image types are supported; GIF will not animate. We recommend 256x256 (at least 80x80) to display well on high DPI devices. Firefox will also use this icon, unless you specify
firefox_icon
. Safari web push icons cannot be customized on a per-notification basis.Chrome Web Image
Sets the web push notification's large image to be shown below the notification's title and text. Please see Web Push Notification Icons.
Supported only in Chrome 56+.
IOS Sound
Sound file that is included in your app to play instead of the default device notification sound. Example: notification.wav.
Android Sound
Sound file that is included in your app to play instead of the default device notification sound. NOTE: Leave off file extension for Android. Example: notification.
Amazon Sound
Sound file that is included in your app to play instead of the default device notification sound.
NOTE: Leave off file extension for Android.
Example:
."notification"
Windows Phone 8.0 Sound
Sound file that is included in your app to play instead of the default device notification sound. Example: notification.wav.
Windows 8.1 Sound
Sound file that is included in your app to play instead of the default device notification sound.
Example:
."notification.wav"
Android LED Color
Sets the devices LED notification light if the device has one. ARGB Hex format.
Example(Blue):
."FF0000FF"
Android Accent Color
Sets the background color of the notification circle to the left of the notification text. Only applies to apps targeting Android API level 21+ on Android 5.0+ devices.
Example(Red):
."FFFF0000"
Android Visibility
Android 5.0+ only.
Sets the lock screen visibility for apps targeting Android API level 21+ running on Android 5.0+ devices.
1
= Public (default) (Shows the full message on the lock screen unless the user has disabled all notifications from showing on the lock screen. Please consider the user and mark private if the contents are.)0
= Private (Hides message contents on lock screen if the user set "Hide sensitive notification content" in the system settings)
.-1
= Secret (Notification does not show on the lock screen at all)IOS Badge Actions
Options are: None, SetTo, or Increase. None leaves the count unaffected on the device. If you use Increase, it will be based on the current value of the player's badge count.
IOS Badge Count
Sets or increases the badge icon on the device depending on the badge type value.
Notification Replacement Key
IOS 10+ and Android only.
Only one notification with the same id will be shown on the device. Use the same id to update an existing notification instead of showing a new one. This is known as
apns-collapse-id
on iOS andcollapse_key
on Android..Android Grouping String
All notifications with the same group will be stacked together using Android's Notification Stacking feature.
Android Grouping Stacked Message
Summary message to display when 2+ notifications are stacked together. Default is "# new messages". Include
$[notif_count]
in your message and it will be replaced with the current number.Languages - The value of each key is the message that will be sent to users for that language.
"en"
(English) is required. The key of each hash is either a a 2 character language code or one of zh-Hans/zh-Hant for Simplified or Traditional Chinese.Example:
{"en": "You have $[notif_count] new messages"}
Amazon Grouping String
All notifications with the same group will be stacked together using Android's Notification Stacking feature.
Amazon Grouping Stacked Message
Summary message to display when 2+ notifications are stacked together. Default is "# new messages". Include $[notif_count] in your message and it will be replaced with the current number. "en" (English) is required. The key of each hash is either a a 2 character language code or one of zh-Hans/zh-Hant for Simplified or Traditional Chinese. The value of each key is the message that will be sent to users for that language.
Example:
{"en": "You have $[notif_count] new messages"}
Send After
Schedule notification for future delivery. Example: Fri May 02 2014 00:00:00 GMT-0700 (PDT).
Scheduling Per-User Delay Option
Possible values are "timezone" (Deliver at a specific time-of-day in each users own timezone), and "last-active" (Deliver at the same time of day as each user last used your app). If "send_after" is used, this takes effect after the "send_after' time has elapsed.
Time of Day to Deliver
Use with delayed_option=timezone. Example: "9:00AM".
Notification Time to Live
Time To Live - In seconds. The notification will be expired if the device does not come back online within this time. The default is 259,200 seconds (3 days).
Platforms: iOS, Android, Web Push, Chrome Ext.
Message Priority
Delivery priority through the push server (example GCM/FCM). Pass
10
for high priority. Defaults to normal priority for Android and high for iOS. For Android 6.0+ devices setting priority to high will wake the device out of doze mode.Platforms: iOS, Android, Web Push, Chrome Ext.
ActionThis is an event a Zap performs.WriteCreate a new record or update an existing record in your app.
Top companies trust Zapier to automate work and free up time
Connect your apps and automate workflows
Easy automation for busy people. Zapier moves info between your web apps automatically, so you can focus on your most important work.
How Gmail + Slack + OneSignal Integrations Work
- Step 1: Authenticate Gmail, Slack, and OneSignal.30 seconds
- Step 2: Pick one of the apps as a trigger, which will kick off your automation.15 seconds
- Step 3: Choose a resulting action from the other app.15 seconds
- Step 4: Select the data you want to send from one app to the other.2 minutes
- That’s it! More time to work on other things.
Related categories
Related categories
Get started for free
You can't add more hours to the day. Zapier is the next best thing.
Other Gmail + Slack Integrations
- code
- typeform
- trello
- asana
- facebook-lead-ads
- schedule
- hubspot
- google-calendar
- stripe
- pipedrive
- webflow
- sms
- dropbox
- clickup
- zapier-manager
- clickfunnels
- squarespace
- mailchimp
- twilio
- salesforce
- jotform
- pandadoc
- jira-software
- digest
- calendly
- zendesk
- htmlcss-to-image
- mysql
- gravity-forms
- email-parser
- linkedin-lead-gen-forms
- activecampaign
- url-shortener
- leadconnector
- google-docs
- rss
- postgresql
- monday
- google-tasks
- closeio
- wufoo
- unbounce
- todoist
- thrivecart
- streak
- shopify
- notion
- instapage
- firebase
- wix-automations
- google-cloud-print
- github
- giphy
- freshdesk
- wordpress
- woocommerce
- teachable
- surveymonkey
- paypal
- paperform
- mailerlite
- jira
- intercom
- glide-apps
- facebook-lead-ads-beta
- docusign
- convertapi
- clicksend
- chargebee
- box
- basecamp3
- acuity-scheduling
- formstack
- youtube
- youcanbookme
- wachete
- videoask
- umso
- translate
- things
- tally
- sql-server
- ringcentral
- redmine
- quickbooks
- pushover
- process-street
- perspective
- ninjaforms
- netlify
- microsoft-teams
- facebook-pages
- coda
- cloudconvert
- chatwork
- callrail
- amazon-s3
- zapier-chrome-extension
- ticktick
- smartsheet
- sendinblue
- onedrive
- microsoft-todo
- knack
- nifty-pm
- xero
- wpforms
- woodpecker
- thinkific
- textmagic
- service-provider-pro
- recurly
- qwilr
- practice-ignition
- poptin
- podio
- omg-sales-assessments
- mightynetworks
- kintone
- keap-max-classic
- hellosign
- gitlab
- evernote
- copper
- confluence-cloud
- chargify
- bubble
- amazon-sns
- 123formbuilder
- zoom
- zoho-projects
- zoho-forms
- zoho-crm
- zenefits
- yammer
- wunderlist
- wrike
- workwave-route-manager
- workable
- vonage-sms-api
- twist
- trint
- toodledo
- tidio
- temi
- teamworkiq-workflow-processes
- teamwork
- tawk-to
- targetprocess
- systeme
- syncro
- surveygizmo
- sumo
- storage
- splash
- snowflake
- smtp
- signnow
- shortcut
- sendhub
- sendgrid
- scoreapp
- scheduleonce
- sap-jam
- salesflare
- runrunit
- remember-the-milk
- recharge
- realeflow
- quora-lead-gen-forms
- quickbase
- qualtrics
- pushbullet
- push-pdf
- proposify
- productboard
- podia
- pipefy
- phaxio
- pdfco
- paymo
- paykickstart
- paycove
- pathwright
- pagerduty
- ordering-inc
- opentute
- onfleet
- olark
- nusii-proposals
- mondaycom
- meistertask
- manifestly
- mailparserio
- mailparser
- mailjet
- mailgun
- magnetic
- lexoffice
- learnworlds
- leadpages
- leadfeeder
- lawmatics
- landingi
- keap
- kartra
- kanbantool
- kajabi
- jobber
- jira-service-desk
- infobip
- human-lambdas
- hippo-video
- help-scout
- harvest
- gurucan
- groovefunnels
- groove
- google-lead-form-extension
- google-chat
- google-ads
- glip
- ghost
- getaccept
- front-app
- freshsales
- freshbooks
- frameio
- formsite
- follow-up-boss
- flodesk
- factorial
- facebook-messenger
- emma
- egnyte
- dynamodb
- docsend
- discord
- deputy
- coupon-carrier
- convertkit
- convertcalculator
- contentstack
- connect365
- cognito-forms
- cobot
- cloze
- clio
- clientjoy
- clearbit
- citrix-sharefile
- chili-piper
- catchapp-bookings
- campaign-monitor
- browserstack
- breezy-hr
- bonsai
- better-proposals
- bark
- azure-devops
- autopilot
- appointy
- appcues
- apify
- amazon-sqs
- agiled
- aero-workflow