Set the mid (ECID) value from the query string

Avatar

Avatar

TomEdmondson

Avatar

TomEdmondson

TomEdmondson

15-02-2021

Hi All,

 

I want to set the mid value from the query string where available for example; www.test.com?mid=2345678965456546765438697054533

 

I have been testing is function in the console and I get an error "visitor is not defined" so I must not be writing it correctly.

 

(function(w) {
w.URLSearchParams = w.URLSearchParams || function(searchString) {
var self = this;
self.searchString = searchString;
self.get = function(name) {
var results = new RegExp('[\?&]' + name + '=([^&#]*)').exec(self.searchString);
if (results == null) {
return null;
} else {
return decodeURI(results[1]) || 0;
}
}
;
}
}
)(window);
var urlParams = new URLSearchParams(window.location.search);
if (urlParams.get('mid') != null)
visitor.setVisitorId(urlParams.get('mid'));

 

var urlParams = new URLSearchParams(window.location.search);

if (urlParams.get('mid') != null)

visitor.setMarketingCloudVisitorID(urlParams.get('mid'));

 

When I write _satellite.getVisitorId().getMarketingCloudVisitorID() I do get the mid value so I know it is being set.

 

I would plan to write this into Launch if successful but I am not sure what order stuff would load in.

 

Thanks in advance for any advice.

ECID ECID Cross Domain ITP
View Entire Topic

Avatar

Avatar

yuhuisg

Avatar

yuhuisg

yuhuisg

19-02-2021

My understanding is that ECID can't be set "externally". It is set purely from callbacks with Adobe's own API calls.