Quantcast
Channel: Active questions tagged ampscript - Salesforce Stack Exchange
Viewing all articles
Browse latest Browse all 359

Unable to create html email asset in SFMC using REST API

$
0
0

I am trying to create an html email, which is already stored in a field of one of my Data extension. The email is retrieved correctly and even i am able to print it in cloud page, but i am getting bad request error on creating the asset in sfmc. I am able to create the email with single line of code like "h2 Test Email /h2--", but when its the whole html content, code is breaking.My code is given below,

"<script runat="server">    Platform.Load("core", "1");     var myDE = DataExtension.Init("external key");    var filter = {Property:"Contact Key",SimpleOperator:"equals",Value:"5424"};    var data = myDE.Rows.Retrieve(filter);   for(var i=0; i< data.length; i++)  {    if(csv in data[i])    {      var html = data[i]["csv"];    }  }  if(html)  {    var restInstanceUrl = "https://subdomain.rest.marketingcloudapis.com/",        accessToken     = ""; try {        var payload = {            name: "My HTML Email",            channels: {                email: true,                web: false            },            views: {                html: {                    content: html                },                text: {},                subjectline: {                    content: "Hello, this is my subject line"                },                preheader: {                    content: "and this is my preheader"                }            },            assetType: {                name: "htmlemail",                id: 208            },          category: {id: "398609" },          contentType:"text/html"        };        var endpoint = restInstanceUrl +"asset/v1/content/assets";        var request = new Script.Util.HttpRequest(endpoint);            request.emptyContentHandling = 0;            request.retries = 2;            request.continueOnError = true;            request.setHeader("Authorization", "Bearer " + accessToken);            request.method = "POST";            request.contentType = "application/json";            request.postData = Stringify(payload);        var results = request.send();        var result = Platform.Function.ParseJSON(String(results.content));        Write("success"); } catch(error) {        Write("failed");    }   }</script>"

Could you suggest any possible solutions?

Thanks


Viewing all articles
Browse latest Browse all 359

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>