diff --git a/templates/gitlab/alerta_gitlab.py b/templates/gitlab/alerta_gitlab.py
index fe23a07b0d4c1e0fac2837e6c76824766712c2dc..717c59ba5c1d55d49b45d5606ad83b03f232a9ff 100644
--- a/templates/gitlab/alerta_gitlab.py
+++ b/templates/gitlab/alerta_gitlab.py
@@ -1,7 +1,9 @@
-import gitlab
 import json
 import logging
-from alerta.plugins import PluginBase, app
+
+import gitlab
+from alerta.plugins import PluginBase
+from gitlab.v4.objects import Issue
 
 LOG = logging.getLogger('alerta.plugins')
 
@@ -15,15 +17,16 @@ class GitlabIssue(PluginBase):
     name = 'alerta-gitlab'
 
     def __init__(self):
+        super().__init__()
         self.headers = {'Private-Token': GITLAB_ACCESS_TOKEN}
 
-    def pre_receive(self, alert):
+    def pre_receive(self, alert, **kwargs):
         return alert
 
-    def post_receive(self, alert):
+    def post_receive(self, alert, **kwargs):
         return alert
 
-    def status_change(self, alert, status, text):
+    def status_change(self, alert, status, text, **kwargs):
         return alert, status, text
 
     def take_action(self, alert, action, text, **kwargs):
@@ -33,7 +36,11 @@ class GitlabIssue(PluginBase):
             LOG.info('Create GitLab issue for %s' % alert.environment)
             git = gitlab.Gitlab(GITLAB_URL, GITLAB_ACCESS_TOKEN, ssl_verify=True) # type: gitlab
             git.auth()
-            project = git.projects.get('ansible-inventories/hosts/{}/{}'.format(alert.environment, alert.origin.split('/').pop()))
+
+            if 'gitlab_project_id' in alert.attributes:
+                project = git.projects.get(alert.attributes['gitlab_project_id'])
+            else:
+                project = git.projects.get('ansible-inventories/hosts/{}/{}'.format(alert.environment, alert.origin.split('/').pop()))
 
             if project:
                 LOG.info('Project ID %s' % project.id)
@@ -48,8 +55,8 @@ class GitlabIssue(PluginBase):
                         raw_data = alert.raw_data
                     issue = project.issues.create({
                         'title': alert.text[0:128],
-                        'description': {}/alert/{}\n\nService: {}\n\nOrigin: {}\n\n```\n{}\n```\n.format(ALERTA_URL, alert.id, alert.service, alert.origin, raw_data)
-                    }) # type: gitlab.Issue
+                        'description': '{}/alert/{}\n\nService: {}\n\nOrigin: {}\n\n```\n{}\n```\n'.format(ALERTA_URL, alert.id, alert.service, alert.origin, raw_data)
+                    }) # type: Issue
                     alert.attributes['issue_iid'] = issue.id
                     alert.attributes['gitlabUrl'] = '<a href="{}" target="_blank">Issue #{}</a>'.format(
                         issue.web_url,
diff --git a/templates/gitlab/setup.py b/templates/gitlab/setup.py
index 02edd364413000e59ed94c7bb9c1fd338d6edfb3..82340915e0e4674bf9edc385b40f82dd444c823c 100644
--- a/templates/gitlab/setup.py
+++ b/templates/gitlab/setup.py
@@ -1,7 +1,7 @@
 
 from setuptools import find_packages, setup
 
-version = '1.2.0'
+version = '1.3.0'
 
 setup(
     name='alerta-gitlab',