Events

原文:https://docs.gitlab.com/ee/api/events.html

Events

Filter parameters

Action Types

action参数的可用操作类型为:

  • created
  • updated
  • closed
  • reopened
  • pushed
  • commented
  • merged
  • joined
  • left
  • destroyed
  • expired

请注意,这些选项是小写的.

Target Types

target_type参数的可用目标类型为:

  • issue
  • milestone
  • merge_request
  • note
  • project
  • snippet
  • user

请注意,这些选项是小写的.

Date formatting

beforeafter参数的日期应以以下格式提供:

  1. YYYY-MM-DD

Event Time Period Limit

GitLab removes events older than 2 years from the events table for performance reasons.

List currently authenticated user’s events

注意:该端点是在 GitLab 9.3 中引入的. 在 GitLab 11.3 中引入了read_user访问.

获取经过身份验证的用户的事件列表. 范围read_userapi是必需的.

  1. GET /events

Parameters:

Attribute Type Required Description
action string no 仅包括特定动作类型的事件
target_type string no 仅包括特定目标类型的事件
before date no 仅包括在特定日期之前创建的事件. 请在此处查看受支持的格式
after date no 仅包括在特定日期之后创建的事件. 请在此处查看受支持的格式
scope string no 包括用户项目中的所有事件.
sort string no created_at对事件进行ascdesc排序. 默认为desc

请求示例:

  1. curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/events?target_type=issue&action=created&after=2017-01-31&before=2017-03-01&scope=all"

响应示例:

  1. [ { "title":null, "project_id":1, "action_name":"opened", "target_id":160, "target_type":"Issue", "author_id":25, "target_title":"Qui natus eos odio tempore et quaerat consequuntur ducimus cupiditate quis.", "created_at":"2017-02-09T10:43:19.667Z", "author":{ "name":"User 3", "username":"user3", "id":25, "state":"active", "avatar_url":"http://www.gravatar.com/avatar/97d6d9441ff85fdc730e02a6068d267b?s=80\u0026d=identicon", "web_url":"https://gitlab.example.com/user3" }, "author_username":"user3" }, { "title":null, "project_id":1, "action_name":"opened", "target_id":159, "target_type":"Issue", "author_id":21, "target_title":"Nostrum enim non et sed optio illo deleniti non.", "created_at":"2017-02-09T10:43:19.426Z", "author":{ "name":"Test User", "username":"ted", "id":21, "state":"active", "avatar_url":"http://www.gravatar.com/avatar/80fb888c9a48b9a3f87477214acaa63f?s=80\u0026d=identicon", "web_url":"https://gitlab.example.com/ted" }, "author_username":"ted" } ]

Get user contribution events

注意:文档以前位于” 用户 API”页面中 . 在 GitLab 11.3 中引入了read_user访问.

获取指定用户的贡献事件,从最新到最旧排序. 范围read_userapi是必需的.

  1. GET /users/:id/events

Parameters:

Attribute Type Required Description
id integer yes 用户的 ID 或用户名
action string no 仅包括特定动作类型的事件
target_type string no 仅包括特定目标类型的事件
before date no 仅包括在特定日期之前创建的事件. 请在此处查看受支持的格式
after date no 仅包括在特定日期之后创建的事件. 请在此处查看受支持的格式
sort string no created_at对事件进行ascdesc排序. 默认为desc
  1. curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/users/:id/events"

