summaryrefslogtreecommitdiff
path: root/lib/api/merge_request_diffs.rb
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-08-03 11:32:29 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2016-08-03 11:32:29 +0300
commit9a5f40878c6d71e7fd4858f7fa1d948af6c371ae (patch)
tree735676b8ebfcfdfd8c3f2052fd3bce63ef00c517 /lib/api/merge_request_diffs.rb
parent159998a460be6ca1ea5efd135a5c3aefeab2d9b6 (diff)
downloadgitlab-ce-9a5f40878c6d71e7fd4858f7fa1d948af6c371ae.tar.gz
Add API to list merge request diff versions
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'lib/api/merge_request_diffs.rb')
-rw-r--r--lib/api/merge_request_diffs.rb25
1 files changed, 25 insertions, 0 deletions
diff --git a/lib/api/merge_request_diffs.rb b/lib/api/merge_request_diffs.rb
new file mode 100644
index 00000000000..4bd149d1603
--- /dev/null
+++ b/lib/api/merge_request_diffs.rb
@@ -0,0 +1,25 @@
+module API
+ # MergeRequestDiff API
+ class MergeRequestDiffs < Grape::API
+ before { authenticate! }
+
+ resource :projects do
+ # List merge requests diff versions
+ #
+ # Parameters:
+ # id (required) - The ID of a project
+ # merge_request_id (required) - The ID of MR
+ #
+ # Example:
+ # GET /projects/:id/merge_requests/:merge_request_id/versions
+ #
+ get ":id/merge_requests/:merge_request_id/versions" do
+ merge_request = user_project.merge_requests.
+ find(params[:merge_request_id])
+
+ authorize! :read_merge_request, merge_request
+ present merge_request.merge_request_diffs, with: Entities::MergeRequestDiff
+ end
+ end
+ end
+end