Discussions
Join us for complimentary one-day events around the world and step into a future fueled by AI and limitless potential. Explore new breakthroughs, sharpen your skills, and connect with experts who are shaping what’s next. Experience bold keynotes, interactive learning, and connections that span the global NetSuite community. Discover what's next at SuiteConnect Tour 2026.
RESTlet POST JSON Parameter
Hi,
I have a restlet that I want to POST to. Here is what I am entering into the developer console in my chrome browser:
function replacer(key, value) {
if (typeof value === 'number' && !isFinite(value)) {
return String(value);
}
return value;
}
var headers = new Array();
headers['User-Agent-x'] = 'SuiteScript-Call';
headers['Content-Type'] = 'application/json';
var requestData = { "api":"label" };
nlapiRequestURL('/app/site/hosting/restlet.nl?script=239&deploy=1', JSON.stringify(requestData, replacer), headers);
In the restlet code:
function post(dataIn)
{
var logger = new Logger();
logger.enableDebug();
logger.debug('post','Post: api=' + dataIn);
}
This outputs to the log: "Post: api={"api":"label"}". That tells me that the request data is being passed as a string NOT as a JSON object. As you can see I am setting the "application/json" content type. But It still will not post as an object so I can't access the data on the restlet, ie: dataIn.api returns NULL because it's a string.