> ## Documentation Index
> Fetch the complete documentation index at: https://docs.incident.io/llms.txt
> Use this file to discover all available pages before exploring further.

# GitLab

## What our GitLab integration can do

1. **Export** [your incident follow-ups](/post-incident/follow-ups) **to GitLab**

You can export your follow-ups to GitLab. We'll sync the status of your tasks, so you can work in GitLab without worrying about updating statuses manually in incident.io!

<Tip>
  Use [auto-export follow-ups](/integrations/auto-export-follow-ups) to make sure all your follow-up tasks are tracked in GitLab
</Tip>

You'll see the option to export your follow-ups from the incident homepage:

<img src="https://mintcdn.com/incidentio-18bb4170/T7N4DImO02Rr9Lqz/images/help-centre/gitlab/screenshot-1.png?fit=max&auto=format&n=T7N4DImO02Rr9Lqz&q=85&s=a449138bbc9a4abb523fbb55de400d05" alt="" width="2512" height="1686" data-path="images/help-centre/gitlab/screenshot-1.png" />

2. **Link GitLab issues to your follow-ups.**

You can copy the reference of issues you already have and link them back to your incident.io follow-ups.

<img src="https://mintcdn.com/incidentio-18bb4170/T7N4DImO02Rr9Lqz/images/help-centre/gitlab/screenshot-2.png?fit=max&auto=format&n=T7N4DImO02Rr9Lqz&q=85&s=e357f63899bf6e0fe771d99eeccedec4" alt="" width="2512" height="1686" data-path="images/help-centre/gitlab/screenshot-2.png" />

3. **Attach GitLab Merge Requests to incidents from Slack**

You can attach GitLab MRs to your incident directly from the incident channel.

<img src="https://mintcdn.com/incidentio-18bb4170/T7N4DImO02Rr9Lqz/images/help-centre/gitlab/screenshot-3.png?fit=max&auto=format&n=T7N4DImO02Rr9Lqz&q=85&s=8a90120e661b36622526ee09848c1c05" alt="" width="1210" height="554" data-path="images/help-centre/gitlab/screenshot-3.png" />

4. **Attach GitLab MRs to incidents from GitLab**

You can also attach an MR by mentioning the incident number in the MR title or source branch.

<img src="https://mintcdn.com/incidentio-18bb4170/T7N4DImO02Rr9Lqz/images/help-centre/gitlab/screenshot-4.png?fit=max&auto=format&n=T7N4DImO02Rr9Lqz&q=85&s=5eef6d3c8e47883f89edfa158d9b78c3" alt="" width="1490" height="242" data-path="images/help-centre/gitlab/screenshot-4.png" />

5. **Post comments on GitLab issues via workflows**

Use [workflows](/workflows/getting-started) to automatically post internal comments on GitLab issues as incidents progress, keeping your team informed directly in GitLab.

## Setting Up

Adding GitLab to incident.io is simple.

<Warning>
  You'll need a GitLab top-level group owner to perform some of these steps.
</Warning>

#### 1. Create a Service Account user in GitLab

Follow [GitLab's guide to creating a service account](https://docs.gitlab.com/ee/user/profile/service_accounts.html#create-a-service-account).

We recommend using 'incident.io' for the `name`, since this will show up in the UI on issues and comments created by the integration.

<Info>
  Make sure the bot user has access to create and edit issues, and view and comment on merge requests in all relevant projects.
</Info>

We recommend assigning the `Reporter` role to your incident.io service account user.

<Warning>
  If connecting the GitLab integration for AI SRE you should instead assign the `Developer` role. This allows AI SRE to open Merge Requests when users request it.
</Warning>

See GitLab.com: [Permissions and roles](https://docs.gitlab.com/ee/user/permissions.html)

#### 2. Create a Personal Access Token

Follow [GitLab's guide here](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#create-a-service-account-personal-access-token-with-no-expiry-date).

For **scopes** the integration requires the `api` scope.

<img src="https://mintcdn.com/incidentio-18bb4170/zlumPOlPnxVi6d2G/images/help-centre/gitlab/screenshot-5.png?fit=max&auto=format&n=zlumPOlPnxVi6d2G&q=85&s=151893d49755e0d7a3032216a91530da" alt="image.png" width="2630" height="2334" data-path="images/help-centre/gitlab/screenshot-5.png" />

After generating the token, make sure to copy the token value for the next step!

#### 3. Connect the integration

Go to [Settings → Integrations](https://app.incident.io/~/settings/integrations), click on GitLab, then Connect.

<img src="https://mintcdn.com/incidentio-18bb4170/zlumPOlPnxVi6d2G/images/help-centre/gitlab/screenshot-6.png?fit=max&auto=format&n=zlumPOlPnxVi6d2G&q=85&s=3c1b321de7a81174fd8aab6c31c9d06b" alt="" width="2512" height="1686" data-path="images/help-centre/gitlab/screenshot-6.png" />

Paste in the access token created in step 2. and click **Connect**. That's it

<Info>
  For GitLab users to connect with their incident.io accounts, their GitLab public email must:

  1. Match their incident.io user email
  2. Be visible on their GitLab profile

  <img src="https://mintcdn.com/incidentio-18bb4170/zlumPOlPnxVi6d2G/images/help-centre/gitlab/screenshot-7.png?fit=max&auto=format&n=zlumPOlPnxVi6d2G&q=85&s=1bec58ab76916d8c526d9560ad6e93c1" alt="Screenshot 2025-06-09 at 08.45.05.png" width="894" height="232" data-path="images/help-centre/gitlab/screenshot-7.png" />
</Info>

If you're using self-managed GitLab, make sure traffic from [our IPs](/integrations/ip-allowlist) can reach your instance.

#### → Next up

We recommend adding a Group Hook in GitLab, which allows us to sync changes in GitLab back to incident.io. Read our [setup guide here](/integrations/gitlab-group-hook).

If you run into any issues, [get in touch](https://incident.io/community)
