Table API

The Table API allows you to perform create, read, update, and delete (CRUD) operations on existing tables.

Table API - DELETE /now/table/{tableName}/{sys_id}

This method deletes the specified record from the specified table.

URL format

Versioned URL: /api/now/v2/table/{tableName}/{sys_id}

Default URL: /api/now/table/{tableName}/{sys_id}

Supported request parameters

Table 1. Parameters
Parameter Description
None

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 2. Request headers
Header Description
None
Table 3. Response headers
Header Description
None

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 4. Status codes
Status code Description
204 Indicates the request completed successfully.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/incident/d977b66a4f411200adf9f8e18110c7b2" \
--request DELETE \
--header "Accept:application/json" \
--user 'admin':'admin'
""

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/incident/d977b66a4f411200adf9f8e18110c7b2'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'admin'
pwd = 'admin'

# Set proper headers
headers = {"Content-Type":"application/xml","Accept":"application/xml"}

# Do the HTTP request
response = requests.delete(url, auth=(user, pwd), headers=headers  )

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
None

Table API - GET /now/table/{tableName}

This method retrieves multiple records for the specified table with proper pagination information.

URL format

Versioned URL: /api/now/v2/table/{tableName}

Default URL: /api/now/table/{tableName}

Supported request parameters

Table 5. Parameters
Parameter Description
sysparm_query Encoded query used to filter the result set.

For example:

(sysparm_query=caller_id=javascript:gs.getUserID()^active=true)

The encoded query supports order by. To sort responses based on certain fields, use the ORDERBY and ORDERBYDESC clauses in sysparm_query. For example, sysparm_query=active=true^ORDERBYnumber^ORDERBYDESCcategory filters all active records and orders the results in ascending order by number first, and then in descending order by category.

If part of the query is invalid, such as by specifying an invalid field name, the instance ignores the invalid part. It then returns rows using only the valid portion of the query. You can control this behavior using the property glide.invalid_query.returns_no_rows. Set this property to true to return no rows on an invalid query.
Note: This property controls the behavior of all queries across the instance, such as in lists, scripts (GlideRecord.query()), and web service APIs.
sysparm_display_value Data retrieval operation for reference and choice fields.
Based on this value, retrieves the display value and/or the actual value from the database.
  • true returns display values for all fields.
  • false returns actual values from the database. If a value is not specified, this parameter defaults to false.
  • all returns both actual and display values.
Note: There is no preferred method for setting this parameter. However, specifying the display value may cause performance issues since it is not reading directly from the database and may include referencing other fields and records. For more information on display values and actual values, see Table API FAQs (KB0534905).
sysparm_fields Comma-separated field names to return in the response.
sysparm_view UI view to determine fields returned in the response.
Note: If both sysparm_fields and sysparm_view are specified, the sysparm_fields parameter takes priority.
sysparm_limit Limit to be applied on pagination. The default is 10000.

Unusually large sysparm_limit values can impact system performance.

sysparm_offset Number of records to exclude from the query. Use this parameter to obtain more records than specified in sysparm_limit. For example, if sysparm_limit is set to 500, but there are additional records you want to query, specify a sysparm_offset value of 500 to get the second set of records. Do not pass a negative number in the sysparm_offset parameter.
sysparm_exclude_reference_link Additional information provided for reference fields, such as the URI to the reference resource, is suppressed.
sysparm_suppress_pagination_header Set this value to true to remove the Link header from the response. The Link header enables you to request additional pages of data when the number of records matching your query exceeds the query limit.
Key-Value Pairs

Alternative to using the sysparm_query parameter. You can filter a query using key-value pairs where the key is the name of a field. This functionality is available for GET queries.

For example, instead of using the parameter &sysparm_query=active=true, you can use &active=true. You can use the display value when the field is a choice or reference type field, such as &state=closed instead of &state=7. To specify multiple key-value pairs, separate each with an ampersand, such as &active=true&assigned_to=john.smith.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 6. Request headers
Header Description
None
Table 7. Response headers
Header Description
Link REST message data can be split into multiple result sets rather than forcing the user to submit multiple requests. The header has different links available for the first set, previous set, next set, and the last set of records, where applicable.

For example:

https://<instance name>.service-now.com/api/now/table/cmdb_ci?sysparm_offset=40&sysparm_limit=10000>;rel="next",

https://<instance name>.service-now.com/api/now/table/cmdb_ci?sysparm_offset=40&sysparm_limit=10000>;rel="prev",

https://<instance name>.service-now.com/api/now/table/cmdb_ci?sysparm_offset=0&sysparm_limit=10000>;rel="first",

https://<instance name>.service-now.com/api/now/table/cmdb_ci?sysparm_offset=2780&sysparm_limit=10000>;rel="last"
Note: The limit parameter defaults to 10,000 records. This limit can be set to any value. Be aware, however, that an unusually large value can impact system performance.
X-Total-Count Total count of records returned by the query.

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 8. Status codes
Status code Description
200 Request completed successfully. If a valid query returned no results, the response body contains only an empty result array.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/problem?sysparm_limit=1" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
{
  "result": [
    {
      "parent": "",
      "made_sla": "true",
      "watch_list": "",
      "upon_reject": "cancel",
      "sys_updated_on": "2016-01-19 04:52:04",
      "approval_history": "",
      "number": "PRB0000050",
      "sys_updated_by": "glide.maint",
      "opened_by": {
        "link": "https://instance.service-now.com/api/now/table/sys_user/glide.maint",
        "value": "glide.maint"
      },
      "user_input": "",
      "sys_created_on": "2016-01-19 04:51:19",
      "sys_domain": {
        "link": "https://instance.service-now.com/api/now/table/sys_user_group/global",
        "value": "global"
      },
      "state": "4",
      "sys_created_by": "glide.maint",
      "knowledge": "false",
      "order": "",
      "closed_at": "2016-01-19 04:52:04",
      "cmdb_ci": {
        "link": "https://instance.service-now.com/api/now/table/cmdb_ci/55b35562c0a8010e01cff22378e0aea9",
        "value": "55b35562c0a8010e01cff22378e0aea9"
      },
      "delivery_plan": "",
      "impact": "3",
      "active": "false",
      "work_notes_list": "",
      "business_service": "",
      "priority": "4",
      "sys_domain_path": "/",
      "time_worked": "",
      "expected_start": "",
      "rejection_goto": "",
      "opened_at": "2016-01-19 04:49:47",
      "business_duration": "1970-01-01 00:00:00",
      "group_list": "",
      "work_end": "",
      "approval_set": "",
      "wf_activity": "",
      "work_notes": "",
      "short_description": "Switch occasionally drops connections",
      "correlation_display": "",
      "delivery_task": "",
      "work_start": "",
      "assignment_group": "",
      "additional_assignee_list": "",
      "description": "Switch occasionally drops connections",
      "calendar_duration": "1970-01-01 00:02:17",
      "close_notes": "updated firmware",
      "sys_class_name": "problem",
      "closed_by": "",
      "follow_up": "",
      "sys_id": "04ce72c9c0a8016600b5b7f75ac67b5b",
      "contact_type": "phone",
      "urgency": "3",
      "company": "",
      "reassignment_count": "",
      "activity_due": "",
      "assigned_to": "",
      "comments": "",
      "approval": "not requested",
      "sla_due": "",
      "comments_and_work_notes": "",
      "due_date": "",
      "sys_mod_count": "1",
      "sys_tags": "",
      "escalation": "0",
      "upon_approval": "proceed",
      "correlation_id": "",
      "location": ""
    }
  ]
}

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/problem?sysparm_limit=1'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'username'
pwd = 'password'

