Airship

Customer engagement platform for push notifications, in-app messages, SMS, and mobile app experiences with deep journey orchestration.

⚠️

This integration is currently in alpha. Configuration and behaviour may change.

Prerequisites

Complete these steps in Airship before configuring Signal.

Access your Airship dashboard

Log in to go.airship.com (US) or go.airship.eu (EU).

Find your App Key

Navigate to Settings > APIs & Integrations > App Keys. The App Key for your project is shown at the top — a 22-character alphanumeric string. Copy it.

Create a Bearer token

On the same APIs & Integrations page, click Tokens > Create Token. Configure:

  1. Give it a name (e.g. “Datafly Signal”).
  2. Assign the All Access role (or a custom role with events:write, channels:write, and named_users:write scopes).
  3. Click Create Token and copy it immediately.
⚠️

Bearer tokens are the preferred auth method. The older App Master Secret is deprecated for new integrations.

Determine your data centre

Dashboard URLData CentreValue for Signal
go.airship.comUSus
go.airship.euEUeu

Configuration

FieldTypeRequiredDescription
app_keystringYesYour Airship App Key (22-character ID).
bearer_tokensecretYesBearer token with write scopes for events, channels, and named users.
data_centerselectYesYour Airship data centre (us or eu).

Signal Setup

Quick Setup

  1. Navigate to Integrations in the sidebar.
  2. Open the Integration Library tab.
  3. Find Airship under the Marketing Automation category.
  4. Click Install, and fill in the required fields with the credentials gathered above.
  5. Click Install Integration to create the integration with a ready-to-use default configuration.

API Setup

curl -X POST http://localhost:8084/v1/admin/integration-catalog/airship/install \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Airship",
    "variant": "default",
    "config": {
      "app_key": "xxxxxxxxxxxxxxxxxxxxxx",
      "bearer_token": "xxxxxxxxxxxxxxxxxxxx",
      "data_center": "us"
    },
    "delivery_mode": "server_side"
  }'

Event Mapping

Datafly EventAirship ConceptNotes
pageCustom eventSent via the Custom Events API.
Product ViewedCustom eventForwarded as a custom event with product properties.
Order CompletedCustom event with valueMapped to Airship’s revenue event with value, transaction, interaction_type.
identifyNamed user associationuser_id linked to the channel via the Named Users API.

Identity

Airship uses Named Users to associate one user across multiple channels (devices/browsers).

FieldSourceNotes
named_user_iduser_id from datafly.identify()Your stable customer ID. Channels are associated with this ID.
channel_idDatafly anonymous identifier (mapped to your Airship channel)The Airship channel ID for the visitor’s browser/device.
emailtraits.emailUsed to create or look up email channels.

Call datafly.identify() once the user logs in so Airship can associate the channel with the named user.

Airship events should be sent under the marketing consent category. Airship maintains opt-in records per channel (push, email, SMS) — Signal forwards CMP consent state so server-side journey logic can suppress non-consenting visitors.

Verify it’s working

  1. Trigger a test event from your website.
  2. In Airship, navigate to Audience > Named Users and search for the test user by ID.
  3. Click into the named user and check the Events tab for recent custom events.
  4. In Signal, check Live Events to confirm delivery with a 202 response status.

Troubleshooting

SymptomPossible CauseResolution
401 UnauthorizedInvalid bearer token or wrong scopesRegenerate the token in Settings > APIs & Integrations with the required write scopes.
400 Bad Request on custom eventMissing required fieldsCustom events require name, occurred (timestamp), and at least one of named_user_id or channel.
Events received but no notification triggeredJourney not configured for event nameCheck that an Airship Journey or Automation is set to trigger on the custom event name being sent.
Wrong data centre errorUS/EU mismatchCheck your dashboard URL and ensure the data_center config matches.

Visit Airship API documentation for full reference and Custom Events details.

See also