我们最近从本地TFS迁移到了云中的Azure Devops。我正在更新用于自动跟踪工作项的powershell脚本,将它们从api v3移至v5,并确保所有身份验证/端点均正常工作。我具有身份验证设置,可以进行一些GET调用(列出存储库,运行WIQL查询等)。现在,我需要使用Create endpoint创建新的工作项。
我的身体看起来像(这在Prem,TFS 2018,REST版本3.0上运行):
[
{
"op": "add",
"path": "/fields/System.Title",
"value": "My PBI title"
},
{
"op": "add",
"path": "/fields/System.AssignedTo",
"value": "DOMAIN\\USERNAME"
},
{
"op": "add",
"path": "/fields/System.AreaPath",
"value": "My\\Teams\\Path"
},
{
"op": "add",
"path": "/fields/System.IterationPath",
"value": "backlog\\2019.03.25"
}
]
当我用这个正文发布时,我得到一个400响应码和一条错误消息,指出:The identity value 'DOMAIN\\USERNAME' for field 'Assigned To' is an unknown identity."
如果我从主体声明中排除该属性,则可以创建工作项,因此我正在尝试使用域用户名/名称(姓,名/名)的不同变体来尝试获取它工作/将物品分配给我,但我不断收到相同的错误。
所以我的下一步是检查API文档,我看到了一个Users - Get方法,但是这要求我输入userDescriptor
,我认为这是某种GUID来标识每个用户。 ..但是我不知道我的是什么!
这时我很沮丧。还有其他一些REST端点来获取Profile / Security数据,但是对于创建工作项而言,这似乎过于复杂。
您如何使用此REST终结点通过云中的Azure-Devops创建项目/将其分配给用户?
答案 0 :(得分:3)
将键盘重击一些后,我开始使用它。正文定义应为:
classpath:keystore.p12
所以在我的情况下,文字值将是:
{
"op": "add",
"path": "/fields/System.AssignedTo",
"value": "LastName, Firstname"
}