merge_requests.md
4.25 KB
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,
        "iid":1,
        "target_branch":"master",
        "source_branch":"test1",
        "project_id":3,
        "title":"test1",
        "state":"opened",
        "upvotes":0,
        "downvotes":0,
        "author":{
            "id":1,
            "username": "admin",
            "email":"admin@local.host",
            "name":"Administrator",
            "state":"active",
            "created_at":"2012-04-29T08:46:00Z"
        },
        "assignee":{
            "id":1,
            "username": "admin",
            "email":"admin@local.host",
            "name":"Administrator",
            "state":"active",
            "created_at":"2012-04-29T08:46:00Z"
        }
    }
]
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 project
- merge_request_id(required) - The ID of MR
{
    "id":1,
    "iid":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "state":"merged",
    "upvotes":0,
    "downvotes":0,
    "author":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    }
}
Create MR
Creates a new merge request.
POST /projects/:id/merge_requests
Parameters:
- id(required) - The ID of a project
- source_branch(required) - The source branch
- target_branch(required) - The target branch
- assignee_id(optional) - Assignee user ID
- title(required) - Title of MR
{
    "id":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "state":"opened",
    "upvotes":0,
    "downvotes":0,
    "author":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    }
}
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 project
- merge_request_id(required) - ID of MR
- source_branch- The source branch
- target_branch- The target branch
- assignee_id- Assignee user ID
- title- Title of MR
{
    "id":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "state":"opened",
    "upvotes":0,
    "downvotes":0,
    "author":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
        "username": "admin",
        "email":"admin@local.host",
        "name":"Administrator",
        "state":"active",
        "created_at":"2012-04-29T08:46:00Z"
    }
}
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 project
- merge_request_id(required) - ID of merge request
- note(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"
}