Skip to content

Airbridge Integration

With Airbridge, you can analyze which ad channels and campaigns drove your users to install your app. By integrating these install acquisition paths into FlareLane, you can run CRM marketing optimized for each acquisition path.

Airbridge provides the following attribution data. This guide covers integrating four of these data points, but if you have collected all of them, you can integrate the rest as well.

KeyDescription
attributedChannelChannel
attributedCampaignCampaign
attributedAdGroupAd group
attributedAdCreativeAd creative
attributedContentContent
attributedTermKeyword
attributedSubPublisherSub-publisher
attributedSubSubPublisher1Sub-sub-publisher 1
attributedSubSubPublisher2Sub-sub-publisher 2
attributedSubSubPublisher3Sub-sub-publisher 3

You can retrieve acquisition path (attribution) data through the Airbridge SDK and then integrate that data into FlareLane as tags.

class MainApplication : Application() {
override fun onCreate() {
super.onCreate()
FlareLane.initWithContext(this, "PROJECT_ID", true)
val option = AirbridgeOptionBuilder("YOUR_APP_NAME", "YOUR_APP_SDK_TOKEN")
.setOnAttributionReceived(object : OnAttributionResultReceiveListener {
override fun onAttributionResultReceived(result: Map<String, String>) {
val tags = JSONObject()
result["attributedChannel"]?.let { tags.put("attributedChannel", it) }
result["attributedCampaign"]?.let { tags.put("attributedCampaign", it) }
result["attributedAdGroup"]?.let { tags.put("attributedAdGroup", it) }
result["attributedAdCreative"]?.let { tags.put("attributedAdCreative", it) }
if (tags.length() > 0) {
FlareLane.setTags(applicationContext, tags)
}
}
})
.build()
Airbridge.initializeSDK(this, option)
}
}
import FlareLane
import Airbridge
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
FlareLane.initWithLaunchOptions(launchOptions, projectId: "PROJECT_ID", requestPermissionOnLaunch: true)
let option = AirbridgeOptionBuilder(name: "YOUR_APP_NAME", token: "YOUR_APP_SDK_TOKEN")
.setOnAttributionReceived({ attribution in
var tags: [String: Any] = [:]
if let attributedChannel = attribution["attributedChannel"] {
tags["attributedChannel"] = attributedChannel
}
if let attributedCampaign = attribution["attributedCampaign"] {
tags["attributedCampaign"] = attributedCampaign
}
if let attributedAdGroup = attribution["attributedAdGroup"] {
tags["attributedAdGroup"] = attributedAdGroup
}
if let attributedAdCreative = attribution["attributedAdCreative"] {
tags["attributedAdCreative"] = attributedAdCreative
}
if !tags.isEmpty {
FlareLane.setTags(tags: tags)
}
})
.build()
Airbridge.initializeSDK(option: option)
return true
}
FlareLane.initialize('PROJECT_ID');
Airbridge.setOnAttributionReceived(attribution => {
const tags: {[key: string]: string} = {};
if (attribution.attributedChannel) {
tags.attributedChannel = attribution.attributedChannel;
}
if (attribution.attributedCampaign) {
tags.attributedCampaign = attribution.attributedCampaign;
}
if (attribution.attributedAdGroup) {
tags.attributedAdGroup = attribution.attributedAdGroup;
}
if (attribution.attributedAdCreative) {
tags.attributedAdCreative = attribution.attributedAdCreative;
}
if (Object.keys(tags).length > 0) {
FlareLane.setTags(tags);
}
});
FlareLane.shared.initialize("PROJECT_ID", requestPermissionOnLaunch: true);
Airbridge.setOnAttributionReceived((result) {
Map<String, String> tags = {};
if (result['attributedChannel'] != null) {
tags['attributedChannel'] = result['attributedChannel']!;
}
if (result['attributedCampaign'] != null) {
tags['attributedCampaign'] = result['attributedCampaign']!;
}
if (result['attributedAdGroup'] != null) {
tags['attributedAdGroup'] = result['attributedAdGroup']!;
}
if (result['attributedAdCreative'] != null) {
tags['attributedAdCreative'] = result['attributedAdCreative']!;
}
if (tags.isNotEmpty) {
FlareLane.shared.setTags(tags);
}
});

After integration, check the device's tags to see the result: tags that indicate the app-install acquisition channel for that device.

You can use these integrated tags for segment targeting or as automation entry conditions. For the exact meaning of each integrated value, refer to the Airbridge documentation.

FlareLane device detail showing Airbridge app-install attribution tags