You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Rest API关闭ServiceNow变更请求?已尝试Patch接口未生效

如何通过REST API关闭ServiceNow变更请求?

当然可以通过REST API关闭ServiceNow变更请求,你当前的请求存在几个关键问题,导致状态未更新:

  1. JSON格式语法错误
    你的请求体中close_code字段末尾缺少逗号,这会导致接口无法正确解析请求内容。正确的JSON格式要求每个键值对(除最后一个)末尾添加逗号。

  2. State字段值不正确
    ServiceNow中变更请求的state字段通常使用内部数值而非显示字符串,比如"Closed"对应的数值可能是3(具体值取决于你的实例配置,可在后台查看change_request表的state字段选项值确认)。直接传入字符串"Closed"不会被系统识别。

  3. 必填字段未正确填充
    close_code是关闭变更请求的必填字段,不能传<em><strong>这类无效内容,需要传入实例中配置的合法选项值(比如"Successful"或对应的数值);close_notes也建议填写实际的关闭说明,而非空标签。

修正后的Patch请求示例

请求地址:sn_chg_rest/change/{sys_id}
请求体:

{
  "state": 3,
  "close_code": "Successful",
  "close_notes": "变更已完成,正常关闭"
}

额外检查项

  • 确保调用API的用户拥有change_request表的修改权限,以及将变更请求转为Closed状态的权限;
  • 如果使用的是较旧的ServiceNow版本,可能需要使用PUT请求而非PATCH,或者确认sn_chg_rest API的版本支持PATCH方法。

内容的提问来源于stack exchange,提问作者ramya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 06:20:49