Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

Email deliveries: Output all available variables for debugging purpose

lorisg52723730
Level 2
Level 2

I find it pretty hard to know what are the variables (some examples: message.id, recipient.firstName, delivery.label, etc) available that can be used inside email deliveries. I was wondering if an exhaustive list existed, but can't find any in the online documentation.

Moreover, for debugging purpose, I think it could be really useful if we could use some javascript to send some test email deliveries which would output all the available variables (their key and value). It could look like how JSON or Javascript object are displayed in some dev tools, for instance :

jsonpayloadweatherdata.png

4 Replies
florentlb
Level 10
Level 10

Hi,

There is no official list in the documentation as it mainly depends on the context you're in and the schema you use, as well as on your rights.

You can also define your own variables in some cases.

Most variables come from the schema definition.

Florent

florentlb
Level 10
Level 10

I'll keep your feedback and let you know if we get this list documented.

Florent

Jean-Serge_Biro
Community Advisor
Community Advisor

Hi Lorisg,

Please have a look to the NL.toDebugString() function, as described in this post of Andrey:
Re: AC6.1/7 JavaScript engine: what it is, what is can do?

Regards
J-Serge

David__Garcia
Level 9
Level 9

Run the following js code, choose the primary key of any delivery

var d = nms.delivery.load("841925965");

for (var i in d) {

  logInfo([i]);

}

also you can log which mailparameter variables are available

var d = nms.delivery.load("841925965");

for (var i in d.mailParameters) {

  logInfo([i]);

}

1398408_pastedImage_4.png

For instance, you can dynamically generate the delivery's subject line from within the workflow's delivery activity without modifying the template. ie.

delivery.mailParameters.subject = "Daily report for "+formatDate(new Date(), "%2D%2M%4Y");

1398410_pastedImage_5.png