merge_requests.md 4.07 KB
Newer Older
Valeriy Sizov's avatar
Valeriy Sizov committed
1 2 3 4 5
## List merge requests

Get all MR for this project.

```
6
GET /projects/:id/merge_requests
Valeriy Sizov's avatar
Valeriy Sizov committed
7 8 9 10
```

Parameters:

11
+ `id` (required) - The ID of a project
Valeriy Sizov's avatar
Valeriy Sizov committed
12 13 14 15 16 17 18 19 20 21 22 23 24

```json
[
    {
        "id":1,
        "target_branch":"master",
        "source_branch":"test1",
        "project_id":3,
        "title":"test1",
        "closed":true,
        "merged":false,
        "author":{
            "id":1,
25
            "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
26 27 28 29 30 31 32
            "email":"admin@local.host",
            "name":"Administrator",
            "blocked":false,
            "created_at":"2012-04-29T08:46:00Z"
        },
        "assignee":{
            "id":1,
33
            "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
34 35 36 37 38 39 40 41 42 43 44 45 46 47
            "email":"admin@local.host",
            "name":"Administrator",
            "blocked":false,
            "created_at":"2012-04-29T08:46:00Z"
        }
    }
]
```

## Show MR

Show information about MR.

```
48
GET /projects/:id/merge_request/:merge_request_id
Valeriy Sizov's avatar
Valeriy Sizov committed
49 50 51 52
```

Parameters:

53
+ `id` (required) - The ID of a project
Valeriy Sizov's avatar
Valeriy Sizov committed
54 55 56 57 58 59 60 61 62 63 64 65 66
+ `merge_request_id` (required) - The ID of MR

```json
{
    "id":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "closed":true,
    "merged":false,
    "author":{
        "id":1,
67
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
68 69 70 71 72 73 74
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
75
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
76 77 78 79 80 81 82 83 84 85 86 87 88 89
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    }
}
```


## Create MR

Create MR.

```
90
POST /projects/:id/merge_requests
Valeriy Sizov's avatar
Valeriy Sizov committed
91 92 93 94
```

Parameters:

95
+ `id` (required) - The ID of a project
Valeriy Sizov's avatar
Valeriy Sizov committed
96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
+ `source_branch` (required) - The source branch
+ `target_branch` (required) - The target branch
+ `assignee_id`              - Assignee user ID
+ `title` (required)         - Title of MR

```json
{
    "id":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "closed":true,
    "merged":false,
    "author":{
        "id":1,
112
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
113 114 115 116 117 118 119
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
120
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
121 122 123 124 125 126 127 128 129 130 131 132 133
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    }
}
```

## Update MR

Update MR. You can change branches, title, or even close the MR.

```
134
PUT /projects/:id/merge_request/:merge_request_id
Valeriy Sizov's avatar
Valeriy Sizov committed
135 136 137 138
```

Parameters:

139
+ `id` (required)               - The ID of a project
Valeriy Sizov's avatar
Valeriy Sizov committed
140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
+ `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
+ `closed`                      - Status of MR. true - closed


```json
{
    "id":1,
    "target_branch":"master",
    "source_branch":"test1",
    "project_id":3,
    "title":"test1",
    "closed":true,
    "merged":false,
    "author":{
        "id":1,
159
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
160 161 162 163 164 165 166
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    },
    "assignee":{
        "id":1,
167
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
168 169 170 171 172 173 174 175 176 177 178 179
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    }
}
```
## Post comment to MR

Post comment to MR

```
180
POST /projects/:id/merge_request/:merge_request_id/comments
Valeriy Sizov's avatar
Valeriy Sizov committed
181 182 183 184
```

Parameters:

185
+ `id` (required) - The ID of a project
Valeriy Sizov's avatar
Valeriy Sizov committed
186 187 188 189 190 191 192 193 194
+ `merge_request_id` (required) - ID of MR
+ `note` (required) - Text of comment

Will return created note with status `201 Created` on success, or `404 Not found` on fail.

```json
{
    "author":{
        "id":1,
195
        "username": "admin",
Valeriy Sizov's avatar
Valeriy Sizov committed
196 197 198 199 200 201 202 203
        "email":"admin@local.host",
        "name":"Administrator",
        "blocked":false,
        "created_at":"2012-04-29T08:46:00Z"
    },
    "note":"text1"
}
```