Map identities

In this lesson, we will create identity namespaces and add identity fields to our schemas. After doing so, we’ll also be able to complete the schema relationships from the previous lesson.

Adobe Experience Platform Identity Service helps you to gain a better view of your customers and their behaviors by bridging identities across devices and systems, allowing you to deliver impactful, personal digital experiences in real-time. Identity fields and namespaces are the glue that joins different data sources together to build the 360-degree real-time customer profile.

Data Architects will need to map identities outside of this tutorial.

Before you begin the exercises, watch this short video to learn more about identity in Adobe Experience Platform:

Identity fields are only required if you building real-time customer profiles. They are not required if you are only ingesting data into the data lake.

Permissions required

In the Configure Permissions lesson, you set up all the access controls required to complete this lesson.

Create Identity Namespace

In this exercise, we’ll create identity namespaces for Luma’s custom identity fields, loyaltyId, crmId, and productSku. Identity namespaces play a critical role in building real-time customer profiles, as two matching values in the same namespace allow two data sources to form an identity graph.

Create Namespaces in the UI

Let’s start by creating a namespace for the Luma Loyalty Schema:

  1. In the Platform user interface, go to Identities in the left navigation

  2. You will notice that there are several out-of-the-box identity namespaces available. Select the Create identity namespace button

  3. Provide details as following

    table 0-row-2 1-row-2 2-row-2 3-row-2
    Field Value
    Display name Luma Loyalty Id
    Identity symbol lumaLoyaltyId
    Type Cross-Device
  4. Select Create

    Create Namespaces

Now set up another namespace for the Luma Product Catalog Schema with the following details:

Display name
Luma Product SKU
Identity symbol
Non-people identifier

Create Identity Namespace Using API

We will create our CRM namespace via API.

If you’d prefer to skip the API exercises, feel free to create the CRM namespace via the user interface method you used with the following details:
  1. As the Display name, use Luma CRM Id
  2. As the Identity symbol, use lumaCrmId
  3. As the Type, use Cross-Device

Let’s create the Identity Namespace Luma CRM Id:

  1. Download Identity Service.postman_collection.json to your Luma Tutorial Assets folder

  2. Import the collection into Postman

  3. If you don’t have an access token, open the request OAuth: Request Access Token and select Send to request a new access token.

  4. Select the request Identity Service > Identity Namespace > Create a new identity namespace.

  5. Paste the following as the Body of the request:

    code language-json
        "name": "Luma CRM Id",
        "code": "lumaCrmId",
        "idType": "Cross_device"
  6. Press the Send button and you should get a 200 OK response:

    Identity Namespace

If you return to the user interface, you should now see your three new custom namespaces:
Identity Namespace

Label identity fields in schemas

Now that we have our namespaces, the next step is to update our schemas to label our identity fields.

Label XDM Fields For Primary Identity

Each schema used with Real-Time Customer Profile is required to have a primary identity specified. And each record ingested must have a value for that field.

Let’s add a primary identity to the Luma Loyalty Schema:

  1. Open the Luma Loyalty Schema

  2. Select the Luma Identity profile field group

  3. Select the loyaltyId field

  4. Check the Identity box

  5. Check the Primary Identity box, too

  6. Select the Luma Loyalty Id namespace from Identity namespaces dropdown

  7. Select Apply

  8. Select Save

    Primary Identity

Repeat the process for some of your other schema:

  1. In the Luma CRM Schema, label the crmId field as the primary identity using the Luma CRM Id namespace
  2. In the Luma Offline Purchase Events Schema, label the loyaltyId field as the primary identity using the Luma Loyalty Id namespace
  3. In the Luma Product Catalog Schema, label the productSku field as the primary identity using the Luma Product SKU namespace
Data collected with the Web SDK is an exception to the typical practice of labeling identity fields in the schema. Web SDK uses the Identity Map to label identities on the implementation side and thus we’ll determine the identities for the Luma Web Events Schema when we implement the Web SDK on the Luma website. In that later lesson, we’ll collect the Experience Cloud Visitor ID (ECID) as the primary id and crmId as a secondary id.

With our selection of primary identities, it’s clear to see how Luma CRM Schema can connect to the Luma Offline Purchase Events Schema since they both use loyaltyId as an identifier. But how can we connect our offline purchases to online behavior? How can we classify the products purchased with our product catalog? We will use additional identity fields and schema relationships.

Label XDM Fields For Secondary Identity

Multiple identity fields can be added to a schema. Non-primary identities are often referred to as secondary identities. To connect offline purchases to online behavior, we will add the crmId as a secondary identifier to our Luma Loyalty Schema and later in our web events data. Let’s update the Luma Loyalty Schema:

  1. Open the Luma Loyalty Schema

  2. Select Luma Identity Profile Field group

  3. Select crmId field

  4. Check the Identity box

  5. Select the Luma CRM Id namespace from Identity namespaces dropdown

  6. Select Apply and then select the Save button to save your changes

    Secondary Identity

Complete the schema relationships

Now that we have our identity fields labeled, we can complete the setup of the schema relationships between Luma’s product catalog and the event schemas:

  1. Open the Luma Offline Purchase Events Schema

  2. Select Commerce Details field group

  3. Select productListItems > SKU field

  4. Check the Relationship box

  5. Select Luma Product Catalog Schema as the Reference schema

  6. Luma Product SKU should automatically populate as the Reference Identity namespace

  7. Select Apply

  8. Select Save

    Reference field

Repeat this process to create a relationship between the Luma Web Events Schema and the Luma Product Catalog Schema.

Note that after defining the relationship, it is indicated in both the Composition and Structure section of the schema editor.

Relationship visualization in the schema editor

Additional Resources

Now that our identities are in place, we can create our datasets!