{{< details >}}

  • Tier: 基础版, 专业版, 旗舰版
  • Offering: JihuLab.com, 私有化部署

{{< /details >}}

使用此 API 与集成极狐GitLab的外部服务进行交互。

此 API 需要至少具有 维护者 角色的访问令牌。

列出所有活跃的集成

{{< history >}}

  • vulnerability_events 字段在极狐GitLab 16.4 中引入。
  • inherited 字段在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • inherited 字段在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

获取所有活跃项目集成的列表。vulnerability_events 字段仅对极狐GitLab企业版可用。

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,
    "inherited": false,
    "vulnerability_events": 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,
    "inherited": false,
    "vulnerability_events": true
  }
]

Apple App Store Connect

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Apple App Store Connect

为项目设置 Apple App Store Connect 集成。

PUT /projects/:id/integrations/apple_app_store

参数:

参数 类型 必需 描述
app_store_issuer_id string Apple App Store Connect 发行者 ID。
app_store_key_id string Apple App Store Connect 密钥 ID。
app_store_private_key_file_name string Apple App Store Connect 私钥文件名。
app_store_private_key string Apple App Store Connect 私钥。
app_store_protected_refs boolean 仅在受保护的分支和标签上设置变量。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Apple App Store Connect

禁用项目的 Apple App Store Connect 集成。集成设置将被重置。

DELETE /projects/:id/integrations/apple_app_store

获取 Apple App Store Connect 设置

获取项目的 Apple App Store Connect 集成设置。

GET /projects/:id/integrations/apple_app_store

Asana

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Asana

为项目设置 Asana 集成。

PUT /projects/:id/integrations/asana

参数:

参数 类型 必需 描述
api_key string 用户 API 令牌。用户必须有权限访问任务。所有评论均归于此用户。
restrict_to_branch string 自动检查的分支的逗号分隔列表。留空以包含所有分支。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Asana

禁用项目的 Asana 集成。集成设置将被重置。

DELETE /projects/:id/integrations/asana

获取 Asana 设置

获取项目的 Asana 集成设置。

GET /projects/:id/integrations/asana

Assembla

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Assembla

为项目设置 Assembla 集成。

PUT /projects/:id/integrations/assembla

参数:

参数 类型 必需 描述
token string 认证令牌。
subdomain string 子域设置。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Assembla

禁用项目的 Assembla 集成。集成设置将被重置。

DELETE /projects/:id/integrations/assembla

获取 Assembla 设置

获取项目的 Assembla 集成设置。

GET /projects/:id/integrations/assembla

Atlassian Bamboo

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Atlassian Bamboo

为项目设置 Atlassian Bamboo 集成。

您必须在 Bamboo 中配置自动修订标记和代码库触发器。

PUT /projects/:id/integrations/bamboo

参数:

