Navigation

Get a Group by Name

Note

Groups and projects are synonymous terms. Your {GROUP-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.

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

Resource

GET /groups/byName/{GROUP-NAME}

Request Parameters

Request Path Parameters

Name Type Description
GROUP-NAME string (Required.) The name of the group.

Request Query Parameters

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

Name Type Description Default
pretty boolean Indicates whether the response body should be in a prettyprint format. false
envelope boolean

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:

status
HTTP response code
envelope
The expected response body
false

Request Body Parameters

This endpoint does not use HTTP request body parameters.

Response

Name Type Description
activeAgentCount number

Number of active agents of any type (Monitoring, Backup, Automation) 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.

agentApiKey string

agent API key for the group.

You must have the Project Owner or Global Read Only role to view this field.

hostCounts object Total number of hosts by type. The embedded fields should be self-explanatory.
id string Unique identifier for the group.
lastActiveAgent date Time Ops Manager last updated the activeAgentCount total for the group. Ops Manager refreshes this value every 24 hours and caches it to record the number of active agents of any type (Monitoring, Backup, Automation).
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
Project Automation Admin GROUP_AUTOMATION_ADMIN
Project Backup Admin GROUP_BACKUP_ADMIN
Project Monitoring Admin GROUP_MONITORING_ADMIN
Project Data Access Admin GROUP_DATA_ACCESS_ADMIN
Project Data Access Read/Write GROUP_DATA_ACCESS_READ_WRITE
Project Data Access Read Only GROUP_DATA_ACCESS_READ_ONLY
Project Read Only GROUP_READ_ONLY
ldapGroupMappings.ldapGroups string array LDAP group(s) that map to the Ops Manager role.
links object array One or more links to sub-resources and/or related resources. The relations between URLs are explained in the Web Linking Specification
name string Display name for the group.
orgId string Unique identifier for the organization to which the group/project belongs.
publicApiEnabled boolean Indicator that the Public API is enabled for this group. This is a read-only field that is always true.
replicaSetCount number Total number of replica sets for this group.
shardCount number Total number of shards for this group.
tags string array

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

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

Example Request

curl --user "{username}:{apiKey}" --digest \
 --include \
 --request GET "https://{opsManagerHost}:{port}/api/public/v1.0/groups/byName/{GROUP-NAME}?pretty=true"

Important

Some characters are not allowed in URLs. These are called reserved characters. If your {GROUP-NAME} includes reserved characters, like spaces, you must replace them with their percent encoding.

Example

Instead of making this request (via curl):

curl --user "{username}:{apiKey}" --digest \
 --header "Accept: application/json" \
 --include \
 --request GET "https://cloud.mongodb.com/api/public/v1.0/groups/byName/My Group?pretty=true"

Make this request (via curl):

curl --user "{username}:{apiKey}" --digest \
 --header "Accept: application/json" \
 --include \
 --request GET "https://cloud.mongodb.com/api/public/v1.0/groups/byName/My%20Group?pretty=true"

Example Response

Response Header

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}

Response Body

{
  "activeAgentCount": 1,
  "agentApiKey": "{AGENT-API-KEY}",
  "hostCounts": {
    "arbiter": 2,
    "config": 1,
    "primary": 4,
    "secondary": 8,
    "mongos": 2,
    "master": 0,
    "slave": 0
  },
  "id": "{GROUP-ID}",
  "ldapGroupMappings" : [ {
    "roleName": "GROUP_OWNER",
    "ldapGroups": [ "group-owner" ]
    }, ... ],
  "lastActiveAgent": ISODate("2016-08-05T07:23:34Z"),
  "links" : [],
  "name": "My Group",
  "orgId" : "111111111cccccf38dc78bdf",
  "publicApiEnabled": true,
  "replicaSetCount": 3,
  "shardCount": 2,
  "tags": [ "DEV", "PRODUCT" ]
}