chatrooms

Toggle Room Chat Reaction

Add or remove MY reaction to one message in this room's chat.

Asked for by an advisor, in the chat of a real class on 2026-08-26: "ohh also react to the comments in the chat?" The call already had reactions - the ones that drift over the video - but a line somebody typed could not be answered without typing back, which in a class of forty is forty lines of "yes".

Unlike /chat/log, the state here has to be readable back. A message is published over the data channel first and recorded second, because a live class must never wait on a database write; a reaction keeps that order, but it is a TOGGLE on shared state rather than an append, so somebody who joins late or reconnects has to be able to ask what the current state is, and this table is the only place that answers. The client publishes for immediacy and calls this for the record - the same both/and the message itself uses.

Toggling is per user, and the whole update says "this user now does / does not have this emoji on this message". Two people reacting at once therefore cannot conflict: each owns only their own key, so the data-channel deltas converge on the state the database already holds.

PRIVATE ROWS ARE NOT REACTABLE, and that is a gate rather than a simplification. The quiet lane is private FROM THE CLASSMATES; this endpoint only checks that the caller is in the room, so without the filter any student could probe a message id and both confirm that a private question exists and write themselves into it.

post/chatrooms/{room_name}/chat/{message_id}/reactions

Request

  • Base URL
    https://api.fluentea.com (the document declares no server; this is the origin it was published from)
  • URL
    https://api.fluentea.com/chatrooms/{room_name}/chat/{message_id}/reactions
  • Auth
    none declared

Path parameters

room_namestring required
message_idstring required

Headers

authorizationstring nullable

Request body

emojistring required

Response

Successful Response

unknown required

Changes

No operation changes recorded.