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

Emoji 反应 API

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

一个 emoji 反应胜过千言万语。

我们将接受 emoji 反应的 GitLab 对象称为可奖励对象。您可以在以下对象上使用 emoji 反应:

Issues、merge requests 和 snippets

有关在评论中使用这些端点的信息,请参阅为评论添加反应

列出可奖励对象的 emoji 反应

获取指定可奖励对象的所有 emoji 反应列表。如果可奖励对象是公开可访问的,则无需身份验证即可访问此端点。

GET /projects/:id/issues/:issue_iid/award_emoji
GET /projects/:id/merge_requests/:merge_request_iid/award_emoji
GET /projects/:id/snippets/:snippet_id/award_emoji

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid/merge_request_iid/snippet_id integer yes 可奖励对象的 ID(merge requests/issues 使用 iid,snippets 使用 id)。

示例请求:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji"

示例响应:

[
  {
    "id": 4,
    "name": "1234",
    "user": {
      "name": "Administrator",
      "username": "root",
      "id": 1,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/root"
    },
    "created_at": "2016-06-15T10:09:34.206Z",
    "updated_at": "2016-06-15T10:09:34.206Z",
    "awardable_id": 80,
    "awardable_type": "Issue"
  },
  {
    "id": 1,
    "name": "microphone",
    "user": {
      "name": "User 4",
      "username": "user4",
      "id": 26,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/7e65550957227bd38fe2d7fbc6fd2f7b?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/user4"
    },
    "created_at": "2016-06-15T10:09:34.177Z",
    "updated_at": "2016-06-15T10:09:34.177Z",
    "awardable_id": 80,
    "awardable_type": "Issue"
  }
]

获取单个 emoji 反应

从 issue、snippet 或 merge request 获取单个 emoji 反应。如果可奖励对象是公开可访问的,则无需身份验证即可访问此端点。

GET /projects/:id/issues/:issue_iid/award_emoji/:award_id
GET /projects/:id/merge_requests/:merge_request_iid/award_emoji/:award_id
GET /projects/:id/snippets/:snippet_id/award_emoji/:award_id

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid/merge_request_iid/snippet_id integer yes 可奖励对象的 ID(merge requests/issues 使用 iid,snippets 使用 id)。
award_id integer yes emoji 反应的 ID。

示例请求:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/1"

示例响应:

{
  "id": 1,
  "name": "microphone",
  "user": {
    "name": "User 4",
    "username": "user4",
    "id": 26,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/7e65550957227bd38fe2d7fbc6fd2f7b?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/user4"
  },
  "created_at": "2016-06-15T10:09:34.177Z",
  "updated_at": "2016-06-15T10:09:34.177Z",
  "awardable_id": 80,
  "awardable_type": "Issue"
}

添加新的 emoji 反应

在指定的可奖励对象上添加 emoji 反应。

POST /projects/:id/issues/:issue_iid/award_emoji
POST /projects/:id/merge_requests/:merge_request_iid/award_emoji
POST /projects/:id/snippets/:snippet_id/award_emoji

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid/merge_request_iid/snippet_id integer yes 可奖励对象的 ID(merge requests/issues 使用 iid,snippets 使用 id)。
name string yes 不带冒号的 emoji 名称。
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji?name=blowfish"

示例响应:

{
  "id": 344,
  "name": "blowfish",
  "user": {
    "name": "Administrator",
    "username": "root",
    "id": 1,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/root"
  },
  "created_at": "2016-06-17T17:47:29.266Z",
  "updated_at": "2016-06-17T17:47:29.266Z",
  "awardable_id": 80,
  "awardable_type": "Issue"
}

删除 emoji 反应

有时候事情并不如预期,您需要移除您的反应。

只有管理员或反应的作者才能删除 emoji 反应。

DELETE /projects/:id/issues/:issue_iid/award_emoji/:award_id
DELETE /projects/:id/merge_requests/:merge_request_iid/award_emoji/:award_id
DELETE /projects/:id/snippets/:snippet_id/award_emoji/:award_id

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid/merge_request_iid/snippet_id integer yes 可奖励对象的 ID(merge requests/issues 使用 iid,snippets 使用 id)。
award_id integer yes emoji 反应的 ID。
curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/344"

为评论添加反应

评论(也称为 notes)是 issues、merge requests 和 snippets 的子资源。

下面的示例描述了在 issue 评论上使用 emoji 反应,但可以适用于 merge requests 和 snippets 的评论。因此,您需要将 issue_iid 替换为 merge_request_iidsnippet_id

列出评论的 emoji 反应

获取评论(note)的所有 emoji 反应。如果评论是公开可访问的,则无需身份验证即可访问此端点。

GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid integer yes issue 的内部 ID。
note_id integer yes 评论(note)的 ID。

示例请求:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji"

示例响应:

[
  {
    "id": 2,
    "name": "mood_bubble_lightning",
    "user": {
      "name": "User 4",
      "username": "user4",
      "id": 26,
      "state": "active",
      "avatar_url": "http://www.gravatar.com/avatar/7e65550957227bd38fe2d7fbc6fd2f7b?s=80&d=identicon",
      "web_url": "http://gitlab.example.com/user4"
    },
    "created_at": "2016-06-15T10:09:34.197Z",
    "updated_at": "2016-06-15T10:09:34.197Z",
    "awardable_id": 1,
    "awardable_type": "Note"
  }
]

获取评论的 emoji 反应

获取评论(note)的单个 emoji 反应。如果评论是公开可访问的,则无需身份验证即可访问此端点。

GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid integer yes issue 的内部 ID。
note_id integer yes 评论(note)的 ID。
award_id integer yes emoji 反应的 ID。

示例请求:

curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji/2"

示例响应:

{
  "id": 2,
  "name": "mood_bubble_lightning",
  "user": {
    "name": "User 4",
    "username": "user4",
    "id": 26,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/7e65550957227bd38fe2d7fbc6fd2f7b?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/user4"
  },
  "created_at": "2016-06-15T10:09:34.197Z",
  "updated_at": "2016-06-15T10:09:34.197Z",
  "awardable_id": 1,
  "awardable_type": "Note"
}

为评论添加新的 emoji 反应

在指定的评论(note)上创建 emoji 反应。

POST /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid integer yes issue 的内部 ID。
note_id integer yes 评论(note)的 ID。
name string yes 不带冒号的 emoji 名称。

示例请求:

curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji?name=rocket"

示例响应:

{
  "id": 345,
  "name": "rocket",
  "user": {
    "name": "Administrator",
    "username": "root",
    "id": 1,
    "state": "active",
    "avatar_url": "http://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
    "web_url": "http://gitlab.example.com/root"
  },
  "created_at": "2016-06-17T19:59:55.888Z",
  "updated_at": "2016-06-17T19:59:55.888Z",
  "awardable_id": 1,
  "awardable_type": "Note"
}

从评论中删除 emoji 反应

有时候事情并不如预期,您需要移除反应。

只有管理员或反应的作者才能删除 emoji 反应。

DELETE /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id

参数:

属性 类型 必需 描述
id integer/string yes 项目的 ID 或 URL 编码路径
issue_iid integer yes issue 的内部 ID。
note_id integer yes 评论(note)的 ID。
award_id integer yes emoji 反应的 ID。

示例请求:

curl --request DELETE --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/345"