diff --git a/ExpressAPI/src/managers/GitlabManager.ts b/ExpressAPI/src/managers/GitlabManager.ts
index d5db3a56b7dc3896f046bc65a401a866766d80be..fc80949e8f8a4878cf3d891a3467c907ecd09c2a 100644
--- a/ExpressAPI/src/managers/GitlabManager.ts
+++ b/ExpressAPI/src/managers/GitlabManager.ts
@@ -111,6 +111,16 @@ class GitlabManager {
         return response.data;
     }
 
+    async addRepositoryBadge(repoId: number, linkUrl: string, imageUrl: string, name: string): Promise<GitlabMember> {
+        const response = await axios.post<GitlabMember>(this.getApiUrl(GitlabRoute.REPOSITORY_BADGES_ADD).replace('{{id}}', String(repoId)), {
+            link_url : linkUrl,
+            image_url: imageUrl,
+            name     : name
+        });
+
+        return response.data;
+    }
+
     async checkTemplateAccess(idOrNamespace: string, req: express.Request): Promise<StatusCodes> {
         // Get the Gitlab project and check if it have public or internal visibility
         try {