I have a .NET web application using DXA 2.2 framework. I tried to use Smart Target capability, and I have installed all the desired components (Elastic search, XO management, XO query, services extension for Deployer, Session Content Service, XO module etc.). I created a Promotion and it appears fine on the Page when I set the Triggers to be "Always trigger" in Targeting section in CMS.

However if I try to use "browser based" Trigger for this Promotion then the Promotion is not returned from the smart-target query. While trying to find the root cause, I found that AmbientDataHelper.GetTriggers(claimStore) returns empty string for triggers. When I inspected the passed Claim Store then I saw it has some values for claims in it, still AmbientDataHelper.GetTriggers(claimStore) is returning empty string.

During further investigation I found that all keys from the passed Claim Store looks like:

enter image description here

Can you please help me understand what could be the potential root cause for this and how to fix that?

  • I’m not sure how to interpret that screen shot. Are those claim values? For which claim types? Commented Oct 19, 2020 at 16:58
  • Sorry for not being clear. These are all the keys from the claim store. When system calls AmbientDataHelper.GetTriggers(claimStore) method then it passes the claim store. The screenshot above shows the keys (lowercased Uri from claim store) from the passed claim store.
    – Rites
    Commented Oct 20, 2020 at 7:58
  • So they keys are called case “taf:x:y:z”: ?! Commented Oct 20, 2020 at 17:10
  • Yes, they are. I have checked the code in ambient data helper and these values in picutre are driven from statement equivalent to IDictionary<Uri, object> all = claimStore.GetAll(); all .Select(a=>a.Key.ToLowerCase()); this code.
    – Rites
    Commented Oct 20, 2020 at 17:33
  • Are you sure the key names aren’t the part of the string in quotes? If so, it would be interesting to see the value of the taf:claim:ambientdata:definedtriggertypes claim. Commented Oct 20, 2020 at 17:45

1 Answer 1


This issue was resolved by referencing session_cartridge.jar and session_cartridge_conf.xml file in content service. Details about how to reference session cartride can be found at https://docs.sdl.com/792149/602448/sdl-tridion-sites-9/adding-the-session-cartridge-to-support-footprints. Post referencing mentioned Jar and XML file, I can now see the OOTB claims present in claims store.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.