summaryrefslogtreecommitdiff
path: root/lib/api/issues.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/api/issues.rb')
-rw-r--r--lib/api/issues.rb25
1 files changed, 19 insertions, 6 deletions
diff --git a/lib/api/issues.rb b/lib/api/issues.rb
index ea09174f03a..13dac1c174c 100644
--- a/lib/api/issues.rb
+++ b/lib/api/issues.rb
@@ -15,6 +15,24 @@ module API
optional :labels, type: Array[String], coerce_with: ::API::Validations::Types::CommaSeparatedToArray.coerce, desc: 'Comma-separated list of label names'
optional :milestone, type: String, desc: 'Milestone title'
optional :iids, type: Array[Integer], coerce_with: ::API::Validations::Types::CommaSeparatedToIntegerArray.coerce, desc: 'The IID array of issues'
+
+ optional :author_id, type: Integer, desc: 'Return issues which are not authored by the user with the given ID'
+ optional :author_username, type: String, desc: 'Return issues which are not authored by the user with the given username'
+ mutually_exclusive :author_id, :author_username
+
+ optional :assignee_id, type: Integer, desc: 'Return issues which are not assigned to the user with the given ID'
+ optional :assignee_username, type: Array[String], check_assignees_count: true,
+ coerce_with: Validations::Validators::CheckAssigneesCount.coerce,
+ desc: 'Return issues which are not assigned to the user with the given username'
+ mutually_exclusive :assignee_id, :assignee_username
+
+ use :negatable_issue_filter_params_ee
+ end
+
+ params :issues_stats_params do
+ optional :labels, type: Array[String], coerce_with: ::API::Validations::Types::CommaSeparatedToArray.coerce, desc: 'Comma-separated list of label names'
+ optional :milestone, type: String, desc: 'Milestone title'
+ optional :iids, type: Array[Integer], coerce_with: ::API::Validations::Types::CommaSeparatedToIntegerArray.coerce, desc: 'The IID array of issues'
optional :search, type: String, desc: 'Search issues for text present in the title, description, or any combination of these'
optional :in, type: String, desc: '`title`, `description`, or a string joining them with comma'
@@ -29,11 +47,6 @@ module API
desc: 'Return issues which are assigned to the user with the given username'
mutually_exclusive :assignee_id, :assignee_username
- use :negatable_issue_filter_params_ee
- end
-
- params :issues_stats_params do
- use :negatable_issue_filter_params
optional :created_after, type: DateTime, desc: 'Return issues created after the specified time'
optional :created_before, type: DateTime, desc: 'Return issues created before the specified time'
optional :updated_after, type: DateTime, desc: 'Return issues updated after the specified time'
@@ -48,7 +61,7 @@ module API
optional :my_reaction_emoji, type: String, desc: 'Return issues reacted by the authenticated user by the given emoji'
optional :confidential, type: Boolean, desc: 'Filter confidential or public issues'
- use :optional_issues_params_ee
+ use :issues_stats_params_ee
end
params :issues_params do