Epsilon Contact ID not reflected in identityMap array in ‘AJO Message Feedback Event Schema’ | Community
Skip to main content
Level 2
June 2, 2025
Solved

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

  • June 2, 2025
  • 2 replies
  • 552 views

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

Best answer by DavidKangni

@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 

 

Thanks,

David

 

 

2 replies

SatheeskannaK
Community Advisor
Community Advisor
June 3, 2025

@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
Zoe_GAuthor
Level 2
June 3, 2025

@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

DavidKangni
Community Advisor
DavidKangniCommunity AdvisorAccepted solution
Community Advisor
June 3, 2025

@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 

 

Thanks,

David

 

 

David Kangni
Zoe_GAuthor
Level 2
June 5, 2025

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