diff --git a/src/lib/server/notifications/handler.ts b/src/lib/server/notifications/handler.ts
index 908bae19b90e4b434b7b3b1b470001b36e2897ea..830b6c6e53adc6555b6d1f4da6514946b911e8b5 100644
--- a/src/lib/server/notifications/handler.ts
+++ b/src/lib/server/notifications/handler.ts
@@ -15,35 +15,22 @@ export async function sendNotification<T extends PossibleNotificationType>(user:
 		notificationChannels = await getNotificationChannels(userId, type.key);
 	}
 	return Promise.all(notificationChannels.map(channel => {
-		switch(channel.channelType){
-			case ChannelType.EMAIL.key: {
-				return ChannelType.EMAIL.handler(channel.recipient, type, data)
-						.catch(err => {
-							return {
-								status: "error",
-								channel,
-								error: err
-							} as HandlerReturnError;
-						});
-			}
-			case ChannelType.WEBHOOK.key: {
-				return ChannelType.WEBHOOK.handler(channel.recipient, type, data)
-						.catch(err => {
-							return {
-								status: "error",
-								channel,
-								error: err
-							} as HandlerReturnError;
-						});
-			}
-			default: {
-				console.error(`Unknown channel type`, channel.channelType);
-				return {
-					status: "ignored",
-					channel
-				} as HandlerReturnIgnored;
-			}
-		};
+		const channelType = Object.values(ChannelType).find(type => type.key === channel.channelType);
+		if(!channelType){
+			console.error(`Unknown channel type`, channel.channelType);
+			return {
+				status: "ignored",
+				channel
+			} as HandlerReturnIgnored;
+		}
+		return channelType.handler(channel.recipient, type, data)
+				.catch(err => {
+					return {
+						status: "error",
+						channel,
+						error: err
+					} as HandlerReturnError;
+				});
 	}));
 };