Services API

Note: This API requires an access token with Maintainer or Owner permissions

Asana

Asana - Teamwork without email

Create/Edit Asana service

Set Asana service for a project.

This service adds commit messages as comments to Asana tasks. Once enabled, commit messages are checked for Asana task URLs (for example, https://app.asana.com/0/123456/987654) or task IDs starting with # (for example, #987654). Every task ID found will get the commit comment added to it. You can also close a task with a message containing: fix #123456. You can find your API Keys here: https://asana.com/developers/documentation/getting-started/auth#api-key.

PUT /projects/:id/services/asana

Parameters:

ParameterTypeRequiredDescription
api_keystringtrueUser API token. User must have access to task, all comments will be attributed to this user.
restrict_to_branchstringfalseComma-separated list of branches which will be automatically inspected. Leave blank to include all branches.
push_eventsbooleanfalseEnable notifications for push events

Delete Asana service

Delete Asana service for a project.

DELETE /projects/:id/services/asana

Get Asana service settings

Get Asana service settings for a project.

GET /projects/:id/services/asana

Assembla

Project Management Software (Source Commits Endpoint)

Create/Edit Assembla service

Set Assembla service for a project.

PUT /projects/:id/services/assembla

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueThe authentication token
subdomainstringfalseThe subdomain setting
push_eventsbooleanfalseEnable notifications for push events

Delete Assembla service

Delete Assembla service for a project.

DELETE /projects/:id/services/assembla

Get Assembla service settings

Get Assembla service settings for a project.

GET /projects/:id/services/assembla

Atlassian Bamboo CI

A continuous integration and build server

Create/Edit Atlassian Bamboo CI service

Set Atlassian Bamboo CI service for a project.

You must set up automatic revision labeling and a repository trigger in Bamboo.

PUT /projects/:id/services/bamboo

Parameters:

ParameterTypeRequiredDescription
bamboo_urlstringtrueBamboo root URL. For example, https://bamboo.example.com.
build_keystringtrueBamboo build plan key like KEY
usernamestringtrueA user with API access, if applicable
passwordstringtruePassword of the user
push_eventsbooleanfalseEnable notifications for push events

Delete Atlassian Bamboo CI service

Delete Atlassian Bamboo CI service for a project.

DELETE /projects/:id/services/bamboo

Get Atlassian Bamboo CI service settings

Get Atlassian Bamboo CI service settings for a project.

GET /projects/:id/services/bamboo

Bugzilla

Bugzilla Issue Tracker

Create/Edit Bugzilla service

Set Bugzilla service for a project.

PUT /projects/:id/services/bugzilla

Parameters:

ParameterTypeRequiredDescription
new_issue_urlstringtrueNew Issue url
issues_urlstringtrueIssue url
project_urlstringtrueProject url
descriptionstringfalseDescription
titlestringfalseTitle
push_eventsbooleanfalseEnable notifications for push events

Delete Bugzilla Service

Delete Bugzilla service for a project.

DELETE /projects/:id/services/bugzilla

Get Bugzilla Service Settings

Get Bugzilla service settings for a project.

GET /projects/:id/services/bugzilla

Buildkite

Continuous integration and deployments

Create/Edit Buildkite service

Set Buildkite service for a project.

PUT /projects/:id/services/buildkite

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueBuildkite project GitLab token
project_urlstringtruehttps://buildkite.com/example/project
enable_ssl_verificationbooleanfalseEnable SSL verification
push_eventsbooleanfalseEnable notifications for push events

Delete Buildkite service

Delete Buildkite service for a project.

DELETE /projects/:id/services/buildkite

Get Buildkite service settings

Get Buildkite service settings for a project.

GET /projects/:id/services/buildkite

Campfire

Simple web-based real-time group chat

Create/Edit Campfire service

Set Campfire service for a project.

PUT /projects/:id/services/campfire

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueCampfire token
subdomainstringfalseCampfire subdomain
roomstringfalseCampfire room
push_eventsbooleanfalseEnable notifications for push events

Delete Campfire service

Delete Campfire service for a project.

DELETE /projects/:id/services/campfire

Get Campfire service settings

Get Campfire service settings for a project.

GET /projects/:id/services/campfire

Unify Circuit

Unify Circuit RTC and collaboration tool.

Create/Edit Unify Circuit service

Set Unify Circuit service for a project.

PUT /projects/:id/services/unify-circuit

Parameters:

ParameterTypeRequiredDescription
webhookstringtrueThe Unify Circuit webhook. For example, https://circuit.com/rest/v2/webhooks/incoming/....
notify_only_broken_pipelinesbooleanfalseSend notifications for broken pipelines
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
push_eventsbooleanfalseEnable notifications for push events
issues_eventsbooleanfalseEnable notifications for issue events
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events
note_eventsbooleanfalseEnable notifications for note events
confidential_note_eventsbooleanfalseEnable notifications for confidential note events
pipeline_eventsbooleanfalseEnable notifications for pipeline events
wiki_page_eventsbooleanfalseEnable notifications for wiki page events

Delete Unify Circuit service

Delete Unify Circuit service for a project.

DELETE /projects/:id/services/unify-circuit

Get Unify Circuit service settings

Get Unify Circuit service settings for a project.

GET /projects/:id/services/unify-circuit

Custom Issue Tracker

Custom issue tracker

Create/Edit Custom Issue Tracker service

Set Custom Issue Tracker service for a project.

PUT /projects/:id/services/custom-issue-tracker

Parameters:

ParameterTypeRequiredDescription
new_issue_urlstringtrueNew Issue url
issues_urlstringtrueIssue url
project_urlstringtrueProject url
descriptionstringfalseDescription
titlestringfalseTitle
push_eventsbooleanfalseEnable notifications for push events

Delete Custom Issue Tracker service

Delete Custom Issue Tracker service for a project.

DELETE /projects/:id/services/custom-issue-tracker

Get Custom Issue Tracker service settings

Get Custom Issue Tracker service settings for a project.

GET /projects/:id/services/custom-issue-tracker

Drone CI

Drone is a Continuous Integration platform built on Docker, written in Go

Create/Edit Drone CI service

Set Drone CI service for a project.

PUT /projects/:id/services/drone-ci

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueDrone CI project specific token
drone_urlstringtruehttp://drone.example.com
enable_ssl_verificationbooleanfalseEnable SSL verification
push_eventsbooleanfalseEnable notifications for push events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events

Delete Drone CI service

Delete Drone CI service for a project.

DELETE /projects/:id/services/drone-ci

Get Drone CI service settings

Get Drone CI service settings for a project.

GET /projects/:id/services/drone-ci

Emails on push

Email the commits and diff of each push to a list of recipients.

Create/Edit Emails on push service

Set Emails on push service for a project.

PUT /projects/:id/services/emails-on-push

Parameters:

ParameterTypeRequiredDescription
recipientsstringtrueEmails separated by whitespace
disable_diffsbooleanfalseDisable code diffs
send_from_committer_emailbooleanfalseSend from committer
push_eventsbooleanfalseEnable notifications for push events
tag_push_eventsbooleanfalseEnable notifications for tag push events

Delete Emails on push service

Delete Emails on push service for a project.

DELETE /projects/:id/services/emails-on-push

Get Emails on push service settings

Get Emails on push service settings for a project.

GET /projects/:id/services/emails-on-push

External Wiki

Replaces the link to the internal wiki with a link to an external wiki.

Create/Edit External Wiki service

Set External Wiki service for a project.

PUT /projects/:id/services/external-wiki

Parameters:

ParameterTypeRequiredDescription
external_wiki_urlstringtrueThe URL of the external Wiki

Delete External Wiki service

Delete External Wiki service for a project.

DELETE /projects/:id/services/external-wiki

Get External Wiki service settings

Get External Wiki service settings for a project.

GET /projects/:id/services/external-wiki

Flowdock

Flowdock is a collaboration web app for technical teams.

Create/Edit Flowdock service

Set Flowdock service for a project.

PUT /projects/:id/services/flowdock

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueFlowdock Git source token
push_eventsbooleanfalseEnable notifications for push events

Delete Flowdock service

Delete Flowdock service for a project.

DELETE /projects/:id/services/flowdock

Get Flowdock service settings

Get Flowdock service settings for a project.

GET /projects/:id/services/flowdock

GitHub

Code collaboration software.

Create/Edit GitHub service

Set GitHub service for a project.

PUT /projects/:id/services/github

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueGitHub API token with repo:status OAuth scope
repository_urlstringtrueGitHub repository URL
static_contextbooleanfalseAppend instance name instead of branch to status check name

Delete GitHub service

Delete GitHub service for a project.

DELETE /projects/:id/services/github

Get GitHub service settings

Get GitHub service settings for a project.

GET /projects/:id/services/github

Hangouts Chat

Google GSuite team collaboration tool.

Note: This service was introduced in v11.2

Create/Edit Hangouts Chat service

Set Hangouts Chat service for a project.

PUT /projects/:id/services/hangouts-chat

Note: Specific event parameters (e.g. push_events flag) were introduced in v10.4

Parameters:

ParameterTypeRequiredDescription
webhookstringtrueThe Hangouts Chat webhook. For example, https://chat.googleapis.com/v1/spaces....
notify_only_broken_pipelinesbooleanfalseSend notifications for broken pipelines
notify_only_default_branchbooleanfalseDEPRECATED: This parameter has been replaced with branches_to_be_notified
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
push_eventsbooleanfalseEnable notifications for push events
issues_eventsbooleanfalseEnable notifications for issue events
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events
note_eventsbooleanfalseEnable notifications for note events
confidential_note_eventsbooleanfalseEnable notifications for confidential note events
pipeline_eventsbooleanfalseEnable notifications for pipeline events
wiki_page_eventsbooleanfalseEnable notifications for wiki page events

Delete Hangouts Chat service

Delete Hangouts Chat service for a project.

DELETE /projects/:id/services/hangouts-chat

Get Hangouts Chat service settings

Get Hangouts Chat service settings for a project.

GET /projects/:id/services/hangouts-chat

HipChat

Private group chat and IM

Create/Edit HipChat service

Set HipChat service for a project.

PUT /projects/:id/services/hipchat

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueRoom token
colorstringfalseThe room color
notifybooleanfalseEnable notifications
roomstringfalseRoom name or ID
api_versionstringfalseLeave blank for default (v2)
serverstringfalseLeave blank for default. For example, https://hipchat.example.com.
push_eventsbooleanfalseEnable notifications for push events
issues_eventsbooleanfalseEnable notifications for issue events
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events
note_eventsbooleanfalseEnable notifications for note events
confidental_note_eventsbooleanfalseEnable notifications for confidential note events
pipeline_eventsbooleanfalseEnable notifications for pipeline events

Delete HipChat service

Delete HipChat service for a project.

DELETE /projects/:id/services/hipchat

Get HipChat service settings

Get HipChat service settings for a project.

GET /projects/:id/services/hipchat

Irker (IRC gateway)

Send IRC messages, on update, to a list of recipients through an Irker gateway.

Create/Edit Irker (IRC gateway) service

Set Irker (IRC gateway) service for a project.

Irker does NOT have built-in authentication, which makes it vulnerable to spamming IRC channels if it is hosted outside of a firewall. Please make sure you run the daemon within a secured network to prevent abuse. For more details, read: http://www.catb.org/~esr/irker/security.html.
PUT /projects/:id/services/irker

Parameters:

ParameterTypeRequiredDescription
recipientsstringtrueRecipients/channels separated by whitespaces
default_irc_uristringfalseirc://irc.network.net:6697/
server_hoststringfalselocalhost
server_portintegerfalse6659
colorize_messagesbooleanfalseColorize messages
push_eventsbooleanfalseEnable notifications for push events

Delete Irker (IRC gateway) service

Delete Irker (IRC gateway) service for a project.

DELETE /projects/:id/services/irker

Get Irker (IRC gateway) service settings

Get Irker (IRC gateway) service settings for a project.

GET /projects/:id/services/irker

Jira

Jira issue tracker.

Get Jira service settings

Get Jira service settings for a project.

GET /projects/:id/services/jira

Create/Edit Jira service

Set Jira service for a project.

Starting with GitLab 8.14, api_url, issues_url, new_issue_url and project_url are replaced by url. If you are using an older version, follow this documentation.

PUT /projects/:id/services/jira

Parameters:

ParameterTypeRequiredDescription
urlstringyesThe URL to the Jira project which is being linked to this GitLab project. For example, https://jira.example.com.
api_urlstringnoThe base URL to the Jira instance API. Web URL value will be used if not set. For example, https://jira-api.example.com.
usernamestringyesThe username of the user created to be used with GitLab/Jira.
passwordstringyesThe password of the user created to be used with GitLab/Jira.
activebooleannoActivates or deactivates the service. Defaults to false (deactivated).
jira_issue_transition_idstringnoThe ID of a transition that moves issues to a closed state. You can find this number under the Jira workflow administration (Administration > Issues > Workflows) by selecting View under Operations of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the Transitions (id) column. By default, this ID is set to 2.
commit_eventsbooleanfalseEnable notifications for commit events
merge_requests_eventsbooleanfalseEnable notifications for merge request events

Delete Jira service

Remove all previously Jira settings from a project.

DELETE /projects/:id/services/jira

Slack slash commands

Ability to receive slash commands from a Slack chat instance.

Get Slack slash command service settings

Get Slack slash command service settings for a project.

GET /projects/:id/services/slack-slash-commands

Example response:

{
  "id": 4,
  "title": "Slack slash commands",
  "created_at": "2017-06-27T05:51:39-07:00",
  "updated_at": "2017-06-27T05:51:39-07:00",
  "active": true,
  "push_events": true,
  "issues_events": true,
  "confidential_issues_events": true,
  "merge_requests_events": true,
  "tag_push_events": true,
  "note_events": true,
  "job_events": true,
  "pipeline_events": true,
  "properties": {
    "token": "<your_access_token>"
  }
}

Create/Edit Slack slash command service

Set Slack slash command for a project.

PUT /projects/:id/services/slack-slash-commands

Parameters:

ParameterTypeRequiredDescription
tokenstringyesThe Slack token

Delete Slack slash command service

Delete Slack slash command service for a project.

DELETE /projects/:id/services/slack-slash-commands

Mattermost slash commands

Ability to receive slash commands from a Mattermost chat instance.

Get Mattermost slash command service settings

Get Mattermost slash command service settings for a project.

GET /projects/:id/services/mattermost-slash-commands

Create/Edit Mattermost slash command service

Set Mattermost slash command for a project.

PUT /projects/:id/services/mattermost-slash-commands

Parameters:

ParameterTypeRequiredDescription
tokenstringyesThe Mattermost token
usernamestringnoThe username to use to post the message

Delete Mattermost slash command service

Delete Mattermost slash command service for a project.

DELETE /projects/:id/services/mattermost-slash-commands

Packagist

Update your project on Packagist, the main Composer repository, when commits or tags are pushed to GitLab.

Create/Edit Packagist service

Set Packagist service for a project.

PUT /projects/:id/services/packagist

Parameters:

ParameterTypeRequiredDescription
usernamestringyesThe username of a Packagist account
tokenstringyesAPI token to the Packagist server
serverbooleannoURL of the Packagist server. Leave blank for default: https://packagist.org
push_eventsbooleanfalseEnable notifications for push events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events

Delete Packagist service

Delete Packagist service for a project.

DELETE /projects/:id/services/packagist

Get Packagist service settings

Get Packagist service settings for a project.

GET /projects/:id/services/packagist

Pipeline-Emails

Get emails for GitLab CI pipelines.

Create/Edit Pipeline-Emails service

Set Pipeline-Emails service for a project.

PUT /projects/:id/services/pipelines-email

Parameters:

ParameterTypeRequiredDescription
recipientsstringyesComma-separated list of recipient email addresses
add_pusherbooleannoAdd pusher to recipients list
notify_only_broken_pipelinesbooleannoNotify only broken pipelines
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
notify_only_default_branchbooleannoSend notifications only for the default branch (introduced in GitLab 12.0)
pipeline_eventsbooleanfalseEnable notifications for pipeline events

Delete Pipeline-Emails service

Delete Pipeline-Emails service for a project.

DELETE /projects/:id/services/pipelines-email

Get Pipeline-Emails service settings

Get Pipeline-Emails service settings for a project.

GET /projects/:id/services/pipelines-email

PivotalTracker

Project Management Software (Source Commits Endpoint)

Create/Edit PivotalTracker service

Set PivotalTracker service for a project.

PUT /projects/:id/services/pivotaltracker

Parameters:

ParameterTypeRequiredDescription
tokenstringtrueThe PivotalTracker token
restrict_to_branchbooleanfalseComma-separated list of branches which will be automatically inspected. Leave blank to include all branches.
push_eventsbooleanfalseEnable notifications for push events

Delete PivotalTracker service

Delete PivotalTracker service for a project.

DELETE /projects/:id/services/pivotaltracker

Get PivotalTracker service settings

Get PivotalTracker service settings for a project.

GET /projects/:id/services/pivotaltracker

Prometheus

Prometheus is a powerful time-series monitoring service.

Create/Edit Prometheus service

Set Prometheus service for a project.

PUT /projects/:id/services/prometheus

Parameters:

ParameterTypeRequiredDescription
api_urlstringtruePrometheus API Base URL. For example, http://prometheus.example.com/.

Delete Prometheus service

Delete Prometheus service for a project.

DELETE /projects/:id/services/prometheus

Get Prometheus service settings

Get Prometheus service settings for a project.

GET /projects/:id/services/prometheus

Pushover

Pushover makes it easy to get real-time notifications on your Android device, iPhone, iPad, and Desktop.

Create/Edit Pushover service

Set Pushover service for a project.

PUT /projects/:id/services/pushover

Parameters:

ParameterTypeRequiredDescription
api_keystringtrueYour application key
user_keystringtrueYour user key
prioritystringtrueThe priority
devicestringfalseLeave blank for all active devices
soundstringfalseThe sound of the notification
push_eventsbooleanfalseEnable notifications for push events

Delete Pushover service

Delete Pushover service for a project.

DELETE /projects/:id/services/pushover

Get Pushover service settings

Get Pushover service settings for a project.

GET /projects/:id/services/pushover

Redmine

Redmine issue tracker

Create/Edit Redmine service

Set Redmine service for a project.

PUT /projects/:id/services/redmine

Parameters:

ParameterTypeRequiredDescription
new_issue_urlstringtrueNew Issue url
project_urlstringtrueProject url
issues_urlstringtrueIssue url
descriptionstringfalseDescription
push_eventsbooleanfalseEnable notifications for push events

Delete Redmine service

Delete Redmine service for a project.

DELETE /projects/:id/services/redmine

Get Redmine service settings

Get Redmine service settings for a project.

GET /projects/:id/services/redmine

Slack notifications

Receive event notifications in Slack

Create/Edit Slack service

Set Slack service for a project.

PUT /projects/:id/services/slack

Note: Specific event parameters (e.g. push_events flag and push_channel) were introduced in v10.4

Parameters:

ParameterTypeRequiredDescription
webhookstringtruehttps://hooks.slack.com/services/...
usernamestringfalseusername
channelstringfalseDefault channel to use if others are not configured
notify_only_broken_pipelinesbooleanfalseSend notifications for broken pipelines
notify_only_default_branchbooleanfalseDEPRECATED: This parameter has been replaced with branches_to_be_notified
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
commit_eventsbooleanfalseEnable notifications for commit events
confidential_issue_channelstringfalseThe name of the channel to receive confidential issues events notifications
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
confidential_note_channelstringfalseThe name of the channel to receive confidential note events notifications
confidential_note_eventsbooleanfalseEnable notifications for confidential note events
deployment_channelstringfalseThe name of the channel to receive deployment events notifications
deployment_eventsbooleanfalseEnable notifications for deployment events
issue_channelstringfalseThe name of the channel to receive issues events notifications
issues_eventsbooleanfalseEnable notifications for issue events
job_eventsbooleanfalseEnable notifications for job events
merge_request_channelstringfalseThe name of the channel to receive merge request events notifications
merge_requests_eventsbooleanfalseEnable notifications for merge request events
note_channelstringfalseThe name of the channel to receive note events notifications
note_eventsbooleanfalseEnable notifications for note events
pipeline_channelstringfalseThe name of the channel to receive pipeline events notifications
pipeline_eventsbooleanfalseEnable notifications for pipeline events
push_channelstringfalseThe name of the channel to receive push events notifications
push_eventsbooleanfalseEnable notifications for push events
tag_push_channelstringfalseThe name of the channel to receive tag push events notifications
tag_push_eventsbooleanfalseEnable notifications for tag push events
wiki_page_channelstringfalseThe name of the channel to receive wiki page events notifications
wiki_page_eventsbooleanfalseEnable notifications for wiki page events

Delete Slack service

Delete Slack service for a project.

DELETE /projects/:id/services/slack

Get Slack service settings

Get Slack service settings for a project.

GET /projects/:id/services/slack

Microsoft Teams

Group Chat Software

Create/Edit Microsoft Teams service

Set Microsoft Teams service for a project.

PUT /projects/:id/services/microsoft-teams

Parameters:

ParameterTypeRequiredDescription
webhookstringtrueThe Microsoft Teams webhook. For example, https://outlook.office.com/webhook/...
notify_only_broken_pipelinesbooleanfalseSend notifications for broken pipelines
notify_only_default_branchbooleanfalseDEPRECATED: This parameter has been replaced with branches_to_be_notified
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
push_eventsbooleanfalseEnable notifications for push events
issues_eventsbooleanfalseEnable notifications for issue events
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events
note_eventsbooleanfalseEnable notifications for note events
confidental_note_eventsbooleanfalseEnable notifications for confidential note events
pipeline_eventsbooleanfalseEnable notifications for pipeline events
wiki_page_eventsbooleanfalseEnable notifications for wiki page events

Delete Microsoft Teams service

Delete Microsoft Teams service for a project.

DELETE /projects/:id/services/microsoft-teams

Get Microsoft Teams service settings

Get Microsoft Teams service settings for a project.

GET /projects/:id/services/microsoft-teams

Mattermost notifications

Receive event notifications in Mattermost

Create/Edit Mattermost notifications service

Set Mattermost service for a project.

PUT /projects/:id/services/mattermost

Note: Specific event parameters (e.g. push_events flag and push_channel) were introduced in v10.4

Parameters:

ParameterTypeRequiredDescription
webhookstringtrueThe Mattermost webhook. For example, http://mattermost_host/hooks/...
usernamestringfalseusername
channelstringfalseDefault channel to use if others are not configured
notify_only_broken_pipelinesbooleanfalseSend notifications for broken pipelines
notify_only_default_branchbooleanfalseDEPRECATED: This parameter has been replaced with branches_to_be_notified
branches_to_be_notifiedstringallBranches to send notifications for. Valid options are “all”, “default”, “protected”, and “default_and_protected”
push_eventsbooleanfalseEnable notifications for push events
issues_eventsbooleanfalseEnable notifications for issue events
confidential_issues_eventsbooleanfalseEnable notifications for confidential issue events
merge_requests_eventsbooleanfalseEnable notifications for merge request events
tag_push_eventsbooleanfalseEnable notifications for tag push events
note_eventsbooleanfalseEnable notifications for note events
confidential_note_eventsbooleanfalseEnable notifications for confidential note events
pipeline_eventsbooleanfalseEnable notifications for pipeline events
wiki_page_eventsbooleanfalseEnable notifications for wiki page events
push_channelstringfalseThe name of the channel to receive push events notifications
issue_channelstringfalseThe name of the channel to receive issues events notifications
confidential_issue_channelstringfalseThe name of the channel to receive confidential issues events notifications
merge_request_channelstringfalseThe name of the channel to receive merge request events notifications
note_channelstringfalseThe name of the channel to receive note events notifications
confidential_note_channelbooleanThe name of the channel to receive confidential note events notifications 
tag_push_channelstringfalseThe name of the channel to receive tag push events notifications
pipeline_channelstringfalseThe name of the channel to receive pipeline events notifications
wiki_page_channelstringfalseThe name of the channel to receive wiki page events notifications

Delete Mattermost notifications service

Delete Mattermost Notifications service for a project.

DELETE /projects/:id/services/mattermost

Get Mattermost notifications service settings

Get Mattermost notifications service settings for a project.

GET /projects/:id/services/mattermost

JetBrains TeamCity CI

A continuous integration and build server

Create/Edit JetBrains TeamCity CI service

Set JetBrains TeamCity CI service for a project.

The build configuration in Teamcity must use the build format number %build.vcs.number% you will also want to configure monitoring of all branches so merge requests build, that setting is in the vsc root advanced settings.

PUT /projects/:id/services/teamcity

Parameters:

ParameterTypeRequiredDescription
teamcity_urlstringtrueTeamCity root URL. For example, https://teamcity.example.com
build_typestringtrueBuild configuration ID
usernamestringtrueA user with permissions to trigger a manual build
passwordstringtrueThe password of the user
push_eventsbooleanfalseEnable notifications for push events

Delete JetBrains TeamCity CI service

Delete JetBrains TeamCity CI service for a project.

DELETE /projects/:id/services/teamcity

Get JetBrains TeamCity CI service settings

Get JetBrains TeamCity CI service settings for a project.

GET /projects/:id/services/teamcity

Jenkins CI

A continuous integration and build server

Create/Edit Jenkins CI service

Set Jenkins CI service for a project.

PUT /projects/:id/services/jenkins

Parameters:

  • jenkins_url (required) - Jenkins URL like http://jenkins.example.com
  • project_name (required) - The URL-friendly project name. Example: my_project_name
  • username (optional) - A user with access to the Jenkins server, if applicable
  • password (optional) - The password of the user

Delete Jenkins CI service

Delete Jenkins CI service for a project.

DELETE /projects/:id/services/jenkins

Get Jenkins CI service settings

Get Jenkins CI service settings for a project.

GET /projects/:id/services/jenkins

Jenkins CI (Deprecated) Service

A continuous integration and build server

Create/Edit Jenkins CI (Deprecated) service

Set Jenkins CI (Deprecated) service for a project.

PUT /projects/:id/services/jenkins-deprecated

Parameters:

  • project_url (required) - Jenkins project URL like http://jenkins.example.com/job/my-project/
  • multiproject_enabled (optional) - Multi-project mode is configured in Jenkins GitLab Hook plugin
  • pass_unstable (optional) - Unstable builds will be treated as passing

Delete Jenkins CI (Deprecated) service

Delete Jenkins CI (Deprecated) service for a project.

DELETE /projects/:id/services/jenkins-deprecated

Get Jenkins CI (Deprecated) service settings

Get Jenkins CI (Deprecated) service settings for a project.

GET /projects/:id/services/jenkins-deprecated

MockCI

Mock an external CI. See gitlab-org/gitlab-mock-ci-service for an example of a companion mock service.

This service is only available when your environment is set to development.

Create/Edit MockCI service

Set MockCI service for a project.

PUT /projects/:id/services/mock-ci

Parameters:

ParameterTypeRequiredDescription
mock_service_urlstringtruehttp://localhost:4004

Delete MockCI service

Delete MockCI service for a project.

DELETE /projects/:id/services/mock-ci

Get MockCI service settings

Get MockCI service settings for a project.

GET /projects/:id/services/mock-ci

YouTrack

YouTrack issue tracker

Create/Edit YouTrack service

Set YouTrack service for a project.

PUT /projects/:id/services/youtrack

Parameters:

ParameterTypeRequiredDescription
issues_urlstringtrueIssue url
project_urlstringtrueProject url
descriptionstringfalseDescription
push_eventsbooleanfalseEnable notifications for push events

Delete YouTrack Service

Delete YouTrack service for a project.

DELETE /projects/:id/services/youtrack

Get YouTrack Service Settings

Get YouTrack service settings for a project.

GET /projects/:id/services/youtrack