diff --git a/apps/meteor/app/api/server/v1/voip/rooms.ts b/apps/meteor/app/api/server/v1/voip/rooms.ts index f04feaf0e084..79e77c607972 100644 --- a/apps/meteor/app/api/server/v1/voip/rooms.ts +++ b/apps/meteor/app/api/server/v1/voip/rooms.ts @@ -82,7 +82,11 @@ const parseAndValidate = (property: string, date?: string): DateParam => { API.v1.addRoute( 'voip/room', - { authRequired: false, rateLimiterOptions: { numRequestsAllowed: 5, intervalTimeInMS: 60000 } }, + { + authRequired: true, + rateLimiterOptions: { numRequestsAllowed: 5, intervalTimeInMS: 60000 }, + permissionsRequired: ['inbound-voip-calls'], + }, { async get() { const defaultCheckParams = { @@ -212,7 +216,7 @@ API.v1.addRoute( */ API.v1.addRoute( 'voip/room.close', - { authRequired: true }, + { authRequired: true, permissionsRequired: ['inbound-voip-calls'] }, { async post() { check(this.bodyParams, { diff --git a/apps/meteor/tests/end-to-end/api/02-channels.js b/apps/meteor/tests/end-to-end/api/02-channels.js index 80e7435c8e8f..5469295f68bd 100644 --- a/apps/meteor/tests/end-to-end/api/02-channels.js +++ b/apps/meteor/tests/end-to-end/api/02-channels.js @@ -305,11 +305,13 @@ describe('[Channels]', function () { before(() => updateSetting('VoIP_Enabled', true)); const createVoipRoom = async () => { const testUser = await createUser({ roles: ['user', 'livechat-agent'] }); + const testUserCredentials = await login(testUser.username, password); const visitor = await createVisitor(); const roomResponse = await createRoom({ token: visitor.token, type: 'v', agentId: testUser._id, + credentials: testUserCredentials, }); return roomResponse.body.room; };