{ "lexicon": 1, "id": "chat.bsky.convo.addReaction", "defs": { "main": { "type": "procedure", "description": "Adds an emoji reaction to a message. Requires authentication. It is idempotent, so multiple calls from the same user with the same emoji result in a single reaction.", "input": { "encoding": "application/json", "schema": { "type": "object", "required": [ "convoId", "messageId", "value" ], "properties": { "convoId": { "type": "string" }, "messageId": { "type": "string" }, "value": { "type": "string", "minLength": 1, "maxLength": 64, "minGraphemes": 1, "maxGraphemes": 1 } } } }, "output": { "encoding": "application/json", "schema": { "type": "object", "required": [ "message" ], "properties": { "message": { "type": "ref", "ref": "chat.bsky.convo.defs#messageView" } } } }, "errors": [ { "description": "Indicates that the message has been deleted and reactions can no longer be added/removed.", "name": "ReactionMessageDeleted" }, { "description": "Indicates that the message has the maximum number of reactions allowed for a single user, and the requested reaction wasn't yet present. If it was already present, the request will not fail since it is idempotent.", "name": "ReactionLimitReached" }, { "description": "Indicates the value for the reaction is not acceptable. In general, this means it is not an emoji.", "name": "ReactionInvalidValue" } ] } } }