From c207918e908a3a1329d7131f2c79e05ece739bbc Mon Sep 17 00:00:00 2001 From: Hampus Date: Sun, 30 Aug 2026 22:17:23 +0200 Subject: [PATCH] perf(api): fetch channel permissions in one gateway call (#2145) --- .../src/api/channel/services/BaseChannelAuthService.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/fluxer_api/src/api/channel/services/BaseChannelAuthService.ts b/fluxer_api/src/api/channel/services/BaseChannelAuthService.ts index 1770a3797..9103c8d42 100644 --- a/fluxer_api/src/api/channel/services/BaseChannelAuthService.ts +++ b/fluxer_api/src/api/channel/services/BaseChannelAuthService.ts @@ -179,8 +179,13 @@ export abstract class BaseChannelAuthService { guildData: guildDataResult!, userId, }); + const channelPermissions = await this.gatewayService.getUserPermissions({ + guildId, + userId, + channelId: channel.id, + }); const hasPermission = async (permission: bigint): Promise => { - const allowed = await this.gatewayService.checkPermission({guildId, userId, permission, channelId: channel.id}); + const allowed = (channelPermissions & permission) === permission; if (allowed) enforceGuildMfa(permission); return allowed; };