Skip to main content

SAP Engagement Cloud SDK

The SAP Engagement Cloud SDK is the next-generation SDK for SAP Engagement Cloud, providing a unified API for managing events, push notifications, in-app messaging, and more across Android, iOS, and Web. Designed for integration consistency and ease of use, it enables straightforward onboarding and fast time-to-value across all platforms.

Pilot Program

The SAP Engagement Cloud SDK is currently available in a pilot release for a select group of clients. To participate, contact your client success manager. See Joining the Pilot Program for next steps.

Quick Start

  1. Join the pilot program and complete the onboarding steps.
  2. Install dependencies (Gradle / SPM / NPM / script).
  3. Initialize the SDK (automatic on all platforms).
  4. Enable tracking after the user has given consent.
  5. Identify the contact (optional, upon login).
  6. Register push token (automatic on most platforms).
  7. Start tracking events.

Feature Matrix

FeatureAndroidiOSWeb
Custom Events
Push Notifications✅ (FCM/HMS)✅ (APNs)✅ (Service Worker)
In-App MessagingN/A
Deep Link Tracking
OpenID Auth Contact
Notification ChannelsN/AN/A
Embedded Messaging

Architecture Overview

Public API -> Domain Modules -> Orchestration/State -> Networking -> Database -> Platform Adapters

See Architecture Overview for details.

Migration Guide

If you're migrating from the SAP Emarsys SDK, see the Migration Overview and API Mapping.

Common Code Examples

Enable the SDK and send a custom event:

EngagementCloud.setup.enable(
config = AndroidEngagementCloudSDKConfig("APP_CODE", launchActivityClass = MainActivity::class.java),
onContactLinkingFailed = {
// Example: Prompt user to log in and retrieve their contact identifier
val loggedInUser = showLoginDialogAndAwaitResult()
loggedInUser?.let { LinkContactData(contactFieldValue = it.userId) }
}
)
EngagementCloud.event.track(CustomEvent("screen_view", mapOf("screen" to "home")))

Getting Help

See the FAQ or Troubleshooting.