Create One User
On this page
Note
Groups and projects are synonymous terms. Your {PROJECT-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.
Create a new user. By default, any non-global organization and project roles in the payload send users an invitation to the organization or project first.
Resource
Base URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
POST /users
Request Path Parameters
This endpoint doesn't use HTTP request path parameters.
Request Query Parameters
The following query parameters are optional:
Name | Type | Necessity | Description | Default | ||||||
---|---|---|---|---|---|---|---|---|---|---|
pretty | boolean | Optional | Flag indicating whether the response body should be in a
prettyprint format. | false | ||||||
envelope | boolean | Optional | Flag that indicates 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, the response body includes:
| false |
Request Body Parameters
All fields are required.
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
username | string | Username of the Ops Manager user. Validated depending on the
value of the
See | ||||||||||||||||||||||||||||||||||||||||
password | string | Password of the Ops Manager user. This field is not included in the entity returned from the server. It can be sent only in the entity body when you create a new user. | ||||||||||||||||||||||||||||||||||||||||
emailAddress | string | Email address of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
mobileNumber | string | Mobile telephone number of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
firstName | string | First name of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
lastName | string | Last name of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
roles | object array | Role assignments of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
roles.orgId | string | Unique identifier of the organization in which the Ops Manager user
has the specified role. | ||||||||||||||||||||||||||||||||||||||||
roles.groupId | string | Unique identifier of the group in which the Ops Manager user has the specified role. For the "global" roles (those whose name starts
with | ||||||||||||||||||||||||||||||||||||||||
roles.roleName | string | Name of the role. Accepted values are:
|
Response
The JSON document contains each of the following elements:
Name | Type | Description | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
emailAddress | string | Email address of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
firstName | string | First name of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
id | string | Unique identifier of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
lastName | string | Last name of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
links | object array | Links to related sub-resources. All links arrays in
responses include at least one link called self. The
relationship between URLs are explained in the
Web Linking Specification. | ||||||||||||||||||||||||||||||||||||||||
mobileNumber | string | Mobile number of the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
roles | empty array | Role assigned to the Ops Manager user. | ||||||||||||||||||||||||||||||||||||||||
roles .groupId | string | Unique identifier for the project in which the user has the specified role. Roles that start with | ||||||||||||||||||||||||||||||||||||||||
roles .orgId | string | Unique identifier for the organization in which the user has
the specified role. | ||||||||||||||||||||||||||||||||||||||||
roles .roleName | string | Name of the role. Accepted values are:
| ||||||||||||||||||||||||||||||||||||||||
username | string | Username of the Ops Manager user. |
Example Request
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --header "Content-Type: application/json" \ 4 --include \ 5 --request POST "https://<OpsManagerHost>:<Port>/api/public/v1.0/users" \ 6 --data ' 7 { 8 "username": "jane.doe@mongodb.com", 9 "emailAddress": "jane.doe@mongodb.com", 10 "firstName": "Jane", 11 "lastName": "Doe", 12 "password": "M0ng0D8!:)", 13 "roles": [{ 14 "groupId": "533daa30879bb2da07807696", 15 "roleName": "GROUP_USER_ADMIN" 16 },{ 17 "orgId" : "55555bbe3bd5253aea2d9b16", 18 "roleName" : "ORG_MEMBER" 19 }] 20 }'
Example Response
Response Header
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}
Response Body
{ "id" : "533dc19ce4b00835ff81e2eb", "username" : "jane.doe@mongodb.com", "emailAddress" : "jane.doe@mongodb.com", "firstName" : "Jane", "lastName" : "Doe", "roles" : [], "links" : [] }