使用REST API在Rally中查询项目的用户案例列表

问题描述

我需要获取例如直接使用REST API在Rally中的项目用户故事。

我可以使用以下URI获取项目本身:

https://rally1.rallydev.com/slm/webservice/v2.0/Project/1234567890

这会给我一个JSON文档,例如22个“孩子”。但据我所知,“孩子”实际上是“子项目”。

如何查询项目本身?

我可以从此URI中获取项目本身

https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement/0987654321

...但是如何从“项目”转到项目?

根据文档,我可以使用如下语法查询项目的URI:

https://rally1.rallydev.com/slm/webservice/v2.0/project?query=QueryString&order=OrderString

我的问题是:如何构造QueryString?我很难找到有关格式和语法的任何文档。

任何帮助将不胜感激:-)

/ Jesper

解决方法

有一个简单的方法: 假设您每个季度都有不同的版本,那么您可以提及版本以及您要查询的项目。大多数情况下,您也可以从 URL 栏中记下项目 ID,但我们也有 Rally API 来获取我在下面提到的项目 ID

https://rally1.rallydev.com/slm/webservice/1.29/subscription.js?fetch=Workspaces,Name,Projects&pretty=true

您可以点击上面的 api 并检查项目键,在该键下所有项目都将与“_ref”一起列出(最后将附加项目 ID)。现在回到我们的主要问题,在下面的查询中设置此 ID(就像我将其设置为 12345678。)

https://rally1.rallydev.com/slm/webservice/v2.0/HierarchicalRequirement?query=((Release.Name = "Q1A2020") and (Project = "/project/12345678"))&fetch=Tasks,FormattedID,TotalResultCount,_ref,pagesize=20

宾果游戏!!你会得到想要的结果。如果您遇到 APIS 问题或需要缺陷和所有信息,请告诉我。

,

这是一个很老的问题,但也许您仍在寻求帮助。

如果要加载用户故事数据,则需要使用此端点:

https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement?

然后,您在提供查询字符串方面处于正确的轨道。构造查询可能非常棘手,尤其是当您有多个过滤条件时。在您的情况下,您将要根据用户故事所属的项目来过滤它们。最好使用项目的ref作为过滤器。引用只是“ / project /”,后跟对象ID。

因此查询最终看起来像这样:

(project = "/project/123456789")

将该查询添加为URL中的参数可以使我们做到这一点:

https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement?query=(project = "/project/123456789")

只需将项目ID替换为您感兴趣的项目,它便会为您提供所需的用户故事。请注意,默认页面大小为20。您可以通过在URL中添加pageSize参数来增加该大小。