diff --git "a/src/api/routes/channels/\043channel_id/messages/index.ts" "b/src/api/routes/channels/\043channel_id/messages/index.ts" index 110e890..7f8b4b9 100644 --- "a/src/api/routes/channels/\043channel_id/messages/index.ts" +++ "b/src/api/routes/channels/\043channel_id/messages/index.ts" @@ -315,7 +315,6 @@ }, route({ requestBody: "MessageCreateSchema", - permission: "SEND_MESSAGES", right: "SEND_MESSAGES", responses: { 200: { @@ -337,6 +336,11 @@ where: { id: channel_id }, relations: { recipients: { user: true } }, }); + if (channel.isThread()) { + req.permission!.hasThrow("SEND_MESSAGES_IN_THREADS"); + } else { + req.permission!.hasThrow("SEND_MESSAGES"); + } if (!channel.isWritable()) { throw new HTTPError(`Cannot send messages to channel of type ${channel.type}`, 400); }