如何从Gitlab webhook payload中识别Service Desk相关的工单与评论
GitLab Webhook 判定Service Desk工单/评论的核心payload字段
1. Service Desk 工单(Issue 事件)判定规则
- 核心判断字段:
issue.service_desk_reply_to,该字段仅在Service Desk生成的工单中存在非空值,存储的是工单提交用户的联系邮箱,非Service Desk场景的普通涉密工单该字段固定为null - 辅助校验字段:可匹配
issue.author.username的值为support-bot,Service Desk工单的默认创建者为GitLab官方的Support Bot账号,该字段可作为补充校验降低误判概率 - 注意:
issue.confidential仅能作为辅助参考,不可单独作为判定依据,普通工单同样可以设置为涉密状态
2. Service Desk 关联评论(Note 事件)判定规则
- 核心判断逻辑:先校验评论所属的父工单
issue.service_desk_reply_to字段是否非空,确认父工单属于Service Desk范畴即可判定评论属于Service Desk流程 - 额外校验字段:如果是用户通过邮箱回复生成的Service Desk专属评论,可校验
note.service_desk_reply_to字段是否非空,该字段存储的是回复用户的邮箱地址,普通工单评论该字段为null
常见校验误区
不要单独使用涉密标识、工单标签、创建者信息这类可人为修改的字段作为唯一判定依据,
service_desk_reply_to字段是GitLab系统自动生成的不可手动修改的字段,判定优先级最高。
内容的提问来源于stack exchange,提问作者Phil Sayers
相关产品推荐
相关产品推荐

