OneSignal Android SDK: Data safety form answers
If your Android app includes OneSignal Android SDK from OneSignal, its data counts as data your app collects. According to the vendor, it collects app interactions (collected, not shared: the vendor acts as a service provider).
Matched dependencies: com.onesignal:*.
What to declare
Section titled “What to declare”| Data type | Collected | Shared | Ephemeral | Purposes |
|---|---|---|---|---|
| App interactions | Yes | No | No | Analytics; Developer communications |
Whether each type is required or optional for users depends on your app: optional only if users can turn it off and the app honors that.
Only declare these if they apply
Section titled “Only declare these if they apply”| Data type | When | Collected | Shared | Purposes |
|---|---|---|---|---|
| Purchase history | If your app has in-app purchases | Yes | No | Analytics |
| Precise location | Only if your app collects location and sends it to OneSignal | Yes | No | Choose yours |
| Email address | Only if you add email subscriptions to OneSignal | Yes | No | Choose yours |
| Phone number | Only if you add SMS subscriptions to OneSignal | Yes | No | Choose yours |
| Name | Only if sent via Tags or Outcomes | Yes | No | Choose yours |
| User IDs | Only if sent via Tags or Outcomes | Yes | No | Choose yours |
| Other info | Only if sent via Tags or Outcomes | Yes | No | Choose yours |
| Device or other IDs | Only if you link identifiers with Aliases | Yes | No | Choose yours |
The skill lists these under Needs your review and checks the code for the condition (for example a setUserId call) before you include them.
App interactions (sessions, notification clicks) are always collected. Other types depend on what you send: email/phone if added to OneSignal, personal data via Tags or Outcomes, precise location if your app collects and sends it, device IDs if you link identifiers with Aliases (no GAID by default). The vendor’s purpose answers for the conditional types are shown only in screenshots and were not captured.
The CSV rows this sets
Section titled “The CSV rows this sets”These are the rows of Google’s Data safety CSV that OneSignal Android SDK turns to true (or false for the ephemeral question). Columns: question ID, response ID, value. You also answer the required/optional row for each type.
PSL_DATA_TYPES_APP_ACTIVITY,PSL_USER_INTERACTION,truePSL_DATA_USAGE_RESPONSES:PSL_USER_INTERACTION:PSL_DATA_USAGE_COLLECTION_AND_SHARING,PSL_DATA_USAGE_ONLY_COLLECTED,truePSL_DATA_USAGE_RESPONSES:PSL_USER_INTERACTION:PSL_DATA_USAGE_EPHEMERAL,,falsePSL_DATA_USAGE_RESPONSES:PSL_USER_INTERACTION:DATA_USAGE_COLLECTION_PURPOSE,PSL_ANALYTICS,truePSL_DATA_USAGE_RESPONSES:PSL_USER_INTERACTION:DATA_USAGE_COLLECTION_PURPOSE,PSL_DEVELOPER_COMMUNICATIONS,trueDetect it automatically
Section titled “Detect it automatically”data-safety-from-code finds OneSignal Android SDK in your build.gradle or version catalog, adds these answers with a link to the source, and merges them with every other SDK and with what your own code sends. You get a CSV to import and a report showing where each answer comes from.
/plugin marketplace add sanikantv/data-safety-from-code/plugin install data-safety-from-code@data-safety-from-codeclaude plugin marketplace add sanikantv/data-safety-from-codeclaude plugin install data-safety-from-code@data-safety-from-codenpx --yes skills add sanikantv/data-safety-from-code --skill data-safety-from-code -ygit clone https://github.com/sanikantv/data-safety-from-code.gitcp -r data-safety-from-code/skills/data-safety-from-code ~/.claude/skills/Other messaging and notifications SDKs
Section titled “Other messaging and notifications SDKs”Related: collected vs shared · how to fill the Data safety form · all SDKs
Want the form filled from your own code, with evidence? Install the skill. If this page helped,star the repo on GitHub.
Built by Sanikant. Set in Google Sans Flex (SIL Open Font License), icons from Material Symbols (Apache 2.0). Google Play is a trademark of Google LLC; this project is not affiliated with Google. Output is a draft for review: you are responsible for your Data safety declaration.