Expand my Community achievements bar.

SOLVED

Web SDK (alloy.js) isn't populating identityMap with ECID

Avatar

Level 1

I have a simple page I built to do some testing with collecting data via the Edge network using Alloy.js. The ECID seems to be getting set on the page correctly but when I look into the datasets, the identityMap field doesn't seem to contain the ECID. I also don't see the ECID or the identityMap field anywhere in the HTTP request.

 

It's my understanding that the ECID should autopopulate into identityMap. Have I missed a configuration step or is there possibly some other common reason why ECID is not being passed in?

 

What am I missing?

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

1 Accepted Solution

Avatar

Correct answer by
Employee Advisor

@Paul_Murphy !

The ECID isn't in the network request. It gets added on the Edge and is forwarded from there. You can use Assurance to see it, if you want (open the Debugger, go to Logs->Edge and create a session).

It is part of the response, which is why you can see it in the Preview tab of dev console, as @abhinavbalooni mentioned.

Yeah, you won't see ECID in the dataset preview, either. If the dataset and schema are enabled for profile, you should be able to look up the ECID in the identity graph or profile viewer pretty quickly, though.

 

 

View solution in original post

8 Replies

Avatar

Community Advisor

Hello @Paul_Murphy 

 

Have you configured anything in the JS to tell the SDK where to push this data in CDP like dataset id?


     Manoj
     Find me on LinkedIn

Avatar

Level 1

Yes. All the XDM fields I'm pushing to the DataStream are making their way into a dataset correctly. But in the DataSets UI, when I preview the data, the identityMap field just contains a dash "-". I should expect some key/value pairs with ECID there, no?

Avatar

Community Advisor

Hello @Paul_Murphy 

 

May be the ECID is mapped to a different attribute. Can you share the payload from HTTP request?


     Manoj
     Find me on LinkedIn

Avatar

Level 1

I don't see ECID mapped to another attribute. 

 

I do see in the request payload the query.identity.fetch object that contains the value of "ECID". Is it possible the mapping is happening on the server side and I'm just not seeing it in the DataSet Preview?

 

Am I correct in my understanding that ECID is auto-mapped to identityMap?

 

Avatar

Community Advisor

Hello @Paul_Murphy 

 

IdentityMap is an object and you might not see the value in the dataset preview.

 

Also, ECID is not mapped automatically. It depends on how the event schema is set how the data is mapped in the data stream and where is it going.


     Manoj
     Find me on LinkedIn

Avatar

Community Advisor

Hi @Paul_Murphy 

You are right in saying that when you use web sdk it auto populates ECID in the identity map but you do not see the value where you are looking as per the screenshot you've shared.

Try looking in the preview in the interact call and you would notice the ECID value come through. Attaching a screenshot which should help.

 

Also, if you look for IdentityMap in the dataset UI you will never see anything come up. If you want to look for it in the AEP interface, try using query service to retrieve the information and it would show up.

 

abhibalooni_0-1700216760737.png

 

Cheers,

Abhinav

Avatar

Correct answer by
Employee Advisor

@Paul_Murphy !

The ECID isn't in the network request. It gets added on the Edge and is forwarded from there. You can use Assurance to see it, if you want (open the Debugger, go to Logs->Edge and create a session).

It is part of the response, which is why you can see it in the Preview tab of dev console, as @abhinavbalooni mentioned.

Yeah, you won't see ECID in the dataset preview, either. If the dataset and schema are enabled for profile, you should be able to look up the ECID in the identity graph or profile viewer pretty quickly, though.

 

 

Avatar

Level 1

This is the answer I was looking for.

 

I discovered that if I go ahead and make the Connection with identityMap as the primary identity field, then I can create the Data View in CJA, the identity map seems to work as expected.