GitLab

Connect GitLab to create issues from feedback automatically and review status changes when a linked GitLab issue is closed or reopened.

JM
James Morton
Written By James MortonLast updated 8 days ago

Turn feedback into tracked issues. Automatically create GitLab issues when feedback arrives. When a linked issue is closed or reopened in GitLab, the change appears in Quackback for your team to review.

Note: On Quackback Cloud, integrations are available on the Business and Enterprise plans. Self-hosted installs include every integration.

Overview

The GitLab integration enables:

  • Create issues from feedback: automatically create a GitLab issue when new feedback is submitted
  • Status review: when a linked issue is closed or reopened in GitLab, the change appears in the integration's Sync history for a teammate to review
  • Rich descriptions: issues include the feedback text, the submitter's name, and a direct link back to your portal

Prerequisites

  • The Owner or Admin role in Quackback (or a custom role that can manage integrations)
  • A GitLab account with access to the target project
  • Self-hosted only: a GitLab OAuth application (created at User Settings > Applications, or on your own GitLab instance)

Self-hosted: create your GitLab app

Note: On Quackback Cloud, skip this section. Quackback provides the GitLab app for you, so you go straight to connecting.

Self-hosted instances connect through an app you create. Do this once before you connect.

Create a GitLab OAuth application

  1. Go to GitLab User Settings > Applications, or the same page on your own GitLab instance
  2. Create a new application
  3. Set the Redirect URI to your Quackback callback URL, https://your-quackback-domain/oauth/gitlab/callback
  4. Select the api scope
  5. Copy the Application ID and Secret

Save the app credentials in Quackback

  1. Go to Admin > Settings > Integrations > GitLab
  2. Enter the following credentials:

    • Application ID from your GitLab OAuth application
    • Secret from your GitLab OAuth application
    • GitLab instance URL, only if you use a self-hosted GitLab. Leave it blank for GitLab.com, or enter the base URL, such as https://gitlab.example.com

Setup

1. Connect your account

  1. Go to Admin > Settings > Integrations > GitLab
  2. Click Connect GitLab
  3. You'll be redirected to GitLab to authorize the application
  4. Review the permissions and click Authorize

2. Select a project

Back in Quackback:

  1. Choose the GitLab project where issues should be created
  2. Issues will be created in this project when new feedback is submitted

3. Configure status mappings

Map GitLab issue states to Quackback statuses:

GitLab state

Default mapping

opened

Open

closed

Closed

You can customize these mappings to match your workflow.

4. Test

  1. Submit test feedback to verify an issue is created in GitLab

Issue format

When feedback triggers issue creation, the GitLab issue includes:

  • Title: The feedback post title
  • Description: The submitter's name, the post content, and a link back to the post in Quackback

Status sync

Status sync uses a webhook that you add in GitLab. Quackback doesn't register it for you.

  1. In Quackback, turn on status sync for the integration. The Webhook URL and Signing secret appear.
  2. In your GitLab project, go to Settings > Webhooks and add a webhook with the Webhook URL.
  3. Paste the signing secret as the Secret token, and select Issues events.

When a linked issue's state changes:

  1. GitLab sends a webhook to Quackback
  2. The webhook is verified via the X-Gitlab-Token header
  3. If the issue state changed (opened, closed, or reopened), the change appears in Sync history for review. Quackback doesn't change the linked post's status on its own: update it yourself if the change applies

Note: Status sync responds to issue update, close, and reopen actions. Other issue changes (label updates, assignments) are ignored.

On post delete

When you delete a feedback post with a linked GitLab issue, the delete dialog shows a checkbox for each linked issue. A checked issue is added to the integration's Sync history for review. Quackback doesn't close it for you: open it in GitLab and close it there.

To pre-check this by default, enable the On post delete toggle in the GitLab integration settings. You can always override the default per delete.

Manage the integration

Pause

Temporarily stop the integration:

  1. Go to Admin > Settings > Integrations > GitLab
  2. Turn off Integration enabled
  3. Issue creation and status sync pause, but the connection remains

Reconnect

If you see connection errors:

  1. Click Disconnect, then Connect GitLab
  2. Re-authorize in GitLab

Disconnect

To fully remove the integration:

  1. Go to Admin > Settings > Integrations > GitLab
  2. Click Disconnect
  3. Confirm the action

Who is shown as the creator?

Quackback creates issues in GitLab as the account that connected the integration, so GitLab shows that person as the creator. To change the creator (for example, to a shared bot account), disconnect, sign in to GitLab as the other account, and connect again.

Troubleshooting

Issues not being created

  1. Check integration status: look for errors in settings
  2. Verify project selection: ensure a GitLab project is selected
  3. Check permissions: the connected account needs write access to the project

Status sync not working

  1. Check status mappings: ensure GitLab states are mapped to Quackback statuses
  2. Verify the webhook: the Webhook URL and secret in GitLab must match the values shown in Quackback, and Issues events must be selected
  3. Check project permissions: the connected account needs admin access to manage webhooks

Connection errors

  1. Click Disconnect, then Connect GitLab
  2. Re-authorize the app in GitLab

Was this helpful?

Your feedback shapes what we write next.