diff --git a/frontend/src/components/WorkspaceChat/ChatContainer/index.jsx b/frontend/src/components/WorkspaceChat/ChatContainer/index.jsx
index f8b1fc9ba858170fbd1d74ebee3877663fbd1923..627afe6e2f899bf5be1d87be8bf0d47509dd68a6 100644
--- a/frontend/src/components/WorkspaceChat/ChatContainer/index.jsx
+++ b/frontend/src/components/WorkspaceChat/ChatContainer/index.jsx
@@ -54,11 +54,6 @@ export default function ChatContainer({ workspace, knownHistory = [] }) {
         window.localStorage.getItem(`workspace_chat_mode_${workspace.slug}`) ??
           "chat"
       );
-      if (!chatResult) {
-        alert("Could not send chat.");
-        setLoadingResponse(false);
-        return;
-      }
       handleChat(
         chatResult,
         setLoadingResponse,
diff --git a/frontend/src/utils/chat/index.js b/frontend/src/utils/chat/index.js
index e5f129ab3e6385b66fe7b895b26835be8085b54f..539e22c7ebe75c1274fdfa04beafbdf23f53d506 100644
--- a/frontend/src/utils/chat/index.js
+++ b/frontend/src/utils/chat/index.js
@@ -10,7 +10,6 @@ export default function handleChat(
 
   if (type === "abort") {
     setLoadingResponse(false);
-    alert(error);
     setChatHistory([
       ...remHistory,
       {
diff --git a/server/endpoints/chat.js b/server/endpoints/chat.js
index bf13041cb79c7b2c051f6ae3ad9737aa932fb08b..7c3036434b909e3b04f007f8ff38e93727907fce 100644
--- a/server/endpoints/chat.js
+++ b/server/endpoints/chat.js
@@ -1,3 +1,4 @@
+const { v4: uuidv4 } = require("uuid");
 const { reqBody } = require("../utils/http");
 const { Workspace } = require("../models/workspace");
 const { chatWithWorkspace } = require("../utils/chats");
@@ -18,8 +19,14 @@ function chatEndpoints(app) {
       const result = await chatWithWorkspace(workspace, message, mode);
       response.status(200).json({ ...result });
     } catch (e) {
-      console.log(e.message, e);
-      response.sendStatus(500).end();
+      response.status(500).json({
+        id: uuidv4(),
+        type: "abort",
+        textResponse: null,
+        sources: [],
+        close: true,
+        error: e.message,
+      });
     }
   });
 }
diff --git a/server/utils/openAi/index.js b/server/utils/openAi/index.js
index 00ec1326b7a5c479e727eb79af635c1f863406eb..b4ce75ba2342be9e129921fd8678d358a47ab376 100644
--- a/server/utils/openAi/index.js
+++ b/server/utils/openAi/index.js
@@ -3,7 +3,6 @@ class OpenAi {
   constructor() {
     const config = new Configuration({
       apiKey: process.env.OPEN_AI_KEY,
-      // organization: "org-123xyz", // Optional
     });
     const openai = new OpenAIApi(config);
     this.openai = openai;
@@ -23,6 +22,11 @@ class OpenAi {
         if (res.results.length === 0)
           throw new Error("OpenAI moderation: No results length!");
         return res.results[0];
+      })
+      .catch((error) => {
+        throw new Error(
+          `OpenAI::CreateModeration failed with: ${error.message}`
+        );
       });
 
     if (!flagged) return { safe: true, reasons: [] };
@@ -65,6 +69,12 @@ class OpenAi {
         if (res.choices.length === 0)
           throw new Error("OpenAI chat: No results length!");
         return res.choices[0].message.content;
+      })
+      .catch((error) => {
+        console.log(error);
+        throw new Error(
+          `OpenAI::createChatCompletion failed with: ${error.message}`
+        );
       });
 
     return textResponse;