# Set proper headers
headers = {"Content-Type":"application/json","Accept":"application/json"}

# Do the HTTP request
response = requests.get(url, auth=(user, pwd), headers=headers  )

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <result>
      <parent />
      <made_sla>false</made_sla>
      <caused_by />
      <watch_list />
      <upon_reject />
      <sys_updated_on>2016-01-19 20:16:07</sys_updated_on>
      <child_incidents />
      <hold_reason />
      <approval_history />
      <number>INC0000001</number>
      <resolved_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/6816f79cc0a8016401c5a33be04be441</link>
         <value>6816f79cc0a8016401c5a33be04be441</value>
      </resolved_by>
      <sys_updated_by>admin</sys_updated_by>
      <opened_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/681ccaf9c0a8016400b98a06818d57c7</link>
         <value>681ccaf9c0a8016400b98a06818d57c7</value>
      </opened_by>
      <user_input />
      <sys_created_on>2014-05-20 18:24:13</sys_created_on>
      <sys_domain>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/global</link>
         <value>global</value>
      </sys_domain>
      <state>7</state>
      <sys_created_by>pat</sys_created_by>
      <knowledge>false</knowledge>
      <order />
      <calendar_stc>7937181</calendar_stc>
      <closed_at>2015-10-20 23:10:06</closed_at>
      <cmdb_ci>
         <link>https://instance.service-now.com/api/now/table/cmdb_ci/b0c4030ac0a800090152e7a4564ca36c</link>
         <value>b0c4030ac0a800090152e7a4564ca36c</value>
      </cmdb_ci>
      <delivery_plan />
      <impact>1</impact>
      <active>false</active>
      <work_notes_list />
      <business_service />
      <priority>1</priority>
      <sys_domain_path>/</sys_domain_path>
      <rfc />
      <time_worked />
      <expected_start />
      <rejection_goto />
      <opened_at>2015-10-19 23:09:51</opened_at>
      <business_duration>1970-01-22 21:46:21</business_duration>
      <group_list />
      <work_end />
      <caller_id>
         <link>https://instance.service-now.com/api/now/table/sys_user/5137153cc611227c000bbd1bd8cd2005</link>
         <value>5137153cc611227c000bbd1bd8cd2005</value>
      </caller_id>
      <resolved_at>2016-01-19 19:56:12</resolved_at>
      <approval_set />
      <subcategory />
      <wf_activity />
      <work_notes />
      <short_description>Can't read email</short_description>
      <close_code>Closed/Resolved by Caller</close_code>
      <correlation_display />
      <delivery_task />
      <work_start />
      <assignment_group>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/d625dccec0a8016700a222a0f7900d06</link>
         <value>d625dccec0a8016700a222a0f7900d06</value>
      </assignment_group>
      <additional_assignee_list />
      <business_stc>1892781</business_stc>
      <description>User can't access email on mail.company.com.</description>
      <calendar_duration>1970-04-02 20:46:21</calendar_duration>
      <close_notes>Closed before close notes were made mandatory</close_notes>
      <notify>1</notify>
      <sys_class_name>incident</sys_class_name>
      <closed_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/9ee1b13dc6112271007f9d0efdb69cd0</link>
         <value>9ee1b13dc6112271007f9d0efdb69cd0</value>
      </closed_by>
      <follow_up />
      <parent_incident />
      <sys_id>9c573169c611228700193229fff72400</sys_id>
      <contact_type />
      <incident_state>7</incident_state>
      <urgency>1</urgency>
      <problem_id>
         <link>https://instance.service-now.com/api/now/table/problem/9d3a266ac6112287004e37fb2ceb0133</link>
         <value>9d3a266ac6112287004e37fb2ceb0133</value>
      </problem_id>
      <company />
      <reassignment_count>1</reassignment_count>
      <activity_due />
      <assigned_to>
         <link>https://instance.service-now.com/api/now/table/sys_user/46b87022a9fe198101a78787e40d7547</link>
         <value>46b87022a9fe198101a78787e40d7547</value>
      </assigned_to>
      <severity>1</severity>
      <comments />
      <approval />
      <sla_due />
      <comments_and_work_notes />
      <due_date />
      <sys_mod_count>21</sys_mod_count>
      <reopen_count />
      <sys_tags />
      <escalation>0</escalation>
      <upon_approval />
      <correlation_id />
      <location>
         <link>https://instance.service-now.com/api/now/table/cmn_location/1083361cc611227501b682158cabf646</link>
         <value>1083361cc611227501b682158cabf646</value>
      </location>
      <category>network</category>
   </result>
</response>

Table API - GET /now/table/{tableName}/{sys_id}

This method retrieves the record identified by the specified sys_id from the specified table.

URL format

Versioned URL: /api/now/v2/table/{tableName}/{sys_id}

Default URL: /api/now/table/{tableName}/{sys_id}

Supported request parameters

Table 9. Parameters
Parameter Description
sysparm_display_value Data retrieval operation for reference and choice fields.
Based on this value, retrieves the display value and/or the actual value from the database.
  • true returns display values for all fields.
  • false returns actual values from the database. If a value is not specified, this parameter defaults to false.
  • all returns both actual and display values.
