Push Notifications: Getting Started
UpdatedBefore you begin
Setting up push notifications requires development work in your mobile app, access to your push provider, and then you’ll need to compose messages in Customer.io. This may mean that you’ll need to coordinate work across a few different people in your organization to get up and running!
Your path in the setup process might change depending on whether you’re a developer integrating with Customer.io or a marketer who wants to send messages. Use the chart below to better understand what you, or other members of your team, must to do before you can send push notifications to your app’s users. Some of the squares below link directly to relevant documentation!
If you’re just getting started, use our SDKs!
Our SDKs can greatly simplify your development process. Even if you want to add some custom-developed features, our SDKs provide a foundation for your app’s integration with Customer.io.
I start?} a--->|I'm a marketer| f a-->|I'm a developer| b{Integrate your
mobile app} subgraph Developers b-->d[Use our SDKs] b-->e[Integrate directly] end d-->f[Authorize push
provider] subgraph Developers or Marketers f end e-->f f-.->|no images
or links|c[Send simple push] f-.->|add images
and links|g[Send rich push] subgraph Marketers c g end click f "/docs/push-developer-guide/#generate-certificates" _self click d "/docs/sdk/" _self click e "/docs/push-developer-guide/" _self click c "/docs/send-push/" _self click g "/docs/push-custom-payloads/" _self
Plan your implementation
Before you get started with push notifications, you should map out the things you want your push notifications to do so that you can develop all the right features in your app. We encourage you to use our SDKs, which can help you quickly take advantage of Customer.io in your app and are being actively developed to incorporate new features.
A simple push notification, which most integrations support by default, contains a title and a body. However, you may want to send your audience images, link them to pages in your app (commonly known as “deep links”), or group notifications for different purposes in your app. All of these features may take additional development, and require you to use custom payloads.
Set up your mobile app
Before you can send push notifications, you need to make sure that your app is set up to work with Customer.io. In general, we recommend that you use our SDKs to simplify your development process and provide a standard avenue for us to support your app and use cases.
Whether you use our SDKs or write your own integration, your app must do the following things.
- Identify people and register device tokens for people. In general, this means that your app requires people to log in, or otherwise make themselves known to you; a device token cannot be “anonymous” in Customer.io.
- Set up your app to receive push notifications.
- (Recommended) Set up your app to report push metrics back to Customer.io. Our SDKs have functions to do this somewhat automatically.
- (Recommended) Send events back to Customer.io representing activity you want to track or trigger campaigns.
- (Recommended) Set up your app to interpret rich push notifications—messages that include images, links, sounds, etc.
Pick your push provider(s)
Before you can send a push notification, you need to authorize Customer.io to send notifications through your push notification service(s). There are two push notification services, and they allow third parties (like us!) to send notifications to apps installed on iOS and/or Android-based devices. Depending on your app development path, you may use one or both services.
As a part of the setup process, you’ll provide Customer.io with your push provider’s certificate. We’ll show you how to get your push certificate and upload it to Customer.io in our push developer guide.
If you don’t know which service(s) you use, or you don’t have access to your services, you may need to talk to a developer on your team to gain access to your push service credentials.
Service | Supports | Required in Customer.io |
---|---|---|
Apple Push Notification service | .p8 certificate, App ID, App key, Bundle ID | |
Firebase Cloud Messaging | .JSON key |
You can send push notifications to iOS devices using either Apple’s Push Notification service (APNs) or Google’s Firebase Cloud Messaging (FCM) service.
To authorize your Customer.io workspace to send notifications through APNs, you’ll need to upload your APNs .p8
certificate and provide your credentials or upload your .JSON to iOS devices over Apple’s Push Notification service, you’ll need to upload your APNs .p8
certificate and enter your Apple Developer Key ID, Team ID, and Bundle ID.
Find your device token for testing
As you get started with push notifications, you’ll likely want to test your implementation by sending notifications to yourself or a dedicated test device.
To find the device token of your test user: Go to People, click your test user, and go to the Devices tab. Hover over a device and click to copy the token to a push notification.