首页 > 解决方案 > 找到用于创建 ServiceNow 更改请求类型的正确 URL(EndPoint) 类型 = 紧急

问题描述

我不知道这两个端点之间的区别:a)/api/sn_chg_rest/v1/change/emergency b)/api/now/table/change_request?sys_id=-1&sysparm_query=type=emergency

b) 一旦提交更改为“正常”响应类型

问题:无法提交紧急、标准或加急类型的请求。

我尝试过的事情: url = 'https://xxxx.service-now.com/api/now/table/change_request?sys_id=-1&sysparm_query=type=expedited<<更改为正常,该站点仅允许编辑紧急情况或使用此链接提交后正常>>

url = 'https://xxxx.service-now.com/api/sn_chg_rest/v1/change/emergency <<这似乎只适用于紧急和正常,即使登录用户也被锁定在紧急和正常状态在通过脚本提交后手动编辑类型>>

以下当前代码的结果与“我尝试过的事情”相结合创建了一个 CHG#XXX 但无论 Key:xxxxxx "sys-pram_query=type=xxxxxx" 更改为什么(即“正常”、“加急", "Emergency", "Standard")看起来像这样 ---> ("sys-pram_query=type= Emergency","sys-pram_query=type= Expedited","sys-pram_query=type= Standard") 类型一旦下面的代码运行使用 POST 方法创建请求,ServiceNow 站点上的默认设置为“正常”。

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

# Set the request parameters
url = 'https://xxxx.service-now.com/api/now/table/change_request?sysparm_fields=type'

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

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

# Do the HTTP request
response = requests.post(url, auth=(user, pwd), headers=headers ,data="{\"type\":\"Emergency\"}")

# 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)

可能不起作用的 url 的替代选项 = 'https://xxxx.service-now.com/api/now/table/"optionsA" OR "B" OR "C" 如下:

A) POST /sn_chg_rest/change/standard/{standard_change_template_id}

B) POST api/sn_chg_rest/change/normal

C) POST 版本化 URL /api/sn_chg_rest/{version}/change/emergency

上面 A、B、C 的链接: https ://developer.servicenow.com/dev.do#!/reference/api/orlando/rest/change-management-api#changemgmt-POST-emerg-create-chng-req

资源:

文档说要做但不起作用的屏幕截图

标签: posthttprequestendpointservicenowservicenow-rest-api

解决方案


API_URL="/api/sn_chg_rest/v1/change/emergency" 这可能有效,要确认。

是的,这行得通!无法提交标准或加急。但这可能是需要启用的设置(不确定)。进一步研究它。一些进展。


推荐阅读