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

Azure DevOps中git.pullrequest.approved事件在UI中不可用的问题咨询

Azure DevOps PR批准触发Webhook问题解答

问题描述

我尝试在Azure DevOps中创建拉取请求(PR)批准时触发的Webhook。根据微软官方文档,存在git.pullrequest.approved事件类型,但设置服务钩子订阅时,该事件未在可用PR触发事件列表中显示,仅能看到git.pullrequest.created、git.pullrequest.updated等事件。现咨询:

  1. git.pullrequest.approved事件是否实际可用?若可用,如何在Azure DevOps UI中启用或找到它?
  2. 若该事件不存在,跟踪PR批准的最佳替代方案是什么?是否可使用git.pullrequest.updated并添加投票变化过滤?能否提取PR批准的时间戳?

解答

1. git.pullrequest.approved事件的可用性

git.pullrequest.approved事件目前无法通过Azure DevOps UI直接配置,它属于服务钩子的非UI可见事件类型,仅支持通过REST API创建订阅,不会出现在UI的事件选择列表中。

如果需要使用该事件,只能通过调用Azure DevOps REST API创建订阅:构造包含eventType: "git.pullrequest.approved"的请求体,调用POST https://dev.azure.com/{organization}/{project}/_apis/hooks/subscriptions?api-version=7.1-preview.1接口完成创建。

2. 跟踪PR批准的替代方案

使用git.pullrequest.updated事件是当前UI中实现需求的最优方案,具体操作如下:

  • 设置投票变化过滤:创建git.pullrequest.updated服务钩子订阅时,添加过滤规则,限定仅当PR的评审投票状态变更为Approved(对应数值为10)时触发Webhook。
  • 提取批准时间戳:Webhook接收到的事件 payload 里,resource.reviewers数组中对应评审者的对象包含voteDate字段,该字段即为该评审者批准PR的时间戳,可直接读取使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 14:04:58