3b3add35fb
The API documentation of merge requests contains info to status codes for all functions. Required arguments are now checked in the merge requests API functions and a `400 Bad Request` error is returned if they are not given.
5.3 KiB
5.3 KiB
List merge requests
Get all merge requests for this project. This function takes pagination parameters
page
and per_page
to restrict the list of merge requests.
GET /projects/:id/merge_requests
Parameters:
id
(required) - The ID of a project
[
{
"id":1,
"target_branch":"master",
"source_branch":"test1",
"project_id":3,
"title":"test1",
"closed":true,
"merged":false,
"author":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
},
"assignee":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
}
}
]
Return values:
200 Ok
on success and the list of merge requests401 Unauthorized
if user is not authenticated404 Not Found
if project ID not found
Get single MR
Shows information about a single merge request.
GET /projects/:id/merge_request/:merge_request_id
Parameters:
id
(required) - The ID of a projectmerge_request_id
(required) - The ID of MR
{
"id":1,
"target_branch":"master",
"source_branch":"test1",
"project_id":3,
"title":"test1",
"closed":true,
"merged":false,
"author":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
},
"assignee":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
}
}
Return values:
200 Ok
on success and the single merge request401 Unauthorized
if user is not authenticated404 Not Found
if project ID or merge request ID not found
Create MR
Creates a new merge request.
POST /projects/:id/merge_requests
Parameters:
id
(required) - The ID of a projectsource_branch
(required) - The source branchtarget_branch
(required) - The target branchassignee_id
- Assignee user IDtitle
(required) - Title of MR
{
"id":1,
"target_branch":"master",
"source_branch":"test1",
"project_id":3,
"title":"test1",
"closed":true,
"merged":false,
"author":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
},
"assignee":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
}
}
Return values:
201 Created
on success and the created merge request400 Bad Request
if one of the required attributes is missing401 Unauthorize
if user is not authenticated or not allowed403 Forbidden
if user is not allowed to create a merge request404 Not Found
if project ID not found or something else fails
Update MR
Updates an existing merge request. You can change branches, title, or even close the MR.
PUT /projects/:id/merge_request/:merge_request_id
Parameters:
id
(required) - The ID of a projectmerge_request_id
(required) - ID of MRsource_branch
- The source branchtarget_branch
- The target branchassignee_id
- Assignee user IDtitle
- Title of MRclosed
- Status of MR. true - closed
{
"id":1,
"target_branch":"master",
"source_branch":"test1",
"project_id":3,
"title":"test1",
"closed":true,
"merged":false,
"author":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
},
"assignee":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
}
}
Return values:
200 Ok
on success and the updated merge request401 Unauthorize
if user is not authenticated or not allowed403 Forbidden
if user is not allowed to update the merge request404 Not Found
if project ID or merge request ID not found
Post comment to MR
Adds a comment to a merge request.
POST /projects/:id/merge_request/:merge_request_id/comments
Parameters:
id
(required) - The ID of a projectmerge_request_id
(required) - ID of merge requestnote
(required) - Text of comment
{
"author":{
"id":1,
"username": "admin",
"email":"admin@local.host",
"name":"Administrator",
"blocked":false,
"created_at":"2012-04-29T08:46:00Z"
},
"note":"text1"
}
Return values:
201 Created
on success and the new comment400 Bad Request
if the required attribute note is not given401 Unauthorized
if user is not authenticated404 Not Found
if project ID or merge request ID not found