Services API (FREE)
NOTE: This API requires an access token with the Maintainer or Owner role.
List all active services
Introduced in GitLab 12.7.
Get a list of all active project services.
GET /projects/:id/services
Example response:
[
{
"id": 75,
"title": "Jenkins CI",
"slug": "jenkins",
"created_at": "2019-11-20T11:20:25.297Z",
"updated_at": "2019-11-20T12:24:37.498Z",
"active": true,
"commit_events": true,
"push_events": true,
"issues_events": true,
"confidential_issues_events": true,
"merge_requests_events": true,
"tag_push_events": false,
"note_events": true,
"confidential_note_events": true,
"pipeline_events": true,
"wiki_page_events": true,
"job_events": true,
"comment_on_event_enabled": true
},
{
"id": 76,
"title": "Alerts endpoint",
"slug": "alerts",
"created_at": "2019-11-20T11:20:25.297Z",
"updated_at": "2019-11-20T12:24:37.498Z",
"active": true,
"commit_events": true,
"push_events": true,
"issues_events": true,
"confidential_issues_events": true,
"merge_requests_events": true,
"tag_push_events": true,
"note_events": true,
"confidential_note_events": true,
"pipeline_events": true,
"wiki_page_events": true,
"job_events": true,
"comment_on_event_enabled": true
}
]
Asana
Add commit messages as comments to Asana tasks.
See also the Asana service documentation.
Create/Edit Asana service
Set Asana service for a project.
PUT /projects/:id/services/asana
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
api_key |
string | true | User API token. User must have access to task. All comments are attributed to this user. |
restrict_to_branch |
string | false | Comma-separated list of branches to be are automatically inspected. Leave blank to include all branches. |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | The authentication token |
subdomain |
string | false | The subdomain setting |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
bamboo_url |
string | true | Bamboo root URL. For example, https://bamboo.example.com . |
build_key |
string | true | Bamboo build plan key like KEY |
username |
string | true | A user with API access, if applicable |
password |
string | true | Password of the user |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
new_issue_url |
string | true | New Issue URL |
issues_url |
string | true | Issue URL |
project_url |
string | true | Project URL |
description |
string | false | Description |
title |
string | false | Title |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | Buildkite project GitLab token |
project_url |
string | true | Pipeline URL. For example, https://buildkite.com/example/pipeline
|
enable_ssl_verification |
boolean | false | DEPRECATED: This parameter has no effect since SSL verification is always enabled |
push_events |
boolean | false | Enable 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
Send notifications about push events to Campfire chat rooms. New users can no longer sign up for Campfire.
Create/Edit Campfire service
Set Campfire service for a project.
PUT /projects/:id/services/campfire
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | Campfire API token. To find it, log into Campfire and select My info. |
subdomain |
string | false | Campfire subdomain. Text between https:// and .campfirenow.com when you're logged in. |
room |
string | false | Campfire room. The last part of the URL when you're in a room. |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | The Unify Circuit webhook. For example, https://circuit.com/rest/v2/webhooks/incoming/... . |
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
push_events |
boolean | false | Enable notifications for push events |
issues_events |
boolean | false | Enable notifications for issue events |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
note_events |
boolean | false | Enable notifications for note events |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
wiki_page_events |
boolean | false | Enable 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
Webex Teams
Webex Teams collaboration tool.
Create/Edit Webex Teams service
Set Webex Teams service for a project.
PUT /projects/:id/services/webex-teams
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | The Webex Teams webhook. For example, https://api.ciscospark.com/v1/webhooks/incoming/... . |
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
push_events |
boolean | false | Enable notifications for push events |
issues_events |
boolean | false | Enable notifications for issue events |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
note_events |
boolean | false | Enable notifications for note events |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
wiki_page_events |
boolean | false | Enable notifications for wiki page events |
Delete Webex Teams service
Delete Webex Teams service for a project.
DELETE /projects/:id/services/webex-teams
Get Webex Teams service settings
Get Webex Teams service settings for a project.
GET /projects/:id/services/webex-teams
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:
Parameter | Type | Required | Description |
---|---|---|---|
new_issue_url |
string | true | New Issue URL |
issues_url |
string | true | Issue URL |
project_url |
string | true | Project URL |
description |
string | false | Description |
title |
string | false | Title |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | Drone CI project specific token |
drone_url |
string | true | http://drone.example.com |
enable_ssl_verification |
boolean | false | Enable SSL verification |
push_events |
boolean | false | Enable notifications for push events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
recipients |
string | true | Emails separated by whitespace |
disable_diffs |
boolean | false | Disable code diffs |
send_from_committer_email |
boolean | false | Send from committer |
push_events |
boolean | false | Enable notifications for push events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". Notifications are always fired for tag pushes. The default value is "all" |
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
Confluence service
Introduced in GitLab 13.2.
Replaces the link to the internal wiki with a link to a Confluence Cloud Workspace.
Create/Edit Confluence service
Set Confluence service for a project.
PUT /projects/:id/services/confluence
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
confluence_url |
string | true | The URL of the Confluence Cloud Workspace hosted on atlassian.net. |
Delete Confluence service
Delete Confluence service for a project.
DELETE /projects/:id/services/confluence
Get Confluence service settings
Get Confluence service settings for a project.
GET /projects/:id/services/confluence
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:
Parameter | Type | Required | Description |
---|---|---|---|
external_wiki_url |
string | true | The 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 ChatOps application for collaboration in software engineering companies. You can send notifications from GitLab events to Flowdock flows. For integration instructions, see the Flowdock documentation.
Create/Edit Flowdock service
Set Flowdock service for a project.
PUT /projects/:id/services/flowdock
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | Flowdock Git source token |
push_events |
boolean | false | Enable 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 (PREMIUM)
Code collaboration software.
Create/Edit GitHub service
Set GitHub service for a project.
PUT /projects/:id/services/github
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | GitHub API token with repo:status OAuth scope |
repository_url |
string | true | GitHub repository URL |
static_context |
boolean | false | Append 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
Introduced in GitLab 11.2.
Google Workspace team collaboration tool.
Create/Edit Hangouts Chat service
Set Hangouts Chat service for a project.
PUT /projects/:id/services/hangouts-chat
NOTE:
Specific event parameters (for example, push_events
flag) were introduced in GitLab 10.4.
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | The Hangouts Chat webhook. For example, https://chat.googleapis.com/v1/spaces... . |
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
notify_only_default_branch |
boolean | false | DEPRECATED: This parameter has been replaced with branches_to_be_notified
|
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
push_events |
boolean | false | Enable notifications for push events |
issues_events |
boolean | false | Enable notifications for issue events |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
note_events |
boolean | false | Enable notifications for note events |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
wiki_page_events |
boolean | false | Enable 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
irker (IRC gateway)
Send IRC messages, on update, to a list of recipients through an irker gateway.
For more information, see the irker integration documentation.
Create/Edit irker (IRC gateway) service
Set irker (IRC gateway) service for a project.
PUT /projects/:id/services/irker
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
recipients |
string | true | Recipients/channels separated by whitespaces |
default_irc_uri |
string | false | irc://irc.network.net:6697/ |
server_host |
string | false | localhost |
server_port |
integer | false | 6659 |
colorize_messages |
boolean | false | Colorize messages |
push_events |
boolean | false | Enable 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
andproject_url
are replaced byurl
. If you are using an older version, follow this documentation.
PUT /projects/:id/services/jira
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
url |
string | yes | The URL to the Jira project which is being linked to this GitLab project. For example, https://jira.example.com . |
api_url |
string | no | The base URL to the Jira instance API. Web URL value is used if not set. For example, https://jira-api.example.com . |
username |
string | yes | The username of the user created to be used with GitLab/Jira. |
password |
string | yes | The password of the user created to be used with GitLab/Jira. |
active |
boolean | no | Activates or deactivates the service. Defaults to false (deactivated). |
jira_issue_transition_automatic |
boolean | no | Enable automatic issue transitions. Takes precedence over jira_issue_transition_id if enabled. Defaults to false
|
jira_issue_transition_id |
string | no | The ID of one or more transitions for custom issue transitions. Ignored if jira_issue_transition_automatic is enabled. Defaults to a blank string, which disables custom transitions. |
commit_events |
boolean | false | Enable notifications for commit events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
comment_on_event_enabled |
boolean | false | Enable comments inside Jira issues on each GitLab event (commit / merge request) |
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",
"slug": "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,
"comment_on_event_enabled": false,
"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:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | yes | The 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:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | yes | The Mattermost token |
username |
string | no | The 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:
Parameter | Type | Required | Description |
---|---|---|---|
username |
string | yes | The username of a Packagist account |
token |
string | yes | API token to the Packagist server |
server |
boolean | no | URL of the Packagist server. Leave blank for default: https://packagist.org |
push_events |
boolean | false | Enable notifications for push events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable 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/CD pipelines.
Create/Edit Pipeline-Emails service
Set Pipeline-Emails service for a project.
PUT /projects/:id/services/pipelines-email
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
recipients |
string | yes | Comma-separated list of recipient email addresses |
add_pusher |
boolean | no | Add pusher to recipients list |
notify_only_broken_pipelines |
boolean | no | Notify only broken pipelines |
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected. The default value is "default" |
notify_only_default_branch |
boolean | no | Send notifications only for the default branch (introduced in GitLab 12.0) |
pipeline_events |
boolean | false | Enable 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
Pivotal Tracker
Add commit messages as comments to Pivotal Tracker stories.
See also the Pivotal Tracker service documentation.
Create/Edit Pivotal Tracker service
Set Pivotal Tracker service for a project.
PUT /projects/:id/services/pivotaltracker
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
token |
string | true | The Pivotal Tracker token |
restrict_to_branch |
boolean | false | Comma-separated list of branches to automatically inspect. Leave blank to include all branches. |
push_events |
boolean | false | Enable notifications for push events |
Delete Pivotal Tracker service
Delete Pivotal Tracker service for a project.
DELETE /projects/:id/services/pivotaltracker
Get Pivotal Tracker service settings
Get Pivotal Tracker 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:
Parameter | Type | Required | Description |
---|---|---|---|
api_url |
string | true | Prometheus API Base URL. For example, http://prometheus.example.com/ . |
google_iap_audience_client_id |
string | false | Client ID of the IAP secured resource (looks like IAP_CLIENT_ID.apps.googleusercontent.com) |
google_iap_service_account_json |
string | false |
credentials.json file for your service account, like { "type": "service_account", "project_id": ... } |
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:
Parameter | Type | Required | Description |
---|---|---|---|
api_key |
string | true | Your application key |
user_key |
string | true | Your user key |
priority |
string | true | The priority |
device |
string | false | Leave blank for all active devices |
sound |
string | false | The sound of the notification |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
new_issue_url |
string | true | New Issue URL |
project_url |
string | true | Project URL |
issues_url |
string | true | Issue URL |
description |
string | false | Description |
push_events |
boolean | false | Enable 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 (for example, push_events
flag and push_channel
) were introduced in GitLab 10.4.
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | https://hooks.slack.com/services/... |
username |
string | false | username |
channel |
string | false | Default channel to use if others are not configured |
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
notify_only_default_branch |
boolean | false | DEPRECATED: This parameter has been replaced with branches_to_be_notified
|
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
commit_events |
boolean | false | Enable notifications for commit events |
confidential_issue_channel |
string | false | The name of the channel to receive confidential issues events notifications |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
confidential_note_channel |
string | false | The name of the channel to receive confidential note events notifications |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
deployment_channel |
string | false | The name of the channel to receive deployment events notifications |
deployment_events |
boolean | false | Enable notifications for deployment events |
issue_channel |
string | false | The name of the channel to receive issues events notifications |
issues_events |
boolean | false | Enable notifications for issue events |
job_events |
boolean | false | Enable notifications for job events |
merge_request_channel |
string | false | The name of the channel to receive merge request events notifications |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
note_channel |
string | false | The name of the channel to receive note events notifications |
note_events |
boolean | false | Enable notifications for note events |
pipeline_channel |
string | false | The name of the channel to receive pipeline events notifications |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
push_channel |
string | false | The name of the channel to receive push events notifications |
push_events |
boolean | false | Enable notifications for push events |
tag_push_channel |
string | false | The name of the channel to receive tag push events notifications |
tag_push_events |
boolean | false | Enable notifications for tag push events |
wiki_page_channel |
string | false | The name of the channel to receive wiki page events notifications |
wiki_page_events |
boolean | false | Enable notifications for wiki page events |
vulnerability_channel |
string | false | (ULTIMATE) The name of the channel to receive vulnerability event notifications. |
vulnerability_events |
boolean | false | (ULTIMATE) Enable notifications for vulnerability 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:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | The Microsoft Teams webhook. For example, https://outlook.office.com/webhook/...
|
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
notify_only_default_branch |
boolean | false | DEPRECATED: This parameter has been replaced with branches_to_be_notified
|
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
push_events |
boolean | false | Enable notifications for push events |
issues_events |
boolean | false | Enable notifications for issue events |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
note_events |
boolean | false | Enable notifications for note events |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
wiki_page_events |
boolean | false | Enable 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 (for example, push_events
flag and push_channel
) were introduced in GitLab 10.4.
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
webhook |
string | true | The Mattermost webhook. For example, http://mattermost_host/hooks/...
|
username |
string | false | username |
channel |
string | false | Default channel to use if others are not configured |
notify_only_broken_pipelines |
boolean | false | Send notifications for broken pipelines |
notify_only_default_branch |
boolean | false | DEPRECATED: This parameter has been replaced with branches_to_be_notified
|
branches_to_be_notified |
string | false | Branches to send notifications for. Valid options are "all", "default", "protected", and "default_and_protected". The default value is "default" |
push_events |
boolean | false | Enable notifications for push events |
issues_events |
boolean | false | Enable notifications for issue events |
confidential_issues_events |
boolean | false | Enable notifications for confidential issue events |
merge_requests_events |
boolean | false | Enable notifications for merge request events |
tag_push_events |
boolean | false | Enable notifications for tag push events |
note_events |
boolean | false | Enable notifications for note events |
confidential_note_events |
boolean | false | Enable notifications for confidential note events |
pipeline_events |
boolean | false | Enable notifications for pipeline events |
wiki_page_events |
boolean | false | Enable notifications for wiki page events |
vulnerability_events |
boolean | false | (ULTIMATE) Enable notifications for vulnerability events |
push_channel |
string | false | The name of the channel to receive push events notifications |
issue_channel |
string | false | The name of the channel to receive issues events notifications |
confidential_issue_channel |
string | false | The name of the channel to receive confidential issues events notifications |
merge_request_channel |
string | false | The name of the channel to receive merge request events notifications |
note_channel |
string | false | The name of the channel to receive note events notifications |
confidential_note_channel |
string | false | The name of the channel to receive confidential note events notifications |
tag_push_channel |
string | false | The name of the channel to receive tag push events notifications |
pipeline_channel |
string | false | The name of the channel to receive pipeline events notifications |
wiki_page_channel |
string | false | The name of the channel to receive wiki page events notifications |
vulnerability_channel |
string | false | (ULTIMATE) The name of the channel to receive vulnerability 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%
. Configure monitoring of all branches so merge requests build. That setting is in the VSC root advanced settings.
PUT /projects/:id/services/teamcity
Parameters:
Parameter | Type | Required | Description |
---|---|---|---|
teamcity_url |
string | true | TeamCity root URL. For example, https://teamcity.example.com
|
build_type |
string | true | Build configuration ID |
username |
string | true | A user with permissions to trigger a manual build |
password |
string | true | The password of the user |
push_events |
boolean | false | Enable 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:
Parameter | Type | Required | Description |
---|---|---|---|
jenkins_url |
string | true | Jenkins URL like http://jenkins.example.com . |
project_name |
string | true | The URL-friendly project name. Example: my_project_name . |
username |
string | false | Username for authentication with the Jenkins server, if authentication is required by the server. |
password |
string | false | Password for authentication with the Jenkins server, if authentication is required by the server. |
push_events |
boolean | false | Enable notifications for push events. |
merge_requests_events |
boolean | false | Enable notifications for merge request events. |
tag_push_events |
boolean | false | Enable notifications for tag push events. |
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
NOTE: This service was removed in GitLab 13.0.
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 likehttp://jenkins.example.com/job/my-project/
-
multiproject_enabled
(optional) - Multi-project mode is configured in Jenkins GitLab Hook plugin -
pass_unstable
(optional) - Unstable builds are 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:
Parameter | Type | Required | Description |
---|---|---|---|
mock_service_url |
string | true | http://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:
Parameter | Type | Required | Description |
---|---|---|---|
issues_url |
string | true | Issue URL |
project_url |
string | true | Project URL |
description |
string | false | Description |
push_events |
boolean | false | Enable 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