logo

NJP

Scripted REST API Examples

ServiceNow Blog · Apr 29, 2025 · article

Scripted REST API Examples

POST example 1:

( function process*(/*RESTAPIRequest*/ request,* /*RESTAPIResponse*/ response*)* {

// implement resource here

//-- see:

//-- https://docs.servicenow.com/bundle/geneva-servicenow-platform/page/app-store/dev\_portal/API\_reference/ScriptableServiceRequestBody/reference/r\_SSRB\_data.html

//var queryParams = request.queryParams;

//var pathParams = request.pathParams;

//gs.log('PATH params: ' + path;

//gs.log('PATH param2: ' + path.description, 'wsRESTtest')

var Reqbody = request*.body;*

//var test_resp = pathParams.RequestDetailsJson;

var sName*='';*

var sID*='';*

var arrYesNo*=* false ;

var requestData = Reqbody*.data;*

if (requestData instanceof Array*)* {

sName = requestData*[0].name;* // 'user1'

sID = requestData*[0].id;* // '1234'

arrYesNo*=* true ;

} else {

sName = requestData*.name;* // 'user1'

sID*=requestData.id;*

}

response*.setContentType('application/json');*

response*.setStatus(200);*

var writer = response*.getStreamWriter();*

writer*.writeString('sName:sID ' *+** sName + ',' + sID + ',arrYesNo:' + arrYesNo*);*

//writer.writeString('resp: ');

})(request*,* response*);*

POST example 2 - using query parameters:

( function process*(/*RESTAPIRequest*/ request,* /*RESTAPIResponse*/ response*)* {

// implement resource here

//-- see:

//-- https://docs.servicenow.com/bundle/geneva-servicenow-platform/page/app-store/dev\_portal/API\_reference/ScriptableServiceRequestBody/reference/r\_SSRB\_data.html

response*.setContentType('application/json');*

response*.setStatus(200);*

varqueryParams =request*.queryParams;*

varsparamtest =queryParams*.TestVar1;*

var writer = response*.getStreamWriter();*

writer*.writeString('resp: OK: ' *+** sparamtest*);*

})(request*,* response*);*

View original source

http://www.cloudminus89.com/2025/04/scripted-rest-api-examples.html