The RESTAPIRequest API provides methods that allow you to access scripted REST API request details in scripts.

This API runs in the sn_ws namespace.

Note: You cannot instantiate objects of this type. Objects of this type are created automatically and are accessible only in scripted REST API resource scripts.

RESTAPIRequest - body

The body of the request.

Table 1. Field
Name Type Description
body RESTAPIRequestBody The body of the request. You can access data from the body object using the RESTAPIRequestBody API.

Example

var requestBody = request.body // Returns instance of RESTAPIRequestBody

RESTAPIRequest - getHeader(String header)

Returns the value of a specific header from the web service request.

Table 2. Parameters
Name Type Description
header String The name of the header, such as accept or content-type.
Table 3. Returns
Type Description
String The value of the specified header.

Example

var acceptHeader = request.getHeader('accept');

RESTAPIRequest - getSupportedResponseContentTypes()

Get the content types specified in the request Accept header.

Table 4. Parameters
Name Type Description
None
Table 5. Returns
Type Description
Array An array of string values where each string is a content type, such as application/json.

RESTAPIRequest - headers

All headers from the request.

Table 6. Field
Name Type Description
headers object All headers from the request, and their values.

Example

var headers = request.headers; 
var acceptHeader = headers.Accept;
var myCustomHeader = headers.myCustom; 
var specialHeader = headers['special - header'];

RESTAPIRequest - pathParams

The path parameters passed in the request URI.

Table 7. Field
Name Type Description
pathParams Object The path parameters as a script object. Available path parameters depend on the web service configuration.

Example

In this example, the scripted REST API endpoint follows this format: https://instance.service-now.com/api/now/myservice/{tableName}/{id}. The request being processed uses this URL: https://instance.service-now.com/api/now/myservice/myApp_table/1234.

var pathParams = request.pathParams; 
var tableName = pathParams.tableName; //'myApp_table' 
var id = pathParams.id; //'1234'

RESTAPIRequest - queryParams

The query parameters from the web service request.

Table 8. Field
Name Type Description
queryParams Array The query parameters from the web service request.

Example

In this example, the request being processed uses this URL: https://<instance_rest_endpoint>?active=false&name=now. Note the active and name parameters.

var queryParams = request.queryParams; 
var isActiveQuery = queryParams.active; // [false] 
var nameQueryVal = queryParams.name; // ['now']

RESTAPIRequest - queryString

The entire query added to the endpoint URI.

Table 9. Field
Name Type Description
queryString String The entire query for the request.

Example

In this example, the request being processed uses this URL: https://<instance_rest_endpoint>?active=false&name=now. Note the query active=false&name=now.

var query = request.queryString; //"active=false&name=now"

RESTAPIRequest - uri

The request URI, excluding domain information.

Table 10. Field
Name Type Description
uri String The request URI, excluding domain information.

Example

In this example, the request being processed uses this URL: https://instance.service-now.com/api/now/table/myTable?active=false&name=now.

var query = request.uri; //"api/now/table/myTable"

RESTAPIRequest - url

The entire request URL.

Table 11. Field
Name Type Description
url String The entire request URL.

Example

In this example, the request being processed uses this URL: https://instance.service-now.com/api/now/table/myTable?active=false&name=now.

var query = request.url; //"https://instance.service-now.com/api/now/table/myTable?active=false&name=now"