Note: There is no preferred method for setting this parameter. However, specifying the display value may cause performance issues since it is not reading directly from the database and may include referencing other fields and records. For more information on display values and actual values, see Table API FAQs (KB0534905).
sysparm_fields Comma-separated field names to return in the response.
sysparm_view UI view to determine fields returned in the response.
Note: If both sysparm_fields and sysparm_view are specified, the sysparm_fields parameter takes priority.
sysparm_exclude_reference_link Additional information provided for reference fields, such as the URI to the reference resource, is suppressed.

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 10. Request headers
Header Description
None
Table 11. Response headers
Header Description
None

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 12. Status codes
Status code Description
200 Indicates the request completed successfully.
404 Indicates the record is not found or the requesting user does not have access to the record.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/incident/a9e30c7dc61122760116894de7bcc7bd" \
--request GET \
--header "Accept:application/json" \
--user 'username':'password'
{
  "result": {
    "upon_approval": "",
    "location": {
      "link": "https://instance.service-now.com/api/now/table/cmn_location/105cf7f3c611227501e75e08b14a38ba",
      "value": "105cf7f3c611227501e75e08b14a38ba"
    },
    "expected_start": "",
    "reopen_count": "",
    "close_notes": "",
    "additional_assignee_list": "",
    "impact": "1",
    "urgency": "3",
    "correlation_id": "",
    "sys_tags": "",
    "sys_domain": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/global",
      "value": "global"
    },
    "description": "",
    "group_list": "",
    "priority": "3",
    "delivery_plan": "",
    "sys_mod_count": "4",
    "work_notes_list": "",
    "business_service": "",
    "follow_up": "",
    "closed_at": "",
    "sla_due": "2015-11-11 22:04:15",
    "delivery_task": "",
    "sys_updated_on": "2015-11-01 22:37:27",
    "parent": "",
    "work_end": "",
    "number": "INC0000046",
    "closed_by": "",
    "work_start": "",
    "calendar_stc": "",
    "category": "software",
    "business_duration": "",
    "incident_state": "1",
    "activity_due": "",
    "correlation_display": "",
    "company": "",
    "active": "true",
    "due_date": "",
    "assignment_group": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/8a4dde73c6112278017a6a4baf547aa7",
      "value": "8a4dde73c6112278017a6a4baf547aa7"
    },
    "caller_id": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/46c6f9efa9fe198101ddf5eed9adf6e7",
      "value": "46c6f9efa9fe198101ddf5eed9adf6e7"
    },
    "knowledge": "false",
    "made_sla": "false",
    "comments_and_work_notes": "",
    "parent_incident": "",
    "state": "1",
    "user_input": "",
    "sys_created_on": "2015-11-01 22:05:30",
    "approval_set": "",
    "reassignment_count": "1",
    "rfc": "",
    "child_incidents": "",
    "opened_at": "2015-11-02 22:04:15",
    "short_description": "Can't access SFA software",
    "order": "",
    "sys_updated_by": "glide.maint",
    "resolved_by": "",
    "notify": "1",
    "upon_reject": "",
    "approval_history": "",
    "problem_id": {
      "link": "https://instance.service-now.com/api/now/table/problem/a9e4890bc6112276003d7a5a5c774a74",
      "value": "a9e4890bc6112276003d7a5a5c774a74"
    },
    "work_notes": "",
    "calendar_duration": "",
    "close_code": "",
    "sys_id": "a9e30c7dc61122760116894de7bcc7bd",
    "approval": "not requested",
    "caused_by": "",
    "severity": "3",
    "sys_created_by": "admin",
    "resolved_at": "",
    "assigned_to": "",
    "business_stc": "",
    "wf_activity": "",
    "sys_domain_path": "/",
    "cmdb_ci": {
      "link": "https://instance.service-now.com/api/now/table/cmdb_ci/a9c0c8d2c6112276018f7705562f9cb0",
      "value": "a9c0c8d2c6112276018f7705562f9cb0"
    },
    "opened_by": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/46c6f9efa9fe198101ddf5eed9adf6e7",
      "value": "46c6f9efa9fe198101ddf5eed9adf6e7"
    },
    "subcategory": "",
    "rejection_goto": "",
    "sys_class_name": "incident",
    "watch_list": "",
    "time_worked": "",
    "contact_type": "phone",
    "escalation": "0",
    "comments": ""
  }
}

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/incident/a9e30c7dc61122760116894de7bcc7bd'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'admin'
pwd = 'admin'

# Set proper headers
headers = {"Content-Type":"application/xml","Accept":"application/xml"}

