首页 > 解决方案 > 如何使用具有特定标志值的 DevOps Api 获取工作项列表

问题描述

我们最近移植到 DevOps。我需要使用 DevOps API 来获取在自定义字段“产品版本”中具有特定值的 WorkItems 列表。(在每个工作项上设置)所以我们可以看到哪些工作项将包含在该产品的发布中。这可以跨越单个项目中的多个存储库。

我唯一能看到的是工作项列表,但我需要为此提供一个 ID 列表,这就是我想要得到的!

GET https://dev.azure.com/{organization}/{project}/_apis/wit/workitems?ids={ids}&api-version=5.1

我很惊讶您无法获得基于其他一些标准/分组的工作项列表。如果上述不可行,是否有其他方法可以设置我们的 WorkItems 以便我们可以获取此信息?

非常感谢

标签: devopsazure-devops-rest-api

解决方案


您应该改用Wiql - Query By Wiql API。例如:

POST https://dev.azure.com/{organization}/{project}/{team}/_apis/wit/wiql?api-version=5.1

Request Body

{
   "query": "Select [System.Id], [System.Title], [System.State] From WorkItems Where [System.TeamProject] = 'TeamProject' and ([System.WorkItemType] = 'Task' or [System.WorkItemType] = 'Bug' or [System.WorkItemType] = 'Product Backlog Item') and [ProductVersion] = 'xxx'"
}

推荐阅读