Update Advanced Configuration Options for One Cluster

PATCH /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs

Updates the advanced configuration details for one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. Advanced configuration details include the read/write concern, index and oplog limits, and other database settings. To use this resource, the requesting Service Account or API Key must have the Project Cluster Manager role. This feature isn't available for M0 free clusters, M2 and M5 shared-tier clusters, flex clusters, or serverless clusters. Deprecated versions: v2-{2023-01-01}

Global Clusters

Path parameters

  • groupId string Required

    Unique 24-hexadecimal digit string that identifies your project. Use the /groups endpoint to retrieve all projects to which the authenticated user has access.

    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. The resource and corresponding endpoints use the term groups.

    Format should match the following pattern: ^([a-f0-9]{24})$.

  • clusterName string Required

    Human-readable label that identifies the cluster.

    Format should match the following pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$.

Query parameters

  • envelope boolean

    Flag that indicates whether Application wraps the response in an envelope JSON object. Some API clients cannot access the HTTP response headers or status code. To remediate this, set envelope=true in the query. Endpoints that return a list of results use the results object as an envelope. Application adds the status parameter to the response body.

    Default value is false.

  • pretty boolean

    Flag that indicates whether the response body should be in the prettyprint format.

    Default value is false.

    Prettyprint
application/vnd.atlas.2024-08-05+json

Body Required

Advanced configuration details to add for one cluster in the specified project.

Responses

PATCH /api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs
atlas api updateClusterAdvancedConfiguration --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20250312001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	client, err := sdk.NewClient(
		sdk.UseOAuthAuth(clientID, clientSecret),
		sdk.UseBaseURL(url))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.UpdateClusterAdvancedConfigurationApiParams{}
	sdkResp, httpResp, err := client.ClustersApi.
		UpdateClusterAdvancedConfigurationWithParams(ctx, params).
		Execute()
}
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs" \
  -d '{ <Payload> }'
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest \
  --header "Accept: application/vnd.atlas.2025-03-12+json" \
  --header "Content-Type: application/json" \
  -X PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs" \
  -d '{ <Payload> }'
Request examples
{
  "changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
  "chunkMigrationConcurrency": 42,
  "customOpensslCipherConfigTls12": [
    "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
  ],
  "defaultMaxTimeMS": 42,
  "defaultWriteConcern": "string",
  "javascriptEnabled": true,
  "minimumEnabledTlsProtocol": "TLS1_0",
  "noTableScan": true,
  "oplogMinRetentionHours": 42.0,
  "oplogSizeMB": 42,
  "queryStatsLogVerbosity": 42,
  "sampleRefreshIntervalBIConnector": 0,
  "sampleSizeBIConnector": 42,
  "tlsCipherConfigMode": "CUSTOM",
  "transactionLifetimeLimitSeconds": 42
}
Response examples (200)
{
  "changeStreamOptionsPreAndPostImagesExpireAfterSeconds": -1,
  "chunkMigrationConcurrency": 42,
  "customOpensslCipherConfigTls12": [
    "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"
  ],
  "defaultMaxTimeMS": 42,
  "defaultWriteConcern": "string",
  "javascriptEnabled": true,
  "minimumEnabledTlsProtocol": "TLS1_0",
  "noTableScan": true,
  "oplogMinRetentionHours": 42.0,
  "oplogSizeMB": 42,
  "queryStatsLogVerbosity": 42,
  "sampleRefreshIntervalBIConnector": 0,
  "sampleSizeBIConnector": 42,
  "tlsCipherConfigMode": "CUSTOM",
  "transactionLifetimeLimitSeconds": 42
}
Response examples (400)
{
  "error": 400,
  "detail": "(This is just an example, the exception may not be related to this endpoint) No provider AWS exists.",
  "reason": "Bad Request",
  "errorCode": "VALIDATION_ERROR"
}
Response examples (401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
Response examples (403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
Response examples (404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
Response examples (500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}