You were redirected from a different version of the documentation. Click here to go back.

Create One Project


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.

Base URL:


POST /groups

Request Parameters

Request Path Parameters

This endpoint does not use HTTP request path parameters.

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:

Name Description
status HTTP response code
envelope Expected response body

Request Body Parameters

Name Type Description
name string Required. The display name for the project.
orgId string

Unique identifier of the organization within which to create the project. This field is required when using Programmatic API Key credentials.

If you use Cloud Manager user authentication and do not specify an orgId, Cloud Manager creates an organization using the name value and places the project within that organization. The authenticated user automatically becomes the Organization Owner of the new organization and the Project Owner of the new project.

To create a project within an existing organization, you must have either Organization Project Creator role or Organization Owner role for the organization.


To create a project using Programmatic API Key credentials, you must specify an orgId. When you do, the oldest Owner of the specified organization automatically becomes a Project Owner for the newly created project.


Name Type Description
activeAgentCount integer

Number of active agents sending regular pings to Cloud 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 group.
lastActiveAgent string Time Cloud Manager last updated the activeAgentCount total for the project. Cloud Manager refreshes this value every 24 hours and caches it to record the number of active MongoDB Agents.
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.

Example Request

curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \
 --header "Accept: application/json" \
 --header "Content-Type: application/json" \
 --include \
 --request POST "" \
 --data '
     "name": "Create Project API Example",
     "orgId": "111111111aaaaaf38dc78bdf"

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 201 Created
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

  "activeAgentCount" : 0,
  "agentApiKey" : "{GROUP-API-KEY}",
  "hostCounts" : {
    "arbiter" : 0,
    "config" : 0,
    "master" : 0,
    "mongos" : 0,
    "primary" : 0,
    "secondary" : 0,
    "slave" : 0
  "id" : "{PROJECT-ID}",
  "links" : [],
  "name" : "Create Project API Example",
  "orgId" : "{ORG-ID}",
  "publicApiEnabled" : true,
  "replicaSetCount" : 0,
  "shardCount" : 0,
  "tags" : [ ]