# Do the HTTP request
response = requests.get(url, auth=(user, pwd), headers=headers  )

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <result>
      <upon_approval />
      <location>
         <link>https://instance.service-now.com/api/now/table/cmn_location/105cf7f3c611227501e75e08b14a38ba</link>
         <value>105cf7f3c611227501e75e08b14a38ba</value>
      </location>
      <expected_start />
      <reopen_count />
      <close_notes />
      <additional_assignee_list />
      <impact>1</impact>
      <urgency>3</urgency>
      <correlation_id />
      <priority>3</priority>
      <sys_tags />
      <sys_domain>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/global</link>
         <value>global</value>
      </sys_domain>
      <description />
      <group_list />
      <delivery_plan />
      <sys_mod_count>4</sys_mod_count>
      <work_notes_list />
      <follow_up />
      <business_service />
      <closed_at />
      <sla_due>2015-11-11 22:04:15</sla_due>
      <delivery_task />
      <sys_updated_on>2015-11-01 22:37:27</sys_updated_on>
      <parent />
      <work_end />
      <number>INC0000046</number>
      <closed_by />
      <work_start />
      <calendar_stc />
      <category>software</category>
      <business_duration />
      <incident_state>1</incident_state>
      <activity_due />
      <correlation_display />
      <company />
      <active>true</active>
      <due_date />
      <assignment_group>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/8a4dde73c6112278017a6a4baf547aa7</link>
         <value>8a4dde73c6112278017a6a4baf547aa7</value>
      </assignment_group>
      <caller_id>
         <link>https://instance.service-now.com/api/now/table/sys_user/46c6f9efa9fe198101ddf5eed9adf6e7</link>
         <value>46c6f9efa9fe198101ddf5eed9adf6e7</value>
      </caller_id>
      <knowledge>false</knowledge>
      <made_sla>false</made_sla>
      <comments_and_work_notes />
      <parent_incident />
      <state>1</state>
      <user_input />
      <sys_created_on>2015-11-01 22:05:30</sys_created_on>
      <approval_set />
      <reassignment_count>1</reassignment_count>
      <rfc />
      <opened_at>2015-11-02 22:04:15</opened_at>
      <child_incidents />
      <order />
      <short_description>Can't access SFA software</short_description>
      <resolved_by />
      <sys_updated_by>glide.maint</sys_updated_by>
      <notify>1</notify>
      <upon_reject />
      <approval_history />
      <problem_id>
         <link>https://instance.service-now.com/api/now/table/problem/a9e4890bc6112276003d7a5a5c774a74</link>
         <value>a9e4890bc6112276003d7a5a5c774a74</value>
      </problem_id>
      <calendar_duration />
      <work_notes />
      <close_code />
      <approval>not requested</approval>
      <sys_id>a9e30c7dc61122760116894de7bcc7bd</sys_id>
      <caused_by />
      <severity>3</severity>
      <sys_created_by>admin</sys_created_by>
      <assigned_to />
      <resolved_at />
      <business_stc />
      <cmdb_ci>
         <link>https://instance.service-now.com/api/now/table/cmdb_ci/a9c0c8d2c6112276018f7705562f9cb0</link>
         <value>a9c0c8d2c6112276018f7705562f9cb0</value>
      </cmdb_ci>
      <sys_domain_path>/</sys_domain_path>
      <wf_activity />
      <opened_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/46c6f9efa9fe198101ddf5eed9adf6e7</link>
         <value>46c6f9efa9fe198101ddf5eed9adf6e7</value>
      </opened_by>
      <rejection_goto />
      <subcategory />
      <sys_class_name>incident</sys_class_name>
      <watch_list />
      <escalation>0</escalation>
      <contact_type>phone</contact_type>
      <time_worked />
      <comments />
   </result>
</response>

Table API - PATCH /now/table/{tableName}/{sys_id}

This method updates the specified record with the request body.

URL format

Versioned URL: /api/now/v2/table/{tableName}/{sys_id}

Default URL: /api/now/table/{tableName}/{sys_id}

Supported request parameters

Table 13. Parameters
Parameter Description
sysparm_display_value Data retrieval operation for reference and choice fields.
Based on this value, retrieves the display value and/or the actual value from the database.
  • true returns display values for all fields.
  • false returns actual values from the database. If a value is not specified, this parameter defaults to false.
  • all returns both actual and display values.
Note: There is no preferred method for setting this parameter. However, specifying the display value may cause performance issues since it is not reading directly from the database and may include referencing other fields and records. For more information on display values and actual values, see Table API FAQs (KB0534905).
sysparm_fields Comma-separated field names to return in the response.
sysparm_view UI view to determine fields returned in the response.
Note: If both sysparm_fields and sysparm_view are specified, the sysparm_fields parameter takes priority.
sysparm_input_display_value Data insert or update operations.
For values in the request:
  • true treats input values as display values and they are manipulated so they can be stored properly in the database.
  • false treats input values as actual values and stored them in the database without manipulation.
Note:
  • If this parameter is set to true, pay attention to input values, especially date values, as these are interpreted as being supplied via the user time zone preference and are transformed into UTC format.
  • To set the value of an encrypted field, you must set this parameter to true. If this parameter is not set to true, values submitted to encrypted fields are not saved. Additionally, the requesting user must have the appropriate encryption context prior to submitting the request. Encrypted fields are hidden for users without the appropriate encryption context. For more information on display values and actual values, see Table API FAQs (KB0534905). For more information on field encryption see Encryption support .

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 14. Request headers
Header Description
X-no-response-body By default, responses include body content detailing the modified record. Set this header to true in the request to suppress the response body.
Content-Type The data format of the request body.
Table 15. Response headers
Header Description
None

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 16. Status codes
Status code Description
200 Indicates the request completed successfully.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/incident/ef43c6d40a0a0b5700c77f9bf387afe3" \
--request PATCH \
--header "Accept:application/json"\
--header "Content-Type:application/json" \
--data "{'assigned_to':'681b365ec0a80164000fb0b05854a0cd','urgency':'1','comments':'Elevating urgency, this is a blocking issue'}" \
--user 'admin':'admin'
{
  "result": {
    "upon_approval": "proceed",
    "location": {
      "link": "https://instance.service-now.com/api/now/table/cmn_location/108752c8c611227501d4ab0e392ba97f",
      "value": "108752c8c611227501d4ab0e392ba97f"
    },
    "expected_start": "",
    "reopen_count": "",
    "close_notes": "",
    "additional_assignee_list": "",
    "impact": "1",
    "urgency": "1",
    "correlation_id": "",
    "sys_tags": "",
    "sys_domain": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/global",
      "value": "global"
    },
    "description": "",
    "group_list": "",
    "priority": "1",
    "delivery_plan": "",
    "sys_mod_count": "7",
    "work_notes_list": "",
    "business_service": "",
    "follow_up": "",
    "closed_at": "",
    "sla_due": "2017-07-05 05:58:24",
    "delivery_task": "",
    "sys_updated_on": "2016-01-22 14:12:37",
    "parent": "",
    "work_end": "",
    "number": "INC0000050",
    "closed_by": "",
    "work_start": "",
    "calendar_stc": "",
    "category": "hardware",
    "business_duration": "",
    "incident_state": "2",
    "activity_due": "2016-01-22 16:12:37",
    "correlation_display": "",
    "company": {
      "link": "https://instance.service-now.com/api/now/table/core_company/31bea3d53790200044e0bfc8bcbe5dec",
      "value": "31bea3d53790200044e0bfc8bcbe5dec"
    },
    "active": "true",
    "due_date": "",
    "assignment_group": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/8a5055c9c61122780043563ef53438e3",
      "value": "8a5055c9c61122780043563ef53438e3"
    },
    "caller_id": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/5b7c200d0a640069006b3845b5d0fa7c",
      "value": "5b7c200d0a640069006b3845b5d0fa7c"
    },
    "knowledge": "false",
    "made_sla": "true",
    "comments_and_work_notes": "",
    "parent_incident": "",
    "state": "2",
    "user_input": "",
    "sys_created_on": "2015-11-02 18:05:40",
    "approval_set": "",
    "reassignment_count": "0",
    "rfc": "",
    "child_incidents": "",
    "opened_at": "2015-11-02 21:58:24",
    "short_description": "Can't access Exchange server - is it down?",
    "order": "",
    "sys_updated_by": "admin",
    "resolved_by": "",
    "notify": "1",
    "upon_reject": "cancel",
    "approval_history": "",
    "problem_id": "",
    "work_notes": "",
    "calendar_duration": "",
    "close_code": "",
    "sys_id": "ef43c6d40a0a0b5700c77f9bf387afe3",
    "approval": "not requested",
    "caused_by": "",
    "severity": "3",
    "sys_created_by": "glide.maint",
    "resolved_at": "",
    "assigned_to": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/681b365ec0a80164000fb0b05854a0cd",
      "value": "681b365ec0a80164000fb0b05854a0cd"
    },
    "business_stc": "",
    "wf_activity": "",
    "sys_domain_path": "/",
    "cmdb_ci": {
      "link": "https://instance.service-now.com/api/now/table/cmdb_ci/281190e3c0a8000b003f593aa3f20ca6",
      "value": "281190e3c0a8000b003f593aa3f20ca6"
    },
    "opened_by": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/glide.maint",
      "value": "glide.maint"
    },
    "subcategory": "",
    "rejection_goto": "",
    "sys_class_name": "incident",
    "watch_list": "",
    "time_worked": "",
    "contact_type": "phone",
    "escalation": "3",
    "comments": ""
  }
}

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/incident/ef43c6d40a0a0b5700c77f9bf387afe3'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'admin'
pwd = 'admin'

