Update One Project
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.
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
Resource
PATCH /groups/{PROJECT-ID}
Request Parameters
Request Path Parameters
Name | Type | Description |
---|---|---|
PROJECT-ID | string | (Required.) The unique identifier for the project. |
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
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:
|
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. |
Response
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
| ||||||||||||||||||
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
| ||||||||||||||||||
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
| ||||||||||||||||||
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:
|
Example Request
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" ] }'
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
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}
Response Body
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 }