{"id":15467,"date":"2026-02-20T07:06:11","date_gmt":"2026-02-20T07:06:11","guid":{"rendered":"http:\/\/mariusz.bijok"},"modified":"2026-06-19T06:24:01","modified_gmt":"2026-06-19T06:24:01","password":"","slug":"liveops-campaigns","status":"publish","type":"docs","link":"https:\/\/tenjin.com\/vi\/docs\/liveops-campaigns\/","title":{"rendered":"Chi\u1ebfn d\u1ecbch LiveOps"},"content":{"rendered":"\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">LiveOps Campaigns<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><p class=\"has-text-color has-background has-link-color\" style=\"color:#58151c;background-color:#f8d7da\">The response from the LiveOps feature won&#8217;t always be real-time. We don&#8217;t have the guaranteed response time, so please implement the retry logic if you don&#8217;t get a response in time.<\/p><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In Tenjin you can set up a custom user journey depending on their attribution source. This opens up a whole array of different opportunities for better and more innovative in-app experience.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example 1: Give in-game rewards to users that came from a specific ad campaign (eg cross-promotional campaign).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Example 2: Set different user flows (onboarding, monetization, and others) depending on whether a user is coming from an advertising campaign or from an organic source.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How do LiveOps Campaigns work?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">After attribution data is processed on a Tenjin server, it can be returned to a client (app) upon request. The data is then processed by the app and used to display in-app content accordingly.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><p class=\"has-text-color has-background has-link-color\" style=\"color:#055160;background-color:#cff4fc\">Tenjin is covering only the data transition part of this workflow. Dynamic replacement of in-app content is the responsibility of app developers.<\/p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What attribution data can I pass to an app?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">When available, the following parameters can be passed back to an app:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Parameter<\/strong><\/td><td><strong>Description<\/strong><\/td><td><strong>Example of returned value<\/strong><\/td><\/tr><tr><td><code>advertising_id<\/code><\/td><td>Advertising ID of the device<\/td><td>11de7924d076456d9a203c8dee56632a<\/td><\/tr><tr><td><code>ad_network<\/code><\/td><td>Ad network of the campaign<\/td><td>mintegral<\/td><\/tr><tr><td><code>campaign_id<\/code><\/td><td>Tenjin campaign ID<\/td><td>6ebd3332-68f8-4919-875c-73fe6780d4f7<\/td><\/tr><tr><td><code>campaign_name<\/code><\/td><td>Tenjin campaign name or campaign name from ad network (if the ad network passes campaign name to Tenjin via attribution link or API, including all major channels: Meta, Google, Tiktok, Axon by Applovin, etc.)<\/td><td>mtg_us_1103<\/td><\/tr><tr><td><code>site_id<\/code><\/td><td>Sub channel or source app id<\/td><td>mtg_1256527<\/td><\/tr><tr><td><code>creative_name<\/code><\/td><td>Creative name from ad network<\/td><td>video_123<\/td><\/tr><tr><td><code>remote_campaign_id<\/code><\/td><td>Ad network campaign ID<\/td><td>ss_mtg_US_1123<\/td><\/tr><tr><td><code>deferred_deeplink_url<\/code><\/td><td>Deferred Deep Link URL<\/td><td><\/td><\/tr><tr><td><code>click_id<\/code><\/td><td>Ad network click ID<\/td><td>mtg65cebc77cddec80001c17f4w<\/td><\/tr><tr><td><code>analytics_installation_id<\/code><\/td><td>Tenjin generated application install-specific identifier<\/td><td>f024e65f3dd94f16983726bcef192d68<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Here is the example of how the returned data object may look like:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:1.125rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.625rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 0 16px;font-size:0.8em;width:100%;text-align:left;background-color:#2e3440ff;font-style:italic;color:#d8dee9ff\"><span style=\"border-bottom:1px solid rgba(201, 218, 248, 0.2)\">JSON<\/span><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\"referrer\":\"utm_source=(not%20set)&amp;utm_medium=(not%20set)\",\"referrer_params\":{\"utm_source\":\"(not set)\",\"utm_medium\":\"(not set)\"},\"advertising_id\":\"00000000000000000000000000000000\",\"ad_network\":\"ironsource\",\"campaign_id\":\"f92aa3f1-8f2c-4110-ac2c-37c9a39618c4\",\"campaign_name\":\"T1_ALL\",\"site_id\":\"23445433\",\"creative_name\":\"trees_playing_football\"}<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ECEFF4\">{<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">referrer<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">utm_source=(not%20set)&amp;utm_medium=(not%20set)<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">referrer_params<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:{<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">utm_source<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">(not set)<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">utm_medium<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">(not set)<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">},<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">advertising_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">00000000000000000000000000000000<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">ad_network<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">ironsource<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">campaign_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">f92aa3f1-8f2c-4110-ac2c-37c9a39618c4<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">campaign_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">T1_ALL<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">site_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">23445433<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #8FBCBB\">creative_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">:<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">trees_playing_football<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">What do I need to set up LiveOps campaigns with Tenjin?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You will need the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Successfully integrate Tenjin SDK 1.12.19+&nbsp;<\/li>\n\n\n\n<li>Make sure you initiate Tenjin SDK in every app open\n<ul class=\"wp-block-list\">\n<li>For Android, main activity onResume, call instance.connect();<\/li>\n\n\n\n<li>For Unity Plugin, Application onStart and onApplicationPause, call instance.connect();<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Integration Sample &#8211; iOS:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:1rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.5rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Objective-C<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>[&#91;TenjinSDK sharedInstance&#93;\n    getAttributionInfo:^(NSMutableDictionary *attributionInfo) {\n        NSLog(@\"TenjinSDK getAttributionInfo result: %@\", attributionInfo);\n\t  \/\/ Extract individual parameters\n\t  NSString *advertisingId = attributionInfo&#91;@\"advertising_id\"&#93;;\n\t  NSString *adNetwork = attributionInfo&#91;@\"ad_network\"&#93;;\n\t  NSString *campaignId = attributionInfo&#91;@\"campaign_id\"&#93;;\n\t  NSString *campaignName = attributionInfo&#91;@\"campaign_name\"&#93;;\n\t  NSString *siteId = attributionInfo&#91;@\"site_id\"&#93;;\n\t  NSString *creativeName = attributionInfo&#91;@\"creative_name\"&#93;;\n\t  NSString *deferredDeeplinkUrl = attributionInfo&#91;@\"deferred_deeplink_url\"&#93;;\n}]\n;<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #ECEFF4\">[&#91;<\/span><span style=\"color: #D8DEE9FF\">TenjinSDK <\/span><span style=\"color: #88C0D0\">sharedInstance<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    getAttributionInfo:<\/span><span style=\"color: #81A1C1\">^<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #8FBCBB\">NSMutableDictionary<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">attributionInfo<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">        <\/span><span style=\"color: #88C0D0\">NSLog<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">TenjinSDK getAttributionInfo result: %@<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">\t  <\/span><span style=\"color: #616E88\">\/\/ Extract individual parameters<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">advertisingId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">advertising_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">adNetwork <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">ad_network<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">campaignId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">campaign_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">campaignName <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">campaign_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">siteId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">site_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">creativeName <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">creative_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">\t  <\/span><span style=\"color: #8FBCBB\">NSString<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">*<\/span><span style=\"color: #D8DEE9FF\">deferredDeeplinkUrl <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> attributionInfo<\/span><span style=\"color: #ECEFF4\">&#91;<\/span><span style=\"color: #ECEFF4\">@&quot;<\/span><span style=\"color: #A3BE8C\">deferred_deeplink_url<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">&#93;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">}]<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">;<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Integration Sample &#8211; Android:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:1rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.5rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Java<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>import com.tenjin.android.Callback;\nimport com.tenjin.android.TenjinSDK;\n\npublic class TenjinDemo extends ActionBarActivity {\n  \/\/...other callbacks are here\n\n  @Override\n  public void onResume() {\n    \/\/ standard code\n    super.onResume()\n\n    \/\/ Integrate TenjinSDK connect call\n    String apiKey = \"&lt;API_KEY>\";\n    TenjinSDK instance = TenjinSDK.getInstance(this, apiKey);\n    instance.connect();\n\n    instance.getAttributionInfo(new Callback() {\n      @Override\n      public void onSuccess(Map&lt;String, String> data) {\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_ADVERTISING_ID)) {\n          \/\/ Advertising ID of the device\n        }\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_AD_NETWORK)) {\n          \/\/ Ad network of the campaign\n        }\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_CAMPAIGN_ID)) {\n          \/\/ Tenjin campaign ID\n        }\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_CAMPAIGN_NAME)) {\n          \/\/ Tenjin campaign name\n        }\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_SITE_ID)) {\n          \/\/ Tenjin site id\n        }\n        if (data.containsKey(TenjinConsts.ATTR_PARAM_CREATIVE_NAME)) {\n          \/\/ Tenjin creative name\n        }\n      }\n    });\n  }\n}<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #81A1C1\">import<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">com<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">tenjin<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">android<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">Callback<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">import<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">com<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">tenjin<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">android<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #8FBCBB\">TenjinSDK<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #81A1C1\">public<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">class<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">TenjinDemo<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">extends<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB; font-weight: bold\">ActionBarActivity<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">  <\/span><span style=\"color: #616E88\">\/\/...other callbacks are here<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #ECEFF4\">@<\/span><span style=\"color: #D08770\">Override<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #81A1C1\">public<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">void<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">onResume<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">    <\/span><span style=\"color: #616E88\">\/\/ standard code<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #81A1C1\">super<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">onResume<\/span><span style=\"color: #ECEFF4\">()<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">    <\/span><span style=\"color: #616E88\">\/\/ Integrate TenjinSDK connect call<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #8FBCBB\">String<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">apiKey<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">&lt;API_KEY&gt;<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #8FBCBB\">TenjinSDK<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">instance<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #D8DEE9\">TenjinSDK<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">getInstance<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">this<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> apiKey<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">instance<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">connect<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #D8DEE9\">instance<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">getAttributionInfo<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #81A1C1\">new<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">Callback<\/span><span style=\"color: #ECEFF4\">()<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #ECEFF4\">@<\/span><span style=\"color: #D08770\">Override<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">      <\/span><span style=\"color: #81A1C1\">public<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #81A1C1\">void<\/span><span style=\"color: #88C0D0\"> onSuccess<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #8FBCBB\">Map<\/span><span style=\"color: #ECEFF4\">&lt;<\/span><span style=\"color: #8FBCBB\">String<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #8FBCBB\">String<\/span><span style=\"color: #ECEFF4\">&gt;<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_ADVERTISING_ID<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Advertising ID of the device<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_AD_NETWORK<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Ad network of the campaign<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_CAMPAIGN_ID<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Tenjin campaign ID<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_CAMPAIGN_NAME<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Tenjin campaign name<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_SITE_ID<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Tenjin site id<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #81A1C1\">if<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">data<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #88C0D0\">containsKey<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9\">TenjinConsts<\/span><span style=\"color: #ECEFF4\">.<\/span><span style=\"color: #D8DEE9\">ATTR_PARAM_CREATIVE_NAME<\/span><span style=\"color: #ECEFF4\">))<\/span><span style=\"color: #88C0D0\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">          <\/span><span style=\"color: #616E88\">\/\/ Tenjin creative name<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">        <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #88C0D0\">      <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    <\/span><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">  <\/span><span style=\"color: #ECEFF4\">}<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><br><strong>Integration Sample &#8211; Unity:<\/strong><\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:1rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.5rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#39404f;color:#c8d0e0\">Objective-C<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>BaseTenjin instance = Tenjin.getInstance(\"&lt;SDK_KEY>\");\n\ninstance.GetAttributionInfo((Dictionary&lt;string, string> attributionInfoData) => {\n    \/\/ Extract individual parameters\n    string advertisingId = GetValueOrDefault(attributionInfoData, \"advertising_id\");\n    string adNetwork = GetValueOrDefault(attributionInfoData, \"ad_network\");\n    string campaignId = GetValueOrDefault(attributionInfoData, \"campaign_id\");\n    string campaignName = GetValueOrDefault(attributionInfoData, \"campaign_name\");\n    string siteId = GetValueOrDefault(attributionInfoData, \"site_id\");\n    string creativeName = GetValueOrDefault(attributionInfoData, \"creative_name\");\n    string deferredDeeplinkUrl = GetValueOrDefault(attributionInfoData, \"deferred_deeplink_url\");\n});<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D8DEE9FF\">BaseTenjin instance <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> Tenjin.<\/span><span style=\"color: #88C0D0\">getInstance<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">&lt;SDK_KEY&gt;<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">instance.<\/span><span style=\"color: #88C0D0\">GetAttributionInfo<\/span><span style=\"color: #ECEFF4\">((<\/span><span style=\"color: #D8DEE9FF\">Dictionary<\/span><span style=\"color: #81A1C1\">&lt;<\/span><span style=\"color: #D8DEE9FF\">string<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> string<\/span><span style=\"color: #81A1C1\">&gt;<\/span><span style=\"color: #D8DEE9FF\"> attributionInfoData<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #81A1C1\">=&gt;<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">    <\/span><span style=\"color: #616E88\">\/\/ Extract individual parameters<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string advertisingId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">advertising_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string adNetwork <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">ad_network<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string campaignId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">campaign_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string campaignName <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">campaign_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string siteId <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">site_id<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string creativeName <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">creative_name<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D8DEE9FF\">    string deferredDeeplinkUrl <\/span><span style=\"color: #81A1C1\">=<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #88C0D0\">GetValueOrDefault<\/span><span style=\"color: #ECEFF4\">(<\/span><span style=\"color: #D8DEE9FF\">attributionInfoData<\/span><span style=\"color: #ECEFF4\">,<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #A3BE8C\">deferred_deeplink_url<\/span><span style=\"color: #ECEFF4\">&quot;<\/span><span style=\"color: #ECEFF4\">)<\/span><span style=\"color: #81A1C1\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #ECEFF4\">})<\/span><span style=\"color: #81A1C1\">;<\/span><\/span><\/code><\/pre><\/div>\n","protected":false},"excerpt":{"rendered":"<p>LiveOps Campaigns The response from the LiveOps feature won&#8217;t always be real-time. We don&#8217;t have the guaranteed response time, so please implement the retry logic if you don&#8217;t get a response in time. In Tenjin you can set up a custom user journey depending on their attribution source. This opens up a whole array of&#8230;<\/p>","protected":false},"author":17,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"doc_category":[242],"glossaries":[],"doc_tag":[],"class_list":["post-15467","docs","type-docs","status-publish","hentry","doc_category-data-exports"],"acf":[],"year_month":"2026-07","word_count":1028,"total_views":0,"reactions":{"happy":0,"normal":0,"sad":0},"author_info":{"name":"Anurag","author_nicename":"anurag","author_url":"https:\/\/tenjin.com\/vi\/blog\/author\/anurag\/"},"doc_category_info":[{"term_name":"Data Exports","term_url":"https:\/\/tenjin.com\/vi\/docs\/category\/data-exports\/"}],"doc_tag_info":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>LiveOps Campaigns | Tenjin<\/title>\n<meta name=\"description\" content=\"Learn how to measure LiveOps campaigns with Tenjin and evaluate their impact on engagement, retention, and revenue.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/tenjin.com\/vi\/docs\/liveops-campaigns\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"LiveOps Campaigns | Tenjin\" \/>\n<meta property=\"og:description\" content=\"Learn how to measure LiveOps campaigns with Tenjin and evaluate their impact on engagement, retention, and revenue.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/tenjin.com\/vi\/docs\/liveops-campaigns\/\" \/>\n<meta property=\"og:site_name\" content=\"Tenjin\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-19T06:24:01+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@TenjinMMP\" \/>\n<meta name=\"twitter:label1\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 ph\u00fat\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/\"},\"author\":{\"name\":\"anurag\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/#\\\/schema\\\/person\\\/e039df04bf002f4a0825fce9d6d5f13b\"},\"headline\":\"LiveOps Campaigns\",\"datePublished\":\"2026-02-20T07:06:11+00:00\",\"dateModified\":\"2026-06-19T06:24:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/\"},\"wordCount\":388,\"publisher\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/#organization\"},\"inLanguage\":\"vi\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/\",\"url\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/\",\"name\":\"LiveOps Campaigns | Tenjin\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/#website\"},\"datePublished\":\"2026-02-20T07:06:11+00:00\",\"dateModified\":\"2026-06-19T06:24:01+00:00\",\"description\":\"Learn how to measure LiveOps campaigns with Tenjin and evaluate their impact on engagement, retention, and revenue.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/#breadcrumb\"},\"inLanguage\":\"vi\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/liveops-campaigns\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/tenjin.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Docs\",\"item\":\"https:\\\/\\\/tenjin.com\\\/docs\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"LiveOps Campaigns\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/#website\",\"url\":\"https:\\\/\\\/tenjin.com\\\/\",\"name\":\"Tenjin\",\"description\":\"Growth Made Simple\",\"publisher\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/#organization\"},\"alternateName\":\"Tenjin - Mobile Measurement Partner\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/tenjin.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"vi\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/#organization\",\"name\":\"Tenjin\",\"url\":\"https:\\\/\\\/tenjin.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/tenjin.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/images.webp\",\"contentUrl\":\"https:\\\/\\\/tenjin.com\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/images.webp\",\"width\":429,\"height\":117,\"caption\":\"Tenjin\"},\"image\":{\"@id\":\"https:\\\/\\\/tenjin.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/TenjinMMP\",\"https:\\\/\\\/www.youtube.com\\\/@TenjinMMP\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/tenjin\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/tenjin.com\\\/#\\\/schema\\\/person\\\/e039df04bf002f4a0825fce9d6d5f13b\",\"name\":\"anurag\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"vi\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g\",\"caption\":\"anurag\"},\"url\":\"https:\\\/\\\/tenjin.com\\\/vi\\\/blog\\\/author\\\/anurag\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C\u00e1c chi\u1ebfn d\u1ecbch LiveOps | Tenjin","description":"T\u00ecm hi\u1ec3u c\u00e1ch \u0111o l\u01b0\u1eddng hi\u1ec7u qu\u1ea3 c\u00e1c chi\u1ebfn d\u1ecbch LiveOps b\u1eb1ng Tenjin v\u00e0 \u0111\u00e1nh gi\u00e1 t\u00e1c \u0111\u1ed9ng c\u1ee7a ch\u00fang \u0111\u1ed1i v\u1edbi m\u1ee9c \u0111\u1ed9 t\u01b0\u01a1ng t\u00e1c, t\u1ef7 l\u1ec7 gi\u1eef ch\u00e2n kh\u00e1ch h\u00e0ng v\u00e0 doanh thu.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/tenjin.com\/vi\/docs\/liveops-campaigns\/","og_locale":"vi_VN","og_type":"article","og_title":"LiveOps Campaigns | Tenjin","og_description":"Learn how to measure LiveOps campaigns with Tenjin and evaluate their impact on engagement, retention, and revenue.","og_url":"https:\/\/tenjin.com\/vi\/docs\/liveops-campaigns\/","og_site_name":"Tenjin","article_modified_time":"2026-06-19T06:24:01+00:00","twitter_card":"summary_large_image","twitter_site":"@TenjinMMP","twitter_misc":{"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"2 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/#article","isPartOf":{"@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/"},"author":{"name":"anurag","@id":"https:\/\/tenjin.com\/#\/schema\/person\/e039df04bf002f4a0825fce9d6d5f13b"},"headline":"LiveOps Campaigns","datePublished":"2026-02-20T07:06:11+00:00","dateModified":"2026-06-19T06:24:01+00:00","mainEntityOfPage":{"@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/"},"wordCount":388,"publisher":{"@id":"https:\/\/tenjin.com\/#organization"},"inLanguage":"vi"},{"@type":"WebPage","@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/","url":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/","name":"C\u00e1c chi\u1ebfn d\u1ecbch LiveOps | Tenjin","isPartOf":{"@id":"https:\/\/tenjin.com\/#website"},"datePublished":"2026-02-20T07:06:11+00:00","dateModified":"2026-06-19T06:24:01+00:00","description":"T\u00ecm hi\u1ec3u c\u00e1ch \u0111o l\u01b0\u1eddng hi\u1ec7u qu\u1ea3 c\u00e1c chi\u1ebfn d\u1ecbch LiveOps b\u1eb1ng Tenjin v\u00e0 \u0111\u00e1nh gi\u00e1 t\u00e1c \u0111\u1ed9ng c\u1ee7a ch\u00fang \u0111\u1ed1i v\u1edbi m\u1ee9c \u0111\u1ed9 t\u01b0\u01a1ng t\u00e1c, t\u1ef7 l\u1ec7 gi\u1eef ch\u00e2n kh\u00e1ch h\u00e0ng v\u00e0 doanh thu.","breadcrumb":{"@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/tenjin.com\/docs\/liveops-campaigns\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/tenjin.com\/docs\/liveops-campaigns\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/tenjin.com\/"},{"@type":"ListItem","position":2,"name":"Docs","item":"https:\/\/tenjin.com\/docs\/"},{"@type":"ListItem","position":3,"name":"LiveOps Campaigns"}]},{"@type":"WebSite","@id":"https:\/\/tenjin.com\/#website","url":"https:\/\/tenjin.com\/","name":"Th\u1ea7n Tenjin","description":"Ph\u00e1t tri\u1ec3n \u0111\u01a1n gi\u1ea3n","publisher":{"@id":"https:\/\/tenjin.com\/#organization"},"alternateName":"Tenjin - Mobile Measurement Partner","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/tenjin.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Organization","@id":"https:\/\/tenjin.com\/#organization","name":"Th\u1ea7n Tenjin","url":"https:\/\/tenjin.com\/","logo":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/tenjin.com\/#\/schema\/logo\/image\/","url":"https:\/\/tenjin.com\/wp-content\/uploads\/2026\/04\/images.webp","contentUrl":"https:\/\/tenjin.com\/wp-content\/uploads\/2026\/04\/images.webp","width":429,"height":117,"caption":"Tenjin"},"image":{"@id":"https:\/\/tenjin.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/TenjinMMP","https:\/\/www.youtube.com\/@TenjinMMP","https:\/\/www.linkedin.com\/company\/tenjin"]},{"@type":"Person","@id":"https:\/\/tenjin.com\/#\/schema\/person\/e039df04bf002f4a0825fce9d6d5f13b","name":"Anurag","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/secure.gravatar.com\/avatar\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dc89d050d7f8053be5b8856ebaaabf82adb98e0ea57d1579b8397fb09de189c8?s=96&d=mm&r=g","caption":"anurag"},"url":"https:\/\/tenjin.com\/vi\/blog\/author\/anurag\/"}]}},"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/docs\/15467","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/comments?post=15467"}],"version-history":[{"count":7,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/docs\/15467\/revisions"}],"predecessor-version":[{"id":17902,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/docs\/15467\/revisions\/17902"}],"wp:attachment":[{"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/media?parent=15467"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/doc_category?post=15467"},{"taxonomy":"glossaries","embeddable":true,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/glossaries?post=15467"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/tenjin.com\/vi\/wp-json\/wp\/v2\/doc_tag?post=15467"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}