2017-02-02 19:41:21 +00:00
# V3 to V4 version
Our V4 API version is currently available as *Beta* ! It means that V3
will still be supported and remain unchanged for now, but be aware that the following
changes are in V4:
### Changes
- Removed `/projects/:search` (use: `/projects?search=x` )
2017-01-25 21:35:27 +00:00
- `iid` filter has been removed from `projects/:id/issues`
- `projects/:id/merge_requests?iid[]=x&iid[]=y` array filter has been renamed to `iids`
- Endpoints under `projects/merge_request/:id` have been removed (use: `projects/merge_requests/:id` )
2017-02-06 13:25:49 +00:00
- Project snippets do not return deprecated field `expires_at`
2017-02-06 13:39:22 +00:00
- Endpoints under `projects/:id/keys` have been removed (use `projects/:id/deploy_keys` )
2017-02-09 12:39:39 +00:00
- Status 409 returned for POST `project/:id/members` when a member already exists
2017-02-20 14:14:48 +00:00
- Moved `DELETE /projects/:id/star` to `POST /projects/:id/unstar`
2017-01-27 18:53:27 +00:00
- Removed the following deprecated Templates endpoints (these are still accessible with `/templates` prefix)
- `/licences`
- `/licences/:key`
- `/gitignores`
- `/gitlab_ci_ymls`
- `/dockerfiles`
- `/gitignores/:key`
- `/gitlab_ci_ymls/:key`
- `/dockerfiles/:key`
2017-02-02 17:57:34 +00:00
- Moved `/projects/fork/:id` to `/projects/:id/fork`
2017-02-21 09:00:33 +00:00
- Moved `DELETE /todos` to `POST /todos/mark_as_done` and `DELETE /todos/:todo_id` to `POST /todos/:todo_id/mark_as_done`
2017-02-01 10:23:57 +00:00
- Endpoints `/projects/owned` , `/projects/visible` , `/projects/starred` & `/projects/all` are consolidated into `/projects` using query parameters
2017-02-06 18:38:17 +00:00
- Return pagination headers for all endpoints that return an array
2017-02-20 08:33:42 +00:00
- Removed `DELETE projects/:id/deploy_keys/:key_id/disable` . Use `DELETE projects/:id/deploy_keys/:key_id` instead
2017-02-20 12:31:11 +00:00
- Moved `PUT /users/:id/(block|unblock)` to `POST /users/:id/(block|unblock)`
2017-02-17 09:49:45 +00:00
- Make subscription API more RESTful. Use `post ":project_id/:subscribable_type/:subscribable_id/subscribe"` to subscribe and `post ":project_id/:subscribable_type/:subscribable_id/unsubscribe"` to unsubscribe from a resource.
2017-01-27 17:34:15 +00:00
- Labels filter on `projects/:id/issues` and `/issues` now matches only issues containing all labels (i.e.: Logical AND, not OR)
2017-02-02 14:24:30 +00:00
- Renamed param `branch_name` to `branch` on the following endpoints
- POST `:id/repository/branches`
- POST `:id/repository/commits`
- POST/PUT/DELETE `:id/repository/files`
- Renamed `branch_name` to `branch` on DELETE `id/repository/branches/:branch` response