Airbrake

Monitoring

Airbyte

Monitoring

Prometheus Alertmanager

Monitoring

Ansible Tower

Deployment

AppFollow

Customer support

AppVeyor

Continuous integration

Asana

Project management

Assembla

(Hubot script)

Version control

AzureDevOps

Version control

Basecamp

Project management

Beanstalk

Version control

Beeminder

Miscellaneous

BigBlueButton

Communication

Bitbucket

(Enterprise)

Version control

Bitbucket

Version control

Bitbucket Server

Version control

Bonusly

(Hubot script)

Human resources

Buildbot

Continuous integration

Thinkst Canarytokens

Monitoring

Capistrano

Deployment

Chartbeat

(Hubot script)

Marketing

CircleCI

Continuous integration

Clubhouse

Project management

Codebase

Version control

Codeship

Continuous integration

Crashlytics

Monitoring

Dark Sky

(Hubot script)

Miscellaneous

Delighted

Customer support

Dialogflow

Customer support

Discourse

Communication

Dropbox

Productivity

Email

Communication

Errbit

Monitoring

Errbot

Integration frameworks

Flock

Customer support

Freshdesk

Customer support

Freshping

Monitoring

Freshstatus

Monitoring

Front

Customer support

GIPHY

Miscellaneous

Git

Version control

Gitea

Version control

GitHub

Version control

GitHub Actions

Continuous integration

GitHub Detail Bot

Version control

GitHub Sponsors

Financial

GitLab

Version control

GoCD

Continuous integration

Gogs

Version control

Google Calendar

Productivity

Google Translate

(Hubot script)

Miscellaneous

GoSquared

Marketing

Grafana

Monitoring

Greenhouse

Human resources

Groove

Customer support

Harbor

Deployment

HelloSign

Productivity

Hello World

Miscellaneous

Heroku

Deployment

Home Assistant

Miscellaneous

Hubot

Integration frameworks

IFTTT

Integration frameworks

Insping

Monitoring

Instagram

(Hubot script)

Miscellaneous

Intercom

Customer support

IRC

Communication

Jenkins

Continuous integration

Jira

Project management

Jira

(locally installed)

Project management

Jitsi Meet

Communication

Jotform

Miscellaneous

JSON formatter

Miscellaneous

Librato

Monitoring

Lidarr

Entertainment

Linear

Project management

Mailchimp

(Hubot script)

Communication

Mastodon

Communication

Matrix

Communication

Mention

Marketing

Mercurial (hg)

Version control

Nagios

Monitoring

Netlify

Continuous integration

New Relic

Monitoring

Notion

Productivity

Onyx

Productivity

Open Collective

Financial

OpenShift

Deployment

Opsgenie

Integration frameworks

PagerDuty

Monitoring

Papertrail

Monitoring

Patreon

Financial

Perforce

Version control

Phabricator

Version control

Pingdom

Monitoring

Pivotal Tracker

Project management

Puppet

Deployment

Radarr

Entertainment

Raygun

Monitoring

Redmine

Project management

Review Board

Version control

RhodeCode

Version control

RSS

Communication

Rundeck

Deployment

Semaphore

Continuous integration

Sentry

Monitoring

Slack

Communication

Slack-compatible webhook

Communication

SonarQube

Continuous integration

Sonarr

Entertainment

Splunk

Monitoring

Statuspage

Customer support

Stripe

Financial

Subversion

Version control

Taiga

Project management

Teamcity

Continuous integration

Thinkst

Monitoring

Trac

Project management

Transifex

Miscellaneous

Travis CI

Continuous integration

Trello

Project management

Twitter

Customer support

Updown

Monitoring

UptimeRobot

Monitoring

Wekan

Productivity

WordPress

Marketing

xkcd Bot

Interactive bots

YouTube

(Hubot script)

Miscellaneous

Zabbix

Monitoring

Zapier

Integration frameworks

Zendesk

Customer support

Zoom

Communication


Don't see an integration you need? We'd love to help.

Create your own or Request an integration
Back to list

GitLab

Version control

Zulip GitLab integration

Receive GitLab notifications in Zulip!

  1. Create a bot for GitLab. Make sure that you select Incoming webhook as the Bot type.

  2. Decide where to send GitLab notifications, and generate the integration URL. You'll be able to configure which branches you'll receive notifications from.

  3. Go to your repository on GitLab and click Settings on the left sidebar. Click on Integrations.

  4. Set URL to the URL you generated. Select the events you would like to receive notifications for, and click Add Webhook.

Note: If your GitLab server and your Zulip server are on a local network together, and you're running GitLab 10.5 or newer, you may need to enable GitLab's "Allow requests to the local network from hooks and services" setting (by default, recent GitLab versions refuse to post webhook events to servers on the local network). You can find this setting near the bottom of the GitLab "Settings" page in the "Admin area".

You're done! Your GitLab notifications may look like this:

Filtering incoming events

The GitLab integration supports filtering for the following events:

Push Hook, Tag Push Hook, Test Hook, Issue Hook open, Issue Hook close, Issue Hook reopen, Issue Hook update, Confidential Issue Hook open, Confidential Issue Hook close, Confidential Issue Hook reopen, Confidential Issue Hook update, Note Hook Commit, Note Hook MergeRequest, Note Hook Issue, Confidential Note Hook Issue, Note Hook Snippet, Merge Request Hook approved, Merge Request Hook unapproved, Merge Request Hook open, Merge Request Hook update, Merge Request Hook merge, Merge Request Hook close, Merge Request Hook reopen, Wiki Page Hook create, Wiki Page Hook update, Job Hook, Build Hook, Pipeline Hook, Release Hook

Configuration options

  • By default, the Zulip topics for merge requests will contain the title of the GitLab merge request. You can change the topic format to just contain the merge request ID by adding &use_merge_request_title=false to the generated URL.

Logos are trademarks of their respective owners. None of the integrations on this page are created by, affiliated with, or supported by the companies represented by the logos.