Context
The Demandbase Adobe Analytics Launch Extension works with Adobe Analytics to make your attributes available in your Adobe Analytics reports. The Launch Extension calls the Demandbase IP-API asynchronously to identify the company in real time.
How it Works
- The Launch Extension registers a load event so that Launch Data Elements can receive the data when it’s ready.
- In the Launch Extension, the Data Elements are then mapped to eVars. Each Data Element stores eight firmographic attributes delimited together. This provides each eVar with eight data points to convert into eight classification reports using the Classification Rule Builder.
- Once configured, the Launch Extension calls the Demandbase IP-API service and stores the data in the browser’s local storage as shown below.
For more information, see FAQs: Adobe Launch Extension.
Follow the steps below to set up the Launch Extension.
Step 1: Pre-work
- Acquire your Demandbase API Key for Adobe from your CSM.
- Install the Core, Adobe Analytics, and Demandbase Extensions from the Adobe Extensions page.
- Add the Adobe Analytics dev and production report suite ID to your Adobe Analytics Extension.
Tip: You can request the suite IDs from your Adobe administrator. - Create up to five eVars.
Tip: We store eight attributes for each eVar and use Classification Reports. Do not create more than five eVars for receiving Demandbase data for the 40 total attributes. - Run Adobe Analytics prior to installing Demandbase. This best practice makes it easier to isolate issues during installation.
- Make sure your Launch environment is ready and installed on your website.
- Confirm that you have administrator access to Launch.
- Inform your CSM that you plan to migrate. This ensures Demandbase Implementation resources can be made available to sign off on a properly configured integration.
Step 2: Create and Map the Data Elements
-
Create the Data Elements.
Important:- Create one Data Element to map to each eVar.
- Name the Data Elements the same as your eVars for easy mapping.
-
Map the Data Elements as follows:
- Select Demandbase for Extension.
- Select the corresponding element for Data Element Type.
- Select Session for Storage Duration.
Step 3: Configure the Demandbase Extension
-
In the API Configuration section, enter your API Key .
Tip: Contact your CSM if you don't have your API key.
- Set the IP-API Call Timeout value.
Tip: This is how long the extension waits for the Demandbase API to identify the visitor. Generally, longer timeout values allow for more data to be collected. See the FAQ section for more details. - In the Default Values Configuration section, enter the default values to send to Adobe. The default values group similar data in order to reduce noise in reports where the data is not relevant.
For example, in a Company Name Report that shows company traffic and names, setting the default value to Non-Company Visitor groups all non-company traffic. This reduces noise from undefined values in the Company Name Report.- Non-Company Visitor: This applies to non-company IP’s from visitors to your website such as from a residential or hotel restaurant IP.
- Non-Target Account: This applies to identified companies that are not in a target account list or Audience. For example, if you had a Prospect Watch List or custom attribute, companies not in this list will be grouped by Non-Target Account to keep reports clean.
- Target Account but Attribute Unavailable: This applies when companies in your list have not been assigned a custom attribute value. In the Prospect Watch List example, if your custom attribute was account_status, but the value was NULL, the default value would be returned.
- Unavailable Attribute: This applies to identified companies with NULL or empty data attributes. For example, a stock-ticker NULL value would return the default value.
- In the Data Elements Configuration section, enter the values for each eVar in its data element tab (i.e dataElement1, dataElement2, etc). Each field (Attribute 1, Attribute 2, etc) is for a Demandbase data attribute selected from the list of API attributes available. Attribute 1 through 8 represent the order in which they’re strung together in the eVar.
- The first two data elements are prefilled, but you have the option to modify them. If you have no existing Demandbase Adobe integration, a best practice is to use the default setup.
- Existing customers should review the Attribute fields with watch_list_ values with your CSM confirm the values are correct.
- For additional attributes, select the company attributes you want to sending to Adobe Analytics from the list shown in Reference: Firmographics Attributes Overview for Demandbase One.
Tip: Enter the API Variable Names in the Attribute fields. - To use a watch list attribute/custom attribute (from a target account list), prefix the name with watch_list_. For example, for a watch list attribute campaign_id, use watch_list_campaign_id.
- After entering eight attributes, proceed to the next data element tab and enter up to eight additional attributes.
Step 4: Configure the Demandbase Firing Rule
You'll need two sets of firing rules. The following steps use the Adobe Analytics Action from Launch. You can also use the Adobe Analytics Launch Extension directly to set eVars.
- Create a new rule with the name Page Load: Fire Demandbase.
- Add an event as follows:
- Select Core Library Loaded (Page Top).
- Set the event order to 1.
- Add an action as follows:
- Select Demandbase for Extension.
- Select callDemandbaseIpApi for Action Type.
- Enter Demandbase - callDemandbaseIpApi for Name.
Step 5: Set eVars and Fire the Beacon
- Create a new rule with the name Demandbase Complete: Fire Pageview.
-
Add an event as follows:
- Select Demandbase for Extension.
- Select API Call Finished (Success, Fail, or Timeout) for Event Type.
- Enter Demandbase - API Call Finished (Success, Fail, or Timeout) for Name.
- Set 50 for Order.
Tip: Since you’re firing this consecutively to the Demandbase API rule, this rule should have a higher order number.
- Add an action to set eVars as follows:
- Select Adobe Analytics for Extension.
- Select Set Variables for Action Type.
- Enter Adobe Analytics - Set Variables for Name.
- In the Variables section, map the eVars to the data elements.
- Add an action to send the beacon as follows:
- Select Adobe Analytics for Extension.
- Select Send Beacon for Action Type.
- Enter Adobe Analytics - Send Beacon for Name.
Step 6: Combine Events into One Rule and Send Only One Beacon *s.t() call*
Since firing your s.t() beacon multiple times is costly, you can combine the Demandbase event with your other events before firing. This ensures that all events are completed and Demandbase data is available before firing.
Tips:
- To control the amount of time to wait for the Demandbase event, use the Extension timeout setting.
- All events must be combined before you can use them together under one Send Beacon Action.
Important: The custom code described in the following steps is required because Adobe Launch combines events using OR rules by default and does not support combining events using AND rules.
-
Modify the API call rule from Step 4: Configure the Demandbase Firing Rule. Be sure to you complete Step 4 before proceeding.
- Add a new action.
- Select Core for Extension.
- Select Custom Code for Action Type.
- Select Javascript for Language.
- Open the Editor and paste the following code snippet to keep track of the API event.
window.demandbaseHasCompleted = false;
- Select Keep Changes.
The following screenshot shows the final screen for step 1.
-
Modify the set eVars rule from Step 5: Set eVars and Fire the Beacon. Be sure to complete Step 5 before proceeding.
- For clarity, rename the rule to Demandbase Complete: Set Evars.
- Remove the Adobe Analytics - Send Beacon action. A new rule with the action will be created in another step to combine events.
- Ensure the event order for Demandbase - API Call Finished (Success, Fail, or Timeout) is set to 2.
- In the Conditions row, add a new Condition.
- Select Regular for Logic Type.
- Select Core for Extension.
- Select Custom Core.
- Open the Editor and paste following code snippet to indicate the complete state of the API
window.demandbaseHasCompleted=true;
return window.demandbaseHasCompleted;
-
Add a rule for the Page Bottom Complete Event.
- Create a new rule.
- Name the rule. For example you can use Demandbase - page bottom completed.
- Select Core - Page Bottom for Event.
- Set the order to 3.
- For the Action row, select Custom Code.
- Select Javascript.
- Open the editor and copy paste this snippet
window.pageBottomFired = true;
- Select Keep Changes.
The following screenshot shows the final screen for step 3.
Important: Repeat this step for each event you want to combine. Page Bottom is used as an example because it’s typically the best place to fire the beacon. If you want to use a custom event or another Core event, you need to create a rule as described in this step. Use the custom code to declare the status of the event in the DOM. For example, if you had a rule, MyCustomEvent (Rule) - In the Action custom code you would declare:
window.myCustomEventIsComplete = true;
-
Combine Page Bottom with the Demandbase event and send the beacon.
Create a new rule or use an existing one that has Page Bottom. In this step, we combine the Demandbase API event with the Page Bottom core event. If your rule has more than one event, each one must have a corresponding Complete event as in step 3 so they can be used in this step. If this is not done, some events can cause the rule to trigger before all events are completed.
- Add the Page Bottom event.
- Set the order to 100.
- Add the Demandbase event Demandbase - API Call Finished (Success, Fail, or Timeout) and set the order to 5.
- For Conditions, select Custom Code.
- Open the Editor and paste following code snippet to combine the AND events.
return !!window.pageBottomFired && !!window.demandbaseHasCompleted;
- Select Keep Changes.
- For Action row, add the Adobe Analytics - Send Beacon action.
The following screenshot shows the final screen for step 4.
The following screenshot shows the ending screen.
Step 7: Set up Classification Reports
- Create the Classifications for each data element/eVar. For information on Conversion Classifications, see the Adobe documentation.
-
Create the Classification Rules necessary to split out the data from the eVar and put them in the Classification reports.
- Create 1 rule per eVar.
- Use the following Regex for all rows:
^([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*):([^:]*)$