bryanbarnard
12/31/2013 - 3:57 PM

Sample Requests Python ServiceNow JSONv2 - Create an Incident

Sample Requests Python ServiceNow JSONv2 - Create an Incident

import json
import requests
from requests.auth import HTTPBasicAuth

# using local http proxy to log requests and responses
proxies = {
    "http": "http://127.0.0.1:8888",
    "https": "https://127.0.0.1:8888",
}

auth = HTTPBasicAuth("admin", "admin")
uri = "https://demo006.service-now.com/incident.do?JSONv2"

# define http headers for request
headers = {
    "Accept": "application/json;charset=utf-8",
    "Content-Type": "application/json"
}

# define payload for request, note we are passing the sysparm_action variable in the body of the request
# http://wiki.servicenow.com/index.php?title=JSONv2_Web_Service#insert
payload = {
    'sysparm_action': 'insert',
    'category': 'software',
    'impact': '1',
    'urgency': '1',
    'short_description': 'new incident from JSONv2 API',
    'cmdb_ci': 'Email',
    'caller_id': 'Abel Tuter'
}

r = requests.post(url=uri, data=json.dumps(payload), auth=auth, proxies=proxies, verify=False, headers=headers)
content = r.json()
assert (r.status_code == 200)
print "Response Status Code: " + str(r.status_code)
print "Response JSON Content: " + str(content)