The SDKs and APIs

Airship’s SDKs expose messaging and data-gathering functionality on your client devices, and our APIs support messaging mediums that can’t use an SDK. Airship has SDKs for iOS, Android/Amazon, Windows, and Web platforms. The APIs correspond to Airship’s engagement (messaging), mobile wallet, and real-time event stream products.

SDK Uses

The SDK registers channelsAn instance representing an entity addressable via the Airship service, e.g., an iOS device, email address, SMS number or web browser. The channel instance or channel object contains all relevant information about a channel, including metadata used for targeting, opt-in status, device-specific information, and, importantly, a unique identifier for the channel, the channel ID. and interprets notifications sent from Airship. You must integrate the SDK with your app or website in order to issue notifications to your mobile and/or web audiences. Devices that have installed your app and web browsers that have opted-in are eligible to receive notifications. Refer to your app’s platform documentation for help integrating and using the SDK.

API Uses

Most features for messages and passes are available via the APIs, however some are available only from the DashboardThe Airship web interface located at or . Dashboard- and API-only exceptions are noted throughout the docs. See API vs Dashboard below for more information.

Airship API
Create and send messages to users, and use advanced messaging features like AutomationA set of conditions that your audience must meet before they receive a message. . Because this API encompasses the majority of the Airship feature set.
Wallet API
Create Apple Wallet and Google Pay passes and Adaptive LinksA mobile wallet pass link that supports templates for both Google Pay and Apple Wallet. When a user taps the link, Airship determines the user’s platform and generates the right pass for the user. .

While the Wallet API can be used to create pass templates and URLs, passes are not distributed to recipients via the Wallet API. See the various pass distribution methods.

Data Streaming API
Access your app’s event stream, helping you gather information about user interactions with your notifications and app. With Real-Time Data Streaming, you have access to the data that will help you maximize the effectiveness of your communications.

Channel Registration

Airship’s SDK and Airship API are fundamental to the platform, as they are the mechanisms for registering channelsAn instance representing an entity addressable via the Airship service, e.g., an iOS device, email address, SMS number or web browser. The channel instance or channel object contains all relevant information about a channel, including metadata used for targeting, opt-in status, device-specific information, and, importantly, a unique identifier for the channel, the channel ID. . Channel registration is a basic requirement for sending notifications; you cannot send notifications to a channel that is not registered or in the process of becoming registered.


The SDK enables communications with mobile devices and web browsers; it makes devices and browsers Airship clients. You will bundle the SDK with your app or website to register and issue notifications to mobile devices and web browsers.

For an Open PlatformA platform for which an SDK is not available, and channel registration and manipulation are handled via the Channels API. Examples: Open Channels, Email. , you will use our Channels API to register and manage the opt-in/opt-out status of end users.

Registration Requirements

This table represents the minimum requirements for communicating with the various channels supported by Airship. A channel must either have installed the SDK or be registered via the API.

Channel TypeAPI RegistrationSDK Registration
Open Channel


All Airship APIs require authentication. Some endpoints allow multiple authentication schemes. In general, your app should use Basic App authentication, and server-side implementations should use Bearer authentication where available. See also: App Keys & Secrets: Security.

Auth TypeValueAPIDescription
Basic AppApp Key and App Secret, Base64 encoded
  • Airship
  • Wallet
The typical authentication scheme for apps integrating with Airship. Basic App authentication is limited to low-security API endpoints, ensuring that users can’t compromise your data with your app in the wild.
Basic MasterApp Key and Master Secret, Base64 encoded
  • Airship
  • Compliance Data Streaming
Grants access to the complete Airship API and should be reserved for server-to-server communications only. You should not give out your App Master Secret or use Basic Master authorization with your app.
BearerBearer Token
  • Airship
  • Data Streaming
Bearer authentication uses a token that you can create and revoke. Because you can create and revoke tokens for your team at will, bearer authentication maximizes your control over who can access Airship.

API vs Dashboard

It may be helpful to think of Airship APIs as an expansion of the dashboard feature set. You can do almost anything via the API that you would do using the dashboard — with notable additions, such as:

  • Use the custom-events endpoint to associate external data with channels and users.
  • Open an event stream with the Data Streaming API to determine the effectiveness of your notifications.
  • Use open-channels to communicate with channels and platforms that aren’t natively supported by Airship.

Some API endpoints may be restricted by your Airship feature bundle. Contact Airship Sales if you do not have access to an endpoint or feature that you want to take advantage of.


The Airship API and dashboard support similar functionality, with some differences in terminology between the two. The tables below map message types, composer types, and features to their respective API objects and endpoints.

Message Types

See Message and Composer Types for message type definitions.

Message TypeDashboardAPI objectRequires SDK
Push Notification"notification": {}
Silent Push Notification"notification": {}
Web Push Notification"notification": { "web": {}}
In-App Message"in_app": {} 1
Message Center"message": {}
Apple News NotificationNot supported
Email Notification"notification": { "email": {}}
SMS Notification"notification": { "sms": {}}

1. There is currently no API for in-app automation.

Composers and API Equivalents

A composer is a tool for creating messages via the dashboard. See Message and Composer Types for definitions of each and to learn which message types can be used with each composer and API endpoint.

Composer TypeAPI Endpoint
A/B Test/experiments
In-App AutomationNot supported
JourneyNot supported
Apple NewsNot supported


Some features, e.g., tags and named users, can be set via the API (server-side) or the SDK (device-side) but not via the dashboard.

FeatureDashboardAPI endpoint
Email Channel registration/channels/email
SMS Channel registration/channels/sms
Open Channel registration1/channels/open
Named Users2/named-users
Custom Events/custom-events

1 Open Channels require a webhook server that will accept a /push payload.
2 Named users and tags can be set client-side, via the SDK.

Mobile Wallet

The Wallet API has a similar feature set to the dashboard. In addition to dashboard functionality, you can also use the Wallet API to create callbacks for pass events, like pass installation and uninstallation.

Wallet template and pass payloads are largely based on Apple Wallet and Google Pay specifications. Passes for each platform have similar objects, but the arrangement of objects on the pass differs by pass type. See the Mobile Wallet Reference for more information about pass layouts.

Because passes typically include fields that must be updated dynamically and programmatically, e.g., by user, location, or as other events occur, it can be helpful to create and manage your passes through the API.

Real-Time Data Streaming

Real-Time Data Streaming is an API-only feature. The Date Streaming API consists of a single endpoint that opens a real-time event stream for a messaging project. You can authorize event streams for various apps via the dashboard, but you can only access an event stream via the API.

The event stream reflects user actions, changes in device environment, e.g., encountering beacons, and server-side actions, e.g., sending push notifications. You can use the event stream to gather information about how users use your app and determine effectiveness of your communications with your users.

When you make a call to the Data Streaming API, you can set the criteria that determines the events the stream will return. See the Data Streaming API Reference for help with opening and filtering the event stream.