Help us learn about your current experience with the documentation. Take the survey.

项目里程碑 API

  • Tier: Free, Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

使用 REST API 来管理项目里程碑。 还有一个单独的群组里程碑 API页面。

列出项目里程碑

返回项目里程碑列表。

GET /projects/:id/milestones
GET /projects/:id/milestones?iids[]=42
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
GET /projects/:id/milestones?updated_before=2013-10-02T09%3A24%3A18Z
GET /projects/:id/milestones?updated_after=2013-10-02T09%3A24%3A18Z

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
iids[] integer array no 只返回具有给定 iid 的里程碑。如果 include_ancestorstrue,则忽略此参数。
state string no 只返回 activeclosed 状态的里程碑
title string no 只返回具有给定 title 的里程碑
search string no 只返回标题或描述与提供的字符串匹配的里程碑
include_parent_milestones boolean no 在 GitLab 16.7 中已弃用。请改用 include_ancestors
include_ancestors boolean no 包含所有父群组的里程碑。
updated_before datetime no 只返回在给定日期时间之前更新的里程碑。预期格式为 ISO 8601 (2019-03-15T08:00:00Z)。GitLab 15.10 中引入
updated_after datetime no 只返回在给定日期时间之后更新的里程碑。预期格式为 ISO 8601 (2019-03-15T08:00:00Z)。GitLab 15.10 中引入
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/milestones"

示例响应:

[
  {
    "id": 12,
    "iid": 3,
    "project_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
  }
]

获取单个里程碑

获取单个项目里程碑。

GET /projects/:id/milestones/:milestone_id

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID

创建新里程碑

创建新的项目里程碑。

POST /projects/:id/milestones

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
title string yes 里程碑的标题
description string no 里程碑的描述
due_date string no 里程碑的截止日期 (YYYY-MM-DD)
start_date string no 里程碑的开始日期 (YYYY-MM-DD)

编辑里程碑

更新现有的项目里程碑。

PUT /projects/:id/milestones/:milestone_id

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID
title string no 里程碑的标题
description string no 里程碑的描述
due_date string no 里程碑的截止日期 (YYYY-MM-DD)
start_date string no 里程碑的开始日期 (YYYY-MM-DD)
state_event string no 里程碑的状态事件 (close 或 activate)

删除项目里程碑

仅适用于项目至少具有 Planner 角色的用户。

DELETE /projects/:id/milestones/:milestone_id

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID

获取分配给单个里程碑的所有问题

获取分配给单个项目里程碑的所有问题。

GET /projects/:id/milestones/:milestone_id/issues

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID

获取分配给单个里程碑的所有合并请求

获取分配给单个项目里程碑的所有合并请求。

GET /projects/:id/milestones/:milestone_id/merge_requests

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID

将项目里程碑提升为群组里程碑

仅适用于群组至少具有 Planner 角色的用户。

POST /projects/:id/milestones/:milestone_id/promote

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID

获取单个里程碑的所有燃尽图事件

  • Tier: Premium, Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

获取单个里程碑的所有燃尽图事件。

GET /projects/:id/milestones/:milestone_id/burndown_events

参数:

属性 类型 必需 描述
id integer or string yes 项目的 ID 或URL 编码路径
milestone_id integer yes 项目里程碑的 ID