对于 AI 代理:可在 https://www.mongodb.com/zh-cn/docs/llms.txt 获取文档索引—通过在任何 URL 路径后添加 .md 可获取所有页面的 Markdown 版本。

为第三方服务集成创建配置

注意

群组和项目是同义术语。 您的 {PROJECT-ID} 与您的群组 ID(group ID)相同。对于现有群组,您的群组/项目 ID 保持不变。当引用说明时,此页面使用更为人熟知的术语“群组”。终结点保持不变,如文档中所述。

基本 URL: https://cloud.mongodb.com/api/public/v1.0

使用此终结点向项目添加新的第三方服务集成配置。每个项目的每个 {INTEGRATION-TYPE} 只能有一个配置。如果指定集成类型的配置已存在,则请求失败。要替换现有配置,请使用更新配置终结点。

POST /groups/{GROUP-ID}/integrations/{INTEGRATION-TYPE}
Parameter
必要性
说明

{PROJECT-ID}

必需

项目标识符。

{INTEGRATION-TYPE}

必需

第三方服务标识符。 接受的值为:

  • PAGER_DUTY

  • SLACK

  • NEW_RELIC

  • OPS_GENIE

  • VICTOR_OPS

  • WEBHOOK

  • PROMETHEUS

名称
类型
必要性
说明
默认

pageNum

数字

Optional

从一开始的整数,用于返回结果的一部分。

1

itemsPerPage

数字

Optional

每页要返回的项目数,最多 500 个。

100

pretty

布尔

Optional

false

envelope

布尔

Optional

指示是否将响应包装在信封中的标志。

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要修复此问题,在查询中设置 envelope : true。

对于返回结果列表的端点,content 对象是一个信封。Cloud Manager 将 status 字段添加到响应正文。

false

backupJobsEnabledOnly

布尔

Optional

指示是否从响应中排除未启用备份数据库的守护进程的标志。 将其设置为false以包含将backupJobsEnabled标志设置为false的守护进程配置。

true

请求正文应为单个集成视图(例如 JSON 配置对象),用于单个第三方服务以添加到项目。始终包含一个 type 属性,其值等于第三方服务 INTEGRATION_TYPE 。

配置 PagerDuty 集成时,必须提供以下字段:

属性
说明

type

PAGER_DUTY

serviceKey

您的服务密钥。

所有新的 PagerDuty 密钥均使用其Events API v2。如果您有 Events API v1 密钥,则可以继续将该密钥与Cloud Manager一起使用。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

重要提示: Slack集成现在使用 OAuth 2验证方法,并且必须通过MongoDB Atlas第三方服务集成页面从传统集成进行初始配置或更新。 很快将不再支持旧版令牌。

重新配置现有 Slack 集成时,必须提供以下字段:

属性
说明

type

SLACK

apiToken

您的 API 令牌。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

teamName

你的团队名称。

您还可以包含以下字段:

属性
说明

channelName

要重新配置的渠道名称。

配置 Opsgenie 集成时,必须提供以下字段:

属性
说明

type

OPS_GENIE

apiKey

您的 API 密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

region

指示要使用哪个 `API URL`,US 或 EU。Opsgenie 默认为 US。

配置 VictorOps 集成时,必须提供以下字段:

属性
说明

type

VICTOR_OPS

apiKey

您的 API 密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

您还可以包含以下字段:

属性
说明

routingKey

路由键的可选字段。

配置 Webhook 设置时,必须提供以下字段:

属性
说明

type

WEBHOOK

url

您的 Webhook URL。

您还可以包含以下字段:

属性
说明

secret

Webhook 密钥的可选字段。

创建 Webhook 通知后,当您查看或编辑警报时, URL将被部分编辑,并且密钥将被完全编辑。

配置 Microsoft Teams 集成时,必须提供以下字段:

属性
说明

type

MICROSOFT_TEAMS

microsoftTeamsWebhookUrl

您的 Microsoft 团队 传入 Webhook URL。

当您查看或编辑 Webhook 通知的警报时,URL 会显示为部分遮蔽,而密钥显示为完全遮蔽。

配置 Prometheus 集成时,必须提供以下字段:

属性
说明

type

PROMETHEUS

username

