Как я могу получить список всех проектов в нашем экземпляре Rally через REST API? - PullRequest
3 голосов
/ 14 февраля 2012

Как я могу запросить наш экземпляр Rally для всех наших доступных проектов?


Вывод из вызова REST https://rally1.rallydev.com/slm/webservice/1.29/subscription.js?fetch=Workspaces,Name,Projects&pretty=true

...
"Workspaces":     [
            {
        "_rallyAPIMajor": "1",
        "_rallyAPIMinor": "29",
        "_ref": "https://rally1.rallydev.com/slm/webservice/1.29/workspace/1376977801.js",
        "_objectVersion": "10",
        "_refObjectName": "Workspace 1",
        "Name": "Workspace 1",
        "Projects": [            {
            "_rallyAPIMajor": "1",
            "_rallyAPIMinor": "29",
            "_ref": "https://rally1.rallydev.com/slm/webservice/1.29/project/2510231094.js",
            "_objectVersion": "3",
            "_refObjectName": "Layout",
            "Name": "Layout",
            "_type": "Project"
        }],
        "_type": "Workspace"
    },
            {
        "_rallyAPIMajor": "1",
        "_rallyAPIMinor": "29",
        "_ref": "https://rally1.rallydev.com/slm/webservice/1.29/workspace/1462743357.js",
        "_objectVersion": "8",
        "_refObjectName": "Bugzilla Workspace",
        "Name": "Bugzilla Workspace",
        "Projects": [            {
            "_rallyAPIMajor": "1",
            "_rallyAPIMinor": "29",
            "_ref": "https://rally1.rallydev.com/slm/webservice/1.29/project/2510231094.js",
            "_objectVersion": "3",
            "_refObjectName": "Layout",
            "Name": "Layout",
            "_type": "Project"
        }],
        "_type": "Workspace"
    },

...


Обновление № 2 Учетная запись пользователя, используемая для вызовов API, действительно является администратором подписки. Я попробовал несколько вещей с нашим администратором, чтобы попытаться сузить проблему относительно того, что происходит, и отметил несколько вещей:

  1. Проекты, которые возвращаются в вызове, не являются проектами, в которых пользователь API является членом команды
  2. Когда мы назначили историю пользователю API и обновили результат вызова REST, проекты, которые были возвращены в каждой рабочей области, были идентичны и, казалось, были всеми проектами из данной рабочей области проекта, которому мы присвоили история от. Например, я вставил верхнюю часть возврата: http://khayes.privatepaste.com/cfc730dcf8
  3. Похоже, что этот конкретный вызов REST содержит ошибку.

Ответы [ 2 ]

2 голосов
/ 14 февраля 2012

Это должно быть возможно путем запроса типа «Подписка». Убедитесь, что вы включили рабочие области и проекты (и любые другие данные, которые вам могут понадобиться, например, Name) в вашу выборку.

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

Результаты должны выглядеть примерно так:

{
    _ref: "/subscription/1.js",
    _refObjectName: "My Subscription",
    Workspaces: [
        _ref: "/workspace/2.js"
        _refObjectName: "My Workspace",
        Projects: [
            {
                _ref: "/project/3.js"
                _refObjectName: "Project 1"
            }
        ]
    ]
}
1 голос
/ 14 февраля 2012

REST URL будет выглядеть следующим образом

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...