Docs 菜单
Docs 主页
/
MongoDB Ops Manager
/ / / /

创建一个项目

在此页面上

  • 所需角色
  • Resource
  • 请求参数
  • 请求路径参数
  • 请求查询参数
  • 请求正文参数
  • 响应
  • 请求示例
  • 响应示例

注意

注意:群组和项目是同义词。您的 {PROJECT-ID} 与您的项目 ID 相同。对于现有群组,群组/项目 ID 保持不变。当引用说明时,此页面将使用“群组”这个更为人熟知的术语。端点仍如文档中所述。

基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

要在现有组织中创建项目,您必须在指定组织中具有以下角色之一:

  • Organization Project Creator

  • Organization Owner

注意

如果您使用来自没有Organization Owner的组织的 API密钥创建项目,Ops Manager 将创建没有Project Owner的项目。

POST /groups

此端点不使用 HTTP 请求路径参数。

名称
类型
必要性
说明
默认
pretty
布尔
Optional
指示响应正文是否应采用 Prettyprint 的标志 格式。
false
envelope
布尔
Optional

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

某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true

对于返回一个结果的端点,响应体包括:

名称
说明
状态
HTTP 响应代码
envelope
预期响应正文
false
名称
类型
必要性
说明
名称
字符串
必需
用于标识项目的人类可读标签。
orgId
字符串
必需

唯一的 24-十六进制数字string ,用于标识要在其中创建项目的组织。

Ops Manager 将指定组织最早的Organization Owner设置为新项目的Project Owner

名称
类型
说明
ActiveAgentCount
整型

定期向 Ops Manager 发送网络探测(ping)的活动代理数量。

该值大约每24小时刷新并缓存。 如果启动新代理或停止现有代理,则更改最多可能需要30分钟才能显示在activeAgentCount字段中。

hostCounts
对象
按类型划分的主机总数。 嵌入式字段应该是不言自明的。
id
字符串
项目的唯一标识符。
lastActiveAgent
字符串
时间 Ops Manager 上次更新了项目的activeAgentCount总计。 Ops Manager 每 24 小时刷新并缓存该值,以记录活动 MongoDB 代理的数量。
ldapGroupMappings
对象数组
对于支持 LDAP 的 Ops Manager,这是LDAP 群组到 Ops Manager 项目角色的映射。 仅适用于支持 LDAP 的 Ops Manager。
ldapGroupMappings
.roleName
字符串

Ops Manager user role. 项目角色roleName的映射如下:

用户角色
roleName
Project Owner (必需)
GROUP_OWNER
GROUP_AUTOMATION_ADMIN
GROUP_BACKUP_ADMIN
GROUP_MONITORING_ADMIN
GROUP_DATA_ACCESS_ADMIN
GROUP_DATA_ACCESS_READ_WRITE
GROUP_DATA_ACCESS_READ_ONLY
GROUP_READ_ONLY
ldapGroupMappings
.ldapGroups
字符串数组
映射到 Ops Manager 角色的 LDAP 项目。
链接
对象数组

指向子资源和/或相关资源的一个或多个链接。 响应中的所有links数组至少包含一个名为self的链接。 URL 之间的关系在 Web 链接规范中进行了解释。

名称
字符串
项目的显示名称。
orgId
字符串
项目所属组织的唯一标识符。
publicApiEnabled
布尔
指示为此项目启用API的标志。 这是一个始终为true的只读字段。
replicaSetCount
整型
此项目的副本集总数。
shardCount
整型
此项目的分片总数。
标记
字符串数组

分配给项目的标签,用于以编程方式标识项目。

一个项目最多可以有 10 个标签。 标签遵循以下规则:

  • 区分大小写

  • 可以包含以下字符:

    • A 通过 Z

    • 0 通过 9

    • . (句点)

    • _ (下划线)

    • - (破折号)

  • 限制为 32 个字符

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request POST "https://{opsManagerHost}:{port}/api/public/v1.0/groups?pretty=true" \
--data '
{
"name": "Create Project API Example",
"orgId": "deffb2031b938da53f16d714"
}'
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 201 Created
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}
X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
{
"activeAgentCount" : 0,
"agentApiKey": "{GROUP-API-KEY}",
"hostCounts" : {
"arbiter" : 0,
"config" : 0,
"primary" : 0,
"secondary" : 0,
"mongos" : 0
},
"id" : "{PROJECT-ID}",
"ldapGroupMappings" : [ {
"roleName": "GROUP_OWNER",
"ldapGroups": [ project-owner" ]
}, ... ],
"links" : [],
"name" : "Create Project API Test",
"orgId" : "deffb2031b938da53f16d714",
"publicApiEnabled": true,
"replicaSetCount" : 0,
"shardCount" : 0,
"tags": [ "DEV", "PRODUCT" ]
}

后退

通过代理 API 密钥获取一个项目