Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Parse ASC JSON payload
<html>
<head>
<style>
body, a, input {font-family:sans-serif;}
</style>
</head>
<body style="font-family:sans-serif">
%%=now()=%%
<h1>JSON Parse with GTL</h1>
%%[
/* Sample JSON payload: https://gist.github.com/wvpv/4550507df4714f9f81fb6da843ba4162 */
var @json
set @json = AttributeValue("json")
if not empty(@json) then
]%%
{{.dataobject JsonVar type=variable source=@json maxrows=20}}
{{.data}}
{"target":"@json"}
{{/data}}
{{/dataobject}}
{{#each JsonVar}}
<br><a href="%%=RedirectTo(TreatAsContent('{{url}}'))=%%">{{sku}}</a> - <a href="%%=RedirectTo(TreatAsContent('{{url}}'))=%%">{{name}}</a>
{{/each}}
%%[
else
outputline(concat("<br>no JSON found"))
endif
]%%
<h1>JSON Parse with SSJS</h1>
<script runat="server">
Platform.Load("Core","1.1.1");
var json = Attribute.GetValue('json');
var jsonObj = Platform.Function.ParseJSON(json);
if (jsonObj.length > 0) {
for (var i = 0; i < jsonObj.length; i++ ) {
var item = jsonObj[i];
Platform.Variable.SetValue("@sku",item['sku']);
Platform.Variable.SetValue("@name",item['name']);
Platform.Variable.SetValue("@url",item['url']);
</script>
<br><a href="%%=redirectto(@url)=%%">%%=v(@sku)=%%</a> - <a href="%%=redirectto(@url)=%%">%%=v(@name)=%%</a>
<script runat="server">
}
} else {
Write("no products found")
}
</script>
<br><br><br><a href="%%profile_center_url%%">Profile/Preference Center</a>
<br><a href="%%subscription_center_url%%">Subscription Center</a>
<br><a href="%%unsub_center_url%%">One-Click Unsubscribe</a>
<p>This email was sent by:
<b>%%Member_Busname%%</b>
<br>%%Member_Addr%%, %%Member_City%%, %%Member_State%% %%Member_PostalCode%% %%Member_Country%%</p>
<custom name="opencounter" type="tracking">
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.