如何通过ADO API创建流程模板时将自动生成的工作项类型设为继承式?
通过API创建继承式流程模板时,默认生成的系统工作项类型(如用户故事、任务)属于原生系统类型,无法直接修改。要将它们转为可编辑的继承式类型,需在API请求中显式配置关键属性,具体操作如下:
构造正确的流程创建请求体
调用POST https://dev.azure.com/{organization}/_apis/process/processes?api-version=7.1-preview.2接口时,除了设置流程type为Inherited,还要在workItemTypes数组中为每个目标工作项类型定义完整结构,核心是设置isCustom: true,同时保留系统类型的官方引用名称。示例请求体片段:
{ "name": "自定义继承流程", "type": "Inherited", "workItemTypes": [ { "name": "用户故事", "referenceName": "Microsoft.VSTS.WorkItemTypes.UserStory", "color": "#FFCC66", "icon": "icon_book", "isCustom": true }, { "name": "任务", "referenceName": "Microsoft.VSTS.WorkItemTypes.Task", "color": "#FF9900", "icon": "icon_task", "isCustom": true } ] }注意
referenceName必须严格匹配系统工作项类型的官方标识,确保继承系统默认配置的同时,通过isCustom: true标记为可修改的继承式类型。验证工作项类型状态
创建完成后,调用GET https://dev.azure.com/{organization}/_apis/process/processes/{processId}/workitemtypes?api-version=7.1-preview.2接口,检查返回结果中每个工作项类型的isCustom字段是否为true,确认已转为继承式类型后,即可通过API或ADO界面修改其字段、布局等配置。补漏处理已创建的系统类型
如果创建时遗漏了某些工作项类型,可通过PATCH接口单独更新其状态:PATCH https://dev.azure.com/{organization}/_apis/process/processes/{processId}/workitemtypes/{witId}?api-version=7.1-preview.2 { "isCustom": true }
注意:需使用
7.1-preview.2及以上版本的API,旧版本不支持显式设置isCustom属性;不要修改系统工作项类型的referenceName,否则会丢失系统默认行为(如看板状态流转)。
内容的提问来源于stack exchange,提问作者vam

