Find your people. Pick a challenge. Ship something real. The CreatorCon Hackathon is coming to the Community Pavilion for one epic night. Every skill level, every role welcome. Join us on May 5th and learn more here.

Send attachment data to external system using Rest API in JSON format.

Bandaru Sree Le
Kilo Contributor

Hi Team,

I need to send attachment data to external system in JSON format. How can I do it?

Should I also encode data to base64 in this case?

Please help me!

 

Thank You

11 REPLIES 11

Hi Ankur, 

The 3rd party accepts the json request body in the following way,


[ {"col1": "val1","col2": "val2","col3": "val3"}​​​​​​​,
  {​​​​​​​"col1": "val4","col2": "val5","col3": "val6"}​​​​​​​,
 {​​​​​​​ "col1": "val7","col2": "val8","col3": "val9"}​​​​​​​,
{​​​​​​​"col1": "val10","col2": "val11","col3": "val12" }​​​​​​​ ]
 
it accepts row wise.
 
Please help me with the sample code to convert the excel data into JSON format as it is first time I am working.

 

Hi,

refer this sample script on how I used it to generate the HTML structure

on similar lines you parse the excel and create array of json object

each json object will be a row

var html = '<table>';

var att = new GlideRecord('sys_attachment');
att.addQuery('sys_id', '29c39e75073f64102011ff208c1ed04f');
att.query();
if(att.next()){
	var imp = new sn_impex.GlideExcelParser();
	var attachment = new GlideSysAttachment();
	var attachmentStream = attachment.getContentStream(att.sys_id.toString());
	imp.parse(attachmentStream);
	var headers = imp.getColumnHeaders().toString().split(',');
	for(var j in headers){
		html = html + '<th>' + headers[j] + '</th>';
	}

	var rowString = '';

	var model = headers[0];
	var sn = headers[1];
	while(imp.next()) {
		var row = imp.getRow();
		rowString = rowString + '<tr>';
		for(var i in headers){
			rowString = rowString + '<td>' + row[headers[i]] + '</td>';
		}
		rowString = rowString + '</tr>';
	}
	html = html + rowString + '</table>';
	gs.info(html);
}

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  10x ServiceNow MVP  ||  ServiceNow Community Leader