1
0
mirror of synced 2025-12-29 09:03:46 -05:00
Files
airbyte/airbyte-integrations/connectors/source-onesignal/bootstrap.md
Bo Lu fac6840cc8 🎉 New Source: OneSignal (#6998)
* add source onesignal

* update PR number in change log

* change source define cursor and sync mode

* get correct max cursor time across stream slices

* code improvement as code review advices

* format code

* remove unused code

* remove TODOs

Co-authored-by: Maksym Pavlenok <antixar@gmail.com>
2021-10-22 00:38:50 -03:00

1.5 KiB

OneSignal

Overview

OneSignal is a customer messaging and engagement platform that allows businesses to create meaningful customer connections. OneSignal REST API allows a developer to retrieve audience and messaging information on the OneSignal platform.

Endpoints

OneSignal API consists of four endpoints which can be extracted data from:

  1. App: The collection of audience and messaging channels.
  2. Device: A customer's device which can send message to, it is associated with app.
  3. Notification: A messaging activity associated with app.
  4. Outcome: Aggregated information associated with app, for example, session duration, number of clicks, etc.

Quick Notes

  • Each app has its own authentication key to retrieve its devices, notifications and outcomes. The key can be found in the app's endpoint response.

  • Device and notification endpoint has 300 and 50 records limit per request respectively, so the cursor pagination strategy is used for them.

  • Rate limiting follows https://documentation.onesignal.com/docs/rate-limits, when a 429 HTTP status code returned.

  • For the outcome endpoint, it needs to specify a comma-separated list of names and the value (sum/count) for the returned outcome data. So this requirement is added to the source spec.

API Reference

The API reference documents: https://documentation.onesignal.com/reference