Create One Project
On this page
- OAuth 2.0 authentication for programmatic access to Cloud Manager is available as a Preview feature.
- The feature and the corresponding documentation might change at any time during the Preview period. To use OAuth 2.0 authentication, create a service account to use in your requests to the Cloud Manager Public API.
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.
Base URL: https://cloud.mongodb.com/api/public/v1.0
Required Roles
To create a project within an existing organization, you must have one of the following roles in the specified organization:
Resource
POST /groups
Request Parameters
Request Path Parameters
This endpoint doesn't use HTTP request path parameters.
Request Query Parameters
Name | Type | Necessity | Description | Default | ||||||
---|---|---|---|---|---|---|---|---|---|---|
pretty | boolean | Optional | Flag indicating whether the response body should be in a prettyprint format. |
| ||||||
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:
|
|
Request Body Parameters
Name | Type | Necessity | Description |
---|---|---|---|
name | string | Required | Human-readable label that identifies the project. |
orgId | string | Required | Unique 24-hexadecimal digit string that identifies the organization within which to create the project. Cloud Manager set the oldest |
Response
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
|
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 |
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 |
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 "https://cloud.mongodb.com/api/public/v1.0/groups?pretty=true" \ --data ' { "name": "Create Project API Example", "orgId": "deffb2031b938da53f16d714" }'
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
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, "mongos" : 0, "primary" : 0, "secondary" : 0 }, "id" : "{PROJECT-ID}", "links" : [], "name" : "Create Project API Example", "orgId" : "{ORG-ID}", "publicApiEnabled" : true, "replicaSetCount" : 0, "shardCount" : 0, "tags" : [ ] }