- Use IDs (like App ID) to configure SDKs and reference apps.
- Use API keys to authenticate secure REST API requests.
App ID
The App ID is a public UUID (v4) that identifies your OneSignal app. You use it for:- Initializing the SDK (Mobile SDK setup, Web SDK setup)
- Making API requests such as Create message and Create user


Your App ID is safe to use in client-side SDK initialization. It is not a secret.
Organization ID
The Organization ID (Org ID) is a UUID (v4) that groups all apps under your billing plan. You need it for Organization-level APIs such as: Find it in Organizations > Your Organization > Keys & IDs or via the View an app API.
API keys overview
OneSignal supports two types of API keys:| Key Type | Scope | Used For |
|---|---|---|
| App API Key | Single app | Sending messages, creating users, app-level operations |
| Organization API Key | Entire organization | Creating apps, managing API keys, org-level configuration |
App API key
Use an App API Key for most REST API requests related to a specific app. Authentication format: Include the key in theAuthorization header with the key authentication scheme:
Organization API key
Use an Organization API Key for:- App management: Creating apps, Viewing apps
- App API key management: Create API key, Delete API key, Rotate API key

Create API keys
You can create both App and Organization API keys from the dashboard.- App API keys can also be created via the Create API key API.
- Organization API keys can only be created via dashboard.
- Go to Keys & IDs (App or Organization level).
- Click Add Key.

- Enter a descriptive name (example: CRM Sync Service).
- (Optional) Configure IP allowlisting.
- Click Create.
- Copy and securely store the key immediately.

IP allowlist (optional but recommended)
You can restrict API key usage to specific IP addresses.- Enter space-separated CIDR blocks
- Example:
192.0.2.0/24 192.0.2.123/32
- Example:
- Requests from non-allowed IPs will be denied.
- Backend services with static IPs
- High-security production environments

Key management
After creating a key, you can manage it via the key list interface:
The Key ID is a label for reference. It is not the secret API key.
Edit API keys
You can:- Update the key name
- Modify IP allowlist settings
- App API keys can be updated via dashboard or the Update API key API.
- Organization API keys can only be updated via dashboard.
Rotate API keys
Rotating a key:- Generates a new secret
- Keeps the same name and configuration
- Immediately invalidates the old secret
- The key was exposed
- A team member with access leaves
- Routine security rotation
- App API keys can be rotated via dashboard or the Rotate API key API.
- Organization API keys can only be rotated via dashboard.
Delete API keys
Deleting a key:- Permanently removes it
- Immediately blocks API access using that key
- App API keys can be deleted via dashboard or the Delete API key API.
- Organization API keys can only be deleted via dashboard.
Migrating from legacy API keys
We introduced rich API key management on November 14, 2024. Migration Steps- Create a new App or Organization API key.
- Replace the legacy key in your code.
- Update your API base URL to:
- Disable or delete the legacy key in Keys & IDs.
Test API requests in a staging environment before disabling your legacy key in production.
Disabling your app
Block API access:- Delete or rotate API keys to immediately block REST API usage.
- Go to Settings > Manage App > Disable App.
Security best practices
- Store API keys in a secure backend (never client-side).
- Use environment variables or a secrets manager.
- Enable IP allowlisting when possible.
- Rotate keys periodically.
- Use separate keys for staging and production.