Airbridge supports integration with CleverTap - a retention cloud that empowers digital brands to increase customer retention and lifetime value. By enabling the integration, you can leverage the attribution data from Airbridge and the AI/ML-powered insights from CleverTap to deliver hyper-personalized engagement campaigns to customers.

After the integration setup, the install events, in-app events, and attribution data can be sent to CleverTap.

Airbridge ↔ CleverTap Integration

For the CleverTap integration, it is required to set CleverTap SDK's Device ID as Airbridge SDK's Device Alias. After setting Device Alias and enabling CleverTap integration on the Airbridge dashboard, the Event collected from Airbridge SDK and attribution data will be sent to CleverTap via Server to Server.

Minimum SDK Version

  • Airbridge Android SDK: 2.19.5
  • Airbridge iOS SDK: 2.18.0
  • Airbridge React Native SDK: 1.5.0
  • Airbridge Cordova SDK: 2.0.2
  • Airbridge Flutter SDK: 3.0.2
  • Airbridge Unity SDK: 1.9.0

Integration - Android

// MainApplication.java
@Override
public void onCreate() {
	super.onCreate();
	// Initialize Airbridge SDK
	AirbridgeConfig config = new AirbridgeConfig.Builder("APP_NAME", "APP_TOKEN")
		// Make Airbridge SDK explicitly start tracking
		.setAutoStartTrackingEnabled(false)
		.build();
	Airbridge.init(this, config);
	
	// Fetch CleverTapID from CleverTap SDK
	CleverTapAPI.getDefaultInstance(this).getCleverTapID(new OnInitCleverTapIDListener() {
		@Override
		public void onInitCleverTapID(String cleverTapID) {
			// Set device alias into Airbridge SDK
			Airbridge.setDeviceAlias("clevertap_device_id", cleverTapID);
			// Explicitly start tracking
			Airbridge.startTracking();
		}
	});
}
// MainApplication.kt
override fun onCreate() {
	super.onCreate()
	// Initialize Airbridge SDK
	val config = AirbridgeConfig.Builder("YOUR_APP_NAME", "YOUR_APP_SDK_TOKEN")
		// Make Airbridge SDK explicitly start tracking
		.setAutoStartTrackingEnabled(false)
		.build()
	Airbridge.init(this, config)

	// Fetch CleverTapID from CleverTap SDK
	CleverTapAPI.getDefaultInstance(this)?.getCleverTapID { cleverTapID ->
		// Set device alias into Airbridge SDK
		Airbridge.setDeviceAlias("clevertap_device_id", cleverTapID)
		// Explicitly start tracking
		Airbridge.startTracking()
	}
}

Integration - iOS

// AppDelegate.swift
func application(
	_ application: UIApplication,
	didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]?
) {
	AirBridge.setAutoStartTrackingEnabled(false)
	AirBridge.getInstance("YOUR_APP_TOKEN", appName:"YOUR_APP_NAME", withLaunchOptions:launchOptions)

	CleverTap.autoIntegrate()
	if let cleverTapID = CleverTap.sharedInstance()?.profileGetID() {
		AirBridge.setDeviceAlias(withKey:"clevertap_device_id", value:String(cleverTapID))
	}

	AirBridge.startTracking()
}
// AppDelegate.m
- (BOOL)          application:(UIApplication*)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
	AirBridge.autoStartTrackingEnabled = NO;
	[AirBridge getInstance:@"YOUR_APP_TOKEN" appName:@"YOUR_APP_NAME" withLaunchOptions:launchOptions];

	[CleverTap autoIntegrate];
	NSString* cleverTapID = [CleverTap.sharedInstance profileGetCleverTapID];
	if (cleverTapID != nil) {
		[AirBridge setDeviceAliasWithKey:@"clevertap_device_id" value:cleverTapID];
	}

	[AirBridge startTracking];
}

Integration - React Native

CleverTap.profileGetCleverTapID(function (error, cleverTapID) {
	Airbridge.state.setDeviceAlias("clevertap_device_id", cleverTapID)
	Airbirdge.state.startTracking()
})

🚧

For the integration, set the 'autoStartTrackingEnabled' option from airbridge.json as 'false'.


Integration - Cordova

CleverTap.getCleverTapID(function (cleverTapID) {
	Airbridge.state.setDeviceAlias("clevertap_device_id", cleverTapID)
	Airbirdge.state.startTracking()
})

🚧

For the integration, set the 'autoStartTrackingEnabled' option from airbridge.json as 'false'.


Integration - Flutter

CleverTapPlugin.getCleverTapID().then((cleverTapID) {
	Airbridge.state.setDeviceAlias("clevertap_device_id", cleverTapID)
	Airbirdge.state.startTracking()
})

🚧

For the integration, set the 'autoStartTrackingEnabled' option from airbridge.json as 'false'.


Integration - Unity

string CleverTapID = CleverTapBinding.ProfileGetCleverTapID();
AirbridgeUnity.SetDeviceAlias("clevertap_device_id", CleverTapID);
AirbridgeUnity.StartTracking()

🚧

For the integration, set the 'autoStartTrackingEnabled' option from Project Setup as 'false'.