Expand my Community achievements bar.

SOLVED

Passing in dynamic data into offer without reloading page

Avatar

Level 3

I found this documentation (https://docs.adobe.com/content/help/en/target/using/experiences/offers/passing-profile-attributes-to...) which allows us to use profile data in our offers. This works however, I cannot figure out how to pull in updated data values without reloading the page. Is there a way to update the content without reloading the page? Perhaps on some sort of event listener (ex: click event)? 

 

 

Thanks!

1 Accepted Solution

Avatar

Correct answer by
Level 2

Hi @Paul_M_Anderson 

we sometimes trigger activities based click events etc using the getOffer() in the handler to retrieve the activity. I  assume you could do the same thing and pass your profile params and then within the loaded offer utilise those params

adobe.target.getOffer({   
  "mbox": "target-global-mbox", 
  "params": { 
     "a": 1, 
     "b": 2, 
     "profile.age": 27, 
     "profile.gender": "male" 
  }, 
  "success": function(offer) {           
        adobe.target.applyOffer( {  
           "mbox": "target-global-mbox", 
           "offer": offer  
        } ); 
  },   
  "error": function(status, error) {           
      console.log('Error', status, error); 
  } 
});

 

View solution in original post

1 Reply

Avatar

Correct answer by
Level 2

Hi @Paul_M_Anderson 

we sometimes trigger activities based click events etc using the getOffer() in the handler to retrieve the activity. I  assume you could do the same thing and pass your profile params and then within the loaded offer utilise those params

adobe.target.getOffer({   
  "mbox": "target-global-mbox", 
  "params": { 
     "a": 1, 
     "b": 2, 
     "profile.age": 27, 
     "profile.gender": "male" 
  }, 
  "success": function(offer) {           
        adobe.target.applyOffer( {  
           "mbox": "target-global-mbox", 
           "offer": offer  
        } ); 
  },   
  "error": function(status, error) {           
      console.log('Error', status, error); 
  } 
});