Expand my Community achievements bar.

Join us on September 25th for a must-attend webinar featuring Adobe Experience Maker winner Anish Raul. Discover how leading enterprises are adopting AI into their workflows securely, responsibly, and at scale.
SOLVED

Epsilon Contact ID not reflected in identityMap array in ‘AJO Message Feedback Event Schema’

Avatar

Level 2

Requirement: I am trying to include Epsilon Contact ID as an item within the identityMap array in ‘AJO Message Feedback Event Schema’(out of the box schema).

What I have done so far:

  • Created a custom action and in the identities section, added emailAddress and epsilonContactId:

"identities": {

                    "emailAddress": {

                        "toBeMapped": true,

                        "dataType": "string",

                        "label": "Email Address"

                    },

                    "epsilonContactId": {

                        "toBeMapped": true,

                        "dataType": "string",

                        "label": "Epsilon Contact ID"

                    }

                },

 

  • Then, mapped both(emailAddress, epsilonContactId) to the identityMap as below:

  "identityMap": {

                "EmailAddress": [

                    {

                        "authenticatedState": "ambiguous",

                        "id": {

                            "toBeMapped": true,

                            "dataType": "string",

                            "label": "Identity Map Email Address"

                        },

                        "primary": {

                            "toBeMapped": true,

                            "dataType": "boolean",

                            "label": "Identity Map Primary Indicator"

                        }

                    }

                ],

                "EpsilonContactId": [

                    {

                        "authenticatedState": "ambiguous",

                        "id": {

                            "toBeMapped": true,

                            "dataType": "string",

                            "label": "Identity Map Epsilon Contact Id"

                        },

                        "secondary": {

                            "toBeMapped": true,

                            "dataType": "boolean",

                            "label": "Identity Map Secondary Indicator"

                        }

                    }

                ]

            },

 

  • Also updated the relevant schema to:

Set Email Address as the primary identifier.

Set Epsilon Contact ID as the secondary identifier.

 

  • Ingested test records accordingly and created an audience based on those records.
  • Triggered a test journey with the custom action.

Verification:

Then ran the following query to confirm if EpsilonContactId is getting recorded in the identityMap:

 

SELECT TO_JSON(_experience), identityMap, timestamp

FROM ajo_message_feedback_event_dataset

WHERE _experience.customerJourneyManagement.emailChannelContext.address IN (

  'testemail1@gmail.com',

  'testemail1@yahoo.com',

  'testemail1@hotmail.com',

  'testemail2@gmail.com'

)

ORDER BY timestamp DESC

 

However, the results only show Email in the identityMap, with no sign of EpsilonContactId:

[Email -> "{(t,testemail1@gmail.com,NULL)}"]

 

Could you help me confirm whether I'm missing something in the configuration, or mapping of the EpsilonContactId is not quite right or if there is another step required to ensure EpsilonContactId gets properly recorded in the identityMap?

 

Appreciate your help!

Thanks and best regards, 

Zoe

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

@Zoe_G 

identityMap is a map field and slightly different of an array type field. It's not the primary identity which is showing in the message feedback table but the namespace selected for your journeys.

In summary the identityMap will show the namespace you selected for your audience in the journey (only one choice possible). If you selected the EpsilonContactId it will be in the identityMap otherwise if you selected Email Address the the identityMap will return email address 

 

DavidKangni_2-1748978058303.png

Thanks,

David

 

 



David Kangni

View solution in original post

5 Replies

Avatar

Community Advisor

@Zoe_G Unless otherwise EpsilonContactId is the primary identity it won't be part of the identityMap and OOTB message feedback event dataset.

Thanks, Sathees

Avatar

Level 2

@SatheeskannaK thanks for the reply. Quick question, I was thinking that identityMap is an array? So, even it is an array, does it mean that only the primary identity is part of it? and nothing else could be a part of identityMap? Please let me know, thanks, Zoe

Avatar

Correct answer by
Community Advisor

@Zoe_G 

identityMap is a map field and slightly different of an array type field. It's not the primary identity which is showing in the message feedback table but the namespace selected for your journeys.

In summary the identityMap will show the namespace you selected for your audience in the journey (only one choice possible). If you selected the EpsilonContactId it will be in the identityMap otherwise if you selected Email Address the the identityMap will return email address 

 

DavidKangni_2-1748978058303.png

Thanks,

David

 

 



David Kangni

Avatar

Level 2

Thanks for the reply David. I tried that and it works, thanks again!

Avatar

Community Advisor

@Zoe_G Message feedback dataset is based on the execution field (default personalEmail.address) that is set on the journey to send the messages. Any status on the message feedback will get recorded back to the identityNamespace (email) along with the value (email address).

If the EpsilonContactId is used as an execution field then the message feedback dataset would have identityNamespace (EpsilonContactId) along with the value (email address).

Thanks, Sathees