Group milestones API
DETAILS: Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated
Use the group milestones using the REST API. There's a separate project milestones API page.
List group milestones
Returns a list of group milestones.
GET /groups/:id/milestones
GET /groups/:id/milestones?iids[]=42
GET /groups/:id/milestones?iids[]=42&iids[]=43
GET /groups/:id/milestones?state=active
GET /groups/:id/milestones?state=closed
GET /groups/:id/milestones?title=1.0
GET /groups/:id/milestones?search=version
GET /groups/:id/milestones?updated_before=2013-10-02T09%3A24%3A18Z
GET /groups/:id/milestones?updated_after=2013-10-02T09%3A24%3A18Z
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
iids[] |
integer array | no | Return only the milestones having the given iid . Ignored if include_ancestors is true . |
state |
string | no | Return only active or closed milestones |
title |
string | no | Return only the milestones having the given title
|
search |
string | no | Return only milestones with a title or description matching the provided string |
include_parent_milestones |
boolean | no |
Deprecated in GitLab 16.7. Use include_ancestors instead. |
include_ancestors |
boolean | no | Include milestones for all parent groups. |
include_descendants |
boolean | no | Include milestones for group and its descendants. Introduced in GitLab 16.7. |
updated_before |
datetime | no | Return only milestones updated before the given datetime. Expected in ISO 8601 format (2019-03-15T08:00:00Z ). Introduced in GitLab 15.10 |
updated_after |
datetime | no | Return only milestones updated after the given datetime. Expected in ISO 8601 format (2019-03-15T08:00:00Z ). Introduced in GitLab 15.10 |
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/groups/5/milestones"
Example Response:
[
{
"id": 12,
"iid": 3,
"group_id": 16,
"title": "10.0",
"description": "Version",
"due_date": "2013-11-29",
"start_date": "2013-11-10",
"state": "active",
"updated_at": "2013-10-02T09:24:18Z",
"created_at": "2013-10-02T09:24:18Z",
"expired": false,
"web_url": "https://gitlab.com/groups/gitlab-org/-/milestones/42"
}
]
Get single milestone
Gets a single group milestone.
GET /groups/:id/milestones/:milestone_id
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of the group milestone |
Create new milestone
Creates a new group milestone.
POST /groups/:id/milestones
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
title |
string | yes | The title of a milestone |
description |
string | no | The description of the milestone |
due_date |
date | no | The due date of the milestone, in ISO 8601 format (YYYY-MM-DD ) |
start_date |
date | no | The start date of the milestone, in ISO 8601 format (YYYY-MM-DD ) |
Edit milestone
Updates an existing group milestone.
PUT /groups/:id/milestones/:milestone_id
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of a group milestone |
title |
string | no | The title of a milestone |
description |
string | no | The description of a milestone |
due_date |
date | no | The due date of the milestone, in ISO 8601 format (YYYY-MM-DD ) |
start_date |
date | no | The start date of the milestone, in ISO 8601 format (YYYY-MM-DD ) |
state_event |
string | no | The state event of the milestone (close or activate )
|
Delete group milestone
Only for users with the Developer role in the group.
DELETE /groups/:id/milestones/:milestone_id
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of the group's milestone |
Get all issues assigned to a single milestone
Gets all issues assigned to a single group milestone.
GET /groups/:id/milestones/:milestone_id/issues
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of a group milestone |
Currently, this API endpoint doesn't return issues from any subgroups.
If you want to get all the milestones' issues, you can instead use the
List issues API and filter for a
particular milestone (for example, GET /issues?milestone=1.0.0&state=opened
).
Get all merge requests assigned to a single milestone
Gets all merge requests assigned to a single group milestone.
GET /groups/:id/milestones/:milestone_id/merge_requests
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of a group milestone |
Get all burndown chart events for a single milestone
DETAILS: Tier: Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated
Get all burndown chart events for a single milestone.
GET /groups/:id/milestones/:milestone_id/burndown_events
Parameters:
Attribute | Type | Required | Description |
---|---|---|---|
id |
integer/string | yes | The ID or URL-encoded path of the group owned by the authenticated user |
milestone_id |
integer | yes | The ID of a group milestone |