Docs Menu

Docs HomeMongoDB Ops Manager

Create One Global API Key

On this page

  • Resource
  • Required Roles
  • Request Parameters
  • Request Path Parameters
  • Request Query Parameters
  • Request Body Parameters
  • Response
  • Example Request
  • Example Response
  • Response Header
  • Response Body

Create one Global API Key for Ops Manager.

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

POST /admin/apiKeys

Requires that the API Key calling this endpoint have the Global Owner role.

This endpoint doesn't use HTTP request path 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:

Name
Description
status
HTTP response code
envelope
Expected response body
false

You must provide all request body parameters.

Name
Type
Necessity
Description
desc
string
Required
Description of the Global API Key. Must be between 1 and 250 characters in length.
roles
string array
Required

List of roles that the Global API Key needs to have. If the roles array is provided:

  • Provide at least one role

  • Make sure all roles are valid.

Global roles accepted by default include:

Role Value in API
Role
GLOBAL_AUTOMATION_ADMIN
GLOBAL_BACKUP_ADMIN
GLOBAL_MONITORING_ADMIN
GLOBAL_OWNER
GLOBAL_READ_ONLY
GLOBAL_USER_ADMIN
Name
Type
Description
desc
string
Description of this Global API Key.
id
string
Unique identifier for this Global API Key.
links
string
An array of documents, representing a link to one or more sub-resources and/or related resources such as list pagination. See Linking for more information.
privateKey
string
Unredacted Private key for this Global API Key.
publicKey
string
Public key for this Global API Key.
roles
object array
Roles that this Global API Key has. This array returns all the Global roles the user has in Ops Manager.
roles.roleName
string

Name of the role. This resource returns all the roles the user has in Ops Manager. Possible values are:

Role Value in API
Role
GLOBAL_AUTOMATION_ADMIN
GLOBAL_BACKUP_ADMIN
GLOBAL_MONITORING_ADMIN
GLOBAL_OWNER
GLOBAL_READ_ONLY
GLOBAL_USER_ADMIN

Note

The user who makes the request can be formatted either as {USERNAME}:{APIKEY} or {PUBLIC-KEY}:{PRIVATE-KEY}.

1curl --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/admin/apiKeys?pretty=true" \
6 --data '{
7 "desc" : "New API key for Global Testing",
8 "roles" : [ "GLOBAL_READ_ONLY", "GLOBAL_USER_ADMIN" ]
9 }'
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}
X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
1{
2 "desc" : "New API key for Global Testing",
3 "id" : "5d669ce780eef52a42cf0e1e",
4 "links" : [ {
5 "href" : "https://<OpsManagerHost>:<Port>/api/public/v1.0/orgs/null/apiKeys/5d669ce780eef52a42cf0e1e",
6 "rel" : "self"
7 } ],
8 "privateKey" : "8d080e57-5fd6-495c-9388-fe348ed1796f",
9 "publicKey" : "cfswjfck",
10 "roles" : [ {
11 "roleName" : "GLOBAL_READ_ONLY"
12 }, {
13 "roleName" : "GLOBAL_USER_ADMIN"
14 } ]
15}
←  Get One Global API KeyUpdate One Global API Key →