响应示例:

  1. [ { "title": null, "project_id": 15, "action_name": "closed", "target_id": 830, "target_type": "Issue", "author_id": 1, "target_title": "Public project search field", "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png", "web_url": "http://localhost:3000/root" }, "author_username": "root" }, { "title": null, "project_id": 15, "action_name": "pushed", "target_id": null, "target_type": null, "author_id": 1, "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png", "web_url": "http://localhost:3000/root" }, "author_username": "john", "push_data": { "commit_count": 1, "action": "pushed", "ref_type": "branch", "commit_from": "50d4420237a9de7be1304607147aec22e4a14af7", "commit_to": "c5feabde2d8cd023215af4d2ceeb7a64839fc428", "ref": "master", "commit_title": "Add simple search to projects in public area" }, "target_title": null }, { "title": null, "project_id": 15, "action_name": "closed", "target_id": 840, "target_type": "Issue", "author_id": 1, "target_title": "Finish & merge Code search PR", "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png", "web_url": "http://localhost:3000/root" }, "author_username": "root" }, { "title": null, "project_id": 15, "action_name": "commented on", "target_id": 1312, "target_type": "Note", "author_id": 1, "target_title": null, "created_at": "2015-12-04T10:33:58.089Z", "note": { "id": 1312, "body": "What an awesome day!", "attachment": null, "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png", "web_url": "http://localhost:3000/root" }, "created_at": "2015-12-04T10:33:56.698Z", "system": false, "noteable_id": 377, "noteable_type": "Issue" }, "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png", "web_url": "http://localhost:3000/root" }, "author_username": "root" } ]

List a Project’s visible events

注意:此端点的时间比其他端点长. 文档以前位于Projects API 页面中 .

获取特定项目的可见事件列表.

  1. GET /projects/:project_id/events

Parameters:

Attribute Type Required Description
project_id integer/string yes 项目的 ID 或URL 编码的路径
action string no 仅包括特定动作类型的事件
target_type string no 仅包括特定目标类型的事件
before date no 仅包括在特定日期之前创建的事件. 请在此处查看受支持的格式
after date no 仅包括在特定日期之后创建的事件. 请在此处查看受支持的格式
sort string no created_at对事件进行ascdesc排序. 默认为desc

请求示例:

  1. curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/:project_id/events?target_type=issue&action=created&after=2017-01-31&before=2017-03-01"

响应示例:

  1. [ { "title":null, "project_id":1, "action_name":"opened", "target_id":160, "target_iid":160, "target_type":"Issue", "author_id":25, "target_title":"Qui natus eos odio tempore et quaerat consequuntur ducimus cupiditate quis.", "created_at":"2017-02-09T10:43:19.667Z", "author":{ "name":"User 3", "username":"user3", "id":25, "state":"active", "avatar_url":"http://www.gravatar.com/avatar/97d6d9441ff85fdc730e02a6068d267b?s=80\u0026d=identicon", "web_url":"https://gitlab.example.com/user3" }, "author_username":"user3" }, { "title":null, "project_id":1, "action_name":"opened", "target_id":159, "target_iid":159, "target_type":"Issue", "author_id":21, "target_title":"Nostrum enim non et sed optio illo deleniti non.", "created_at":"2017-02-09T10:43:19.426Z", "author":{ "name":"Test User", "username":"ted", "id":21, "state":"active", "avatar_url":"http://www.gravatar.com/avatar/80fb888c9a48b9a3f87477214acaa63f?s=80\u0026d=identicon", "web_url":"https://gitlab.example.com/ted" }, "author_username":"ted" }, { "title": null, "project_id": 1, "action_name": "commented on", "target_id": 1312, "target_iid": 1312, "target_type": "Note", "author_id": 1, "data": null, "target_title": null, "created_at": "2015-12-04T10:33:58.089Z", "note": { "id": 1312, "body": "What an awesome day!", "attachment": null, "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "https://gitlab.example.com/uploads/user/avatar/1/fox_avatar.png", "web_url": "https://gitlab.example.com/root" }, "created_at": "2015-12-04T10:33:56.698Z", "system": false, "noteable_id": 377, "noteable_type": "Issue", "noteable_iid": 377 }, "author": { "name": "Dmitriy Zaporozhets", "username": "root", "id": 1, "state": "active", "avatar_url": "https://gitlab.example.com/uploads/user/avatar/1/fox_avatar.png", "web_url": "https://gitlab.example.com/root" }, "author_username": "root" } ]