Navigation
This version of the documentation is archived and no longer supported. To learn how to upgrade your version of MongoDB Ops Manager, refer to the upgrade documentation.
You were redirected from a different version of the documentation. Click here to go back.

Add Existing Users to One Group

Note

Groups and projects are synonymous terms. Your {GROUP-ID} is the same as your project id. For existing groups, your group/project id remains the same. This page uses the more familiar term group when referring to descriptions. The endpoint remains as stated in the document.

This resource adds users who exist in Ops Manager to another group. It does not create new users and add them to a group.

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

Resource

POST /groups/{GROUP-ID}/users

Request Parameters

Request Path Parameters

Parameter Type Description
GROUP-ID string (Required.) The unique identifier for the group.

Request Query Parameters

This endpoint may use any of the HTTP request query parameters available to all Ops Manager API resources. These are all optional.

Name Type Description Default
pretty boolean Flag indicating whether the response body should be in a prettyprint format. false
envelope boolean

Flag indicating whether or not to wrap the response in an envelope.

Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query.

For endpoints that return one result, response body includes:

status
HTTP response code
envelope
The expected response body
false

Request Body Parameters

Name Type Description
id string The unique identifier for an existing user.
roles object array The roles to which this user is assigned.
roles.groupId string The unique identifier for the group role.
roles.roleName string The display name for the user role.

Response

Name Type Description
emailAddress string The email address for the Ops Manager user.
firstName string The first name displayed for the returned Ops Manager user.
id string The unique identifier for the user.
links object array One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification
lastName string The last name displayed for the returned Ops Manager user.
roles object array The roles to which this user is assigned.
roles.groupId string The unique identifier for the group role.
roles.roleName string The display name for the user role.
username string The Ops Manager username.

Example Request

curl --user "{username}:{apiKey}" --digest \
 --header "Accept: application/json" \
 --header "Content-Type: application/json" \
 --include \
 --request POST "https://{opsManagerHost}:{port}/api/public/v1.0/groups/{GROUP-ID}/users?pretty=true" \
 --data '
 [
   {
     "id": "{USER-ID}",
     "roles": [{
       "roleName": "GROUP_OWNER"
     }]
   }
 ]'

Note

You must send an array of entities, even if adding a single user. For each user that you wish to add, specify the user ID and the roles the user should possess. For possible role values, see the description of the roles.roleName field in the users resource’s field descriptions.

If you specify a user that is already a member of the group, their existing roles are overwritten with the specified permissions.

Example Response

Response Header

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 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}

Response Body

{
  "links" : [ {
    "href" : "http://{opsManagerHost}:{port}/api/public/v1.0/groups/{GROUP-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" : "http://{opsManagerHost}:{port}/api/atlas/v1.0/users/{USER-ID}",
      "rel" : "self"
    }, {
      "href" : "http://{opsManagerHost}:{port}/api/atlas/v1.0/users/{USER-ID}/whitelist",
      "rel" : "http://mms.mongodb.com/whitelist"
    } ],
    "roles" : [ {
      "groupId" : "{GROUP-ID}",
      "roleName" : "GROUP_OWNER"
    }, {
      "groupId" : "{OTHER-GROUP-ID}",
      "roleName" : "GROUP_OWNER"
    }
    ...
    ],
    "username" : "joe.bloggs"
  }, {
    "emailAddress" : "jim.bloggs@example.com",
    "firstName" : "Jim",
    "id" : "{OTHER-USER-ID}",
    "lastName" : "Bloggs",
    "links" : [ {
      "href" : "http://{opsManagerHost}:{port}/api/atlas/v1.0/users/{OTHER-USER-ID}",
      "rel" : "self"
    }, {
      "href" : "http://{opsManagerHost}:{port}/api/atlas/v1.0/users/{OTHER-USER-ID}/whitelist",
      "rel" : "http://mms.mongodb.com/whitelist"
    } ],
    "roles" : [ {
      "roleName" : "GLOBAL_READ_ONLY"
    }, {
      "groupId" : "{GROUP-ID}",
      "roleName" : "GROUP_OWNER"
    } ],
    "username" : "jim.bloggs"
  } ],
  "totalCount" : 2
}