Product Update31 May 20264 min read

GitLab + Decuga: Merge Requests Linked to Sprint Tasks Automatically

Connect your GitLab project to Decuga in minutes. Branches, commits and MRs link to tasks automatically - no access token needed, just a webhook secret.

GitLab teams deserve the same dev-loop closure

The GitHub integration shipped last week. This week, the same feature is live for GitLab. If your team runs GitLab - self-hosted or gitlab.com - you can now connect any project repository to Decuga and get automatic task transitions and review sub-tasks on every merge request, with zero configuration overhead.

How it works

GitLab sends a webhook event to Decuga on every push and merge request action. Decuga scans the branch name, commit messages, and MR title for task codes (e.g. PROJ-42) and links the artefact to the matching task. Push a branch → task moves to In Progress. Open an MR → a "Review MR" sub-task is created under the parent task, assigned to the MR assignee. Merge or close the MR → the link card updates.

Dev pushes branch
Task → In Progress
Dev opens MR
Review sub-task created
MR merged
Link state → Merged

No access token required

For manual setup, Decuga does not need a GitLab access token. All the data we need - branch name, commits, MR title, assignee login, project path - is delivered in the webhook payload itself. The only thing you configure is a webhook secret that authenticates incoming events. This keeps the setup simple and means you have one fewer credential to rotate.

What Decuga needsHow it arrives
Repository namepayload → project.path_with_namespace
Branch namepayload → ref (push event)
Commit messages + SHAspayload → commits[]
MR title, number, URLpayload → object_attributes
Assignee usernamepayload → assignee.username
Webhook authenticityX-Gitlab-Token header (secret you choose)

Setup in two steps

The manual setup takes under two minutes: nothing to install, no OAuth to complete, and no token to generate on GitLab. (Prefer fewer clicks? See the one-click option below.)

Install in Decuga

Integrations → Connections → Connect GitLab. Enter a webhook secret (any random string). Copy the Webhook URL.

Add webhook on GitLab

Project → Settings → Webhooks. Paste the URL and the same secret token. Enable Push events and Merge request events.

Push a test branch

Include a task code (e.g. PROJ-1) in the branch name and watch the Development section appear on the task within seconds.

Update: one-click connect for GitLab

Setup got even shorter. Click Connect with GitLab, approve access on gitlab.com, then tick the projects you want - Decuga creates the webhooks for you. Existing manual webhooks are adopted rather than duplicated, and a GitLab project can feed several Decuga projects since each one has its own webhook and secret. One-click setup needs Maintainer access on the GitLab project and currently supports gitlab.com; self-hosted GitLab keeps using the manual steps above.

MR vs PR - what changes

GitLab calls them Merge Requests; Decuga shows them labelled as "PR / MR" in the Development panel to make the UI consistent across providers. The review sub-task is titled "Review MR: …" instead of "Review PR: …". Everything else - state tracking (open → merged/closed), task code detection, deduplication - works identically to the GitHub integration.

Self-hosted GitLab

The integration works with self-hosted GitLab instances as long as your instance can reach the Decuga webhook endpoint (decuga.com). No additional configuration is needed.

Ready to try Decuga?

Start free - no account or credit card required. One week free trial of the Business plan.

Start free trial