BetaWe are refining the new SDK docs. While exploring them, you may encounter minor issues. We appreciate your patience as we finalize the content.The existing SDK docs will be accessible until the transition is complete.
Supported Platforms
Native
Android SDK
Kotlin and Java. Push (FCM, HMS), in-app messaging, cards, push templates, push amplification, notification center, location triggers, and Android TV support. Modular — add only what you need.
iOS SDK
Swift and Objective-C. Push (APNs), in-app messages, cards, push templates, Live Activities, real-time triggers, notification center, and Apple TV support. Available via CocoaPods or SPM.
Web SDK
Framework-agnostic JavaScript SDK. Web push, on-site messaging (OSM), data tracking, cards, and lifecycle callbacks. Works with React, Angular, Vue, Next.js, and any SPA or MPA. Also supports AMP pages, browser extensions, WebView, and Smart TVs.
Cross-Platform
Cross-platform SDKs provide a unified API that bridges to the native Android and iOS SDKs. You will need to complete platform-specific setup steps for push notifications, in-app rendering, and other native features alongside the framework-level integration.
React Native
Supports React Native CLI projects. Push, in-app, cards, and TV support. Android native setup required; iOS auto-links via CocoaPods.
Expo
Expo managed workflow support via react-native-expo-moengage config plugin. Push, in-app, and cards. Requires EAS Build for native module linking.
Flutter
Dart plugin with native bindings for iOS, Android, and Web. Push, in-app, cards, geofence, and notification center. Null-safe (Dart 2.12+).
Cordova
Apache Cordova plugin. Push, in-app, and data tracking. Requires cordova-ios 4.3+ for CocoaPods support.
Capacitor
Capacitor plugin (Capacitor 3+). Push, in-app, data tracking, and geofence. TypeScript API.
Ionic
Ionic uses Cordova or Capacitor as its native runtime. Choose the plugin that matches your Ionic project’s native layer — there is no separate Ionic-specific SDK.
Unity
Unity plugin with native bindings for iOS and Android. Push, in-app messaging, data tracking, push templates, and location-triggered campaigns.
Specialty
TV & OTT
Android TV (via Android SDK), Apple TV (via iOS SDK), and Smart TV (via Web SDK). Push and in-app support varies by platform.
Ecommerce Platforms
Shopify 2.0 (app embed block), Magento, and WooCommerce. Auto-tracks ecommerce events and syncs product catalogs.
Platform Compatibility
| Platform | Languages | Min Version | Package Manager | Install Guide |
|---|---|---|---|---|
| Android | Kotlin, Java | API 23 (Android 6.0), compileSdk 35 | Maven Central | BOM (recommended) |
| iOS | Swift, Objective-C | iOS 13, Xcode 15+ | CocoaPods, SPM | SPM |
| Web | JavaScript | Browser matrix | CDN or npm | Integration guide |
| React Native | TypeScript/JS + native | RN 0.60+ (inherits native minimums) | npm | RN CLI guide |
| Expo | TypeScript/JS + native | Expo SDK 47+ (inherits native minimums) | npm | Expo plugin guide |
| Flutter | Dart + native | Dart 2.12+, Flutter 3.x (inherits native minimums) | pub.dev | Flutter guide |
| Cordova | JavaScript + native | cordova-ios 4.3+, cordova-cli 6.4+ | npm | Cordova guide |
| Capacitor | TypeScript + native | Capacitor 3+ (inherits native minimums) | npm | Capacitor guide |
Quick Start
Pick your platform and follow the integration guide. Estimated time to first event: 15–30 minutes for native SDKs, 30–60 minutes for cross-platform (due to additional native configuration).Get your Workspace ID
In the MoEngage Dashboard, go to Settings → Account → APIs → Workspace ID. You’ll need this to initialize the SDK.
Set your Data Center
Your data center determines the API endpoint the SDK communicates with. Find your data center from the dashboard URL host (e.g.,
dashboard-01.moengage.com → dc_1). This must be configured during SDK initialization.Initialize the SDK
Call the initialization method with your Workspace ID and data center. Use the TEST environment during development and LIVE for production.
Prerequisites by platform
Before starting integration, ensure you have:- Android: Firebase project with
google-services.jsonconfigured (required for FCM push). Gradle 7.0+, AGP 7.0+, Java 8+. - iOS: Apple Developer account with push notification entitlement enabled. APNs Authentication Key (
.p8file) uploaded to MoEngage Dashboard. - Web: HTTPS-enabled domain (required for web push via Service Workers).
- Cross-Platform (React Native / Expo / Flutter / Cordova / Capacitor): All of the above native prerequisites, plus the framework-specific toolchain.
Feature Availability by Platform
Not every feature is available on every platform. Use this matrix to verify support before starting integration.| Feature | Android | iOS | Web | React Native | Expo | Flutter | Cordova | Capacitor |
|---|---|---|---|---|---|---|---|---|
| Push Notifications | ✅ FCM, HMS | ✅ APNs | ✅ Web Push | ✅ | ✅ | ✅ | ✅ | ✅ |
| Push Templates | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| Push Amplification | ✅ | — | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| Device Triggered Push | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| Live Activities | — | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| HTML In-App Messages (Templates, Nudges) | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| In-App NATIV | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| On-Site Messaging (OSM) | — | — | ✅ | — | — | — | — | — |
| Cards ¹ | ✅ | ✅ | ✅ | ✅ ² | ✅ ² | ✅ ² | — | — |
| Data Tracking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Location/Geofence | ✅ | ✅ | — | ✅ | ✅ | ✅ | ✅ | ✅ |
| Notification Center (Inbox) | ✅ | ✅ | — | ✅ | ✅ | ✅ | — | — |
| Web Personalization | — | — | ✅ | — | — | — | — | — |
| GDPR Opt-outs | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Common Integration Tasks
| Task | Android | iOS | Web |
|---|---|---|---|
| Install SDK | Build settings | SDK Integration | Web SDK Integration |
| Initialize | Initialization | Initialization | Integration |
| Set up push | Push Config | Push Integration | Web Push |
| Track events | Track Events | Track Events | Events Tracking |
| Track user attributes | User Attributes | User Attributes | User Attributes |
| Enable in-app / OSM | In-App NATIV | In-App NATIV | On-Site Messaging |
| Add cards | Cards | Cards | Cards |
| Compliance | Compliance | Compliance | Data opt-out |
Upgrading & Migration
Android Migration Guides
Developer Resources
Sample Apps
Working reference implementations: Android · iOS · React Native · Flutter · Capacitor
Release Notes
Changelogs for every SDK. Subscribe to releases via GitHub to get notified of new versions, breaking changes, and security patches.
Troubleshooting
Android · iOS · React Native · Flutter · Capacitor
SDK Performance & Size
Security & Compliance
Need help? Contact your Customer Success Manager.