REST API Overview

About the OneSignal Server REST API

📘

Server API Reference

Jump To OneSignal's Server API Reference

OneSignal's server API provides robust features that can be used to:

Sending Messages

Programmatically deliver push notifications, emails, and sms from your server.

Export Data

User Data can be generated through a CSV export or individually with View device.

Notification Data can be generated in paginated groups of 50 using View notifications or individually with View notification and having the notification id available in the response after sending.

Our API also provides Notification History which shows which specific devices "clicked" or were "sent" a specific notification.

Create and Delete Segments

OneSignal allows you to target devices directly by data filters if you don't want to create segments or don't plan to send many notifications to these filter combinations.

If you are looking to create a lot of Segments and do not want to go through our Dashboard GUI, you can use our Create Segments to do this quickly and later Delete Segments if you don't need them anymore.

Add and Edit Devices

OneSignal's API provides the Edit device method to update user records server side. Common parameters that can be updated are tags and external_user_id if needing to stay updated with an Internal Database, DMP, & CRM.

The Add a device endpoint to upload your subscriber data. It is important to note that importing devices may not be enough to start sending them push. Each device must have a valid "push token"/identifier that authenticates the device with FCM/APNs. Further Android Devices must have our SDK active in the app to process our Notification Payload Structure and Websites need our Service Workers downloaded on the subscriber's browser to get our notifications.

Create and View Apps

OneSignal houses related Mobile Apps and Websites under a single OneSignal App. If you have many apps and/or websites that are not related, you can use the Create an app endpoint to generate OneSignal App Ids for each platform quickly.

You can later Update an app or View an app / View apps.