GitLab
Connect GitLab to create issues from feedback automatically and review status changes when a linked GitLab issue is closed or reopened.
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
- Go to GitLab User Settings > Applications, or the same page on your own GitLab instance
- Create a new application
- Set the Redirect URI to your Quackback callback URL,
https://your-quackback-domain/oauth/gitlab/callback - Select the
apiscope - Copy the Application ID and Secret
Save the app credentials in Quackback
- Go to Admin > Settings > Integrations > GitLab
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
- Go to Admin > Settings > Integrations > GitLab
- Click Connect GitLab
- You'll be redirected to GitLab to authorize the application
- Review the permissions and click Authorize
2. Select a project
Back in Quackback:
- Choose the GitLab project where issues should be created
- 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 |
|---|---|
| Open |
| Closed |
You can customize these mappings to match your workflow.
4. Test
- 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.
- In Quackback, turn on status sync for the integration. The Webhook URL and Signing secret appear.
- In your GitLab project, go to Settings > Webhooks and add a webhook with the Webhook URL.
- Paste the signing secret as the Secret token, and select Issues events.
When a linked issue's state changes:
- GitLab sends a webhook to Quackback
- The webhook is verified via the
X-Gitlab-Tokenheader - 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, andreopenactions. 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:
- Go to Admin > Settings > Integrations > GitLab
- Turn off Integration enabled
- Issue creation and status sync pause, but the connection remains
Reconnect
If you see connection errors:
- Click Disconnect, then Connect GitLab
- Re-authorize in GitLab
Disconnect
To fully remove the integration:
- Go to Admin > Settings > Integrations > GitLab
- Click Disconnect
- 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
- Check integration status: look for errors in settings
- Verify project selection: ensure a GitLab project is selected
- Check permissions: the connected account needs write access to the project
Status sync not working
- Check status mappings: ensure GitLab states are mapped to Quackback statuses
- Verify the webhook: the Webhook URL and secret in GitLab must match the values shown in Quackback, and Issues events must be selected
- Check project permissions: the connected account needs admin access to manage webhooks
Connection errors
- Click Disconnect, then Connect GitLab
- Re-authorize the app in GitLab
Related articles
- GitHub: GitHub issue integration
- Jira: Jira issue integration
- Integrations overview: All integrations
Was this helpful?
Your feedback shapes what we write next.