# Set proper headers
headers = {"Content-Type":"application/xml","Accept":"application/xml"}

# Do the HTTP request
response = requests.patch(url, auth=(user, pwd), headers=headers ,data="<request><entry><assigned_to>681b365ec0a80164000fb0b05854a0cd</assigned_to><urgency>1</urgency><comments>Elevating urgency, this is a blocking issue</comments></entry></request>")

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <result>
      <upon_approval>proceed</upon_approval>
      <location>
         <link>https://instance.service-now.com/api/now/table/cmn_location/108752c8c611227501d4ab0e392ba97f</link>
         <value>108752c8c611227501d4ab0e392ba97f</value>
      </location>
      <expected_start />
      <reopen_count />
      <close_notes />
      <additional_assignee_list />
      <impact>1</impact>
      <urgency>1</urgency>
      <correlation_id />
      <priority>1</priority>
      <sys_tags />
      <sys_domain>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/global</link>
         <value>global</value>
      </sys_domain>
      <description />
      <group_list />
      <delivery_plan />
      <sys_mod_count>8</sys_mod_count>
      <work_notes_list />
      <follow_up />
      <business_service />
      <closed_at />
      <sla_due>2017-07-05 05:58:24</sla_due>
      <delivery_task />
      <sys_updated_on>2016-01-22 14:14:54</sys_updated_on>
      <parent />
      <work_end />
      <number>INC0000050</number>
      <closed_by />
      <work_start />
      <calendar_stc />
      <category>hardware</category>
      <business_duration />
      <incident_state>2</incident_state>
      <activity_due>2016-01-22 16:14:54</activity_due>
      <correlation_display />
      <company>
         <link>https://instance.service-now.com/api/now/table/core_company/31bea3d53790200044e0bfc8bcbe5dec</link>
         <value>31bea3d53790200044e0bfc8bcbe5dec</value>
      </company>
      <active>true</active>
      <due_date />
      <assignment_group>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/8a5055c9c61122780043563ef53438e3</link>
         <value>8a5055c9c61122780043563ef53438e3</value>
      </assignment_group>
      <caller_id>
         <link>https://instance.service-now.com/api/now/table/sys_user/5b7c200d0a640069006b3845b5d0fa7c</link>
         <value>5b7c200d0a640069006b3845b5d0fa7c</value>
      </caller_id>
      <knowledge>false</knowledge>
      <made_sla>true</made_sla>
      <comments_and_work_notes />
      <parent_incident />
      <state>2</state>
      <user_input />
      <sys_created_on>2015-11-02 18:05:40</sys_created_on>
      <approval_set />
      <reassignment_count>0</reassignment_count>
      <rfc />
      <opened_at>2015-11-02 21:58:24</opened_at>
      <child_incidents />
      <order />
      <short_description>Can't access Exchange server - is it down?</short_description>
      <resolved_by />
      <sys_updated_by>admin</sys_updated_by>
      <notify>1</notify>
      <upon_reject>cancel</upon_reject>
      <approval_history />
      <problem_id />
      <calendar_duration />
      <work_notes />
      <close_code />
      <approval>not requested</approval>
      <sys_id>ef43c6d40a0a0b5700c77f9bf387afe3</sys_id>
      <caused_by />
      <severity>3</severity>
      <sys_created_by>glide.maint</sys_created_by>
      <assigned_to>
         <link>https://instance.service-now.com/api/now/table/sys_user/681b365ec0a80164000fb0b05854a0cd</link>
         <value>681b365ec0a80164000fb0b05854a0cd</value>
      </assigned_to>
      <resolved_at />
      <business_stc />
      <cmdb_ci>
         <link>https://instance.service-now.com/api/now/table/cmdb_ci/281190e3c0a8000b003f593aa3f20ca6</link>
         <value>281190e3c0a8000b003f593aa3f20ca6</value>
      </cmdb_ci>
      <sys_domain_path>/</sys_domain_path>
      <wf_activity />
      <opened_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/glide.maint</link>
         <value>glide.maint</value>
      </opened_by>
      <rejection_goto />
      <subcategory />
      <sys_class_name>incident</sys_class_name>
      <watch_list />
      <escalation>3</escalation>
      <contact_type>phone</contact_type>
      <time_worked />
      <comments />
   </result>
</response>

Table API - POST /now/table/{tableName}

This method inserts one record in the specified table. Multiple record insertion is not supported by this method.

URL format

Versioned URL: /api/now/v2/table/{tableName}

Default URL: /api/now/table/{tableName}

Supported request parameters

Table 17. Parameters
Parameter Description
sysparm_display_value Data retrieval operation for reference and choice fields.
Based on this value, retrieves the display value and/or the actual value from the database.
  • true returns display values for all fields.
  • false returns actual values from the database. If a value is not specified, this parameter defaults to false.
  • all returns both actual and display values.
