Emoji reactions API
- Tier: Free, Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
Version history
- Renamed from "award emoji" to "emoji reactions" in GitLab 16.0.
Use this API to manage emoji reactions.
GitLab objects that accept emoji reactions are called awardables. You can react with emoji on the following resources:
Issues, merge requests, and snippets
For information on using these endpoints with comments, see Add reactions to comments.
List all emoji reactions for a resource
Version history
- Changed in GitLab 15.1 to allow unauthenticated access to public awardables.
Lists all emoji reactions for a specified issue, snippet, or merge request. This endpoint can be accessed without authentication if the awardable is publicly accessible.
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
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid/merge_request_iid/snippet_id
|
integer | yes | ID (iid for merge requests/issues, id for snippets) of an awardable. |
Example request:
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji"
Example response:
[
{
"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"
}
]
Retrieve an emoji reaction from a resource
Version history
- Changed in GitLab 15.1 to allow unauthenticated access to public awardables.
Retrieves a specified emoji reaction from an issue, snippet, or merge request. This endpoint can be accessed without authentication if the awardable is publicly accessible.
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
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid/merge_request_iid/snippet_id
|
integer | yes | ID (iid for merge requests/issues, id for snippets) of an awardable. |
award_id |
integer | yes | ID of the emoji reaction. |
Example request:
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/1"
Example response:
{
"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"
}
Add an emoji reaction to a resource
Adds an emoji reaction to an issue, snippet, or merge request.
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
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid/merge_request_iid/snippet_id
|
integer | yes | ID (iid for merge requests/issues, id for snippets) of an awardable. |
name |
string | yes | Name of the emoji without colons. |
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji?name=blowfish"
Example Response:
{
"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"
}
Delete an emoji reaction from a resource
Deletes a specified emoji reaction from an issue, snippet, or merge request.
Only an administrator or the author of the reaction can delete an emoji reaction.
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
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid/merge_request_iid/snippet_id
|
integer | yes | ID (iid for merge requests/issues, id for snippets) of an awardable. |
award_id |
integer | yes | ID of an emoji reaction. |
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/344"
Add reactions to comments
Comments (also known as notes) are a sub-resource of issues, merge requests, and snippets.
Note
The examples below describe working with emoji reactions on an issue's comments, but can be
adapted to comments on merge requests and snippets. Therefore, you have to replace
issue_iid either with merge_request_iid or with the snippet_id.
List all emoji reactions for a comment
Version history
- Changed in GitLab 15.1 to allow unauthenticated access to public comments.
Lists all emoji reactions for a specified comment. This endpoint can be accessed without authentication if the comment is publicly accessible.
GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid |
integer | yes | Internal ID of an issue. |
note_id |
integer | yes | ID of a comment (note). |
Example request:
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji"
Example response:
[
{
"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"
}
]
Retrieve an emoji reaction from a comment
Version history
- Changed in GitLab 15.1 to allow unauthenticated access to public comments.
Retrieves an emoji reaction from a specified comment. This endpoint can be accessed without authentication if the comment is publicly accessible.
GET /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid |
integer | yes | Internal ID of an issue. |
note_id |
integer | yes | ID of a comment (note). |
award_id |
integer | yes | ID of the emoji reaction. |
Example request:
curl --request GET \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji/2"
Example response:
{
"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"
}
Add an emoji reaction to a comment
Adds an emoji reaction to a specified comment.
POST /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid |
integer | yes | Internal ID of an issue. |
note_id |
integer | yes | ID of a comment (note). |
name |
string | yes | Name of the emoji without colons. |
Example request:
curl --request POST \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/notes/1/award_emoji?name=rocket"
Example response:
{
"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"
}
Delete an emoji reaction from a comment
Deletes an emoji reaction from a specified comment.
Only an administrator or the author of the reaction can delete an emoji reaction.
DELETE /projects/:id/issues/:issue_iid/notes/:note_id/award_emoji/:award_id
Parameters:
| Attribute | Type | Required | Description |
|---|---|---|---|
id |
integer or string | yes | ID or URL-encoded path of the project. |
issue_iid |
integer | yes | Internal ID of an issue. |
note_id |
integer | yes | ID of a comment (note). |
award_id |
integer | yes | ID of an emoji reaction. |
Example request:
curl --request DELETE \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/1/issues/80/award_emoji/345"