This integration is powered by Singer's Urban Airship tap. For support, visit the GitHub repo or join the Singer Slack.
Urban Airship integration summary
Stitch’s Urban Airship integration replicates data using the Airship API version 3. Refer to the Schema section for a list of objects available for replication.
Urban Airship feature snapshot
A high-level look at Stitch's Urban Airship (v1) integration, including release status, useful links, and the features supported in Stitch.
STITCH | |||
Release status |
Released on April 25, 2017 |
Supported by | |
Stitch plan |
Standard |
API availability |
Available |
Singer GitHub repository | |||
REPLICATION SETTINGS | |||
Anchor Scheduling |
Supported |
Advanced Scheduling |
Supported |
Table-level reset |
Unsupported |
Configurable Replication Methods |
Unsupported |
DATA SELECTION | |||
Table selection |
Unsupported |
Column selection |
Unsupported |
Select all |
Unsupported |
||
TRANSPARENCY | |||
Extraction Logs |
Supported |
Loading Reports |
Supported |
Connecting Urban Airship
Urban Airship setup requirements
To set up Urban Airship in Stitch, you need:
-
To verify your Urban Airship API access. Urban Airship limits API access based on their product plans, meaning some plans have access while others do not.
If you create an Urban Airship integration and Stitch displays a
401 Unauthorized
or403 Forbidden
error, you may not have access to Urban Airship’s API.
We recommend reaching out to Urban Airship support to confirm your API access level before beginning the setup in Stitch.
Step 1: Retrieve your Urban Airship app credentials
Connect Multiple Urban Airship Apps
If you want to connect multiple Urban Airship apps to Stitch, you will need to create a separate Urban Airship integration for each app. App credentials are app-specific, meaning only a single app can be connected per Stitch integration.
- Sign into your Urban Airship account.
- In the dashboard, open the app you want to connect to Stitch.
- If the Engage tab doesn’t open, click Engage at the top to open it.
- Click the gear icon located near Reports, then select APIs & Integrations.
- The APIs & Integrations page will display.
Leave this page open for now - you’ll need it to complete the setup.
Step 2: Add Urban Airship as a Stitch data source
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Urban Airship icon.
-
Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.
For example, the name “Stitch Urban Airship” would create a schema called
stitch_urban_airship
in the destination. Note: Schema names cannot be changed after you save the integration. - In the App Key field, paste your Urban Airship App Key.
- In the App Secret field, paste your Urban Airship App Secret.
Step 3: Define the historical replication start date
The Sync Historical Data setting defines the starting date for your Urban Airship integration. This means that data equal to or newer than this date will be replicated to your data warehouse.
Change this setting if you want to replicate data beyond Urban Airship’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.
Step 4: Create a replication schedule
In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.
Urban Airship integrations support the following replication scheduling methods:
-
Advanced Scheduling using Cron (Advanced or Premium plans only)
To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.
Initial and historical replication jobs
After you finish setting up Urban Airship, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.
For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
Free historical data loads
The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.
Urban Airship table reference
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 1 of this integration.
This is the latest version of the Urban Airship integration.
Table and column names in your destination
Depending on your destination, table and column names may not appear as they are outlined below.
For example: Object names are lowercased in Redshift (CusTomERs
> customers
), while case is maintained in PostgreSQL destinations (CusTomERs
> CusTomERs
). Refer to the Loading Guide for your destination for more info.
channels
The channels
table contains info about the channels - or unique identifiers - used to address applications on iOS, Android, and Amazon devices.
Key-based Incremental |
|
Primary Key |
channel_id |
Replication Keys |
created last_registration |
Useful links |
Join channels with | on |
---|---|
named_users |
channels.channel_id = named_users.channels channels.named_user_id = named_users.named_user_id |
alias STRING |
|||||||||||||
background BOOLEAN |
|||||||||||||
channel_id STRING |
|||||||||||||
created DATE-TIME |
|||||||||||||
device_type STRING |
|||||||||||||
installed BOOLEAN |
|||||||||||||
ios OBJECT
|
|||||||||||||
last_registration
DATE-TIME |
|||||||||||||
named_user_id STRING |
|||||||||||||
opt_in BOOLEAN |
|||||||||||||
push_address STRING |
|||||||||||||
tag_groups OBJECT
|
|||||||||||||
tags ARRAY |
lists
The Urban Airship
table contains info about device lists.
Key-based Incremental |
|
Primary Key |
name |
Replication Keys |
created last_modified |
Useful links |
channel_count INTEGER |
||
created DATE-TIME |
||
description STRING |
||
extra
ARRAY
|
||
last_modified DATE-TIME |
||
name STRING |
||
status STRING |
named_users
The named_users
table contains info about named users, or individual consumers. These identifiers can be used to map CRM data to channels.
Full Table |
|
Primary Key |
named_user_id |
Useful links |
Join named_users with | on |
---|---|
channels |
named_users.channels = channels.channel_id named_users.named_user_id = channels.named_user_id |
channels ARRAY |
named_user_id STRING |
tags ARRAY |
segments
The segments
table contains info about segments, or portions of your audience that have arbitrary metadata attached.
Key-based Incremental |
|
Primary Key |
id |
Replication Keys |
creation_date modification_date |
Useful links |
creation_date DATE-TIME |
display_name STRING |
id STRING |
modification_date DATE-TIME |
Related | Troubleshooting |
Questions? Feedback?
Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.