参数 类型 必需 描述
bamboo_url string Bamboo 根 URL(例如,https://bamboo.example.com)。
enable_ssl_verification boolean 启用 SSL 验证。默认值为 true(启用)。
build_key string Bamboo 构建计划键(例如,KEY)。
username string 拥有 Bamboo 服务器 API 访问权限的用户。
password string 用户的密码。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Atlassian Bamboo

禁用项目的 Atlassian Bamboo 集成。集成设置将被重置。

DELETE /projects/:id/integrations/bamboo

获取 Atlassian Bamboo 设置

获取项目的 Atlassian Bamboo 集成设置。

GET /projects/:id/integrations/bamboo

Bugzilla

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Bugzilla

为项目设置 Bugzilla 集成。

PUT /projects/:id/integrations/bugzilla

参数:

参数 类型 必需 描述
new_issue_url string 新议题的 URL。
issues_url string 议题的 URL。
project_url string 项目的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Bugzilla

禁用项目的 Bugzilla 集成。集成设置将被重置。

DELETE /projects/:id/integrations/bugzilla

获取 Bugzilla 设置

获取项目的 Bugzilla 集成设置。

GET /projects/:id/integrations/bugzilla

Buildkite

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Buildkite

为项目设置 Buildkite 集成。

PUT /projects/:id/integrations/buildkite

参数:

参数 类型 必需 描述
token string 在创建极狐GitLab代码库的 Buildkite 流水线后获得的令牌。
project_url string 流水线 URL(例如,https://buildkite.com/example/pipeline)。
enable_ssl_verification boolean 已弃用: 此参数无效,因为 SSL 验证始终启用。
push_events boolean 启用推送事件通知。
merge_requests_events boolean 启用合并请求事件通知。
tag_push_events boolean 启用标签推送事件通知。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Buildkite

禁用项目的 Buildkite 集成。集成设置将被重置。

DELETE /projects/:id/integrations/buildkite

获取 Buildkite 设置

获取项目的 Buildkite 集成设置。

GET /projects/:id/integrations/buildkite

Campfire Classic

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

您可以与 Campfire Classic 集成。然而,Campfire Classic 是一个旧产品,Basecamp 已不再出售

设置 Campfire Classic

为项目设置 Campfire Classic 集成。

PUT /projects/:id/integrations/campfire

参数:

参数 类型 必需 描述
token string 从 Campfire Classic 获取的 API 认证令牌。要获取令牌,请登录 Campfire Classic 并选择 我的信息
subdomain string 当您登录时的 .campfirenow.com 子域。
room string Campfire Classic 房间 URL 的 ID 部分。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Campfire Classic

禁用项目的 Campfire Classic 集成。集成设置将被重置。

DELETE /projects/:id/integrations/campfire

获取 Campfire Classic 设置

获取项目的 Campfire Classic 集成设置。

GET /projects/:id/integrations/campfire

ClickUp

{{< history >}}

  • 在极狐GitLab 16.1 中引入。
  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 ClickUp

为项目设置 ClickUp 集成。

PUT /projects/:id/integrations/clickup

参数:

参数 类型 必需 描述
issues_url string 议题的 URL。
project_url string 项目的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 ClickUp

禁用项目的 ClickUp 集成。集成设置将被重置。

DELETE /projects/:id/integrations/clickup

获取 ClickUp 设置

获取项目的 ClickUp 集成设置。

GET /projects/:id/integrations/clickup

Confluence 工作区

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

使用 Confluence Cloud 工作区作为项目维基。

设置 Confluence 工作区

为项目设置 Confluence 工作区集成。

PUT /projects/:id/integrations/confluence

参数:

参数 类型 必需 描述
confluence_url string 托管在 atlassian.net 上的 Confluence 工作区的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Confluence 工作区

禁用项目的 Confluence 工作区集成。集成设置将被重置。

DELETE /projects/:id/integrations/confluence

获取 Confluence 工作区设置

获取项目的 Confluence 工作区集成设置。

GET /projects/:id/integrations/confluence

自定义议题跟踪器

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置自定义议题跟踪器

为项目设置自定义议题跟踪器。

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

参数:

参数 类型 必需 描述
new_issue_url string 新议题的 URL。
issues_url string 议题的 URL。
project_url string 项目的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用自定义议题跟踪器

禁用项目的自定义议题跟踪器。集成设置将被重置。

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

获取自定义议题跟踪器设置

获取项目的自定义议题跟踪器设置。

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

Datadog

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Datadog

为项目设置 Datadog 集成。

PUT /projects/:id/integrations/datadog

参数:

参数 类型 必需 描述
api_key string 用于 Datadog 认证的 API 密钥
datadog_ci_visibility boolean 启用 Datadog 中的流水线和作业事件收集,以显示流水线执行跟踪。
api_url string Datadog 站点的完整 URL。
datadog_env string 对于私有化部署,为发送到 Datadog 的所有数据设置 env% 标签。
datadog_service string 在 Datadog 中标记所有数据的极狐GitLab 实例。当管理多个私有化部署时可以使用。
datadog_site string 要发送数据到的 Datadog 站点。要将数据发送到 EU 站点,请使用 datadoghq.eu
datadog_tags string Datadog 中的自定义标签。以 key:value\nkey2:value2 格式指定每行一个标签。
archive_trace_events boolean 启用时,作业日志将由 Datadog 收集,并与流水线执行跟踪一起显示(在极狐GitLab 15.3 中引入)。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Datadog

禁用项目的 Datadog 集成。集成设置将被重置。

DELETE /projects/:id/integrations/datadog

获取 Datadog 设置

获取项目的 Datadog 集成设置。

GET /projects/:id/integrations/datadog

Diffblue Cover

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Diffblue Cover

为项目设置 Diffblue Cover 集成。

PUT /projects/:id/integrations/diffblue-cover

参数:

参数 类型 必需 描述
diffblue_license_key string Diffblue Cover 许可证密钥。
diffblue_access_token_name string Diffblue Cover 在流水线中使用的访问令牌名称。
diffblue_access_token_secret string Diffblue Cover 在流水线中使用的访问令牌密钥。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Diffblue Cover

禁用项目的 Diffblue Cover 集成。集成设置将被重置。

DELETE /projects/:id/integrations/diffblue-cover

获取 Diffblue Cover 设置

获取项目的 Diffblue Cover 集成设置。

GET /projects/:id/integrations/diffblue-cover

Discord 通知

{{< history >}}

  • _channel 参数在极狐GitLab 16.3 中引入。
  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Discord 通知

为项目设置 Discord 通知。

PUT /projects/:id/integrations/discord

参数:

参数 类型 必需 描述
webhook string Discord webhook(例如,https://discord.com/api/webhooks/...)。
branches_to_be_notified string 要发送通知的分支。有效选项为 alldefaultprotecteddefault_and_protected。默认值为 default
confidential_issues_events boolean 启用机密议题事件通知。
confidential_issue_channel string 接收机密议题事件通知的 webhook 覆盖。
confidential_note_events boolean 启用机密备注事件通知。
confidential_note_channel string 接收机密备注事件通知的 webhook 覆盖。
deployment_events boolean 启用部署事件通知。
deployment_channel string 接收部署事件通知的 webhook 覆盖。
group_confidential_mentions_events boolean 启用群组机密提及事件通知。
group_confidential_mentions_channel string 接收群组机密提及事件通知的 webhook 覆盖。
group_mentions_events boolean 启用群组提及事件通知。
group_mentions_channel string 接收群组提及事件通知的 webhook 覆盖。
issues_events boolean 启用议题事件通知。
issue_channel string 接收议题事件通知的 webhook 覆盖。
merge_requests_events boolean 启用合并请求事件通知。
merge_request_channel string 接收合并请求事件通知的 webhook 覆盖。
note_events boolean 启用备注事件通知。
note_channel string 接收备注事件通知的 webhook 覆盖。
notify_only_broken_pipelines boolean 仅在流水线失败时发送通知。
pipeline_events boolean 启用流水线事件通知。
pipeline_channel string 接收流水线事件通知的 webhook 覆盖。
push_events boolean 启用推送事件通知。
push_channel string 接收推送事件通知的 webhook 覆盖。
tag_push_events boolean 启用标签推送事件通知。
tag_push_channel string 接收标签推送事件通知的 webhook 覆盖。
wiki_page_events boolean 启用维基页面事件通知。
wiki_page_channel string 接收维基页面事件通知的 webhook 覆盖。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Discord 通知

禁用项目的 Discord 通知。集成设置将被重置。

DELETE /projects/:id/integrations/discord

获取 Discord 通知设置

获取项目的 Discord 通知设置。

GET /projects/:id/integrations/discord

Drone

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Drone

为项目设置 Drone 集成。

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

参数:

参数 类型 必需 描述
token string Drone CI 令牌。
drone_url string Drone CI URL(例如,http://drone.example.com)。
enable_ssl_verification boolean 启用 SSL 验证。默认值为 true(启用)。
push_events boolean 启用推送事件通知。
merge_requests_events boolean 启用合并请求事件通知。
tag_push_events boolean 启用标签推送事件通知。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 Drone

禁用项目的 Drone 集成。集成设置将被重置。

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

获取 Drone 设置

获取项目的 Drone 集成设置。

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

推送时的电子邮件

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置推送时的电子邮件

为项目设置推送时的电子邮件集成。

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

参数:

参数 类型 必需 描述
recipients string 用空格分隔的电子邮件。
disable_diffs boolean 禁用代码差异。
send_from_committer_email boolean 从提交者处发送。
push_events boolean 启用推送事件通知。
tag_push_events boolean 启用标签推送事件通知。
branches_to_be_notified string 要发送通知的分支。有效选项为 alldefaultprotecteddefault_and_protected。标签推送的通知总是触发的。默认值为 all
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用推送时的电子邮件

禁用项目的推送时的电子邮件集成。集成设置将被重置。

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

获取推送时的电子邮件设置

获取项目的推送时的电子邮件集成设置。

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

工程工作流管理 (EWM)

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 EWM

为项目设置 EWM 集成。

PUT /projects/:id/integrations/ewm

参数:

参数 类型 必需 描述
new_issue_url string 新议题的 URL。
project_url string 项目的 URL。
issues_url string 议题的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 EWM

禁用项目的 EWM 集成。集成设置将被重置。

DELETE /projects/:id/integrations/ewm

获取 EWM 设置

获取项目的 EWM 集成设置。

GET /projects/:id/integrations/ewm

外部维基

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置外部维基

为项目设置外部维基。

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

参数:

参数 类型 必需 描述
external_wiki_url string 外部维基的 URL。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用外部维基

禁用项目的外部维基。集成设置将被重置。

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

获取外部维基设置

获取项目的外部维基设置。

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

GitGuardian

{{< details >}}

  • Tier: Premium, Ultimate
  • Offering: JihuLab.com, 极狐GitLab私有化部署, 极狐GitLab Dedicated

{{< /details >}}

{{< history >}}

  • 在极狐GitLab 16.9 中引入,使用名为 git_guardian_integration功能标志。默认启用。在 JihuLab.com 上禁用。
  • 在极狐GitLab 17.7 中在 JihuLab.com 上启用。
  • 在极狐GitLab 17.8 中 GA。功能标志 git_guardian_integration 被移除。
  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

GitGuardian 是一种网络安全服务,能够检测源代码库中的 API 密钥和密码等敏感数据。它扫描 Git 仓库,警告策略违规,并帮助组织在黑客利用之前修复安全问题。

您可以配置极狐GitLab根据 GitGuardian 策略拒绝提交。

已知问题

  • 推送可能会延迟或超时。使用 GitGuardian 集成时,推送被发送到第三方,极狐GitLab 无法控制与 GitGuardian 的连接或 GitGuardian 的处理。
  • 由于 GitGuardian API 的限制,集成会忽略大于 1 MB 的文件。它们不会被扫描。
  • 如果推送的文件名超过 256 个字符,则推送不会成功。

集成页面 上的故障排除步骤展示了一些问题的解决方法。

设置 GitGuardian

为项目设置 GitGuardian 集成。

PUT /projects/:id/integrations/git-guardian

参数:

参数 类型 必需 描述
token string 具有 scan 范围的 GitGuardian API 令牌。
use_inherited_settings boolean 指示是否继承默认设置。默认为 false

禁用 GitGuardian

禁用项目的 GitGuardian 集成。集成设置将被重置。

DELETE /projects/:id/integrations/git-guardian

获取 GitGuardian 设置

获取项目的 GitGuardian 集成设置。

GET /projects/:id/integrations/git-guardian

GitHub

{{< details >}}

  • Tier: Premium, Ultimate
  • Offering: JihuLab.com, 极狐GitLab私有化部署, 极狐GitLab Dedicated

{{< /details >}}

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 GitHub

为项目设置 GitHub 集成。

PUT /projects/:id/integrations/github

参数:

参数 类型 必需 描述
token 字符串 具有 repo:status OAuth 范围的 GitHub API 令牌。
repository_url 字符串 GitHub 仓库 URL。
static_context 布尔值 将您的极狐GitLab 实例的主机名附加到 状态检查名称
use_inherited_settings 布尔值 指示是否继承默认设置。默认为 false

禁用 GitHub

禁用项目的 GitHub 集成。集成设置将被重置。

DELETE /projects/:id/integrations/github

获取 GitHub 设置

获取项目的 GitHub 集成设置。

GET /projects/:id/integrations/github

极狐GitLab for Jira Cloud 应用

极狐GitLab for Jira Cloud 应用集成通过 Jira 中的群组链接和取消链接 自动启用或禁用。您不能通过极狐GitLab 集成表单或 API 启用或禁用集成。

更新项目的集成

使用此 API 端点更新通过 Jira 中的群组链接创建的集成。

PUT /projects/:id/integrations/jira-cloud-app
参数 类型 必需 描述
jira_cloud_app_service_ids 字符串 Jira 服务管理服务 ID。使用逗号(,)分隔多个 ID。
jira_cloud_app_enable_deployment_gating 布尔值 启用来自 Jira 服务管理的阻止极狐GitLab 部署的部署门控。
jira_cloud_app_deployment_gating_environments 字符串 启用部署门控的环境(生产、暂存、测试或开发)。如果启用了部署门控,则必需。使用逗号(,)分隔多个环境。

获取极狐GitLab for Jira Cloud 应用设置

获取项目的极狐GitLab for Jira Cloud 应用集成设置。

GET /projects/:id/integrations/jira-cloud-app

极狐GitLab for Slack 应用

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置极狐GitLab for Slack 应用

更新项目的极狐GitLab for Slack 应用集成。

您不能通过 API 创建极狐GitLab for Slack 应用,因为集成需要无法仅通过极狐GitLab API 获取的 OAuth 2.0 令牌。相反,您必须从极狐GitLab 用户界面 安装该应用。然后,您可以使用此 API 端点更新集成。

PUT /projects/:id/integrations/gitlab-slack-application
参数 类型 必需 描述
channel 字符串 如果未配置其他频道,则使用的默认频道。
notify_only_broken_pipelines 布尔值 仅发送断裂流水线的通知。
notify_only_default_branch 布尔值 已弃用:此参数已被 branches_to_be_notified 替代。
branches_to_be_notified 字符串 要发送通知的分支。有效选项为 alldefaultprotecteddefault_and_protected。默认值为 default
alert_events 布尔值 启用警报事件的通知。
issues_events 布尔值 启用议题事件的通知。
confidential_issues_events 布尔值 启用机密议题事件的通知。
merge_requests_events 布尔值 启用合并请求事件的通知。
note_events 布尔值 启用备注事件的通知。
confidential_note_events 布尔值 启用机密备注事件的通知。
deployment_events 布尔值 启用部署事件的通知。
incidents_events 布尔值 启用事件事件的通知。
pipeline_events 布尔值 启用流水线事件的通知。
push_events 布尔值 启用推送事件的通知。
tag_push_events 布尔值 启用标签推送事件的通知。
vulnerability_events 布尔值 启用漏洞事件的通知。
wiki_page_events 布尔值 启用 Wiki 页面事件的通知。
labels_to_be_notified 字符串 要发送通知的标签。如果未设置,则接收所有事件的通知。
labels_to_be_notified_behavior 字符串 要通知的标签。有效选项为 match_anymatch_all。默认值为 match_any
push_channel 字符串 接收推送事件通知的频道名称。
issue_channel 字符串 接收议题事件通知的频道名称。
confidential_issue_channel 字符串 接收机密议题事件通知的频道名称。
merge_request_channel 字符串 接收合并请求事件通知的频道名称。
note_channel 字符串 接收备注事件通知的频道名称。
confidential_note_channel 字符串 接收机密备注事件通知的频道名称。
tag_push_channel 字符串 接收标签推送事件通知的频道名称。
pipeline_channel 字符串 接收流水线事件通知的频道名称。
wiki_page_channel 字符串 接收 Wiki 页面事件通知的频道名称。
deployment_channel 字符串 接收部署事件通知的频道名称。
incident_channel 字符串 接收事件事件通知的频道名称。
vulnerability_channel 字符串 接收漏洞事件通知的频道名称。
alert_channel 字符串 接收警报事件通知的频道名称。
use_inherited_settings 布尔值 指示是否继承默认设置。默认值为 false

禁用极狐GitLab for Slack 应用

禁用项目的极狐GitLab for Slack 应用集成。集成设置将被重置。

DELETE /projects/:id/integrations/gitlab-slack-application

获取极狐GitLab for Slack 应用设置

获取项目的极狐GitLab for Slack 应用集成设置。

GET /projects/:id/integrations/gitlab-slack-application

Google Chat

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

Harbor

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Harbor

为项目设置 Harbor 集成。

PUT /projects/:id/integrations/harbor

参数:

参数 类型 必需 描述
url string yes 与极狐GitLab 项目链接的 Harbor 实例的基本 URL。例如,https://demo.goharbor.io
project_name string yes Harbor 实例中的项目名称。例如,testproject
username string yes 在 Harbor 界面中创建的用户名。
password string yes 用户的密码。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Harbor

禁用项目的 Harbor 集成。集成设置将被重置。

DELETE /projects/:id/integrations/harbor

获取 Harbor 设置

获取项目的 Harbor 集成设置。

GET /projects/:id/integrations/harbor

irker (IRC gateway)

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 irker

为项目设置 irker 集成。

PUT /projects/:id/integrations/irker

参数:

参数 类型 必需 描述
recipients string yes 逗号分隔的频道或电子邮件地址列表。
default_irc_uri string no 在每个接收者前添加的 URI。默认值为 irc://irc.network.net:6697/
server_host string no irker 守护进程主机名。默认值为 localhost
server_port integer no irker 守护进程端口。默认值为 6659
colorize_messages boolean no 彩色显示消息。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 irker

禁用项目的 irker 集成。集成设置将被重置。

DELETE /projects/:id/integrations/irker

获取 irker 设置

获取项目的 irker 集成设置。

GET /projects/:id/integrations/irker

Jenkins

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Jenkins

为项目设置 Jenkins 集成。

PUT /projects/:id/integrations/jenkins

参数:

参数 类型 必需 描述
jenkins_url string yes Jenkins 服务器的 URL。
enable_ssl_verification boolean no 启用 SSL 验证。默认为 true(启用)。
project_name string yes Jenkins 项目的名称。
username string no Jenkins 服务器的用户名。
password string no Jenkins 服务器的密码。
push_events boolean no 启用推送事件的通知。
merge_requests_events boolean no 启用合并请求事件的通知。
tag_push_events boolean no 启用标签推送事件的通知。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Jenkins

禁用项目的 Jenkins 集成。集成设置将被重置。

DELETE /projects/:id/integrations/jenkins

获取 Jenkins 设置

获取项目的 Jenkins 集成设置。

GET /projects/:id/integrations/jenkins

JetBrains TeamCity

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 JetBrains TeamCity

为项目设置 JetBrains TeamCity 集成。

TeamCity 中的构建配置必须使用构建号格式 %build.vcs.number%。在 VCS 根目录的高级设置中,配置监控所有分支,以便可以构建合并请求。

PUT /projects/:id/integrations/teamcity

参数:

参数 类型 必需 描述
teamcity_url string yes TeamCity 根 URL(例如,https://teamcity.example.com)。
enable_ssl_verification boolean no 启用 SSL 验证。默认为 true(启用)。
build_type string yes TeamCity 项目的构建配置 ID。
username string yes 有权限触发手动构建的用户。
password string yes 用户的密码。
push_events boolean no 启用推送事件的通知。
merge_requests_events boolean no 启用合并请求事件的通知。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 JetBrains TeamCity

禁用项目的 JetBrains TeamCity 集成。集成设置将被重置。

DELETE /projects/:id/integrations/teamcity

获取 JetBrains TeamCity 设置

获取项目的 JetBrains TeamCity 集成设置。

GET /projects/:id/integrations/teamcity

Jira 议题

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Jira 议题

为项目设置 Jira 议题集成

PUT /projects/:id/integrations/jira

参数:

参数 类型 必需 描述
url string yes 与此极狐GitLab 项目链接的 Jira 项目的 URL(例如,https://jira.example.com)。
api_url string no Jira 实例 API 的基本 URL。如果未设置,则使用 Web URL 值(例如,https://jira-api.example.com)。
username string no 用于 Jira 的电子邮件或用户名。对于 Jira Cloud 使用电子邮件,对于 Jira Data Center 和 Jira Server 使用用户名。当使用基本身份验证(jira_auth_type0)时需要。
password string yes 用于 Jira 的 Jira API 令牌、密码或个人访问令牌。当使用基本身份验证(jira_auth_type0)时,对于 Jira Cloud 使用 API 令牌,对于 Jira Data Center 或 Jira Server 使用密码。对于 Jira 个人访问令牌(jira_auth_type1),使用个人访问令牌。
active boolean no 激活或停用集成。默认为 false(停用)。
jira_auth_type integer no 用于 Jira 的身份验证方法。使用 0 代表基本身份验证,使用 1 代表 Jira 个人访问令牌。默认为 0
jira_issue_prefix string no 用于匹配 Jira 议题键的前缀。
jira_issue_regex string no 用于匹配 Jira 议题键的正则表达式。
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 no 启用提交事件的通知。
merge_requests_events boolean no 启用合并请求事件的通知。
comment_on_event_enabled boolean no 启用在每个极狐GitLab 事件(提交或合并请求)中在 Jira 议题上的评论。
issues_enabled boolean no 启用在极狐GitLab 中查看 Jira 议题。Introduced in 极狐GitLab 17.0。
project_keys array of strings no Jira 项目的键。当 issues_enabledtrue 时,此设置指定从极狐GitLab 中查看议题的 Jira 项目。Introduced in 极狐GitLab 17.0。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Jira

禁用项目的 Jira 议题集成。集成设置将被重置。

DELETE /projects/:id/integrations/jira

获取 Jira 设置

获取项目的 Jira 议题集成设置。

GET /projects/:id/integrations/jira
<a id="get-squash-tm-settings"></a>

### 获取 Squash TM 设置

获取项目的 Squash TM 集成设置。

```plaintext
GET /projects/:id/integrations/squash-tm

Telegram

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Telegram

为项目设置 Telegram 集成。

PUT /projects/:id/integrations/telegram

参数:

参数 类型 必填 描述
hostname string no Telegram API 的自定义主机名(在极狐GitLab 17.1 中引入)。默认值为 https://api.telegram.org
token string yes Telegram 机器人令牌(例如,123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11)。
room string yes 目标聊天的唯一标识符或目标频道的用户名(格式为 @channelusername)。
thread integer no 目标消息线程的唯一标识符(论坛超级群组中的主题)。在极狐GitLab 16.11 中引入
notify_only_broken_pipelines boolean no 仅发送有关断裂流水线的通知。
branches_to_be_notified string no 要发送通知的分支(在极狐GitLab 16.5 中引入)。有效选项为 alldefaultprotecteddefault_and_protected。默认值为 default
push_events boolean yes 启用推送事件的通知。
issues_events boolean yes 启用议题事件的通知。
confidential_issues_events boolean yes 启用机密议题事件的通知。
merge_requests_events boolean yes 启用合并请求事件的通知。
tag_push_events boolean yes 启用标签推送事件的通知。
note_events boolean yes 启用备注事件的通知。
confidential_note_events boolean yes 启用机密备注事件的通知。
pipeline_events boolean yes 启用流水线事件的通知。
wiki_page_events boolean yes 启用 Wiki 页面事件的通知。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Telegram

禁用项目的 Telegram 集成。集成设置将被重置。

DELETE /projects/:id/integrations/telegram

获取 Telegram 设置

获取项目的 Telegram 集成设置。

GET /projects/:id/integrations/telegram

Unify Circuit

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Unify Circuit

为项目设置 Unify Circuit 集成。

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

参数:

参数 类型 必填 描述
webhook string yes Unify Circuit 的 webhook(例如,https://circuit.com/rest/v2/webhooks/incoming/...)。
notify_only_broken_pipelines boolean no 仅发送有关断裂流水线的通知。
branches_to_be_notified string no 要发送通知的分支。有效选项为 alldefaultprotecteddefault_and_protected。默认值为 default
push_events boolean no 启用推送事件的通知。
issues_events boolean no 启用议题事件的通知。
confidential_issues_events boolean no 启用机密议题事件的通知。
merge_requests_events boolean no 启用合并请求事件的通知。
tag_push_events boolean no 启用标签推送事件的通知。
note_events boolean no 启用备注事件的通知。
confidential_note_events boolean no 启用机密备注事件的通知。
pipeline_events boolean no 启用流水线事件的通知。
wiki_page_events boolean no 启用 Wiki 页面事件的通知。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Unify Circuit

禁用项目的 Unify Circuit 集成。集成设置将被重置。

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

获取 Unify Circuit 设置

获取项目的 Unify Circuit 集成设置。

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

Webex Teams

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 Webex Teams

为项目设置 Webex Teams。

PUT /projects/:id/integrations/webex-teams

参数:

参数 类型 必填 描述
webhook string yes Webex Teams 的 webhook(例如,https://api.ciscospark.com/v1/webhooks/incoming/...)。
notify_only_broken_pipelines boolean no 仅发送有关断裂流水线的通知。
branches_to_be_notified string no 要发送通知的分支。有效选项为 alldefaultprotecteddefault_and_protected。默认值为 default
push_events boolean no 启用推送事件的通知。
issues_events boolean no 启用议题事件的通知。
confidential_issues_events boolean no 启用机密议题事件的通知。
merge_requests_events boolean no 启用合并请求事件的通知。
tag_push_events boolean no 启用标签推送事件的通知。
note_events boolean no 启用备注事件的通知。
confidential_note_events boolean no 启用机密备注事件的通知。
pipeline_events boolean no 启用流水线事件的通知。
wiki_page_events boolean no 启用 Wiki 页面事件的通知。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 Webex Teams

禁用项目的 Webex Teams。集成设置将被重置。

DELETE /projects/:id/integrations/webex-teams

获取 Webex Teams 设置

获取项目的 Webex Teams 设置。

GET /projects/:id/integrations/webex-teams

YouTrack

{{< history >}}

  • use_inherited_settings 参数在极狐GitLab 17.2 中引入,使用名为 integration_api_inheritance功能标志。默认禁用。
  • use_inherited_settings 参数在极狐GitLab 17.3 中 GA。功能标志 integration_api_inheritance 被移除。

{{< /history >}}

设置 YouTrack

为项目设置 YouTrack 集成。

PUT /projects/:id/integrations/youtrack

参数:

参数 类型 必填 描述
issues_url string yes 议题的 URL。
project_url string yes 项目的 URL。
use_inherited_settings boolean no 指示是否继承默认设置。默认为 false

禁用 YouTrack

禁用项目的 YouTrack 集成。集成设置将被重置。

DELETE /projects/:id/integrations/youtrack

获取 YouTrack 设置

获取项目的 YouTrack 集成设置。

GET /projects/:id/integrations/youtrack