1

我需要直接使用 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?我很难找到有关格式和语法的任何文档。

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

/杰斯珀

4

2 回答 2

1

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

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

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

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

所以查询最终看起来像这样:

(project = "/project/123456789")

在 URL 中将该查询作为参数添加给我们:

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

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

于 2020-10-21T16:39:48.343 回答
1

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

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

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

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

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

于 2021-01-04T23:54:27.597 回答