diff --git a/src/redux/middlewares/error.middleware.ts b/src/redux/middlewares/error.middleware.ts
index e9f21c3b5a7dac995880108ae0a5a6d924439ed8..8c6bd8160be1d71fd632d1ec542b66c48c9017fc 100644
--- a/src/redux/middlewares/error.middleware.ts
+++ b/src/redux/middlewares/error.middleware.ts
@@ -2,6 +2,7 @@ import type { AppListenerEffectAPI, AppStartListening } from '@/redux/store';
 import { Action, createListenerMiddleware, isRejected } from '@reduxjs/toolkit';
 import { createErrorData } from '@/utils/error-report/errorReporting';
 import { openErrorReportModal } from '@/redux/modal/modal.slice';
+import { showToast } from '@/utils/showToast';
 
 export const errorListenerMiddleware = createListenerMiddleware();
 
@@ -12,12 +13,15 @@ export const errorMiddlewareListener = async (
   { getState, dispatch }: AppListenerEffectAPI,
 ): Promise<void> => {
   if (isRejected(action) && action.type !== 'user/getSessionValid/rejected') {
-    // eslint-disable-next-line no-console
-    console.log(action);
-    const errorData = await createErrorData(action.error, getState());
-    // eslint-disable-next-line no-console
-    console.log(errorData);
-    dispatch(openErrorReportModal(errorData));
+    if (action.error.code === '403') {
+      showToast({
+        type: 'error',
+        message: 'Access denied.',
+      });
+    } else {
+      const errorData = await createErrorData(action.error, getState());
+      dispatch(openErrorReportModal(errorData));
+    }
   }
 };
 
diff --git a/src/utils/error-report/errorReporting.ts b/src/utils/error-report/errorReporting.ts
index da42c8e510cec2ec569012fd820a6b364ac0d840..4bc652535e50df366fad0a6f6cda6afe1f618a02 100644
--- a/src/utils/error-report/errorReporting.ts
+++ b/src/utils/error-report/errorReporting.ts
@@ -3,6 +3,7 @@ import { SerializedError } from '@reduxjs/toolkit';
 import { ONE_THOUSAND } from '@/constants/common';
 import {
   GENERIC_AXIOS_ERROR_CODE,
+  NOT_FOUND_AXIOS_ERROR_CODE,
   UNKNOWN_AXIOS_ERROR_CODE,
   UNKNOWN_ERROR,
 } from '@/utils/getErrorMessage/getErrorMessage.constants';
@@ -48,7 +49,8 @@ export const createErrorData = async (
       code &&
       code !== UNKNOWN_ERROR &&
       code !== UNKNOWN_AXIOS_ERROR_CODE &&
-      code !== GENERIC_AXIOS_ERROR_CODE
+      code !== GENERIC_AXIOS_ERROR_CODE &&
+      code !== NOT_FOUND_AXIOS_ERROR_CODE
     ) {
       try {
         javaStacktrace = (await axiosInstance.get<JavaStacktrace>(apiPath.getStacktrace(code))).data
diff --git a/src/utils/error-report/getErrorCode.ts b/src/utils/error-report/getErrorCode.ts
index 8a45368858b205cfa386ebe95cbd5fee9b86933c..df25ac8e84fcd7fd26e4a27b0b78c2fc4061770e 100644
--- a/src/utils/error-report/getErrorCode.ts
+++ b/src/utils/error-report/getErrorCode.ts
@@ -14,6 +14,9 @@ export const getErrorCode = (error: unknown): string => {
         } else if (typeof error.response.data === 'string') {
           code = JSON.parse(error.response.data)['error-id'];
         }
+        if (code === undefined || code === null) {
+          code = `${error.response.status}`;
+        }
       }
     } catch (e) {
       code = UNKNOWN_AXIOS_ERROR_CODE;
diff --git a/src/utils/getErrorMessage/getErrorMessage.constants.ts b/src/utils/getErrorMessage/getErrorMessage.constants.ts
index 406df75fa2ba21f30f8c457f3b559e8fb498a2f5..e6d05b2732652bf8ceb927f41c324af05b0526b8 100644
--- a/src/utils/getErrorMessage/getErrorMessage.constants.ts
+++ b/src/utils/getErrorMessage/getErrorMessage.constants.ts
@@ -1,5 +1,6 @@
 export const UNKNOWN_ERROR = 'An unknown error occurred. Please try again later.';
 export const UNKNOWN_AXIOS_ERROR_CODE = 'UNKNOWN_AXIOS_ERROR';
+export const NOT_FOUND_AXIOS_ERROR_CODE = '404';
 export const GENERIC_AXIOS_ERROR_CODE = 'ERR_BAD_REQUEST';
 
 export const HTTP_ERROR_MESSAGES = {