您的 Prometheus 用户名。

password

您的 Prometheus 密码。

listenAddress

Prometheus 实例将连接的 IP 地址和端口。

serviceDiscovery

指示使用哪种服务发现方法,为file或http 。

scheme

为请求配置的 Prometheus 协议模式,可以是http或https 。 如果配置https ,则必须指定tlsPemPath 。

enabled

您的集群是否启用了 Prometheus。

您还可以包含以下字段:

属性
说明

tlsPemPassword

PEM 文件密码的可选字段。

tlsPemPath

PEM 文件绝对路径的可选字段。

响应包括一个results数组(将项目的所有第三方集成配置列为对象)以及与项目集成的服务的totalCount 。

每个第三方集成配置对象都包含一个等于其自身集成类型的type属性(对于 PagerDuty 服务为"type": "PAGER_DUTY" )。 此外,每个第三方服务配置对象都提供特定于该服务的详细信息。 下面列出了为每个第三方服务配置对象返回的属性:

返回的 PagerDuty 集成配置对象包含以下字段:

属性
说明

type

PAGER_DUTY

serviceKey

您的服务密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

返回的 Slack 集成配置对象包含以下字段:

属性
说明

type

SLACK

apiToken

您的 API 令牌。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

teamName

你的团队名称。 旧版 Slack 集成中可能不存在此字段。

channelName

配置的 Slack 渠道名称。如果未设置该值,则为空字符串。

返回的 Opsgenie 集成配置对象包含以下字段:

属性
说明

type

OPS_GENIE

apiKey

您的 API 密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

region

指示要使用哪个 `API URL`,US 或 EU。Opsgenie 默认为 US。

返回的 VictorOps 集成配置对象包含以下字段:

属性
说明

type

VICTOR_OPS

apiKey

您的 API 密钥。

创建需要 API 或集成密钥的第三方集成后,当您执行以下操作时,该密钥将显示为部分经过校订的:

  • 通过用户界面查看或编辑警报。

  • 通过API查询第三方集成设置。

配置对象还可能包含以下字段,具体取决于您的配置:

属性
说明

routingKey

如果您配置了路由键,则返回一个字段。

返回的 Webhook 配置对象包含以下字段:

属性
说明

type

WEBHOOK

url

您的 Webhook URL。

创建 Webhook 通知后,当您查看或编辑警报时, URL将被部分编辑,并且密钥将被完全编辑。

配置对象还可能包含以下字段,具体取决于您的配置:

属性
说明

secret

如果您的 Webhook 配置了密钥,则返回一个可选字段。

返回的 Microsoft 团队 配置对象将包含以下字段:

属性
说明

type

MICROSOFT_TEAMS

microsoftTeamsWebhookUrl

您的 Microsoft 团队 传入 Webhook URL。

当您查看或编辑 Webhook 通知的警报时,URL 会显示为部分遮蔽,而密钥显示为完全遮蔽。

返回的 Prometheus 配置对象将包含以下字段:

属性
说明

type

PROMETHEUS

username

您的 Prometheus 用户名。

listenAddress

Prometheus 实例将连接的 IP 地址和端口。

serviceDiscovery

指示使用哪种服务发现方法,为file或http 。

scheme

为请求配置的 Prometheus 协议模式,可以是http或https 。 如果配置https ,则必须指定tlsPemPath 。

enabled

您的集群是否启用了 Prometheus。

配置对象还可能包含以下字段,具体取决于您的配置:

属性
说明

tlsPemPassword

如果您有 PEM 文件的密码,则返回一个可选字段。

tlsPemPath

如果您有 PEM 文件的绝对路径,则返回一个可选字段。

以下示例将新的 Slack 集成配置添加到项目中。

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request POST "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/integrations/SLACK" \ --data ' { "type": "SLACK", "apiToken": "1234567890", "teamName": "My Team" }'
{ "links": [ { "href": "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/integrations/SLACK?pageNum=1&itemsPerPage=100", "rel": "self" } ], "results": [ { "serviceKey": "******7890", "type": "PAGER_DUTY" }, { "apiToken": "******7890", "channelName": "My Channel", "teamName": "My Team", "type": "SLACK" } ], "totalCount": 2}