REST API
Emoji sets & stickers
Custom emoji sets used for reactions and stickers.
The system set min (Unicode presets) is always available. Custom sets: up to 10 per author, 50 emoji per set, up to 30 installed sets of other authors. Emoji ids are used by reactions (PUT /messages/{id}/reaction) and stickers (emoji_id when sending).
Endpoints#
Installed emoji sets
Installed sets plus the system set min.
Parameters
No parameters.
Request
curl 'https://minchatapp.com/api/emoji-sets' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
[
{
"id": 1,
"title": "Min",
"slug": "min",
"is_system": true,
"is_active": true,
"author": null,
"emoji_count": 8,
"emojis": [
{
"emoji_id": 1,
"set_id": 1,
"set_title": "Min",
"set_active": true,
"shortcode": "thumbsup",
"kind": "unicode",
"unicode": "👍",
"image_url": null,
"count": 0
},
{
"emoji_id": 2,
"set_id": 1,
"set_title": "Min",
"set_active": true,
"shortcode": "heart",
"kind": "unicode",
"unicode": "❤️",
"image_url": null,
"count": 0
}
],
"installed": true
}
]
Create an emoji set
Up to 10 sets per author, 50 emoji per set.
Parameters
| Name | Type | Description |
|---|---|---|
title
required body
|
string |
Title. max 64 chars
|
slug
optional body
|
string |
URL slug for /e/{slug}.max 32 chars
|
Request
curl -X POST 'https://minchatapp.com/api/emoji-sets' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"title": "Team stickers", "slug": "team_stickers"}'
Response
{
"id": 2,
"title": "Team stickers",
"slug": "team-stickers",
"is_system": false,
"is_active": true,
"author": {
"id": 1,
"name": "Anna Smith",
"avatar": null
},
"emoji_count": 0,
"emojis": [],
"installed": true
}
Get an emoji set
404 when inactive (e.g. still empty).
Parameters
| Name | Type | Description |
|---|---|---|
idOrSlug
required path
|
string |
Set id or slug. |
Request
curl 'https://minchatapp.com/api/emoji-sets/team_stickers' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
Responds with HTTP 200.
Rename a set
Owner only.
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
title
required body
|
string |
Title. max 64 chars
|
Request
curl -X PATCH 'https://minchatapp.com/api/emoji-sets/2' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"title": "Team stickers v2"}'
Response
{
"id": 2,
"title": "Team stickers v2",
"slug": "team-stickers",
"is_system": false,
"is_active": true,
"author": {
"id": 1,
"name": "Anna Smith",
"avatar": null
},
"emoji_count": 1,
"emojis": [
{
"emoji_id": 9,
"set_id": 2,
"set_title": "Team stickers v2",
"set_active": true,
"shortcode": "ship_it",
"kind": "custom",
"unicode": null,
"image_url": "https://minchatapp.com/storage/emojis/cc/ccfcc4cd72fa42b444b4c2c4837bb847ae6897be6fc4ad9a59eb63cce11df4f8.png",
"count": 0
}
],
"installed": true
}
Delete a set
Owner or admin.
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
Request
curl -X DELETE 'https://minchatapp.com/api/emoji-sets/2' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
Responds with HTTP 200.
Add an emoji
Multipart: shortcode + image (≤ 256 KB, ≤ 128×128, jpeg/png/webp/gif).
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
shortcode
required body
|
string |
Emoji shortcode. pattern
^[a-z0-9_-]{2,32}$ |
image
required body
|
file |
Image file (multipart). max 256 KB
|
Request
curl -X POST 'https://minchatapp.com/api/emoji-sets/2/emojis' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
-F 'shortcode=ship_it' \
-F 'image=@ship_it.png'
Response
{
"emoji_id": 9,
"set_id": 2,
"set_title": "Team stickers",
"set_active": true,
"shortcode": "ship_it",
"kind": "custom",
"unicode": null,
"image_url": "https://minchatapp.com/storage/emojis/cc/ccfcc4cd72fa42b444b4c2c4837bb847ae6897be6fc4ad9a59eb63cce11df4f8.png",
"count": 0
}
Delete an emoji
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
emoji
required path
|
integer |
Emoji id. |
Request
curl -X DELETE 'https://minchatapp.com/api/emoji-sets/2/emojis/9' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
Responds with HTTP 200.
Install a set
Up to 30 installed sets of other authors.
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
Request
curl -X POST 'https://minchatapp.com/api/emoji-sets/2/install' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
{
"success": true,
"installed": true
}
Uninstall a set
Own and system sets → 403.
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
Request
curl -X DELETE 'https://minchatapp.com/api/emoji-sets/2/install' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
Responds with HTTP 200.
Report a set
Parameters
| Name | Type | Description |
|---|---|---|
emojiSet
required path
|
integer |
Emoji set id. |
reason
required body
|
string |
End reason. one of:
spam, abuse, other |
note
optional body
|
string |
Private note. max 500 chars
|
Request
curl -X POST 'https://minchatapp.com/api/emoji-sets/2/report' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{"reason": "spam", "note": "Ads"}'
Response
Responds with HTTP 200.
Emoji set reports (admins)
Only for accounts with is_admin.
Parameters
No parameters.
Request
curl 'https://minchatapp.com/api/emoji-set-reports' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
Responds with HTTP 200.
Recently used emoji
Up to 8.
Parameters
No parameters.
Request
curl 'https://minchatapp.com/api/emojis/recent' \
-H "Authorization: Bearer $TOKEN" \
-H 'Accept: application/json'
Response
[
{
"emoji_id": 1,
"set_id": 1,
"set_title": "Min",
"set_active": true,
"shortcode": "thumbsup",
"kind": "unicode",
"unicode": "👍",
"image_url": null,
"count": 0
},
{
"emoji_id": 4,
"set_id": 1,
"set_title": "Min",
"set_active": true,
"shortcode": "fire",
"kind": "unicode",
"unicode": "🔥",
"image_url": null,
"count": 0
}
]