我正在使用REST API 6.2.6对JIRA进行集成。我需要做的一件事是为项目获得问题类型方案和工作流程方案。
问题类型方案
我现在唯一可以获得的是使用/rest/api/2/project/{projectIdOrKey}
的问题类型列表。我看不到任何获取问题类型方案ID的方法。看看API,问题类型方案没有任何端点,所以我想这是不可能的。
工作流程方案
/rest/api/2/project/{projectIdOrKey}
不会返回有关工作流程方案的任何信息。但是有一个端点/rest/api/2/workflowscheme/{id}
,这意味着可以以某种方式获取ID ...最后,我想得到一个项目工作流列表,以检查问题类型的转换。
有没有办法获得我想要的数据?也许有一些隐藏的未记录的API?
注意:我正在使用仅 JIRA REST API。
答案 0 :(得分:1)
这就是您想要的。 / rest / projectconfig / 1 / workflowscheme / {projectIdOrKey}
答案 1 :(得分:0)
据我所知,您可以从中获取正确的XML或JSON响应 REST API:
/rest/api/2/project/{projectIdOrKey}.
然后,如果您想了解有关workflowscheme的信息,可以使用以下信息以编程方式执行此操作。
如果您有一个想要使用的问题,那么您可以使用它来获取workflowscheme id:
ComponentAccessor.getWorkflowSchemeManager().getWorkflowScheme(issue.getProject()).get("id");
然后,一旦获得工作流程方案的ID,例如10,然后你可以得到如下的方案通用值:
GernericValue scheme = ComponentAccessor.getWorkflowSchemeManager().getScheme(10);
现在你已经拥有了这个方案,然后通过这样做可以获得方案中引用的所有工作流程:
Collection<JiraWorkflow> workflows = ComponentAccessor.getWorkflowManager().getWorkflowsFromScheme(scheme);
然后,如果您想获得一个工作流程,则必须使用:
workflows.iterator().next():
另请注意,工作流程由JIRA中的名称标识,因为JiraWorkflow中没有ID。
如果我想查找workflowscheme信息,那么这将是我将使用的方法,因此我可以使用id然后使用REST API:
但是,您可能无法找到工作流程的主要原因是因为JIRA的问题中没有它。
使用此HTTP并将其作为get请求输入“Postman”将返回所有JSON信息。
使用此https://jira.atlassian.com/browse/JRA-25121/project/23将返回该项目的所有信息。然后使用此REST API:
/rest/api/2/workflowscheme/{id}
使用此HTTP get请求https://jira.atlassian.com/browse/JRA-25121/workflow/45也可以获得返回的XML或JSON工作流信息。
答案 2 :(得分:0)
最新的 Jira 文档提供了有关 API 的信息,这些 API 可用于获取问题类型方案和工作流方案的详细信息。以下是可用于相同目的的 API,
其余网址:GET https://your-domain.atlassian.com/rest/api/2/issuetypescheme/project?projectId={projectId}'
示例响应:
{
"maxResults": 100,
"startAt": 0,
"total": 3,
"isLast": true,
"values": [
{
"issueTypeScheme": {
"id": "10000",
"name": "Default Issue Type Scheme",
"description": "Default issue type scheme is the list of global issue types. All newly created issue types will automatically be added to this scheme.",
"defaultIssueTypeId": "10003",
"isDefault": true
},
"projectIds": [
"10000",
"10001"
]
}
]
}
REST 网址:GET https://your-domain.atlassian.com/rest/api/2/workflowscheme/{id}
示例响应:
{
"id": 101010,
"name": "Example workflow scheme",
"description": "The description of the example workflow scheme.",
"defaultWorkflow": "jira",
"issueTypeMappings": {
"10000": "scrum workflow",
"10001": "builds workflow"
},
"draft": false,
"self": "https://your-domain.atlassian.net/rest/api/2/workflowscheme/101010"
}