OneSignal

Connect & Ingest data from OneSignal

OneSignal is a customer engagement platform for push notifications, email, SMS, and in-app messaging. The Sling OneSignal connector extracts data from the OneSignal REST API, supporting apps, segments, templates, messages/notifications, and devices.

circle-check

Setup

The following credentials and inputs are accepted:

Secrets:

  • app_api_key (required) -> Your OneSignal App API Key

  • org_api_key (required for apps endpoint) -> Your OneSignal Organization API Key

Inputs:

  • app_id (required) -> Your OneSignal App ID

  • anchor_date (optional) -> The starting date for historical data extraction (default: 1 year ago). Format: YYYY-MM-DDTHH:MM:SSZ

Getting Your API Keys

  1. Log in to your OneSignal dashboard at dashboard.onesignal.comarrow-up-right

  2. App API Key: Go to Settings > Keys & IDs to find your App API Key and App ID

  3. Organization API Key: Go to Organization > API Keys and create a new key

Using sling conns

Environment Variable

See here to learn more about the .env.sling file.

Sling Env File YAML

See here to learn more about the sling env.yaml file.

With anchor date for historical data:

Replication

Here's an example replication configuration to sync OneSignal data to a PostgreSQL database:

Sync all endpoints:

Endpoints

Endpoint
Description
Incremental

apps

All apps in the organization (requires org_api_key)

No

segments

All segments for the app

No

templates

All message templates for the app

No

messages

Sent messages/notifications, filtered by time offset

Yes

devices

Player/device records (deprecated API)

No

To discover available endpoints:

Rate Limiting

The OneSignal API has a rate limit of 1 request per second for view endpoints. The connector automatically:

  • Uses conservative rate limiting (1 request/second)

  • Limits concurrency to 1 parallel request

  • Retries with exponential backoff on 429 (rate limit) responses

  • Retries on 5xx server errors

If you are facing issues connecting, please reach out to us at [email protected]envelope, on discordarrow-up-right or open a Github Issue herearrow-up-right.

Last updated

Was this helpful?