Skip to content
SDK

SDK Overview

Understand how the Setgreet SDK powers in-app experiences.

SDK Overview

The Setgreet SDK is a lightweight native library that you embed in your mobile app. It is the bridge between the flows you design in the dashboard and the screens your users see on their devices.

How the SDK works

The SDK handles three core responsibilities:

  1. Forward user signals -- when your app calls identifyUser, trackEvent, or trackScreen, the SDK sends that signal to the Setgreet API. The server evaluates trigger conditions for the current user and decides whether a flow should be shown.
  2. Render natively -- when the API returns a matching flow, the SDK renders it using fully native UI components (SwiftUI on iOS, Jetpack Compose on Android). There are no web views or iframes. Screens use a flexbox-based layout system that adapts to any screen size automatically.
  3. Track events -- flow displays, screen views, component interactions, and dismiss events are tracked and sent to the Setgreet API for analytics.

Dashboard and SDK relationship

The dashboard is where you design and publish flows. The SDK is where flows come to life on a user's device.

ActionWhere it happens
Create and edit flowsDashboard
Define trigger conditionsDashboard
Publish a flowDashboard
Forward user signalsSDK (network call)
Evaluate triggersServer (Setgreet API)
Render screensSDK (native UI)
Collect interactionsSDK, sent to API

This separation means your team can update flows, change targeting, and publish new experiences without touching app code or waiting for an app store release.

What you need to implement

The SDK is designed to require minimal integration code. At a minimum, you need to:

  1. Initialize the SDK with your App Key on app launch.
  2. Identify users by calling identifyUser with a user ID and attributes after login.
  3. Track events (optional) if you want to trigger flows based on custom events.

Everything else -- server evaluation of triggers, rendering screens, and tracking analytics -- is handled automatically.

The SDK requires a network connection to fetch flows. Offline flow caching is not supported today.

Next steps

TopicWhat you will learn
User IdentificationHow to identify users and set attributes.
Event TrackingHow to track custom events and screen views.
Displaying FlowsHow to control when and how flows appear.
Platform SDKsInstallation guides for iOS, Android, React Native, and Flutter.

On this page