- 所有可用的集成列表
- 苹果应用商店
- Asana
- Assembla
- Atlassian Bamboo CI
- Bugzilla
- Buildkite
- Campfire
- ClickUp
- Datadog
- Telegram
- Unify Circuit
- Pumble
- Webex Teams
- 自定义议题跟踪器
- Discord
- Drone CI
- 邮件推送
- 研发工作流程管理 (EWM)
- Confluence 集成
- Shimo 集成
- 外部 wiki
- GitHub
- Hangouts Chat
- Irker (IRC gateway)
- Jira
- Slack 指令
- Mattermost 指令
- Packagist
- Pipeline-Emails
- Pivotal Tracker
- 普罗米修斯(Prometheus)
- Pushover
- Redmine
- Slack 通知
- Microsoft Teams
- Mattermost 通知
- JetBrains TeamCity CI
- Jenkins CI
- Jenkins CI (已弃用) 集成
- MockCI
- YouTrack
集成 API
通过这个 API 使您能够使用与极狐GitLab 集成的外部服务。
services
端点被重命名为integrations
。对集成 API 的调用可以通过 /projects/:id/services
和 /projects/:id/integrations
进行。
本文档中的示例引用的端点是 /projects/:id/integrations
。该 API 需要一个具有维护者或所有者角色的访问令牌。
所有可用的集成列表
引入于极狐GitLab 12.7。
获取所有可用的项目集成列表。
GET /projects/:id/integrations
响应示例:
[
{
"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,
"alert_events": true,
"confidential_issues_events": true,
"merge_requests_events": true,
"tag_push_events": false,
"deployment_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,
"alert_events": true,
"confidential_issues_events": true,
"merge_requests_events": true,
"tag_push_events": true,
"deployment_events": false,
"note_events": true,
"confidential_note_events": true,
"pipeline_events": true,
"wiki_page_events": true,
"job_events": true,
"comment_on_event_enabled": true
}
]
苹果应用商店
使用极狐GitLab 在苹果应用商店中构建和发布应用程序。
创建/编辑苹果应用商店集成
为项目设置苹果应用商店集成。
PUT /projects/:id/integrations/apple_app_store
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
app_store_issuer_id |
string | true | 苹果应用商店 Connect Issuer ID |
app_store_key_id |
string | true | 苹果应用商店 Connect Key ID |
app_store_private_key |
string | true | 苹果应用商店 Connect Private Key |
app_store_protected_refs |
boolean | false | 仅在受保护的分支和标签上设置变量。默认为 true (启用) |
禁用苹果应用商店集成
禁用项目的苹果应用商店集成。集成设置将被重置。
DELETE /projects/:id/integrations/apple_app_store
获取苹果应用商店设置
获取项目的苹果应用商店设置。
GET /projects/:id/integrations/apple_app_store
Asana
将提交信息作为评论添加到 Asana 任务中。
参见 Asana集成文档。
创建/编辑 Asana 集成
为一个项目设置 Asana 集成。
PUT /projects/:id/integrations/asana
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
api_key |
string | true | 用户API令牌。用户必须具有访问任务的权限。所有评论都归于该用户。 |
restrict_to_branch |
string | false | 将自动检查以逗号分隔的分支列表。 保留空白用以包括所有分支。 |
禁用 Asana 集成
禁用项目的 Asana 集成。集成设置将被重置。
DELETE /projects/:id/integrations/asana
获取 Asana 集成设置
获取项目的 Asana 集成设置。
GET /projects/:id/integrations/asana
Assembla
项目管理软件 (源码提交端点)。
创建/编辑 Assembla 集成
为项目设置 Assembla 集成。
PUT /projects/:id/integrations/assembla
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | 身份验证令牌 |
subdomain |
string | false | 子域名设置 |
禁用 Assembla 集成
禁用项目的 Assembla 集成。集成设置将被重置。
DELETE /projects/:id/integrations/assembla
获取 Assembla 集成设置
获取项目的 Assembla 集成设置。
GET /projects/:id/integrations/assembla
Atlassian Bamboo CI
持续集成和构建服务器。
创建/编辑 Atlassian Bamboo CI 集成
为项目设置 Atlassian Bamboo CI 集成。
使用 Atlassian Bamboo 运行 CI/CD 流水线。您必须在 Bamboo 中设置自动修订标签和仓库触发器。
PUT /projects/:id/integrations/bamboo
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
bamboo_url |
string | true | Bamboo 根 URL。例如,https://bamboo.example.com 。 |
enable_ssl_verification |
boolean | false | 启用 SSL 验证。默认为 true(启用)。 |
build_key |
string | true | Bamboo 构建计划密钥 如 KEY。 |
username |
string | true | 具有 API 访问权限的用户(如果适用)。 |
password |
string | true | 用户密码。 |
禁用 Atlassian Bamboo CI 集成
禁用项目的 Atlassian Bamboo CI 集成。集成设置将被重置。
DELETE /projects/:id/integrations/bamboo
获取 Atlassian Bamboo CI 集成设置
获取项目的 Atlassian Bamboo CI 集成设置。
GET /projects/:id/integrations/bamboo
Bugzilla
Bugzilla 议题跟踪器。
创建/编辑 Bugzilla 集成
为项目设置 Bugzilla 集成。
PUT /projects/:id/integrations/bugzilla
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
new_issue_url |
string | true | 新议题 URL |
issues_url |
string | true | 议题 URL |
project_url |
string | true | 项目 URL |
禁用 Bugzilla 集成
禁用项目的 Bugzilla 集成。集成设置将被重置。
DELETE /projects/:id/integrations/bugzilla
获取 Bugzilla 集成设置
获取项目的 Bugzilla 集成设置。
GET /projects/:id/integrations/bugzilla
Buildkite
持续集成和部署。
创建/编辑 Buildkite 集成
为项目设置 Buildkite 集成。
PUT /projects/:id/integrations/buildkite
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | Buildkite 项目的极狐GitLab 令牌。 |
project_url |
string | true | 流水线的 URL。例如,https://buildkite.com/example/pipeline 。 |
enable_ssl_verification |
boolean | false | 已删除:这个参数没有影响,因为 SSL 验证总是启用的。 |
push_events |
boolean | false | 启用推送事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
禁用 Buildkite 集成
禁用项目的 Buildkite 集成。集成设置将被重置。
DELETE /projects/:id/integrations/buildkite
获取 Buildkite 集成设置
获取项目的 Buildkite 集成设置。
GET /projects/:id/integrations/buildkite
Campfire
向 Campfire Chat Room 发送有关推送事件的通知。 新用户已无法注册 Campfire。
创建/编辑 Campfire 集成
为项目设置 Campfire 集成。
PUT /projects/:id/integrations/campfire
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | Campfire 的 API 令牌。想要要找到它,请登录 Campfire 并选择 My info。 |
subdomain |
string | false | Campfire 的子域名。当您登录时,https:// 和 .campfirenow.com 之间的文本。 |
room |
string | false | Campfire 的房间。当你在一个房间里时,URL 的最后部分的文本。 |
禁用 Campfire 集成
禁用项目的 Campfire 集成。集成设置将被重置。
DELETE /projects/:id/integrations/campfire
获取 Campfire 集成设置
获取项目的 Campfire 集成设置。
GET /projects/:id/integrations/campfire
ClickUp
引入于极狐GitLab 16.1。
ClickUp 议题跟踪器。
创建或编辑 ClickUp 集成
为项目设置 ClickUp 集成。
PUT /projects/:id/integrations/clickup
参数:
参数 | 类型 | 是否比需 | 描述 |
---|---|---|---|
issues_url |
string | true | 议题 URL |
project_url |
string | true | 项目 URL |
禁用 ClickUp 集成
为项目禁用 ClickUp 集成。重置集成设置。
DELETE /projects/:id/integrations/clickup
获取 ClickUp 集成设置
为项目获取 ClickUp 集成设置。
GET /projects/:id/integrations/clickup
Datadog
Datadog 系统监控。
创建/编辑 Datadog 集成
为项目设置 Datadog 集成。
PUT /projects/:id/integrations/datadog
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
api_key |
string | true | 用于与 Datadog 验证的 API 密钥。 |
api_url |
string | false | (高级)您的 Datadog 站点的完整 URL。 |
datadog_env |
string | false | 对于私有化部署,为所有发送到 Datadog 的数据设置 env% 标签。 |
datadog_service |
string | false | 在 Datadog 中,为来自此极狐GitLab 实例的所有数据打标签。当管理多个私有化部署时很有用。 |
datadog_site |
string | false | 发送数据的 Datadog 网站。要发送数据到欧盟的网站,请使用 datadoghq.eu 。 |
datadog_tags |
string | false | Datadog中的自定义标签。每行指定一个标签,格式为:key:value\nkey2:value2 。引入于极狐GitLab 14.8。 |
archive_trace_events |
boolean | false | 启用后,作业日志由 Datadog 收集并与流水线执行跟踪一起显示。引入于 15.3。 |
禁用 Datadog 集成
禁用项目的 Datadog 集成。集成设置将被重置。
DELETE /projects/:id/integrations/datadog
获取 Datadog 集成设置
为项目获取 Datadog 集成设置。
GET /projects/:id/integrations/datadog
Telegram
Telegram 聊天工具。
创建/编辑 Telegram 集成
为项目设置 Telegram 集成。
PUT /projects/:id/integrations/telegram
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | Telegram bot 令牌。例如 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11
|
room |
string | true | 目标聊天的唯一标识符或目标频道的用户名(格式为 @channelusername ) |
push_events |
boolean | true | 为推送事件启用通知 |
issues_events |
boolean | true | 为议题事件启用通知 |
confidential_issues_events |
boolean | true | 为私密议题事件启用通知 |
merge_requests_events |
boolean | true | 为合并请求事件启用通知 |
tag_push_events |
boolean | true | 为标签推送事件启用通知 |
note_events |
boolean | true | 为备注事件启用通知 |
confidential_note_events |
boolean | true | 为私密备注事件启用通知 |
pipeline_events |
boolean | true | 为流水线事件启用通知 |
wiki_page_events |
boolean | true | 为 Wiki 页面事件启用通知 |
禁用 Telegram 集成
为项目禁用 Telegram 集成。重置集成设置。
DELETE /projects/:id/integrations/telegram
获取 Telegram 集成设置
为项目获取 Telegram 集成设置。
GET /projects/:id/integrations/telegram
Unify Circuit
Unify Circuit RTC 和协作工具。
创建/编辑 Unify Circuit 集成
为项目设置 Unify Circuit 集成。
PUT /projects/:id/integrations/unify-circuit
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Unify Circuit 的 Webhook。例如,https://circuit.com/rest/v2/webhooks/incoming/... 。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
branches_to_be_notified |
string | false | 向其发送通知的分支。有效选项为 all 、default 、protected 和 default_and_protected 。系统默认值为 default 。 |
push_events |
boolean | false | 启用推送事件的通知。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
confidential_issues_events |
boolean | false | 启用私密议题事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
note_events |
boolean | false | 启用备注事件的通知。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
禁用 Unify Circuit 集成
禁用项目的 Unify Circuit 集成。集成设置将被重置。
DELETE /projects/:id/integrations/unify-circuit
获取 Unify Circuit 集成设置
为项目获取 Unify Circuit 集成设置。
GET /projects/:id/integrations/unify-circuit
Pumble
Pumble chat 工具。
创建/编辑 Pumble 集成
设置项目 Pumble 集成。
PUT /projects/:id/integrations/pumble
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Pumble webhook。例如 https://api.pumble.com/workspaces/x/...
|
branches_to_be_notified |
string | false | 发送通知的分支。有效值为 all 、default 、protected 和 default_and_protected 。默认为 default
|
confidential_issues_events |
boolean | false | 启用机密议题事件通知 |
confidential_note_events |
boolean | false | 启用机密备注事件通知 |
issues_events |
boolean | false | 启用议题事件通知 |
merge_requests_events |
boolean | false | 启用合并请求事件通知 |
note_events |
boolean | false | 启用备注事件通知 |
notify_only_broken_pipelines |
boolean | false | 发送失败流水线的通知 |
pipeline_events |
boolean | false | 启用流水线事件通知 |
push_events |
boolean | false | 启用推送事件通知 |
tag_push_events |
boolean | false | 启用标签推送事件通知 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件通知 |
禁用 Pumble 集成
禁用项目 Pumble 集成。保留集成设置。
DELETE /projects/:id/integrations/pumble
获取 Pumble 集成设置
获取项目 Pumble 集成设置。
GET /projects/:id/integrations/pumble
Webex Teams
Webex Teams 协作工具。
创建/编辑 Webex Teams 集成
为项目设置 Webex Teams 集成。
PUT /projects/:id/integrations/webex-teams
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Webex Teams 的 webhook。例如,https://api.ciscospark.com/v1/webhooks/incoming/... 。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
branches_to_be_notified |
string | false | 有效选项为 all 、default 、protected 和 default_and_protected 。系统默认值为 default 。 |
push_events |
boolean | false | 启用推送事件的通知。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
confidential_issues_events |
boolean | false | 启用私密议题事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
note_events |
boolean | false | 启用备注事件的通知。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
禁用 Webex Teams 集成
禁用项目的 Webex Teams 集成。集成设置将被重置。
DELETE /projects/:id/integrations/webex-teams
获取 Webex Teams 集成设置
为项目获取 Webex Teams 集成设置。
GET /projects/:id/integrations/webex-teams
自定义议题跟踪器
自定义议题跟踪器。
创建/编辑自定义议题跟踪器集成
为项目设置自定义问题跟踪集成。
PUT /projects/:id/integrations/custom-issue-tracker
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
new_issue_url |
string | true | 新的议题 URL |
issues_url |
string | true | 议题 URL |
project_url |
string | true | 项目 URL |
禁用自定义议题跟踪器集成
禁用项目的自定义问题跟踪集成。集成设置将被重置。
DELETE /projects/:id/integrations/custom-issue-tracker
获取自定义议题跟踪器集成设置
获取项目的自定义问题跟踪器集成设置。
GET /projects/:id/integrations/custom-issue-tracker
Discord
将项目事件的通知发送到一个 Discord 频道。
创建/编辑 Discord 集成
为项目设置 Discord 集成。
PUT /projects/:id/integrations/discord
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Discord webhook。例如,https://discord.com/api/webhooks/…
|
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项为 all 、 default 、protected 和 default_and_protected 。默认值为 default
|
confidential_issues_events |
boolean | false | 启用私密议题事件的通知 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知 |
issues_events |
boolean | false | 启用议题事件的通知 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知 |
note_events |
boolean | false | 启用备注事件的通知 |
notify_only_broken_pipelines |
boolean | false | 发送失败流水线的通知 |
pipeline_events |
boolean | false | 启用流水线事件的通知 |
push_events |
boolean | false | 启用推送事件的通知 |
tag_push_events |
boolean | false | 启用标签推送事件的通知 |
wiki_page_events |
boolean | false | 启用 Wiki 页面事件的通知 |
禁用 Discord 集成
禁用项目的Discord集成。集成设置将被重置。
DELETE /projects/:id/integrations/discord
获取 Discord 集成设置
获取项目的 Discord 集成设置。
GET /projects/:id/integrations/discord
Drone CI
Drone 是用 Go 编写的一个建立在 Docker 上的持续集成平台。
创建/编辑 Drone CI 集成
为项目设置 Drone CI 集成。
PUT /projects/:id/integrations/drone-ci
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | Drone CI 项目特定的访问令牌。 |
drone_url |
string | true |
http://drone.example.com 。 |
enable_ssl_verification |
boolean | false | 启用 SSL 验证。默认为 true(启用)。 |
push_events |
boolean | false | 启用推送事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
禁用 Drone CI 集成
禁用项目的 Drone CI 集成。集成设置将被重置。
DELETE /projects/:id/integrations/drone-ci
获取 Drone CI 集成设置
获取项目的 Drone CI 集成设置。
GET /projects/:id/integrations/drone-ci
邮件推送
通过电子邮件将每次推送的提交和差异发送给收件人名单。
创建/编辑邮件推送集成
为项目设置邮件推送集成。
PUT /projects/:id/integrations/emails-on-push
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recipients |
string | true | 用空格分隔的电子邮件 |
disable_diffs |
boolean | false | 禁用代码差异 |
send_from_committer_email |
boolean | false | 发送自提交者 |
push_events |
boolean | false | 启用推送事件的通知 |
tag_push_events |
boolean | false | 启用标签推送事件的通知 |
branches_to_be_notified |
string | false | 向其发送通知的分支。有效选项为 all 、default 、protected 和 default_and_protected 。标记推送总是触发通知。默认值为 all 。 |
禁用邮件推送集成
禁用项目的邮件推送集成。集成设置将被重置。
DELETE /projects/:id/integrations/emails-on-push
获取邮件推送集成设置
获取项目的邮件推送集成设置。
GET /projects/:id/integrations/emails-on-push
研发工作流程管理 (EWM)
使用 IBM 研发工作流程管理(EWM)作为项目的议题跟踪器。
创建/编辑 EWM 集成
为项目设置 EWM 集成。
PUT /projects/:id/integrations/ewm
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
new_issue_url |
string | true | 在 EWM 中创建一个议题的 URL。 |
project_url |
string | true | EWM 中项目的 URL。 |
issues_url |
string | true | 在 EWM 中查看一个议题的 URL。必须包含:id 。 |
禁用 EWM 集成
禁用项目的 EWM 集成。集成设置将被重置。
DELETE /projects/:id/integrations/ewm
获取 EWM 集成设置
获取项目的 EWM 集成设置。
GET /projects/:id/integrations/ewm
Confluence 集成
引入于极狐GitLab 13.2。
将指向内部 wiki 的 URL 替换为指向 Confluence 云工作区 URL。
创建/编辑 Confluence 集成
为项目设置 Confluence 集成。
PUT /projects/:id/integrations/confluence
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
confluence_url |
string | true | 设在 atlassian.net 上的 Confluence 云工作区的 URL。 |
禁用 Confluence 集成
禁用项目的Confluence集成。集成设置将被重置。
DELETE /projects/:id/integrations/confluence
获取 Confluence 集成设置
获取 Confluence 集成设置的项目。
GET /projects/:id/integrations/confluence
Shimo 集成
- 引入于极狐GitLab 14.5,功能标志为
shimo_integration
。默认禁用。- 启用于 JihuLab.com 于极狐GitLab 15.4。
- 广泛可用于极狐GitLab 15.4。移除了功能标志
shimo_integration
。
将指向内部 wiki 的链接替换为指向 Shimo 工作区的链接。
创建/编辑 Shimo 集成
设置项目 Shimo 集成。
PUT /projects/:id/integrations/shimo
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
external_wiki_url |
string | true | Shimo 工作区 URL |
禁用 Shimo 集成
禁用项目 Shimo 集成。保留集成设置。
DELETE /projects/:id/integrations/shimo
外部 wiki
将内部 wiki 的 URL 替换为外部 wiki 的 URL。
创建/编辑 External wiki 集成
为项目设置外部wiki集成。
PUT /projects/:id/integrations/external-wiki
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
external_wiki_url |
string | true | 外部 wiki 的 URL。 |
禁用外部 wiki 集成
禁用项目的外部 wiki 集成。集成设置将被重置。
DELETE /projects/:id/integrations/external-wiki
获取外部 wiki 集成设置
获取项目的外部 wiki 集成设置。
GET /projects/:id/integrations/external-wiki
GitHub
代码协作软件。
创建/编辑 GitHub 集成
为项目设置 GitHub 集成。
PUT /projects/:id/integrations/github
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | 带有 repo:status OAuth 范围的 GitHub API 令牌。 |
repository_url |
string | true | GitHub 仓库 URL。 |
static_context |
boolean | false | 在状态检查名称中添加实例名称而不是分支。 |
禁用 GitHub 集成
禁用项目的 GitHub 集成。集成设置将被重置。
DELETE /projects/:id/integrations/github
获取 GitHub 集成设置
获取项目的 GitHub 集成设置。
GET /projects/:id/integrations/github
Hangouts Chat
Google workspace 团队协作工具。
创建/编辑 Hangouts Chat 集成
为项目设置 Hangouts Chat 集成。
PUT /projects/:id/integrations/hangouts-chat
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Hangouts Chat的 webhook。例如,https://chat.googleapis.com/v1/spaces... 。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
notify_only_default_branch |
boolean | false | 已删除:该参数已被 branches_to_be_notified 取代。 |
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项是 all 、default 、protected 和 default_and_protected 。默认值是 default 。 |
push_events |
boolean | false | 启用推送事件的通知。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
confidential_issues_events |
boolean | false | 启用私密议题事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
note_events |
boolean | false | 启用备注事件的通知。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
禁用 Hangouts Chat 集成
禁用项目的 Hangouts Chat 集成。集成设置将被重置。
DELETE /projects/:id/integrations/hangouts-chat
获取 Hangouts Chat 集成设置
获取 Hangouts Chat 集成设置的项目。
GET /projects/:id/integrations/hangouts-chat
Irker (IRC gateway)
在更新时,通过 irker 网关向收件人列表发送 IRC 信息。
创建/编辑 Irker (IRC gateway) 集成
为项目设置 Irker(IRC gateway)集成。
PUT /projects/:id/integrations/irker
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recipients |
string | true | 用空格分隔的收件人/频道 |
default_irc_uri |
string | false | irc://irc.network.net:6697/ |
server_host |
string | false | localhost |
server_port |
integer | false | 6659 |
colorize_messages |
boolean | false | 对信息进行着色 |
禁用 Irker (IRC gateway) 集成
禁用项目的 Irker(IRC gateway)集成。集成设置将被重置。
DELETE /projects/:id/integrations/irker
获取 Irker (IRC gateway) 集成设置
获取 Irker(IRC gateway)集成设置的项目。
GET /projects/:id/integrations/irker
Jira
Jira 议题跟踪器。
获取 Jira 集成设置
获取 Jira 集成设置的项目。
GET /projects/:id/integrations/jira
创建/编辑 Jira 集成
为项目设置 Jira 集成。
PUT /projects/:id/integrations/jira
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
url |
string | yes | Jira 项目的 URL,该项目被链接到该 极狐GitLab 项目。例如,https://jira.example.com 。 |
api_url |
string | no | Jira 实例 API 的 URL。如果没有设置,则使用 Web URL值。例如,https://jira-api.example.com 。 |
username |
string | yes | 创建的用户的用户名,以便与极狐GitLab/Jira 一起使用。 |
password |
string | yes | 创建的用户的密码,以便与极狐GitLab/Jira 一起使用。 |
active |
boolean | no | 激活或停用集成。默认为 false(停用)。 |
jira_issue_transition_automatic |
boolean | no | 启用自动议题转换。如果启用,将优先于jira_issue_transition_id 。默认为 false 。 |
jira_issue_transition_id |
string | no | 一个或多个自定义议题转换的 ID。如果 jira_issue_transition_automatic 被启用,则忽略。默认为一个空白字符串,这将禁用自定义转换。 |
commit_events |
boolean | false | 启用提交事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
comment_on_event_enabled |
boolean | false | 在 Jira 议题中启用对每个极狐GitLab 事件(提交/合并请求)的评论。 |
禁用 Jira 集成
禁用项目的 Jira 集成。集成设置将被重置。
DELETE /projects/:id/integrations/jira
Slack 指令
能够从 Slack 聊天实例中接收指令。
获取 Slack 指令集成设置
获取 Slack 指令集成设置,用于一个项目中。
GET /projects/:id/integrations/slack-slash-commands
响应示例:
{
"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>"
}
}
创建/编辑 Slack 指令集成
为一个项目设置 Slack 指令。
PUT /projects/:id/integrations/slack-slash-commands
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | yes | Slack 访问令牌 |
禁用 Slack 指令集成
禁用项目的 Slack 指令集成。集成设置将被重置。
DELETE /projects/:id/integrations/slack-slash-commands
Mattermost 指令
能够从 Mattermost 聊天实例中接收指令。
获取 Mattermost 指令集成设置
获取项目的 Mattermost 指令集成设置。
GET /projects/:id/integrations/mattermost-slash-commands
创建/编辑 Mattermost 指令集成
为项目设置 Mattermost 指令。
PUT /projects/:id/integrations/mattermost-slash-commands
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | yes | Mattermost 访问令牌 |
禁用 Mattermost 指令集成
禁用项目中 Mattermost 指令集成。集成设置将被重置。
DELETE /projects/:id/integrations/mattermost-slash-commands
Packagist
当提交或标签被推送到极狐GitLab 时,更新您在 Packagist(Composer 主仓库)的项目。
创建/编辑 Packagist 集成
为项目设置 Packagist 集成。
PUT /projects/:id/integrations/packagist
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
username |
string | yes | 一个 Packagist 账户的用户名。 |
token |
string | yes | Packagist 服务器的 API 令牌。 |
server |
boolean | no | Packagist 服务器的 URL。留空为默认。https://packagist.org |
push_events |
boolean | false | 启用推送事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
禁用 Packagist 集成
禁用项目的Packagist集成。集成设置将被重置。
DELETE /projects/:id/integrations/packagist
获取 Packagist 集成设置
获取项目的 Packagist 集成设置。
GET /projects/:id/integrations/packagist
Pipeline-Emails
获取极狐GitLab CI/CD 流水线的电子邮件。
创建/编辑 Pipeline-Emails 集成
为一个项目设置 Pipeline-Emails 集成。
PUT /projects/:id/integrations/pipelines-email
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
recipients |
string | yes | 以逗号分隔的收件人电子邮件地址列表。 |
notify_only_broken_pipelines |
boolean | no | 只通知失败的流水线。 |
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项是 all 、default 、protected 和 default_and_protected 。默认值是 default 。 |
notify_only_default_branch |
boolean | no | 只对默认分支发送通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
禁用 Pipeline-Emails 集成
禁用项目的 Pipeline-Emails 集成。集成设置将被重置。
DELETE /projects/:id/integrations/pipelines-email
获取 Pipeline-Emails 集成设置
为项目获取 Pipeline-Emails 集成设置。
GET /projects/:id/integrations/pipelines-email
Pivotal Tracker
在 Pivotal Tracker 故事中添加提交信息作为评论。
创建/编辑 Pivotal Tracker 集成
为项目设置 Pivotal Tracker 集成。
PUT /projects/:id/integrations/pivotaltracker
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
token |
string | true | Pivotal Tracker 访问令牌。 |
restrict_to_branch |
boolean | false | 以逗号分隔的要自动检查的分支列表。留空以包括所有分支。 |
禁用 Pivotal Tracker 集成
禁用项目的Pivotal Tracker集成。集成设置将被重置。
DELETE /projects/:id/integrations/pivotaltracker
获取 Pivotal Tracker 集成设置
获取 Pivotal Tracker 集成设置的项目。
GET /projects/:id/integrations/pivotaltracker
普罗米修斯(Prometheus)
普罗米修斯是一个强大的时间序列监测服务。
创建/编辑普罗米修斯集成
为项目设置普罗米修斯集成。
PUT /projects/:id/integrations/prometheus
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
api_url |
string | true | 普罗米修斯 API 基础 URL。例如,http://prometheus.example.com/ 。 |
google_iap_audience_client_id |
string | false | IAP 安全资源的客户端 ID(例如 IAP_CLIENT_ID.apps.googleusercontent.com)。 |
google_iap_service_account_json |
string | false | 您的服务账户的 credentials.json 文件,如 {"type": "service_account", "project_id": ... } 。 |
禁用 Prometheus 集成
禁用项目的普罗米修斯集成。集成设置将被重置。
DELETE /projects/:id/integrations/prometheus
获取 Prometheus 集成设置
获取普罗米修斯集成设置的项目。
GET /projects/:id/integrations/prometheus
Pushover
Pushover 让您在 Android 设备、iPhone、iPad 和桌面上轻松获取实时通知。
创建/编辑 Pushover 集成
为项目设置 Pushover 集成。
PUT /projects/:id/integrations/pushover
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
api_key |
string | true | 您的申请密钥 |
user_key |
string | true | 您的用户密钥 |
priority |
string | true | 优先级 |
device |
string | false | 留空为所有活动设备 |
sound |
string | false | 通知的声音 |
禁用 Pushover 集成
禁用项目的 Pushover。集成设置将被重置。
DELETE /projects/:id/integrations/pushover
获取 Pushover 集成设置
获取项目的 Pushover 集成设置。
GET /projects/:id/integrations/pushover
Redmine
Redmine 议题跟踪器。
创建/编辑 Redmine 集成
为项目设置 Redmine 集成。
PUT /projects/:id/integrations/redmine
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
new_issue_url |
string | true | 新的议题 URL |
project_url |
string | true | 项目 URL |
issues_url |
string | true | 议题 URL |
禁用 Redmine 集成
禁用项目的 Redmine 集成。集成设置将被重置。
DELETE /projects/:id/integrations/redmine
获取 Redmine 集成设置
获取项目的 Redmine 集成设置。
GET /projects/:id/integrations/redmine
Slack 通知
在 Slack 中接收事件通知。
创建/编辑 Slack 集成
为项目设置 Slack 集成。
PUT /projects/:id/integrations/slack
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | https://hooks.slack.com/services/... |
username |
string | false | 用户名。 |
channel |
string | false | 如果没有配置其他频道,则使用默认频道。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
notify_only_default_branch |
boolean | false | 已删除:该参数已被 branches_to_be_notified 取代。 |
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项是 all 、default 、protected 和 default_and_protected 。默认值是 default 。 |
alert_channel |
string | false | 接收告警事件通知的频道名称。 |
alert_events |
boolean | false | 启用告警事件的通知。 |
commit_events |
boolean | false | 启用提交事件的通知。 |
confidential_issue_channel |
string | false | 接收私密事件通知的频道名称。 |
confidential_issues_events |
boolean | false | 启用私密问题事件的通知。 |
confidential_note_channel |
string | false | 接收私密备注事件通知的频道名称。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
deployment_channel |
string | false | 接收部署事件通知的频道的名称。 |
deployment_events |
boolean | false | 启用部署事件的通知。 |
incident_channel |
string | false | 接收 incident 事件通知的频道名称。 |
incidents_events |
boolean | false | 启用 incident 事件通知。 |
issue_channel |
string | false | 接收事件通知的频道名称。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
job_events |
boolean | false | 启用任务事件的通知。 |
merge_request_channel |
string | false | 接收合并请求事件通知的频道名称。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
note_channel |
string | false | 接收备注事件通知的频道名称。 |
note_events |
boolean | false | 启用备注事件的通知。 |
pipeline_channel |
string | false | 接收流水线事件通知的频道名称。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
push_channel |
string | false | 接收推送事件通知的频道名称。 |
push_events |
boolean | false | 启用推送事件的通知。 |
tag_push_channel |
string | false | 接收标签推送事件通知的频道名称。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
wiki_page_channel |
string | false | 接收 wiki 页面事件通知的频道名称。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
禁用 Slack 集成
禁用项目的 Slack 集成。 集成设置将被重置。
DELETE /projects/:id/integrations/slack
获取 Slack 集成设置
获取项目的 Slack 集成设置。
GET /projects/:id/integrations/slack
Microsoft Teams
群组聊天软件。
创建/编辑 Microsoft Teams 集成
为项目设置 Microsoft Teams 集成。
PUT /projects/:id/integrations/microsoft-teams
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Microsoft 的 Teams webhook。例如,https://outlook.office.com/webhook/... 。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
notify_only_default_branch |
boolean | false | 已删除:该参数已被 branches_to_be_notified 取代。 |
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项是 all 、default 、protected 和 default_and_protected 。默认值是 default 。 |
push_events |
boolean | false | 启用推送事件的通知。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
confidential_issues_events |
boolean | false | 启用私密议题事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
note_events |
boolean | false | 启用备注事件的通知。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
禁用 Microsoft Teams 集成
禁用项目的 Microsoft Teams 集成。集成设置将被重置。
DELETE /projects/:id/integrations/microsoft-teams
获取 Microsoft Teams 集成设置
获取 Microsoft Teams 集成设置的项目。
GET /projects/:id/integrations/microsoft-teams
Mattermost 通知
在 Mattermost 中接收事件通知。
创建/编辑 Mattermost 通知集成
为项目设置 Mattermost 通知集成。
PUT /projects/:id/integrations/mattermost
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
webhook |
string | true | Mattermost 的 webhook。例如,http://mattermost_host/hooks/... 。 |
username |
string | false | 用户名。 |
channel |
string | false | 如果没有配置其他频道,则使用默认频道。 |
notify_only_broken_pipelines |
boolean | false | 发送流水线失败通知。 |
notify_only_default_branch |
boolean | false | 已删除:该参数已被 branches_to_be_notified 取代。 |
branches_to_be_notified |
string | false | 要发送通知的分支。有效选项是 all 、default 、protected 和 default_and_protected 。默认值是 default 。 |
push_events |
boolean | false | 启用推送事件的通知。 |
issues_events |
boolean | false | 启用议题事件的通知。 |
confidential_issues_events |
boolean | false | 启用私密议题事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
note_events |
boolean | false | 启用备注事件的通知。 |
confidential_note_events |
boolean | false | 启用私密备注事件的通知。 |
pipeline_events |
boolean | false | 启用流水线事件的通知。 |
wiki_page_events |
boolean | false | 启用 wiki 页面事件的通知。 |
push_channel |
string | false | 接收推送事件通知的频道名称。 |
issue_channel |
string | false | 用于接收议题事件通知的频道的名称。 |
confidential_issue_channel |
string | false | 用于接收私密议题事件通知的频道的名称。 |
merge_request_channel |
string | false | 接收合并请求事件通知的频道名称。 |
note_channel |
string | false | 用于接收备注事件通知的频道的名称。 |
confidential_note_channel |
string | false | 用于接收私密备注事件通知的频道的名称。 |
tag_push_channel |
string | false | 用于接收标记推送事件通知的频道的名称。 |
pipeline_channel |
string | false | 用于接收流水线事件通知的频道的名称。 |
wiki_page_channel |
string | false | 用于接收 wiki 页面事件通知的频道的名称。 |
禁用 Mattermost notifications 集成
禁用项目的 Mattermost 通知集成。集成设置将被重置。
DELETE /projects/:id/integrations/mattermost
获取 Mattermost notifications 集成设置
获取 Mattermost 通知集成设置的项目。
GET /projects/:id/integrations/mattermost
JetBrains TeamCity CI
一个持续集成和构建服务器。
创建/编辑 JetBrains TeamCity CI 集成
为项目设置JetBrains TeamCity CI集成。
TeamCity 中的构建配置必须使用构建格式号
%build.vcs.number%
。配置对所有分支的监控,以便合并请求构建。该设置在 VSC root 高级设置中。
PUT /projects/:id/integrations/teamcity
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
teamcity_url |
string | true | TeamCity 根 URL。例如, https://teamcity.example.com 。 |
enable_ssl_verification |
boolean | false | 启用SSL验证。默认为true(启用)。 |
build_类型 |
string | true | 构建配置 ID。 |
username |
string | true | 有权限触发手动构建的用户。 |
password |
string | true | 用户密码。 |
push_events |
boolean | false | 启用推送事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
禁用 JetBrains TeamCity CI 集成
禁用 JetBrains TeamCity CI 集成的项目。集成设置将被重置。
DELETE /projects/:id/integrations/teamcity
获取 JetBrains TeamCity CI 集成设置
获取 JetBrains TeamCity CI 集成设置的项目。
GET /projects/:id/integrations/teamcity
Jenkins CI
一个持续集成和构建服务器。
创建/编辑 Jenkins CI 集成
为项目设置 Jenkins CI 集成。
PUT /projects/:id/integrations/jenkins
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
jenkins_url |
string | true | Jenkins URL 例如 http://jenkins.example.com 。 |
enable_ssl_verification |
boolean | false | 启用SSL验证。默认为true(启用)。 |
project_name |
string | true | 一个 URL 友好的项目名称。例如:my_project_name 。 |
username |
string | false | 用于与 Jenkins 服务器认证的用户名,如果服务器必须进行认证。 |
password |
string | false | 用于与 Jenkins 服务器认证的密码,如果服务器需要认证的话。 |
push_events |
boolean | false | 启用推送事件的通知。 |
merge_requests_events |
boolean | false | 启用合并请求事件的通知。 |
tag_push_events |
boolean | false | 启用标签推送事件的通知。 |
禁用 Jenkins CI 集成
禁用项目的 Jenkins CI 集成。集成设置将被重置。
DELETE /projects/:id/integrations/jenkins
获取 Jenkins CI 集成设置
获取项目的 Jenkins CI 集成设置。
GET /projects/:id/integrations/jenkins
Jenkins CI (已弃用) 集成
一个持续集成和构建服务器。
创建/编辑 Jenkins CI (已弃用) 集成
为项目设置 Jenkins CI (已弃用) 集成。
PUT /projects/:id/integrations/jenkins-deprecated
参数:
-
project_url
(必须) - Jenkins 项目的URL,例如http://jenkins.example.com/job/my-project/
。 -
multiproject_enabled
(可选) - 多项目模式是在 Jenkins GitLab Hook 插件中配置的。 -
pass_unstable
(可选) - 不稳定的构建会被视为通过。
禁用 Jenkins CI (已弃用) 集成
禁用项目的Jenkins CI(已弃用)集成。集成设置将被重置。
DELETE /projects/:id/integrations/jenkins-deprecated
获取 Jenkins CI (已弃用) 集成设置
获取 Jenkins CI (已弃用) 集成设置为一个项目。
GET /projects/:id/integrations/jenkins-deprecated
MockCI
模拟一个外部 CI。
这个集成只有在您的环境被设置为开发时才可用。
创建/编辑 MockCI 集成
为项目设置 MockCI 集成。
PUT /projects/:id/integrations/mock-ci
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
mock_service_url |
string | true |
http://localhost:4004 。 |
enable_ssl_verification |
boolean | false | 启用 SSL 验证。默认为true(启用)。 |
禁用 MockCI 集成
禁用项目的 MockCI 集成。集成设置将被重置。
DELETE /projects/:id/integrations/mock-ci
获取 MockCI 集成设置
获取项目的 MockCI 集成设置。
GET /projects/:id/integrations/mock-ci
YouTrack
YouTrack 议题跟踪器。
创建/编辑 YouTrack 集成
为一个项目设置 YouTrack 集成。
PUT /projects/:id/integrations/youtrack
参数:
参数 | 类型 | 是否必需 | 描述 |
---|---|---|---|
issues_url |
string | true | 议题 URL |
project_url |
string | true | 项目 URL |
禁用 YouTrack 集成
为项目禁用 YouTrack 集成。集成设置将被重置。
DELETE /projects/:id/integrations/youtrack
获取 YouTrack 集成设置
获取 YouTrack 集成设置的项目。
GET /projects/:id/integrations/youtrack