本文档提供了有关自定义脚本需要返回的 JSON 格式的信息。
请求文件的类/脚本应返回一个 JSON,其中包含成功/失败状态以及一条消息,该消息将显示在请求的历史记录选项卡中。JSON 具有以下格式:
某些操作也可以通过返回的 JSON 来执行。用于调用这些操作的 JSON 结构如下:
{
"message": "消息",
"result": "success",
"operation": [
{
"OPERATIONNAME": "operation_1",
"INPUT_DATA": [
{
}
]
},
{
"OPERATIONNAME": "operation_2",
"INPUT_DATA": [
{
}
]
}
]
}
自定义触发器支持的部分操作如下:
* EDIT_REQUEST
* ADD_NOTE
* ADD_APPROVAL_STAGE
* ADD_APPROVAL
* SET_APPROVAL_STAGE
* SET_APPROVAL
EDIT_REQUEST JSON
更新请求中提到的字段。
{
"message": "请求更新成功",
"result": "success",
"operation": [
{
"OPERATIONNAME": "EDIT_REQUEST",
"INPUT_DATA": [
{
"request": {
"technician": {
"name": "Heather Graham"
},
"priority": {
"name": "High"
},
"request_template": {
"name": "New Hire"
},
"udf_fields": {
"udf_sline_301": "高优先级",
"udf_pick_603": "windows",
"udf_multiselect_302": [
"Net Beans",
"Eclipse"
]
}
}
}
]
}
]
}
此处列出的所有输入参数都可以通过这种方式更新。
ADD_NOTE JSON
向请求添加备注。
{
"result": "success",
"message": "备注添加成功",
"operation": [
{
"OPERATIONNAME": "ADD_NOTE",
"INPUT_DATA": [
{
"note": {
"description": "示例文本",
"show_to_requester": true
}
}
]
}
]
}
ADD_APPROVAL_STAGE JSON
为指定阶段添加新的审批人,同时保留现有审批人。
是否触发第一阶段的审批由 send_immediately 参数控制。设置为 true 时,将立即发送审批请求。设置为 false 时,用户必须手动发送审批请求。
{
"message": "用于为所有阶段添加新审批人的 Python 示例脚本,同时保留现有审批人",
"result": "success",
"operation": [
{
"OPERATIONNAME": "ADD_APPROVAL_STAGE",
"send_immediately": "true",
"INPUT_DATA": [
{
"StageOne": [
"Sampleuser.1@xyz.com",
"Sampleuser.2@xyz.com"
]
},
{
"StageTwo": [
"Sampleuser.3@xyz.com",
"Sampleuser.4@xyz.com"
]
},
{
"StageThree": [
"Sampleuser.5@xyz.com",
"Sampleuser.6@xyz.com"
]
},
{
"StageFour": [
"Sampleuser.7@xyz.com",
"Sampleuser.8@xyz.com"
]
},
{
"StageFive": [
"Sampleuser.9@xyz.com",
"Sampleuser.10@xyz.com"
]
}
]
}
]
}
ADD_APPROVAL JSON
为当前阶段添加新的审批人,同时保留现有审批人。
是否触发此阶段的审批由 send_immediately 参数控制。设置为 true 时,将立即发送审批请求。设置为 false 时,用户必须手动发送审批请求。
{
"message": "用于在当前阶段添加新审批人的 Python 示例脚本,同时保留现有审批人",
"result": "success",
"operation": [
{
"OPERATIONNAME": "ADD_APPROVAL",
"send_immediately": "true",
"INPUT_DATA": [
"Sampleuser.1@xyz.com",
"Sampleuser.3@xyz.com",
"Sampleuser.5@xyz.com"
]
}
]
}
SET_APPROVAL_STAGE JSON
在添加新审批人之前,会先移除指定阶段中的现有审批人。已经完成审批的审批人不会从审批人列表中移除。
是否触发第一阶段的审批由 send_immediately 参数控制。设置为 true 时,将立即发送审批请求。设置为 false 时,用户必须手动发送审批请求。
{
"message": "用于为所有阶段添加新审批人的 Python 示例脚本,同时保留现有审批人",
"result": "success",
"operation": [
{
"OPERATIONNAME": "SET_APPROVAL_STAGE",
"send_immediately": "true",
"INPUT_DATA": [
{
"StageOne": [
"Sampleuser.1@xyz.com",
"Sampleuser.2@xyz.com"
]
},
{
"StageTwo": [
"Sampleuser.3@xyz.com",
"Sampleuser.4@xyz.com"
]
},
{
"StageThree": [
"Sampleuser.5@xyz.com",
"Sampleuser.6@xyz.com"
]
},
{
"StageFour": [
"Sampleuser.7@xyz.com",
"Sampleuser.8@xyz.com"
]
},
{
"StageFive": [
"Sampleuser.9@xyz.com",
"Sampleuser.10@xyz.com"
]
}
]
}
]
}
SET_APPROVAL JSON
移除当前阶段中的现有审批人并添加新的审批人。已经完成审批的审批人不会从审批人列表中移除。
是否触发此阶段的审批由 send_immediately 参数控制。设置为 true 时,将立即发送审批请求。设置为 false 时,用户必须手动发送审批请求。
{
"message": "用于在当前阶段添加新审批人的 Python 示例脚本,同时保留现有审批人",
"result": "success",
"operation": [
{
"OPERATIONNAME": "SET_APPROVAL",
"send_immediately": "true",
"INPUT_DATA": [
"Sampleuser.1@xyz.com",
"Sampleuser.3@xyz.com",
"Sampleuser.5@xyz.com"
]
}
]
}