gitlab-org--gitlab-foss/doc/api/milestones.md

174 lines
5.3 KiB
Markdown
Raw Normal View History

---
stage: Plan
group: Project Management
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#designated-technical-writers
---
# Project milestones API
2014-05-27 08:12:15 -04:00
This page describes the project milestones API.
There's a separate [group milestones API](./group_milestones.md) page.
2012-08-29 08:31:00 -04:00
## List project milestones
Returns a list of project milestones.
2012-08-29 08:31:00 -04:00
```plaintext
2012-08-29 08:31:00 -04:00
GET /projects/:id/milestones
GET /projects/:id/milestones?iids[]=42
2017-02-09 09:28:19 -05:00
GET /projects/:id/milestones?iids[]=42&iids[]=43
GET /projects/:id/milestones?state=active
GET /projects/:id/milestones?state=closed
GET /projects/:id/milestones?title=1.0
GET /projects/:id/milestones?search=version
2012-08-29 08:31:00 -04:00
```
2016-04-06 14:53:17 -04:00
Parameters:
| Attribute | Type | Required | Description |
| --------- | ------ | -------- | ----------- |
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user |
| `iids[]` | integer array | optional | Return only the milestones having the given `iid` |
| `state` | string | optional | Return only `active` or `closed` milestones |
| `title` | string | optional | Return only the milestones having the given `title` |
| `search` | string | optional | Return only milestones with a title or description matching the provided string |
2016-04-06 14:53:17 -04:00
```shell
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/milestones"
2016-04-06 14:53:17 -04:00
```
Example Response:
```json
[
{
2014-04-05 02:36:47 -04:00
"id": 12,
"iid": 3,
"project_id": 16,
"title": "10.0",
"description": "Version",
"due_date": "2013-11-29",
2016-11-15 12:48:30 -05:00
"start_date": "2013-11-10",
2014-04-05 02:36:47 -04:00
"state": "active",
"updated_at": "2013-10-02T09:24:18Z",
"created_at": "2013-10-02T09:24:18Z"
}
]
```
## Get single milestone
Gets a single project milestone.
2012-08-29 08:31:00 -04:00
```plaintext
2012-08-29 08:31:00 -04:00
GET /projects/:id/milestones/:milestone_id
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of the project's milestone
## Create new milestone
2012-08-29 08:31:00 -04:00
Creates a new project milestone.
2012-08-29 08:31:00 -04:00
```plaintext
2012-08-29 08:31:00 -04:00
POST /projects/:id/milestones
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
2018-01-19 05:09:59 -05:00
- `title` (required) - The title of a milestone
2014-04-24 18:48:22 -04:00
- `description` (optional) - The description of the milestone
- `due_date` (optional) - The due date of the milestone
2016-11-15 12:48:30 -05:00
- `start_date` (optional) - The start date of the milestone
2012-08-29 08:31:00 -04:00
## Edit milestone
Updates an existing project milestone.
2012-08-29 08:31:00 -04:00
```plaintext
2012-08-29 08:31:00 -04:00
PUT /projects/:id/milestones/:milestone_id
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
2014-04-24 18:48:22 -04:00
- `milestone_id` (required) - The ID of a project milestone
- `title` (optional) - The title of a milestone
- `description` (optional) - The description of a milestone
- `due_date` (optional) - The due date of the milestone
2016-11-15 12:48:30 -05:00
- `start_date` (optional) - The start date of the milestone
- `state_event` (optional) - The state event of the milestone (close or activate)
## Delete project milestone
Only for users with Developer access to the project.
```plaintext
DELETE /projects/:id/milestones/:milestone_id
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of the project's milestone
## Get all issues assigned to a single milestone
Gets all issues assigned to a single project milestone.
```plaintext
GET /projects/:id/milestones/:milestone_id/issues
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of a project milestone
## Get all merge requests assigned to a single milestone
Gets all merge requests assigned to a single project milestone.
```plaintext
GET /projects/:id/milestones/:milestone_id/merge_requests
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of a project milestone
## Promote project milestone to a group milestone
> [Introduced](https://gitlab.com/gitlab-org/gitlab-foss/-/issues/53861) in GitLab 11.9
Only for users with Developer access to the group.
```plaintext
POST /projects/:id/milestones/:milestone_id/promote
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of a project milestone
## Get all burndown chart events for a single milestone **(STARTER)**
> [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/4737) in GitLab 12.1
Gets all burndown chart events for a single milestone.
```plaintext
GET /projects/:id/milestones/:milestone_id/burndown_events
```
Parameters:
- `id` (required) - The ID or [URL-encoded path of the project](README.md#namespaced-path-encoding) owned by the authenticated user
- `milestone_id` (required) - The ID of a project milestone