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

将现有用户添加到一个项目

注意

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

此资源将Cloud Manager中存在的用户添加到另一个项目。 它不会创建新用户并将其添加到项目中。 默认,用户首先会收到项目邀请。 仅当设立mms.user.bypassInviteForExistingUsers设置为true时,才能将用户直接添加到项目中。

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

POST /groups/{PROJECT-ID}/users
Parameter
类型
说明

PROJECT-ID

字符串

(必需。) 项目的唯一标识符。

以下查询参数为可选参数:

名称
类型
必要性
说明
默认

pretty

布尔

Optional

指示响应正文是否应采用 prettyprint 格式的标记。

false

envelope

布尔

Optional

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

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

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

  • status: HTTP 响应代码

  • content:预期响应正文

false

名称
类型
说明

id

字符串

现有用户的唯一标识符。

角色

对象数组

为该用户分配的角色。

roles.groupId

字符串

项目角色的唯一标识符。

roles.roleName

字符串

用户角色的显示名称。

名称
类型
说明

邮箱

字符串

Cloud Manager用户的电子邮件解决。

名

字符串

为返回的Cloud Manager用户显示的名字。

id

字符串

用户的唯一标识符。

链接

对象数组

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

姓

字符串

为返回的Cloud Manager用户显示的姓氏。

角色

对象数组

为该用户分配的角色。

roles.groupId

字符串

项目角色的唯一标识符。

roles.roleName

字符串

用户角色的显示名称。

用户名

字符串

Cloud Manager 用户名。

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}/users?pretty=true" \ --data ' [ { "id": "{USER-ID}", "roles": [{ "roleName": "GROUP_OWNER" }] } ]'

注意

即使添加单个用户,也必须发送实体数组。 对于要添加的每个用户,请指定用户 ID 和用户应具有的角色。 有关角色值,请参阅用户资源中roles.roleName字段的说明。

如果指定的用户已经是项目成员,则其现有角色将被指定的权限覆盖。

HTTP/1.1 401 UnauthorizedContent-Type: application/json;charset=ISO-8859-1Date: {dateInUnixFormat}WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=falseContent-Length: {requestLengthInBytes}Connection: keep-alive
HTTP/1.1 200 OKVary: Accept-EncodingContent-Type: application/jsonStrict-Transport-Security: max-age=300Date: {dateInUnixFormat}Connection: keep-aliveContent-Length: {requestLengthInBytes}X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
{ "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/users?pretty=true&pageNum=1&itemsPerPage=100", "rel" : "self" } ], "results" : [ { "emailAddress" : "joe.bloggs@example.com", "firstName" : "Joe", "id" : "{USER-ID}", "lastName" : "Bloggs", "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{USER-ID}", "rel" : "self" }, { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{USER-ID}/accessList", "rel" : "http://mms.mongodb.com/accessList" } ], "roles" : [ { "groupId" : "{PROJECT-ID}", "roleName" : "GROUP_OWNER" }, { "groupId" : "{OTHER-PROJECT-ID}", "roleName" : "GROUP_OWNER" } ... ], "username" : "joe.bloggs" }, { "emailAddress" : "jim.bloggs@example.com", "firstName" : "Jim", "id" : "{OTHER-USER-ID}", "lastName" : "Bloggs", "links" : [ { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{OTHER-USER-ID}", "rel" : "self" }, { "href" : "https://cloud.mongodb.com/api/public/v1.0/users/{OTHER-USER-ID}/accessList", "rel" : "http://mms.mongodb.com/accessList" } ], "roles" : [ { "roleName" : "GLOBAL_READ_ONLY" }, { "groupId" : "{PROJECT-ID}", "roleName" : "GROUP_OWNER" } ], "username" : "jim.bloggs" } ], "totalCount" : 2}