Skip to main content
Skip table of contents

CDP Integration

This page contains integration guides with various CDP solutions, of how to pass martechpass as declared ID.

Why Integrate Utiq martechpass with CDPs?

The martechpass enables CDPs to identify and unify user profiles more accurately, even across sessions, devices, and browsers. As a declared ID, it provides a reliable anchor for user data, enhancing personalization and activation potential.

Primary Use Cases

  • Audience Building & Activation: Collect traits and behaviors tied to martechpass, and activate audiences across owned media, AdTech platforms, or via data clean rooms.

  • First-Party Data Activation: Empower brands to activate customer insights without relying on third-party cookies or shared identifiers.

Learn more: Utiq Use Cases

Vendor Integrations

For each integration, Utiq recommends retrieving the mtid using onIdsAvailable via the addEventListener API, especially when embedding via third-party scripts.

Permutive

CODE
window.Utiq ||= {};
window.Utiq.queue ||= [];

const handleIdsAvailable = ({ mtid }) => {
  // Callback action for onIdsAvailable
  if (window.permutive && typeof window.permutive.identify === 'function') {
    window.permutive.identify([
      {
        id: mtid,
        tag: 'utiq', // Ensure it's a registered identifier in Permutive CDP
        priority: 1
      }
    ])
  } else {
    console.error('Permutive is not available.');
  }
};

window.Utiq.queue.push(() => {
  window.Utiq.API.addEventListener('onIdsAvailable', handleIdsAvailable);
});

Ensure that ‘utiq’ is a registered identifier in Permutive CDP.

Documentation: https://support.permutive.com/hc/en-us/articles/360010090580-Syncing-User-Identities

Testing: Look for localStorage permutive-data-misc containing utiq in identities. Also filter network for identify and check if mtid is part of the aliases object.

Adobe CDP

CODE
window.Utiq ||= {};
window.Utiq.queue ||= [];

const handleIdsAvailable = ({ mtid }) => {
  // Callback action for onIdsAvailable
  if (typeof alloy === 'function') {
    alloy("sendEvent", {
      xdm: {
        "identityMap": {
          "utiq": [ // Ensure it's a registered identity namespace in Adobe CDP
            {
              "id": mtid,
              "authenticatedState": "ambiguous",
              "primary": false
            }
          ]
        }
      }
    });
  } else {
    console.error('Adobe CDP is not available.');
  }
};

window.Utiq.queue.push(() => {
  window.Utiq.API.addEventListener('onIdsAvailable', handleIdsAvailable);
});

Ensure that ‘utiq’ is a registered identity namespace in Adobe CDP.

Documentation: https://experienceleague.adobe.com/en/docs/experience-platform/web-sdk/identity/overview, https://experienceleague.adobe.com/en/docs/experience-platform/xdm/data-types/identity

Testing: Filter Network for interact and check attribute events.0.xdm.identityMap.utiq

ADEX

CODE
window.Utiq ||= {};
window.Utiq.queue ||= [];

const handleIdsAvailable = ({ mtid }) => {
  // Callback action for onIdsAvailable
  window._adexc = window._adexc || [];
  window._adexc.push(["cm", "_cm", [308, mtid]]) // '308' is Utiq's partner ID
};

window.Utiq.queue.push(() => {
  window.Utiq.API.addEventListener('onIdsAvailable', handleIdsAvailable);
});

'308' is Utiq's partner ID.

Documentation: https://api.theadex.com/collector/v1/docs/index.html

Testing: Filter Network for 2.gif?axd_pid=308 and check attribute axd_fuid

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.