- Manage group default settings for a project integration
- Use instance or group default settings for a project integration
- Use custom settings for a project or group integration
- Available integrations
- Project webhooks
- Push hook limit
- SSL verification
- Related topics
Project integrations
You can integrate with external applications to add functionality to GitLab.
You can view and manage integrations for the:
You can use:
- Instance or group default settings for a project integration
- Custom settings for a project or group integration
Manage group default settings for a project integration
Prerequisites:
- You must have at least the Maintainer role for the group.
To manage the group default settings for a project integration:
- On the left sidebar, select Search or go to and find your group.
- Select Settings > Integrations.
- Select an integration.
- Complete the fields.
- Select Save changes.
If this is the first time you are setting up group settings for an integration:
- The integration is enabled for all subgroups and projects belonging to the group that don’t already have this integration configured, if you have the Enable integration toggle turned on in the group settings.
- Subgroups and projects that already have the integration configured are not affected, but can choose to use the inherited settings at any time.
When you make further changes to the group defaults:
- They are immediately applied to all subgroups and projects belonging to the group that have the integration set to use default settings.
- They are immediately applied to newer subgroups and projects, even those created after you last saved defaults for the integration. If your group default setting has the Enable integration toggle turned on, the integration is automatically enabled for all such subgroups and projects.
- Subgroups and projects with custom settings selected for the integration are not immediately affected and may choose to use the latest defaults at any time.
If instance settings have also been configured for the same integration, projects in the group inherit settings from the group.
Only the entire settings for an integration can be inherited. Per-field inheritance is proposed in epic 2137.
Remove a group default setting
Prerequisites:
- You must have at least the Maintainer role for the group.
To remove a group default setting:
- On the left sidebar, select Search or go to and find your group.
- Select Settings > Integrations.
- Select an integration.
- Select Reset and confirm.
Resetting a group default setting removes integrations that use default settings and belong to a project or subgroup of the group.
Use instance or group default settings for a project integration
Prerequisites:
- You must have at least the Maintainer role for the project.
To use instance or group default settings for a project integration:
- On the left sidebar, select Search or go to and find your project.
- Select Settings > Integrations.
- Select an integration.
- On the right, from the dropdown list, select Use default settings.
- Under Enable integration, ensure the Active checkbox is selected.
- Complete the fields.
- Select Save changes.
Use custom settings for a project or group integration
Prerequisites:
- You must have at least the Maintainer role for the project or group.
To use custom settings for a project or group integration:
- On the left sidebar, select Search or go to and find your project or group.
- Select Settings > Integrations.
- Select an integration.
- On the right, from the dropdown list, select Use custom settings.
- Under Enable integration, ensure the Active checkbox is selected.
- Complete the fields.
- Select Save changes.
Available integrations
The following integrations can be available on a GitLab instance. If an instance administrator has configured an integration allowlist, only those integrations are available.
Integration | Description | Integration hooks |
---|---|---|
Apple App Store Connect | Use GitLab to build and release an app in the Apple App Store. | No |
Asana | Add commit messages as comments to Asana tasks. | No |
Assembla | Manage projects with Assembla. | No |
Atlassian Bamboo | Run CI/CD pipelines with Atlassian Bamboo. | Yes |
Bugzilla | Use Bugzilla as an issue tracker. | No |
Beyond Identity | Verify that GPG keys are authorized by Beyond Identity Authenticator. | No |
Buildkite | Run CI/CD pipelines with Buildkite. | Yes |
Campfire | Connect Campfire to chat. | No |
ClickUp | Use ClickUp as an issue tracker. | No |
Confluence Workspace | Use Confluence Cloud Workspace as an internal wiki. | No |
Custom issue tracker | Use a custom issue tracker. | No |
Datadog | Trace your GitLab pipelines with Datadog. | Yes |
Diffblue Cover | Automatically write comprehensive, human-like Java unit tests. | No |
Discord Notifications | Send notifications about project events to a Discord channel. | No |
Drone | Run CI/CD pipelines with Drone. | Yes |
Emails on push | Send commits and diffs on push by email. | No |
Engineering Workflow Management (EWM) | Use EWM as an issue tracker. | No |
External wiki | Link an external wiki. | No |
GitGuardian | Reject commits based on GitGuardian policies. | No |
GitHub | Receive statuses for commits and pull requests. | No |
GitLab for Slack app | Use the native Slack app to receive notifications and run commands. | No |
Google Artifact Management | Manage your artifacts in Google Artifact Registry. | No |
Google Chat | Send notifications from your GitLab project to a space in Google Chat. | No |
Google Cloud IAM | Manage permissions for Google Cloud resources with Identity and Access Management (IAM). | No |
Google Play | Use GitLab to build and release an app in Google Play. | No |
Harbor | Use Harbor as the container registry for GitLab. | No |
irker (IRC gateway) | Send IRC messages. | No |
Jenkins | Run CI/CD pipelines with Jenkins. | Yes |
JetBrains TeamCity | Run CI/CD pipelines with TeamCity. | Yes |
JetBrains YouTrack | Use JetBrains YouTrack as your project’s issue tracker. | No |
Jira | Use Jira as an issue tracker. | No |
Matrix notifications | Send notifications about project events to Matrix. | No |
Mattermost notifications | Send notifications about project events to Mattermost channels. | No |
Mattermost slash commands | Run slash commands from a Mattermost chat environment. | No |
Microsoft Teams notifications | Receive event notifications in Microsoft Teams. | No |
Packagist | Update your PHP dependencies in Packagist. | Yes |
Phorge | Use Phorge as an issue tracker. | No |
Pipeline status emails | Send the pipeline status to a list of recipients by email. | No |
Pivotal Tracker | Add commit messages as comments to Pivotal Tracker stories. | No |
Pumble | Send event notifications to a Pumble channel. | No |
Pushover | Get real-time notifications on your device. | No |
Redmine | Use Redmine as an issue tracker. | No |
Slack slash commands | Run slash commands from a Slack chat environment. | No |
Squash TM | Update Squash TM requirements when GitLab issues are modified. | Yes |
Telegram | Send notifications about project events to Telegram. | No |
Unify Circuit | Send notifications about project events to Unify Circuit. | No |
Webex Teams | Receive event notifications in Webex Teams. | No |
Project webhooks
Some integrations use webhooks for external applications.
You can configure a project webhook to listen for specific events like pushes, issues, or merge requests. When the webhook is triggered, GitLab sends a POST request with data to a specified webhook URL.
For a list of integrations that use webhooks, see Available integrations.
Push hook limit
If a single push includes changes to more than three branches or tags, integrations
supported by push_hooks
and tag_push_hooks
events are not executed.
To change the number of supported branches or tags, configure the
push_event_hooks_limit
setting.
SSL verification
By default, the SSL certificate for outgoing HTTP requests is verified based on an internal list of certificate authorities. The SSL certificate cannot be self-signed.
You can disable SSL verification when you configure webhooks and some integrations.