Request Tracker API V2添加多个请求者问题咨询
解决RT工单添加多个请求者不被覆盖的问题
你当前用PUT请求直接设置Requestor字段会覆盖原有请求者,是因为PUT请求的作用是替换整个字段的全部值,而非追加。要实现添加新请求者的需求,有两种可行方案:
方案1:用PATCH请求追加单个请求者
发送PATCH请求到目标工单的API端点,请求体使用RT REST2支持的操作语法,指定add动作来追加新请求者:
{ "Requestor": { "add": "new-requestor@example.com" } }
这种方式只会在现有请求者列表里新增邮箱,不会改动已有的请求者。
方案2:用PUT请求全量设置所有请求者
如果坚持用PUT请求,需要把**所有需要保留的请求者(包括原有和新增的)**放在数组里一起提交,以此替换整个请求者列表:
{ "Requestor": ["old-requestor@example.com", "new-requestor@example.com"] }
⚠️ 注意:这种方式会完全覆盖当前的请求者列表,必须包含所有要保留的邮箱,否则原有请求者会被删除。
关于之前尝试无效的原因
- 逗号分隔邮箱:RT REST2的
Requestor字段不支持这种格式,它仅识别单个邮箱字符串(用于全量替换)或邮箱数组(用于全量替换)。 - 直接传数组用PUT:如果之前传数组仍覆盖,大概率是没包含原有请求者,PUT会直接用新数组替换旧列表,所以必须带上所有需要保留的邮箱。
内容的提问来源于stack exchange,提问作者Dawson Pleasant
相关产品推荐
相关产品推荐