Note: There is no preferred method for setting this parameter. However, specifying the display value may cause performance issues since it is not reading directly from the database and may include referencing other fields and records. For more information on display values and actual values, see Table API FAQs (KB0534905).
sysparm_fields Comma-separated field names to return in the response.
sysparm_view UI view to determine fields returned in the response.
Note: If both sysparm_fields and sysparm_view are specified, the sysparm_fields parameter takes priority.
sysparm_exclude_reference_link Additional information provided for reference fields, such as the URI to the reference resource, is suppressed.
sysparm_input_display_value Data insert or update operations.
For values in the request:
  • true treats input values as display values and they are manipulated so they can be stored properly in the database.
  • false treats input values as actual values and stored them in the database without manipulation.
Note:
  • If this parameter is set to true, pay attention to input values, especially date values, as these are interpreted as being supplied via the user time zone preference and are transformed into UTC format.
  • To set the value of an encrypted field, you must set this parameter to true. If this parameter is not set to true, values submitted to encrypted fields are not saved. Additionally, the requesting user must have the appropriate encryption context prior to submitting the request. Encrypted fields are hidden for users without the appropriate encryption context. For more information on display values and actual values, see Table API FAQs (KB0534905). For more information on field encryption see Encryption support .

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 18. Request headers
Header Description
X-no-response-body By default, responses include body content detailing the new record. Set this header to true in the request to suppress the response body.
Content-Type The data format of the request body.
Table 19. Response headers
Header Description
Location The location of the created resource.

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 20. Status codes
Status code Description
201 Indicates the request completed successfully.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/incident" \
--request POST \
--header "Accept:application/json"\
--header "Content-Type:application/json" \
--data "{'short_description':'Unable to connect to office wifi','assignment_group':'287ebd7da9fe198100f92cc8d1d2154e','urgency':'2','impact':'2'}" \
--user 'admin':'admin'
{
  "result": {
    "upon_approval": "proceed",
    "location": "",
    "expected_start": "",
    "reopen_count": "0",
    "close_notes": "",
    "additional_assignee_list": "",
    "impact": "2",
    "urgency": "2",
    "correlation_id": "",
    "sys_tags": "",
    "sys_domain": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/global",
      "value": "global"
    },
    "description": "",
    "group_list": "",
    "priority": "3",
    "delivery_plan": "",
    "sys_mod_count": "0",
    "work_notes_list": "",
    "business_service": "",
    "follow_up": "",
    "closed_at": "",
    "sla_due": "",
    "delivery_task": "",
    "sys_updated_on": "2016-01-22 14:28:24",
    "parent": "",
    "work_end": "",
    "number": "INC0010002",
    "closed_by": "",
    "work_start": "",
    "calendar_stc": "",
    "category": "inquiry",
    "business_duration": "",
    "incident_state": "1",
    "activity_due": "",
    "correlation_display": "",
    "company": "",
    "active": "true",
    "due_date": "",
    "assignment_group": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/287ebd7da9fe198100f92cc8d1d2154e",
      "value": "287ebd7da9fe198100f92cc8d1d2154e"
    },
    "caller_id": "",
    "knowledge": "false",
    "made_sla": "true",
    "comments_and_work_notes": "",
    "parent_incident": "",
    "state": "1",
    "user_input": "",
    "sys_created_on": "2016-01-22 14:28:24",
    "approval_set": "",
    "reassignment_count": "0",
    "rfc": "",
    "child_incidents": "0",
    "opened_at": "2016-01-22 14:28:24",
    "short_description": "Unable to connect to office wifi",
    "order": "",
    "sys_updated_by": "admin",
    "resolved_by": "",
    "notify": "1",
    "upon_reject": "cancel",
    "approval_history": "",
    "problem_id": "",
    "work_notes": "",
    "calendar_duration": "",
    "close_code": "",
    "sys_id": "c537bae64f411200adf9f8e18110c76e",
    "approval": "not requested",
    "caused_by": "",
    "severity": "3",
    "sys_created_by": "admin",
    "resolved_at": "",
    "assigned_to": "",
    "business_stc": "",
    "wf_activity": "",
    "sys_domain_path": "/",
    "cmdb_ci": "",
    "opened_by": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/6816f79cc0a8016401c5a33be04be441",
      "value": "6816f79cc0a8016401c5a33be04be441"
    },
    "subcategory": "",
    "rejection_goto": "",
    "sys_class_name": "incident",
    "watch_list": "",
    "time_worked": "",
    "contact_type": "phone",
    "escalation": "0",
    "comments": ""
  }
}

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/incident'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'admin'
pwd = 'admin'

# Set proper headers
headers = {"Content-Type":"application/xml","Accept":"application/xml"}

# Do the HTTP request
response = requests.post(url, auth=(user, pwd), headers=headers ,data="<request><entry><short_description>Unable to connect to office wifi</short_description><assignment_group>287ebd7da9fe198100f92cc8d1d2154e</assignment_group><urgency>2</urgency><impact>2</impact></entry></request>")

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <result>
      <upon_approval>proceed</upon_approval>
      <location />
      <expected_start />
      <reopen_count>0</reopen_count>
      <close_notes />
      <additional_assignee_list />
      <impact>2</impact>
      <urgency>2</urgency>
      <correlation_id />
      <priority>3</priority>
      <sys_tags />
      <sys_domain>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/global</link>
         <value>global</value>
      </sys_domain>
      <description />
      <group_list />
      <delivery_plan />
      <sys_mod_count>0</sys_mod_count>
      <work_notes_list />
      <follow_up />
      <business_service />
      <closed_at />
      <sla_due />
      <delivery_task />
      <sys_updated_on>2016-01-22 14:29:31</sys_updated_on>
      <parent />
      <work_end />
      <number>INC0010003</number>
      <closed_by />
      <work_start />
      <calendar_stc />
      <category>inquiry</category>
      <business_duration />
      <incident_state>1</incident_state>
      <activity_due />
      <correlation_display />
      <company />
      <active>true</active>
      <due_date />
      <assignment_group>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/287ebd7da9fe198100f92cc8d1d2154e</link>
         <value>287ebd7da9fe198100f92cc8d1d2154e</value>
      </assignment_group>
      <caller_id />
      <knowledge>false</knowledge>
      <made_sla>true</made_sla>
      <comments_and_work_notes />
      <parent_incident />
      <state>1</state>
      <user_input />
      <sys_created_on>2016-01-22 14:29:31</sys_created_on>
      <approval_set />
      <reassignment_count>0</reassignment_count>
      <rfc />
      <opened_at>2016-01-22 14:29:31</opened_at>
      <child_incidents>0</child_incidents>
      <order />
      <short_description>Unable to connect to office wifi</short_description>
      <resolved_by />
      <sys_updated_by>admin</sys_updated_by>
      <notify>1</notify>
      <upon_reject>cancel</upon_reject>
      <approval_history />
      <problem_id />
      <calendar_duration />
      <work_notes />
      <close_code />
      <approval>not requested</approval>
      <sys_id>d977b66a4f411200adf9f8e18110c7b2</sys_id>
      <caused_by />
      <severity>3</severity>
      <sys_created_by>admin</sys_created_by>
      <assigned_to />
      <resolved_at />
      <business_stc />
      <cmdb_ci />
      <sys_domain_path>/</sys_domain_path>
      <wf_activity />
      <opened_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/6816f79cc0a8016401c5a33be04be441</link>
         <value>6816f79cc0a8016401c5a33be04be441</value>
      </opened_by>
      <rejection_goto />
      <subcategory />
      <sys_class_name>incident</sys_class_name>
      <watch_list />
      <escalation>0</escalation>
      <contact_type>phone</contact_type>
      <time_worked />
      <comments />
   </result>
