Feature #24976
Include new statuses allowed by workflow in Issues REST API
Status: | New | Start date: | ||
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% | |
Category: | REST API | |||
Target version: | 5.0.0 | |||
Resolution: |
Description
Redmine API provide no possibility to get informations about workflows. This feature is important to get informations about next allowed status for issues.
There a lot of posts from people which need this feature.
Please plan to implement this enhancement for the Redmine API - thank you!
Related issues
History
#2
Updated by Bernhard Rohloff 12 days ago
- Duplicated by Feature #35032: Get allowed Issue statuses by Issues API added
#3
Updated by Yuichi HARADA 11 days ago
- File status-list.png added
- File 24976.patch
added
I would like to add value allowed_statuses to the include parameter.
GET /issues/[id].[format]?include=allowed_statuses
By specifying this, you can get the available statuses(same values with issue edit form) from the issue's current tracker, issue's current status, and member's role.
diff --git a/app/controllers/issues_controller.rb b/app/controllers/issues_controller.rb
index c994862e1..887bcd4bb 100644
--- a/app/controllers/issues_controller.rb
+++ b/app/controllers/issues_controller.rb
@@ -112,6 +112,7 @@ class IssuesController < ApplicationController
render :template => 'issues/show'
end
format.api do
+ @allowed_statuses = @issue.new_statuses_allowed_to(User.current)
@changesets = @issue.changesets.visible.preload(:repository, :user).to_a
@changesets.reverse! if User.current.wants_comments_in_reverse_order?
end
diff --git a/app/views/issues/show.api.rsb b/app/views/issues/show.api.rsb
index f474ed9c6..215184014 100644
--- a/app/views/issues/show.api.rsb
+++ b/app/views/issues/show.api.rsb
@@ -77,4 +77,10 @@ api.issue do
api.user :id => user.id, :name => user.name
end
end if include_in_api_response?('watchers') && User.current.allowed_to?(:view_issue_watchers, @issue.project)
+
+ api.array :allowed_statuses do
+ @allowed_statuses.each do |status|
+ api.status :id => status.id, :name => status.name
+ end
+ end if include_in_api_response?('allowed_statuses')
end
#5
Updated by Go MAEDA about 16 hours ago
- Subject changed from Redmine API: Support for Workflow to Include new statuses allowed by workflow in Issues REST API
- Target version changed from Candidate for next major release to 5.0.0
Setting the target version to 5.0.0.