Kam*_*mil 10 rest azure azure-devops azure-devops-rest-api
我正在尝试检索我帐户中的所有组织,但在文档中,API 调用中始终需要一个组织。
https://dev.azure.com/{organization}/_apis/...
Run Code Online (Sandbox Code Playgroud)
如果您加载当前登录页面,它会显示与您的帐户相关联的所有组织。我认为它必须以某种方式获取这些信息。我捕获了网络流量,我相信您可以使用系统 API 调用获取所需的数据。但是,它可能会更改或可能不受支持,恕不另行通知,因此请自行决定使用。
您可以使用此 API 获取所需信息:
Post https://dev.azure.com/{organization1}/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1
Run Code Online (Sandbox Code Playgroud)
身体:
{
"contributionIds": ["ms.vss-features.my-organizations-data-provider"],
"dataProviderContext":
{
"properties":{}
}
}
Run Code Online (Sandbox Code Playgroud)
回复:
{
"dataProviderSharedData": {},
"dataProviders": {
"ms.vss-web.component-data": {},
"ms.vss-web.shared-data": null,
"ms.vss-features.my-organizations-data-provider": {
"organizations": [
{
"id": "{redacted id}",
"name": "{organization1}",
"url": "https://{organization1}.visualstudio.com/"
},
{
"id": "{redacted id}",
"name": "{organization2}",
"url": "https://dev.azure.com/{organization2}/"
}
],
"createNewOrgUrl": "https://app.vsaex.visualstudio.com/go/signup?account=true"
}
} }
Run Code Online (Sandbox Code Playgroud)
您只需拨打电话即可获取您所属/所有者的所有帐户。然而,为此您需要您的 ID,可以通过调用 get profile 轻松获取该 ID。以下是以下步骤:
https://app.vssps.visualstudio.com/_apis/profile/profiles/me?api-version=5.1
这将返回您的 ID:
{
"displayName": "xxxx",
"publicAlias": "xxx",
"emailAddress": "xxx",
"coreRevision": xxx,
"timeStamp": "2019-06-17T09:29:11.1917804+00:00",
"id": "{{We need this}}",
"revision": 298459751
}
Run Code Online (Sandbox Code Playgroud)
https://app.vssps.visualstudio.com/_apis/accounts?api-version=5.1&memberId= {{您的 ID}}
回复:
{
"count": 1,
"value": [
{
"accountId": "xxx",
"accountUri": "xxx",
"accountName": "xxx",
"properties": {}
}
]
}
Run Code Online (Sandbox Code Playgroud)
它将返回与您关联的帐户列表。