</response>

Table API - PUT /now/table/{tableName}/{sys_id}

This method updates the specified record with the request body.

URL format

Versioned URL: /api/now/v2/table/{tableName}/{sys_id}

Default URL: /api/now/table/{tableName}/{sys_id}

Supported request parameters

Table 21. Parameters
Parameter Description
sysparm_display_value Data retrieval operation for reference and choice fields.
Based on this value, retrieves the display value and/or the actual value from the database.
  • true returns display values for all fields.
  • false returns actual values from the database. If a value is not specified, this parameter defaults to false.
  • all returns both actual and display values.
Note: There is no preferred method for setting this parameter. However, specifying the display value may cause performance issues since it is not reading directly from the database and may include referencing other fields and records. For more information on display values and actual values, see Table API FAQs (KB0534905).
sysparm_fields Comma-separated field names to return in the response.
sysparm_view UI view to determine fields returned in the response.
Note: If both sysparm_fields and sysparm_view are specified, the sysparm_fields parameter takes priority.
sysparm_exclude_reference_link Additional information provided for reference fields, such as the URI to the reference resource, is suppressed.
sysparm_input_display_value Data insert or update operations.
For values in the request:
  • true treats input values as display values and they are manipulated so they can be stored properly in the database.
  • false treats input values as actual values and stored them in the database without manipulation.
Note:
  • If this parameter is set to true, pay attention to input values, especially date values, as these are interpreted as being supplied via the user time zone preference and are transformed into UTC format.
  • To set the value of an encrypted field, you must set this parameter to true. If this parameter is not set to true, values submitted to encrypted fields are not saved. Additionally, the requesting user must have the appropriate encryption context prior to submitting the request. Encrypted fields are hidden for users without the appropriate encryption context. For more information on display values and actual values, see Table API FAQs (KB0534905). For more information on field encryption see Encryption support .

Headers

The following request and response headers apply to this HTTP action only, or apply to this action in a distinct way. For a list of general headers used in the REST API, see Supported REST API headers.

Table 22. Request headers
Header Description
X-no-response-body By default, responses include body content detailing the modified record. Set this header to true in the request to suppress the response body.
Content-Type The data format of the request body.
Table 23. Response headers
Header Description
None

Status codes

The following status codes apply to this HTTP action. For a list of possible status codes used in the REST API, see REST response codes .

Table 24. Status codes
Status code Description
200 Indicates the request completed successfully.

Sample cURL request

curl "https://instance.service-now.com/api/now/table/incident/ef43c6d40a0a0b5700c77f9bf387afe3" \
--request PUT \
--header "Accept:application/json"\
--header "Content-Type:application/json" \
--data "{'assigned_to':'681b365ec0a80164000fb0b05854a0cd','urgency':'1','comments':'Elevating urgency, this is a blocking issue'}" \
--user 'admin':'admin'
{
  "result": {
    "upon_approval": "proceed",
    "location": {
      "link": "https://instance.service-now.com/api/now/table/cmn_location/108752c8c611227501d4ab0e392ba97f",
      "value": "108752c8c611227501d4ab0e392ba97f"
    },
    "expected_start": "",
    "reopen_count": "",
    "close_notes": "",
    "additional_assignee_list": "",
    "impact": "1",
    "urgency": "1",
    "correlation_id": "",
    "sys_tags": "",
    "sys_domain": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/global",
      "value": "global"
    },
    "description": "",
    "group_list": "",
    "priority": "1",
    "delivery_plan": "",
    "sys_mod_count": "7",
    "work_notes_list": "",
    "business_service": "",
    "follow_up": "",
    "closed_at": "",
    "sla_due": "2017-07-05 05:58:24",
    "delivery_task": "",
    "sys_updated_on": "2016-01-22 14:12:37",
    "parent": "",
    "work_end": "",
    "number": "INC0000050",
    "closed_by": "",
    "work_start": "",
    "calendar_stc": "",
    "category": "hardware",
    "business_duration": "",
    "incident_state": "2",
    "activity_due": "2016-01-22 16:12:37",
    "correlation_display": "",
    "company": {
      "link": "https://instance.service-now.com/api/now/table/core_company/31bea3d53790200044e0bfc8bcbe5dec",
      "value": "31bea3d53790200044e0bfc8bcbe5dec"
    },
    "active": "true",
    "due_date": "",
    "assignment_group": {
      "link": "https://instance.service-now.com/api/now/table/sys_user_group/8a5055c9c61122780043563ef53438e3",
      "value": "8a5055c9c61122780043563ef53438e3"
    },
    "caller_id": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/5b7c200d0a640069006b3845b5d0fa7c",
      "value": "5b7c200d0a640069006b3845b5d0fa7c"
    },
    "knowledge": "false",
    "made_sla": "true",
    "comments_and_work_notes": "",
    "parent_incident": "",
    "state": "2",
    "user_input": "",
    "sys_created_on": "2015-11-02 18:05:40",
    "approval_set": "",
    "reassignment_count": "0",
    "rfc": "",
    "child_incidents": "",
    "opened_at": "2015-11-02 21:58:24",
    "short_description": "Can't access Exchange server - is it down?",
    "order": "",
    "sys_updated_by": "admin",
    "resolved_by": "",
    "notify": "1",
    "upon_reject": "cancel",
    "approval_history": "",
    "problem_id": "",
    "work_notes": "",
    "calendar_duration": "",
    "close_code": "",
    "sys_id": "ef43c6d40a0a0b5700c77f9bf387afe3",
    "approval": "not requested",
    "caused_by": "",
    "severity": "3",
    "sys_created_by": "glide.maint",
    "resolved_at": "",
    "assigned_to": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/681b365ec0a80164000fb0b05854a0cd",
      "value": "681b365ec0a80164000fb0b05854a0cd"
    },
    "business_stc": "",
    "wf_activity": "",
    "sys_domain_path": "/",
    "cmdb_ci": {
      "link": "https://instance.service-now.com/api/now/table/cmdb_ci/281190e3c0a8000b003f593aa3f20ca6",
      "value": "281190e3c0a8000b003f593aa3f20ca6"
    },
    "opened_by": {
      "link": "https://instance.service-now.com/api/now/table/sys_user/glide.maint",
      "value": "glide.maint"
    },
    "subcategory": "",
    "rejection_goto": "",
    "sys_class_name": "incident",
    "watch_list": "",
    "time_worked": "",
    "contact_type": "phone",
    "escalation": "3",
    "comments": ""
  }
}

