Swan SDK

Introduction

A single SDK for customer identity, event tracking and push notifications across Android, iOS, React Native and Web.

The Swan SDK is the client-side foundation of the Swan customer-engagement platform. Embed it in your mobile or web app to identify users, track product behaviour, and deliver rich push notifications — without writing platform-specific glue for each one.

What you get

  • Customer identity — assign every device a stable swanIdentifier (CDID), merge anonymous activity into a known profile when the user signs in, and enrich that profile with attributes from your backend.
  • Event tracking — typed e-commerce events (productViewed, checkoutCompleted, …), screen tracking, custom events. Offline-first queue with exponential-backoff retry; nothing is lost on a flaky network.
  • Push notifications — FCM (Android) / APNs (iOS) wire-up, basic + carousel templates, channel management, deep linking from cold-start, click acknowledgement back to your campaigns dashboard.
  • Deep links — handle both external URLs and notification taps through one listener API.
  • Location — opt-in lat/lng tagging on profile updates.

How the docs are organised

Versioning

Each platform releases independently. The artifact for a release is tagged <platform>/vX.Y.Z (e.g. android/v1.0.0) and published to the corresponding package registry (Maven Central, SPM / CocoaPods, npm). See the changelog for the cross-platform history, and the per-platform reference for version-specific API documentation.

The narrative docs you're reading roll forward — they always reflect the latest released version of each SDK. Version-specific guidance is called out inline with Available in vX.Y.Z+ markers.

On this page