Docs Menu

Docs HomeMongoDB Ops Manager

Update One Project

On this page

  • Resource
  • Request Parameters
  • Request Path Parameters
  • Request Query Parameters
  • Request Body Parameters
  • Response
  • Example Request
  • Example Response

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.

Use this endpoint to make any of the following changes to one project:

  • Change one project's name.

  • Add and remove tags from one project.

  • Map LDAP groups to Ops Manager roles for one project.

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

PATCH /groups/{PROJECT-ID}
Name
Type
Description
PROJECT-ID
string
(Required.) The unique identifier for the project.

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 include at least one of the following fields in the request body:

Name
Type
Necessity
Description
name
string
Optional
The new name for the project.
tags
string array
Optional

The tags assigned to the project for use in programmatically identifying the project.

A project can have up to 10 tags. Tags follow these rules:

  • Are case-sensitive

  • Can contain these characters:

    • A through Z

    • 0 through 9

    • . (period)

    • _ (underscore)

    • - (dash)

  • Are limited to 32 characters

ldapGroupMappings
object array
Optional
For LDAP-backed Ops Manager, the mappings of LDAP groups to Ops Manager project roles. Only accepted for LDAP-backed Ops Manager.
Name
Type
Description
activeAgentCount
integer

Number of active agents sending regular pings to Ops Manager.

The value is refreshed about every 24 hours and cached. If you start a new agent or stop an existing one, the change can take up to 30 minutes to show up in the activeAgentCount field.

hostCounts
object
Total number of hosts by type. The embedded fields should be self-explanatory.
id
string
Unique identifier for the project.
lastActiveAgent
string
Time Ops Manager last updated the activeAgentCount total for the project. Ops Manager refreshes this value every 24 hours and caches it to record the number of active MongoDB Agents.
ldapGroupMappings
object array
For LDAP-backed Ops Manager, the mappings of LDAP groups to Ops Manager project roles. Only present for LDAP-backed Ops Manager.
ldapGroupMappings
.roleName
string

Ops Manager user role. The mapping of Project Role to roleName follows:

User Role
roleName Value
Project Owner (required)
GROUP_OWNER
GROUP_AUTOMATION_ADMIN
GROUP_BACKUP_ADMIN
GROUP_MONITORING_ADMIN
GROUP_DATA_ACCESS_ADMIN
GROUP_DATA_ACCESS_READ_WRITE
GROUP_DATA_ACCESS_READ_ONLY
GROUP_READ_ONLY
ldapGroupMappings
.ldapGroups
string array
LDAP project(s) that map to the Ops Manager role.
links
object array

One or more links to sub-resources and/or related resources. All links arrays in responses include at least one link called self. The relationships between URLs are explained in the Web Linking Specification.

name
string
Display name for the project.
orgId
string
Unique identifier for the organization to which the project belongs.
publicApiEnabled
boolean
Flag indicating that the API is enabled for this project. This is a read-only field that is always true.
replicaSetCount
integer
Total number of replica sets for this project.
shardCount
integer
Total number of shards for this project.
tags
string array

Tags assigned to the project for use in programmatically identifying the project.

A project can have up to 10 tags. Tags follow these rules:

  • Are case-sensitive

  • Can contain these characters:

    • A through Z

    • 0 through 9

    • . (period)

    • _ (underscore)

    • - (dash)

  • Are limited to 32 characters

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--include \
--request PATCH "https://{opsManagerHost}:{port}/api/public/v1.0/groups/{PROJECT-ID}?pretty=true" \
--data '
{
"ldapGroupMappings": [{
"roleName": "GROUP_OWNER",
"ldapGroups": [
"project-owner"
]
}],
"name": "Project Name 1",
"tags": [ "DEV", "PRODUCT" ]
}'
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 "id": "{PROJECT-ID}",
3 "name": Project Name 1",
4 "orgId" : "{ORG-ID}",
5 "hostCounts": {
6 "arbiter": 2,
7 "config": 1,
8 "primary": 4,
9 "secondary": 8,
10 "mongos": 2
11 },
12 "lastActiveAgent": ISODate("2016-08-05T07:23:34Z"),
13 "activeAgentCount": 1,
14 "replicaSetCount": 3,
15 "shardCount": 2,
16 "publicApiEnabled": true,
17 "agentApiKey": "{API-KEY}",
18 "tags": [ "DEV", "PRODUCT" ],
19 "ldapGroupMappings" : [ {
20 "roleName": "GROUP_OWNER",
21 "ldapGroups": [ "project-owner" ]
22 }, ... ],
23 "links" : []
24}
←  Create One ProjectDelete One Project →