Sample Python request

#Need to install requests package for python
#easy_install requests
import requests

# Set the request parameters
url = 'https://instance.service-now.com/api/now/table/incident/ef43c6d40a0a0b5700c77f9bf387afe3'

# Eg. User name="admin", Password="admin" for this code sample.
user = 'admin'
pwd = 'admin'

# Set proper headers
headers = {"Content-Type":"application/xml","Accept":"application/xml"}

# Do the HTTP request
response = requests.put(url, auth=(user, pwd), headers=headers ,data="<request><entry><assigned_to>681b365ec0a80164000fb0b05854a0cd</assigned_to><urgency>1</urgency><comments>Elevating urgency, this is a blocking issue</comments></entry></request>")

# Check for HTTP codes other than 200
if response.status_code != 200: 
    print('Status:', response.status_code, 'Headers:', response.headers, 'Error Response:',response.json())
    exit()

# Decode the JSON response into a dictionary and use the data
data = response.json()
print(data)
<?xml version="1.0" encoding="UTF-8"?>
<response>
   <result>
      <upon_approval>proceed</upon_approval>
      <location>
         <link>https://instance.service-now.com/api/now/table/cmn_location/108752c8c611227501d4ab0e392ba97f</link>
         <value>108752c8c611227501d4ab0e392ba97f</value>
      </location>
      <expected_start />
      <reopen_count />
      <close_notes />
      <additional_assignee_list />
      <impact>1</impact>
      <urgency>1</urgency>
      <correlation_id />
      <priority>1</priority>
      <sys_tags />
      <sys_domain>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/global</link>
         <value>global</value>
      </sys_domain>
      <description />
      <group_list />
      <delivery_plan />
      <sys_mod_count>8</sys_mod_count>
      <work_notes_list />
      <follow_up />
      <business_service />
      <closed_at />
      <sla_due>2017-07-05 05:58:24</sla_due>
      <delivery_task />
      <sys_updated_on>2016-01-22 14:14:54</sys_updated_on>
      <parent />
      <work_end />
      <number>INC0000050</number>
      <closed_by />
      <work_start />
      <calendar_stc />
      <category>hardware</category>
      <business_duration />
      <incident_state>2</incident_state>
      <activity_due>2016-01-22 16:14:54</activity_due>
      <correlation_display />
      <company>
         <link>https://instance.service-now.com/api/now/table/core_company/31bea3d53790200044e0bfc8bcbe5dec</link>
         <value>31bea3d53790200044e0bfc8bcbe5dec</value>
      </company>
      <active>true</active>
      <due_date />
      <assignment_group>
         <link>https://instance.service-now.com/api/now/table/sys_user_group/8a5055c9c61122780043563ef53438e3</link>
         <value>8a5055c9c61122780043563ef53438e3</value>
      </assignment_group>
      <caller_id>
         <link>https://instance.service-now.com/api/now/table/sys_user/5b7c200d0a640069006b3845b5d0fa7c</link>
         <value>5b7c200d0a640069006b3845b5d0fa7c</value>
      </caller_id>
      <knowledge>false</knowledge>
      <made_sla>true</made_sla>
      <comments_and_work_notes />
      <parent_incident />
      <state>2</state>
      <user_input />
      <sys_created_on>2015-11-02 18:05:40</sys_created_on>
      <approval_set />
      <reassignment_count>0</reassignment_count>
      <rfc />
      <opened_at>2015-11-02 21:58:24</opened_at>
      <child_incidents />
      <order />
      <short_description>Can't access Exchange server - is it down?</short_description>
      <resolved_by />
      <sys_updated_by>admin</sys_updated_by>
      <notify>1</notify>
      <upon_reject>cancel</upon_reject>
      <approval_history />
      <problem_id />
      <calendar_duration />
      <work_notes />
      <close_code />
      <approval>not requested</approval>
      <sys_id>ef43c6d40a0a0b5700c77f9bf387afe3</sys_id>
      <caused_by />
      <severity>3</severity>
      <sys_created_by>glide.maint</sys_created_by>
      <assigned_to>
         <link>https://instance.service-now.com/api/now/table/sys_user/681b365ec0a80164000fb0b05854a0cd</link>
         <value>681b365ec0a80164000fb0b05854a0cd</value>
      </assigned_to>
      <resolved_at />
      <business_stc />
      <cmdb_ci>
         <link>https://instance.service-now.com/api/now/table/cmdb_ci/281190e3c0a8000b003f593aa3f20ca6</link>
         <value>281190e3c0a8000b003f593aa3f20ca6</value>
      </cmdb_ci>
      <sys_domain_path>/</sys_domain_path>
      <wf_activity />
      <opened_by>
         <link>https://instance.service-now.com/api/now/table/sys_user/glide.maint</link>
         <value>glide.maint</value>
      </opened_by>
      <rejection_goto />
      <subcategory />
      <sys_class_name>incident</sys_class_name>
      <watch_list />
      <escalation>3</escalation>
      <contact_type>phone</contact_type>
      <time_worked />
      <comments />
   </result>
</response>