How can we target for an audience created via API , lets say I have a third party service which is sending segment/audience definitions – target has APIs so one can create audiences via that.
Now, on the site page – when user logs in – I can make a call to a third party to fetch some user attribute (lets say a flag which says user is premiere user).
Now can we send this flag to target and make Target resolve the audience to the one created via API?
Solved! Go to Solution.
@josejr19 Thanks for elaborate response. Only one question - how is imported audience resolved when page is visited....just because premiereUser=true is used while defining audience , target will be able to map it to that audience when a page visit triggers a param premierUser = true to be sent via page params? is that correct understanding? Again thanks in advance.
@asn_india When you say " how is imported audience resolved when page is visited" I am assuming you mean that you will be uploading user data via the adobe target profile API, is that correct? If so you need to make sure you implement the adobe target mbox3rdPartyId(which you can think of as your companies internal id for the user) to sync the user with the profile you uploaded via the api. You can also use the TNT ID. When the sync happens Target will then pull these users profile from the edge cluster to use in decisioning based on the ID you pass, either the mbox3rdPartyId or the TNT ID. Link below for Adobes documentation.
Hopefully this makes sense and you can validate using the documentation below.
https://developers.adobetarget.com/api/#profiles
To confirm the use case -
If this is the case, then you have multiple functions available to pass in the key value pair as a parameter.
If we can get the flag prior to the global mbox being called, remember this will be picked up with the global mbox call automatically, the data would go under params;
targetPageParams = function() {
return {
"a": 1,
"premierUser": "true",
"profile": {
"age": 26,
"country": {
"city": "San Francisco"
}
}
};
};
If the data is not available in a timely manner or before the global mbox call then recommend making a custom mbox call using getOffer() & applyOffer(). We would want to pass in the value in the getOffer() function. The key value pair from the third party service would go under params;
adobe.target.getOffer({
"mbox": "target-global-mbox",
"params": {
"a": 1,
"b": 2,
"premierUser": "true",
"profile.gender": "male"
},
"success": function(offer) {
adobe.target.applyOffer( {
"mbox": "target-global-mbox",
"offer": offer
} );
},
"error": function(status, error) {
console.log('Error', status, error);
}
});
Here is a good article on using data providers which is also a option but means we hold up calling Target until we get a response from the data provider.
Hope this helps!
Views
Replies
Total Likes
@josejr19 Thanks for elaborate response. Only one question - how is imported audience resolved when page is visited....just because premiereUser=true is used while defining audience , target will be able to map it to that audience when a page visit triggers a param premierUser = true to be sent via page params? is that correct understanding? Again thanks in advance.
@asn_india When you say " how is imported audience resolved when page is visited" I am assuming you mean that you will be uploading user data via the adobe target profile API, is that correct? If so you need to make sure you implement the adobe target mbox3rdPartyId(which you can think of as your companies internal id for the user) to sync the user with the profile you uploaded via the api. You can also use the TNT ID. When the sync happens Target will then pull these users profile from the edge cluster to use in decisioning based on the ID you pass, either the mbox3rdPartyId or the TNT ID. Link below for Adobes documentation.
Hopefully this makes sense and you can validate using the documentation below.
https://developers.adobetarget.com/api/#profiles
Views
Likes
Replies