创建一个项目
注意
注意:群组和项目是同义词。您的 {PROJECT-ID}
与您的项目 ID 相同。对于现有群组,群组/项目 ID 保持不变。当引用说明时,此页面将使用“群组”这个更为人熟知的术语。端点仍如文档中所述。
基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
所需角色
要在现有组织中创建项目,您必须在指定组织中具有以下角色之一:
注意
如果您使用来自没有Organization Owner
的组织的 API密钥创建项目,Ops Manager 将创建没有Project Owner
的项目。
Resource
POST /groups
请求参数
请求路径参数
此端点不使用 HTTP 请求路径参数。
请求查询参数
名称 | 类型 | 必要性 | 说明 | 默认 | ||||||
---|---|---|---|---|---|---|---|---|---|---|
pretty | 布尔 | Optional | 指示响应正文是否应采用 Prettyprint 的标志 格式。 | false | ||||||
envelope | 布尔 | Optional | 指示是否将响应包装在信封中的标志。 某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true。 对于返回一个结果的端点,响应体包括:
| false |
请求正文参数
名称 | 类型 | 必要性 | 说明 |
---|---|---|---|
名称 | 字符串 | 必需 | 用于标识项目的人类可读标签。 |
orgId | 字符串 | 必需 | 唯一的 24-十六进制数字string ,用于标识要在其中创建项目的组织。 Ops Manager 将指定组织最早的 |
响应
名称 | 类型 | 说明 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ActiveAgentCount | 整型 | 定期向 Ops Manager 发送网络探测(ping)的活动代理数量。 该值大约每24小时刷新并缓存。 如果启动新代理或停止现有代理,则更改最多可能需要30分钟才能显示在 | ||||||||||||||||||
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. 项目角色到
| ||||||||||||||||||
ldapGroupMappings .ldapGroups | 字符串数组 | 映射到 Ops Manager 角色的 LDAP 项目。 | ||||||||||||||||||
链接 | 对象数组 | 指向子资源和/或相关资源的一个或多个链接。 响应中的所有 | ||||||||||||||||||
名称 | 字符串 | 项目的显示名称。 | ||||||||||||||||||
orgId | 字符串 | 项目所属组织的唯一标识符。 | ||||||||||||||||||
publicApiEnabled | 布尔 | 指示为此项目启用API的标志。 这是一个始终为 true 的只读字段。 | ||||||||||||||||||
replicaSetCount | 整型 | 此项目的副本集总数。 | ||||||||||||||||||
shardCount | 整型 | 此项目的分片总数。 | ||||||||||||||||||
标记 | 字符串数组 | 分配给项目的标签,用于以编程方式标识项目。
一个项目最多可以有 10 个标签。 标签遵循以下规则:
|
请求示例
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" }'
响应示例
响应标头
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
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" ] }