We can pass special characters in http post request by encoding the URL parameters as shown below
var headers = {
Authorization': 'Bearer ${secretKey}' ,
'Content-Type': 'text/plain',
}
var details = {
'name': <username>,
'email': <email>,
"phone": <phone>
};
var formBody = [];
for (var property in details) {
var encodedKey = encodeURIComponent(property);
var encodedValue = encodeURIComponent(details[property]);
formBody.push(encodedKey + "=" + encodedValue);
}
formBody = formBody.join("&");
var url = <URL>
var Apiresponse = nlapiRequestURL(url, formBody , headers, null, "POST");
var body = Apiresponse.getBody();
nlapiLogExecution("ERROR", "bodybody", JSON.stringify(body));