RocketChat/Rocket.Chat · error · Error
room-already-on-team
Error message
room-already-on-team
What it means
Error "room-already-on-team" thrown in RocketChat/Rocket.Chat.
Source
Thrown at apps/meteor/server/services/team/service.ts:352
}
const rids = rooms.filter((rid) => rid && typeof rid === 'string');
const validRooms = await Rooms.findManyByRoomIds(rids).toArray();
if (validRooms.length < rids.length) {
throw new Error('invalid-room');
}
// validate access for every room first
for await (const room of validRooms) {
const canSeeRoom = await Authorization.canAccessRoom(room, user);
if (!canSeeRoom) {
throw new Error('invalid-room');
}
}
for await (const room of validRooms) {
if (room.teamId) {
throw new Error('room-already-on-team');
}
if (!(await Subscriptions.isUserInRole(uid, 'owner', room._id))) {
throw new Error('error-no-owner-channel');
}
if (room.t === 'c') {
await Message.saveSystemMessage('user-added-room-to-team', team.roomId, room.name || '', user);
}
room.teamId = teamId;
}
await Rooms.setTeamByIds(rids, teamId);
void notifyOnRoomChangedById(rids, 'updated');
return validRooms;
}
View on GitHub (pinned to e4b8178b20)
Solutions
- Remove the room from its current team before adding it to a new one.
- Check the room's teamId and skip rooms that are already assigned to a team.
When it happens
Trigger: Thrown at apps/meteor/server/services/team/service.ts:350 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of RocketChat/Rocket.Chat@e4b8178b20 (2026-08-18).
Data as JSON: /api/errors/cd97c033619ccbe9.
Report an issue: GitHub.