Reactions API
This API is used to send reactions to notes.
Reaction
typescript
type UUID = string;
interface NoteReaction {
name: string;
count: number;
me: boolean;
}
type NoteReactionWithAccounts = NoteReaction & {
account_ids: UUID[];
}
Get Reactions
All reactions attached to a Status
can be found on the note itself, in the reactions
field.
Get Users Who Reacted
http
GET /api/v1/statuses/:id/reactions
Get a list of all the users who reacted to a note. Only IDs are returned, not full account objects, to improve performance on very popular notes.
- Returns:
NoteReactionWithAccounts[]
- Authentication: Not required
- Permissions:
read:reaction
- Version History:
0.8.0
: Added.
Request
Example
http
GET /api/v1/statuses/123/reactions
Response
200 OK
List of reactions and associated users. The me
field is true
if the current user has reacted with that emoji.
Data for the custom emoji (e.g. URL) can be found in the emojis
field of the Status
.
json
[
{
"name": "like",
"count": 3,
"me": true,
"account_ids": ["1", "2", "3"]
},
{
"name": "blobfox-coffee",
"count": 1,
"me": false,
"account_ids": ["4"]
}
]
Add Reaction
http
PUT /api/v1/statuses/:id/reactions/:name
Add a reaction to a note.
- Returns:
Status
- Authentication: Required
- Permissions:
owner:reaction
- Version History:
0.8.0
: Added.
Request
name
(string, required): Either a custom emoji shortcode or a Unicode emoji.
Example
http
PUT /api/v1/statuses/123/reactions/blobfox-coffee
Authorization: Bearer ...
http
PUT /api/v1/statuses/123/reactions/👍
Authorization: Bearer ...
Response
201 Created
Returns the updated note.
json
{
"id": "123",
...
"reactions": [
{
"name": "👍",
"count": 3,
"me": true
},
{
"name": "blobfox-coffee",
"count": 1,
"me": false
}
]
}
Remove Reaction
http
DELETE /api/v1/statuses/:id/reactions/:name
Remove a reaction from a note.
- Returns:
Status
- Authentication: Required
- Permissions:
owner:reaction
- Version History:
0.8.0
: Added.
Request
name
(string, required): Either a custom emoji shortcode or a Unicode emoji.
Example
http
DELETE /api/v1/statuses/123/reactions/blobfox-coffee
Authorization: Bearer ...
http
DELETE /api/v1/statuses/123/reactions
Authorization: Bearer ...
Response
200 OK
Returns the updated note. If the reaction was not found, the note is returned as is.
json
{
"id": "123",
...
"reactions": [
{
"name": "👍",
"count": 3,
"me": true
}
]
}