ChangelogEdit pageSTAFFOpen dashboard

Dashboard setup

What a developer sets up in the Bubbl dashboard before and after adding the SDK, and where each setting lives.

Everything a developer needs is under Configuration in the dashboard's sidebar. Owners, admins and developers see it; marketers only see Test Devices, in a Sandbox. In the sidebar the pages read Test Devices, Developer Settings, Plugin Settings, Firebase Configuration and Apple Push; this documentation uses their page titles, such as Configuration › Developers. Developers, Firebase and Apple Push are there in every Sandbox, and in Production on a paid plan. If they're greyed out, your plan doesn't include using the SDK in your own app.

Pre-release API hostsUntil 5.0 is released, the Sandbox API is at https://api.sandbox.staging.bubbl.tech and Production at https://api.staging.bubbl.tech, instead of https://api.sandbox.bubbl.tech and https://api.bubbl.tech. The API address shown under your key in Configuration › Developers is the one for your workspace.

What you need, and where#

WhatWhereFor
SDK API key and API addressConfiguration › DevelopersEvery platform: both go to Bubbl.start.
Firebase service accountConfiguration › Firebase › CredentialsAndroid push.
google-services.json (optional)Configuration › Firebase › Android appsAndroid push without Firebase files in your app.
APNs auth key per iOS appConfiguration › Apple PushiOS push.
Privacy view mode and textConfiguration › PluginWhat Bubbl shows before a permission prompt.
Test phonesConfiguration › Test Devices (Sandbox only)Getting anything on your phone in the Sandbox.

The workspace switcher under the logo at the top of the sidebar moves you between your Sandbox and Production. Each has its own key, credentials and test settings, so check which one you're in: a Sandbox shows an amber bar at the top of every page.

The SDK API key#

Open Configuration › Developers. The SDK API key card shows the workspace's key, masked: a Sandbox key starts pk_test_ and a Production key pk_live_. Choose Reveal or Copy (the dashboard asks you to confirm it's you first). Under the key is the API address: pass it to start as baseUrl, exactly as shown, without /api/v1. A key only works at its own workspace's address; with the wrong pair the server answers wrong_environment and the SDK stops, logging which address to use.

The key only identifies your workspace, so it's safe to ship in your app. Rotate key issues a new one; you choose whether the old key stops registering new installs straight away or keeps doing so for 7 days while your new build rolls out. An install started with the new key registers again as a new device.

The same page has a Quick start with the install line and start call for each platform, SDK health (devices, last check-in and the SDK versions in use), and in a Sandbox a Going live checklist. More on the page: Developers.

Set up the SDK (guided)#

Set up the SDK, linked from the Quick start on Configuration › Developers until setup is complete, walks through seven steps: Choose platform, Get your SDK key, Install the SDK, Initialise, Permissions, First call and Test checklist. You name your app and give its Bundle ID (or package name), and every snippet it shows is filled in with your Sandbox key.

At First call it listens for the first request signed with your Sandbox key and shows your app's requests live as they arrive. The Test checklist then ticks six checks from what your test phone reports: the device registered, location permission, a push token, a test push received, a test geofence entered (a temporary 100 m geofence at the phone, for 30 minutes) and the geofence's notification shown. The test push and test geofence go to your most recently approved test device, so approve your phone first. Once all six pass, you can reveal the Production key there. More: SDK setup.

Push credentials#

Android (Firebase). Bubbl sends Android pushes through your own Firebase project. Under Configuration › Firebase › Credentials, upload the project's service-account JSON and choose Validate and upload. Optionally, under Android apps, upload the project's google-services.json and choose Check and save: apps whose package name is in it then need no google-services.json of their own, because the SDK starts Firebase for them. More: Firebase.

iOS (Apple Push). Bubbl sends iOS pushes straight to Apple (APNs), without Firebase. Under Configuration › Apple Push › Add an app, enter the Bundle ID, Key ID and Team ID, choose the APNs auth key (.p8) from developer.apple.com › Keys (with Apple Push Notifications enabled), and choose Check and save. Bubbl checks the key with Apple before saving it. Add each iOS app by its bundle ID; adding one that's already there replaces its key. More: Apple Push.

In a Sandbox, both pages start with Push credentials for this Sandbox: choose This Sandbox's to use credentials uploaded to the Sandbox, or Production's to send with the ones you uploaded to Production, so you upload them once.

Both pages also have Send a test push. See Push notifications for the app side.

Privacy view#

Configuration › Plugin › Runtime › Privacy view decides when the SDK shows its privacy view before a permission prompt: Show automatically (the first time each kind of permission is asked for), Always show, or Never show. The Privacy text under Callbacks & privacy is the text it shows. See Permissions and privacy and Privacy.

Test devices#

In a Sandbox, a phone gets nothing until it's approved as a test device under Configuration › Test Devices. See Sandbox and Production and Test devices.

After the SDK is in#

  • Active users: the Active users card on the dashboard's home page opens a panel where you can find a device by its install ID and send it a test push. See Active users.
  • Segments: the segments your app sets with setSegments appear under Company › Segments the first time a device reports one. See Segments and events and Segments.
  • Copy to Production: once Production is open on a paid plan, owners and admins can copy the campaigns, notifications, location groups and locations built in the Sandbox (Copy to Production, in the Sandbox's amber bar). Campaigns arrive paused. See Copy to Production.