Navigation

Update One Organization API Key

Base URL: https://cloud.mongodb.com/api/atlas/v1.0

PATCH /orgs/{ORG-ID}/apiKeys/{API-KEY-ID}

All path parameters are required.

NameTypeNecessityDescription
ORG-IDstringRequiredUnique identifier for the organization whose API keys you want to retrieve. Use the /orgs endpoint to retrieve all organizations to which the authenticated user has access.
API-KEY-IDstringRequiredUnique identifier for the API key you want to update. Use the /orgs/{ORG-ID}/apiKeys endpoint to retrieve all API keys to which the authenticated user has access for the specified organization.

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

NameTypeNecessityDescriptionDefault
pageNumintegerOptionalPage number (1-based).1
itemsPerPageintegerOptionalMaximum number of items to return, up to a maximum of 100.100
includeCountbooleanOptionalSpecifies whether the response returns the totalCount field.true
prettybooleanOptionalIndicates whether the response body should be in a prettyprint format.false
envelopebooleanOptional

Flag indicating if Atlas should wrap the response in a JSON 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:

statusHTTP response code
envelopeExpected response body

For endpoints that return a list of results, the results object is an envelope. Atlas adds the status field to the response body.

false

The request must contain either a desc or a roles parameter.

NameTypeNecessityDescription
descstringOptionalDescription of the key. If desc is provided, it must be between 1 and 250 characters long.
rolesstring arrayOptional

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

  • Provide at least one role
  • Make sure all roles must be valid for the Organization

The Organization roles are:

  • ORG_OWNER
  • ORG_MEMBER
  • ORG_GROUP_CREATOR
  • ORG_BILLING_ADMIN
  • ORG_READ_ONLY
NameTypeDescription
descstringDescription of this Organization API key.
idstringUnique identifier for this Organization API key.
linksstringAn 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.
privateKeystring

Redacted Private key for this Organization API key.

Info With Circle IconCreated with Sketch.Note
This key displays unredacted when first created.
publicKeystringPublic key for this Organization API key.
rolesobject arrayRoles that this Organization API key has. This array returns all the Organization and Project roles the user has in Atlas.
roles.groupIdstringUnique identifier of the Project to which this role belongs.
roles.orgIdstringUnique identifier of the Organization to which this role belongs.
roles.roleNamestring

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

Organization Roles

If this is an roles.orgId (organization), values include:

  • ORG_OWNER
  • ORG_MEMBER
  • ORG_GROUP_CREATOR
  • ORG_BILLING_ADMIN
  • ORG_READ_ONLY

Project Roles

If this is a roles.groupId (project), values include:

  • GROUP_CLUSTER_MANAGER
  • GROUP_DATA_ACCESS_ADMIN
  • GROUP_DATA_ACCESS_READ_ONLY
  • GROUP_DATA_ACCESS_READ_WRITE
  • GROUP_OWNER
  • GROUP_READ_ONLY
Info With Circle IconCreated with Sketch.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 --request PATCH "https://cloud.mongodb.com/api/atlas/v1.0/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}?pretty=true" \
5 --data '{
6 "desc" : "Updated API key description for test purposes",
7 "roles": ["ORG_MEMBER", "ORG_READ_ONLY"]
8 }'
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}
1{
2 "desc" : "Updated API key description for test purposes",
3 "id" : "5c47ba5127d9d61b9fd8a27b",
4 "links" : [ {
5 "href" : "https://cloud.mongodb.com/api/atlas/v1.0/orgs/5980cfc70b6d12029d82e3f6/apiKeys/5c47ba5127d9d61b9fd8a27b",
6 "rel" : "self"
7 } ],
8 "privateKey" : "********-****-****-db2c132ca78d",
9 "publicKey" : "{PUBLIC-KEY}",
10 "roles" : [ {
11 "orgId" : "5980cfc70b6d97029d82e3f6",
12 "roleName" : "ORG_MEMBER"
13 }, {
14 "orgId" : "5980cfc70b6d97029d82e3f6",
15 "roleName" : "ORG_READ_ONLY"
16 } ]
17}
Give Feedback