diff --git a/ExpressAPI/src/app.ts b/ExpressAPI/src/app.ts
index 9ac8a0989d073e63e5ab1e160d3c889ff6d26dde..938043eccf882fe6b17e880e6eba87783060e8f0 100644
--- a/ExpressAPI/src/app.ts
+++ b/ExpressAPI/src/app.ts
@@ -5,8 +5,11 @@ require('dotenv').config();
 import WorkerRole     from './process/WorkerRole';
 import ClusterManager from './process/ClusterManager';
 import API            from './express/API';
+import HttpManager    from './managers/HttpManager';
 
 
+HttpManager.registerAxiosInterceptor();
+
 (new ClusterManager([ {
     role         : WorkerRole.API,
     quantity     : ClusterManager.CORES,
diff --git a/ExpressAPI/src/managers/HttpManager.ts b/ExpressAPI/src/managers/HttpManager.ts
new file mode 100644
index 0000000000000000000000000000000000000000..bd6af9397e56104fd444b9a7f7a60e1f7bde0514
--- /dev/null
+++ b/ExpressAPI/src/managers/HttpManager.ts
@@ -0,0 +1,54 @@
+import axios, { AxiosRequestHeaders } from 'axios';
+import Config                         from '../config/Config';
+import FormData                       from 'form-data';
+import logger                         from '../shared/logging/WinstonLogger';
+
+
+class HttpManager {
+    public handleCommandErrors: boolean = true;
+
+    private static _instance: HttpManager;
+
+    public static get instance(): HttpManager {
+        if ( !HttpManager._instance ) {
+            HttpManager._instance = new HttpManager();
+        }
+
+        return HttpManager._instance;
+    }
+
+    private constructor() { }
+
+    registerAxiosInterceptor() {
+        this.registerRequestInterceptor();
+        this.registerResponseInterceptor();
+    }
+
+    private registerRequestInterceptor() {
+        axios.interceptors.request.use((config) => {
+            if ( config.data instanceof FormData ) {
+                config.headers = { ...config.headers, ...(config.data as FormData).getHeaders() } as AxiosRequestHeaders;
+            }
+
+            if ( config.url && config.url.indexOf(Config.gitlab.apiURL) !== -1 ) {
+                config.headers['PRIVATE-TOKEN'] = Config.gitlab.account.token;
+            }
+
+            return config;
+        });
+    }
+
+    private registerResponseInterceptor() {
+        axios.interceptors.response.use((response) => {
+            return response;
+        }, (error) => {
+            logger.error(`${ JSON.stringify(error) }`);
+
+            return Promise.reject(error);
+        });
+    }
+}
+
+
+export default HttpManager.instance;
+