components:
headers:
HeaderRateLimitLimit:
description: The maximum number of requests that a user can make within a specific time window.
schema:
type: integer
HeaderRateLimitRemaining:
description: The number of requests remaining in the current rate limit window before the limit is reached.
schema:
type: integer
HeaderRetryAfter:
description: The minimum time you should wait, in seconds, before retrying the API request. This header might be returned for 429 or 503 error responses.
schema:
type: integer
parameters:
collectionName:
description: Human-readable label that identifies the collection.
in: path
name: collectionName
required: true
schema:
example: mycoll
type: string
databaseName:
description: Human-readable label that identifies the database.
in: path
name: databaseName
required: true
schema:
example: mydb
type: string
end:
description: Date and time when MongoDB Cloud stops reporting the metrics. This parameter expresses its value in the ISO 8601 timestamp format in UTC. Include this parameter when you do not set **period**.
in: query
name: end
schema:
format: date-time
type: string
envelope:
description: 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.
in: query
name: envelope
schema:
default: false
type: boolean
federationSettingsId:
description: Unique 24-hexadecimal digit string that identifies your federation.
in: path
name: federationSettingsId
required: true
schema:
example: 55fa922fb343282757d9554e
pattern: ^([a-f0-9]{24})$
type: string
granularity:
description: Duration that specifies the interval at which Atlas reports the metrics. This parameter expresses its value in the ISO 8601 duration format in UTC.
in: query
name: granularity
required: true
schema:
example: PT1M
type: string
groupId:
description: |-
Unique 24-hexadecimal digit string that identifies your project. Use the [/groups](#tag/Projects/operation/listProjects) 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.
in: path
name: groupId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
identityProviderId:
description: Legacy 20-hexadecimal digit string that identifies the identity provider. This id can be found within the Federation Management Console > Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider.
in: path
name: identityProviderId
required: true
schema:
example: c2777a9eca931f29fc2f
pattern: ^([a-f0-9]{20})$
type: string
includeCount:
description: Flag that indicates whether MongoDB Cloud calculates the total number of items for the response. When set to `false`, MongoDB Cloud may skip an additional count operation. The response may still include `totalCount` when the count is available without additional calculation.
in: query
name: includeCount
schema:
default: true
type: boolean
indexName:
description: Human-readable label that identifies the index.
in: path
name: indexName
required: true
schema:
example: myindex
type: string
itemsPerPage:
description: Number of items that the response returns per page.
in: query
name: itemsPerPage
schema:
default: 100
maximum: 500
minimum: 1
type: integer
liveMigrationId:
description: Unique 24-hexadecimal digit string that identifies the migration.
in: path
name: liveMigrationId
required: true
schema:
example: 6296fb4c7c7aa997cf94e9a8
pattern: ^([a-f0-9]{24})$
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization that contains your projects. Use the [`/orgs`](#tag/Organizations/operation/listOrganizations) endpoint to retrieve all organizations to which the authenticated user has access.
in: path
name: orgId
required: true
schema:
example: 4888442a3354817a7320eb61
pattern: ^([a-f0-9]{24})$
type: string
pageNum:
description: Number of the page that displays the current set of the total objects that the response returns.
in: query
name: pageNum
schema:
default: 1
minimum: 1
type: integer
period:
description: Duration over which Atlas reports the metrics. This parameter expresses its value in the ISO 8601 duration format in UTC. Include this parameter when you do not set **start** and **end**.
in: query
name: period
schema:
example: PT10H
type: string
pretty:
description: Flag that indicates whether the response body should be in the prettyprint format.
in: query
name: pretty
schema:
default: false
externalDocs:
description: Prettyprint
url: https://en.wikipedia.org/wiki/Prettyprint
type: boolean
processId:
description: Combination of hostname and IANA port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (mongod or mongos). The port must be the IANA port on which the MongoDB process listens for requests.
in: path
name: processId
required: true
schema:
example: my.host.name.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
type: string
sandboxConfigId:
description: Unique 24-hexadecimal digit string that identifies the sandbox configuration.
in: path
name: sandboxConfigId
required: true
schema:
example: 507f1f77bcf86cd799439011
pattern: ^([a-f0-9]{24})$
type: string
start:
description: Date and time when MongoDB Cloud begins reporting the metrics. This parameter expresses its value in the ISO 8601 timestamp format in UTC. Include this parameter when you do not set **period**.
in: query
name: start
schema:
format: date-time
type: string
responses:
accepted:
description: Accepted.
badRequest:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint) No provider AWS exists.
error: 400
errorCode: VALIDATION_ERROR
reason: Bad Request
schema:
$ref: "#/components/schemas/ApiError"
description: Bad Request.
conflict:
content:
application/json:
example:
detail: "(This is just an example, the exception may not be related to this endpoint) Cannot delete organization link while there is active migration in following project ids: 60c4fd418ebe251047c50554"
error: 409
errorCode: CANNOT_DELETE_ORG_ACTIVE_LIVE_MIGRATION_ATLAS_ORG_LINK
reason: Conflict
schema:
$ref: "#/components/schemas/ApiError"
description: Conflict.
forbidden:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 403
errorCode: CANNOT_CHANGE_GROUP_NAME
reason: Forbidden
schema:
$ref: "#/components/schemas/ApiError"
description: Forbidden.
forbiddenOrResourcePolicyViolation:
content:
application/json:
examples:
forbidden:
summary: Forbidden
value:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 403
errorCode: CANNOT_CHANGE_GROUP_NAME
reason: Forbidden
resourcePolicyViolation:
summary: Atlas Resource Policy violation
value:
detail: Invalid Configuration. Contains selections that are unavailable due to your organization's resource policies.
error: 403
errorCode: ATLAS_RESOURCE_POLICIES_VIOLATION_NOT_AUTHORIZED
parameters: []
policiesCausingDecision:
- id: 32b6e34b3d91647abb20e7b8
name: forbid-aws-clusters
reason: Forbidden
schema:
$ref: "#/components/schemas/ApiError"
description: Forbidden. Atlas Resource Policy details are returned only when an Atlas Resource Policy denies the request.
gone:
content:
application/json:
example:
detail: This happens when a resource is marked for sunset and the sunset date is in the past.
error: 410
errorCode: VERSION_GONE
reason: Gone
schema:
$ref: "#/components/schemas/ApiError"
description: Gone.
internalServerError:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 500
errorCode: UNEXPECTED_ERROR
reason: Internal Server Error
schema:
$ref: "#/components/schemas/ApiError"
description: Internal Server Error.
methodNotAllowed:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 405
errorCode: ATLAS_BACKUP_CANCEL_SHARD_RESTORE_JOB_NOT_ALLOWED
reason: Method Not Allowed
schema:
$ref: "#/components/schemas/ApiError"
description: Method Not Allowed.
notFound:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS
error: 404
errorCode: RESOURCE_NOT_FOUND
reason: Not Found
schema:
$ref: "#/components/schemas/ApiError"
description: Not Found.
paymentRequired:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 402
errorCode: NO_PAYMENT_INFORMATION_FOUND
reason: Payment Required
schema:
$ref: "#/components/schemas/ApiError"
description: Payment Required.
serviceUnavailable:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 503
errorCode: SERVICE_UNAVAILABLE
reason: Service Unavailable
schema:
$ref: "#/components/schemas/ApiError"
description: Service Unavailable.
tooManyRequests:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 429
errorCode: RATE_LIMITED
reason: Too Many Requests
schema:
$ref: "#/components/schemas/ApiError"
description: Too Many Requests.
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
Retry-After:
$ref: "#/components/headers/HeaderRetryAfter"
unauthorized:
content:
application/json:
example:
detail: (This is just an example, the exception may not be related to this endpoint)
error: 401
errorCode: NOT_ORG_GROUP_CREATOR
reason: Unauthorized
schema:
$ref: "#/components/schemas/ApiError"
description: Unauthorized.
schemas:
AWSKMSConfiguration:
description: Amazon Web Services (AWS) KMS configuration details and encryption at rest configuration set for the specified project.
externalDocs:
description: Amazon Web Services Key Management Service
url: https://www.mongodb.com/docs/atlas/security-aws-kms/
properties:
accessKeyID:
description: Unique alphanumeric string that identifies an Identity and Access Management (IAM) access key with permissions required to access your Amazon Web Services (AWS) Customer Master Key (CMK).
example: 019dd98d94b4bb778e7552e4
maxLength: 128
minLength: 16
type: string
customerMasterKeyID:
description: Unique alphanumeric string that identifies the Amazon Web Services (AWS) Customer Master Key (CMK) you used to encrypt and decrypt the MongoDB master keys.
maxLength: 2048
minLength: 1
type: string
enabled:
description: Flag that indicates whether someone enabled encryption at rest for the specified project through Amazon Web Services (AWS) Key Management Service (KMS). To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.
type: boolean
region:
description: Physical location where MongoDB Cloud deploys your AWS-hosted MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. MongoDB Cloud assigns the VPC a CIDR block. To limit a new VPC peering connection to one CIDR block and region, create the connection first. Deploy the cluster after the connection starts.
title: AWS Regions
type: string
requirePrivateNetworking:
description: Enable connection to your Amazon Web Services (AWS) Key Management Service (KMS) over private networking.
type: boolean
roleId:
description: Unique 24-hexadecimal digit string that identifies an Amazon Web Services (AWS) Identity and Access Management (IAM) role. This IAM role has the permissions required to manage your AWS customer master key.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
secretAccessKey:
description: Human-readable label of the Identity and Access Management (IAM) secret access key with permissions required to access your Amazon Web Services (AWS) customer master key.
type: string
writeOnly: true
valid:
description: Flag that indicates whether the Amazon Web Services (AWS) Key Management Service (KMS) encryption key can encrypt and decrypt data.
readOnly: true
type: boolean
type: object
AccountDetails:
description: Account details for the group, region, and provider.
type: object
properties:
awsAccountId:
description: The AWS Account ID.
type: string
cidrBlock:
description: The VPC CIDR Block.
type: string
cloudProvider:
description: Cloud provider.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
vpcId:
description: The VPC ID.
type: string
azureSubscriptionId:
description: The Azure Subscription ID.
type: string
virtualNetworkName:
description: The name of the virtual network.
type: string
gcpProjectId:
description: The GCP Project ID.
type: string
vpcNetworkName:
description: The name of the VPC network.
type: string
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
aws:
properties:
- awsAccountId
- cidrBlock
- cloudProvider
- links
- vpcId
azure:
properties:
- azureSubscriptionId
- cidrBlock
- cloudProvider
- links
- virtualNetworkName
gcp:
properties:
- cidrBlock
- cloudProvider
- gcpProjectId
- links
- vpcNetworkName
AcknowledgeAlert:
description: Acknowledging an alert prevents successive notifications. Specify the `acknowledgeUntil` date and optional comment or `unacknowledgeAlert` boolean.
properties:
acknowledgedUntil:
description: Date and time until which this alert has been acknowledged. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
acknowledgementComment:
description: Comment that a MongoDB Cloud user submitted when acknowledging the alert.
example: Expiration on 3/19. Silencing for 7days.
maxLength: 200
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
unacknowledgeAlert:
description: Flag that indicates to unacknowledge a previously acknowledged alert. By default this value is set to false. If set to true, it will override the `acknowledgedUntil` parameter.
type: boolean
title: Acknowledge Alert
type: object
ActivityFeedLinkResponse:
description: Response containing a shareable activity feed link.
properties:
link:
description: Shareable link to the activity feed with pre-applied filters.
example: https://cloud.mongodb.com/redirect/1234567890abcdef12345678
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
required:
- link
type: object
AdaptiveSettingsOverrides:
additionalProperties: true
description: Map of customer-specified overrides for Adaptive Settings, applied on a best-effort basis. Each supported entry that you specify in this object takes precedence over the corresponding Atlas-managed default. For example, if a setting is enabled by default, you can add an override to disable it for your cluster.
type: object
AdaptiveSettingsResponse:
description: Adaptive Settings for a cluster, including client-provided overrides and the effective settings derived from those overrides and Atlas-managed defaults.
externalDocs:
description: Adaptive Settings
url: https://dochub.mongodb.org/core/adaptive-settings
properties:
adaptiveSettingsOverrides:
$ref: "#/components/schemas/AdaptiveSettingsOverrides"
effectiveAdaptiveSettings:
additionalProperties: true
description: The effective state of Adaptive Settings currently applied to your cluster, based on your overrides and Atlas-managed defaults. Atlas-managed defaults can vary by MongoDB version, so the same setting may default differently across clusters running different versions. If you set an override for a setting that your cluster's current MongoDB version doesn't support, the override doesn't take effect and the effective value reflects the Atlas-managed default instead.
readOnly: true
type: object
required:
- effectiveAdaptiveSettings
type: object
AdaptiveSettingsUpdateRequest:
description: Adaptive Settings for a cluster, including client-provided overrides and the effective settings derived from those overrides and Atlas-managed defaults.
externalDocs:
description: Adaptive Settings
url: https://dochub.mongodb.org/core/adaptive-settings
properties:
adaptiveSettingsOverrides:
$ref: "#/components/schemas/AdaptiveSettingsOverrides"
type: object
AddOrRemoveGroupRole:
properties:
groupRole:
description: Project-level role to assign to or remove from the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
type: string
required:
- groupRole
type: object
AddOrRemoveOrgRole:
properties:
orgRole:
description: Organization-level role.
type: string
required:
- orgRole
type: object
AddOrRemoveUserFromTeam:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
required:
- id
type: object
AddUserToTeam:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
required:
- id
type: object
AdditionalData:
description: Additional metadata associated with the line item.
properties:
processorId:
description: Identifier of the stream processor associated with the line item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
processorName:
description: Name of the stream processor associated with the line item.
type: string
workspace:
description: Workspace associated with the line item.
type: string
type: object
AdvancedAutoScalingSettings:
description: Options that determine how this cluster handles resource scaling.
properties:
compute:
$ref: "#/components/schemas/AdvancedComputeAutoScaling"
diskGB:
$ref: "#/components/schemas/DiskGBAutoScaling"
storageConfig:
allOf:
- $ref: "#/components/schemas/StorageConfig"
description: "Available in Public Preview: Settings that determine the per-shard data-size limit for this cluster. Applies only to Atlas INFINITE clusters. MongoDB Cloud accepts these settings only on `autoScaling` and rejects them on `analyticsAutoScaling`, including when you send them as `null`. In a request that includes `replicationSpecs`, omitting `storageConfig` or sending it as `null` or `{}` clears the limit. Omitting `replicationSpecs` preserves it."
title: Automatic Scaling Settings
type: object
AdvancedComputeAutoScaling:
description: Options that determine how this cluster handles CPU scaling.
properties:
enabled:
description: |-
Flag that indicates whether instance size reactive auto-scaling is enabled.
- Set to `true` to enable instance size reactive auto-scaling. If enabled, you must specify a value for `replicationSpecs[n].regionConfigs[m].autoScaling.compute.maxInstanceSize`.
- Set to `false` to disable instance size reactive auto-scaling.
type: boolean
maxInstanceSize:
$ref: "#/components/schemas/BaseCloudProviderInstanceSize"
minInstanceSize:
$ref: "#/components/schemas/BaseCloudProviderInstanceSize"
scaleDownEnabled:
description: Flag that indicates whether the instance size may scale down via reactive auto-scaling. MongoDB Cloud requires this parameter if `replicationSpecs[n].regionConfigs[m].autoScaling.compute.enabled` is `true`. If you enable this option, specify a value for `replicationSpecs[n].regionConfigs[m].autoScaling.compute.minInstanceSize`.
type: boolean
title: Automatic Compute Scaling Settings
type: object
AdvancedDiskBackupSnapshotSchedulePolicy:
description: List that contains a document for each backup policy item in the desired backup policy.
properties:
id:
description: Unique 24-hexadecimal digit string that identifies this backup policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
policyItems:
description: List that contains the specifications for one policy.
items:
$ref: "#/components/schemas/DiskBackupApiPolicyItem"
type: array
required:
- policyItems
type: object
AiModelApiKeyCreateRequest:
properties:
cloud:
description: Cloud provider scope for this API key. Use "ANY" for a cloud-agnostic scope. Additional cloud values will be supported in future API versions.
type: string
writeOnly: true
geography:
description: Geography scope for this API key. Use "ANY" for a geography-agnostic scope. Additional geography values will be supported in future API versions.
type: string
writeOnly: true
name:
description: A name for the new API key that will be created.
maxLength: 50
minLength: 1
type: string
required:
- cloud
- geography
- name
type: object
AiModelApiKeyResponse:
properties:
apiKeyId:
description: Identifier used to reference this API key in admin API calls.
example: a86r5kwrfsk5r5ku5tgvhmpj
readOnly: true
type: string
cloud:
description: Cloud provider scope for this API key. Use "ANY" for cloud-agnostic scope.
example: ANY
readOnly: true
type: string
createdAt:
description: UTC date when the API key was created. This parameter is formatted as an ISO 8601 timestamp.
example: 2026-01-15T16:47:49.855000+00:00
readOnly: true
type: string
createdBy:
description: Name of the user that created this API key. If no user name is available, the user ID is returned.
example: John Doe
readOnly: true
type: string
endpoint:
description: Server-computed endpoint hostname derived from `cloud` and `geography`. This field is read-only and must not be supplied in request bodies.
example: ai.mongodb.com
readOnly: true
type: string
geography:
description: Geography scope for this API key. Use "ANY" for geography-agnostic scope.
example: ANY
readOnly: true
type: string
groupId:
description: ID of the Atlas group this API key belongs to.
example: 69681d39c9e8cfd375386316
readOnly: true
type: string
lastUsedAt:
description: UTC date when the API key was last used. This parameter is formatted as an ISO 8601 timestamp.
example: 2026-01-15T16:47:49.855000+00:00
readOnly: true
type: string
maskedSecret:
description: A partially obfuscated version of the API key secret returned when the API key was created.
example: al-****odu2
readOnly: true
type: string
name:
description: Arbitrary string identifier assigned to this API key for convenient identification.
example: Production key
maxLength: 250
minLength: 1
type: string
secret:
description: "The full API key secret used for interacting with the embedding / reranking service. Note: this will only be fully populated in the response to a create API key request. Responses to get, list, and update requests will not include the secret."
example: al-jZsluhPMzPM9CFXepRWwMwvpZDDra6tZMgoAZKdodu2
format: password
readOnly: true
type: string
status:
description: A string describing the current status of the API key.
example: ACTIVE
readOnly: true
type: string
type: object
AiModelApiKeyUpdateRequest:
properties:
name:
description: A new name for the API key.
maxLength: 50
minLength: 1
type: string
required:
- name
type: object
AiModelRateLimitResponse:
properties:
cloud:
description: Cloud provider scope for this rate limit. Use "ANY" for cloud-agnostic scope.
example: ANY
readOnly: true
type: string
endpoint:
description: Server-computed endpoint hostname derived from `cloud` and `geography`. This field is read-only and must not be supplied in request bodies.
example: ai.mongodb.com
readOnly: true
type: string
geography:
description: Geography scope for this rate limit. Use "ANY" for geography-agnostic scope.
example: ANY
readOnly: true
type: string
modelGroupName:
description: Identifier used to reference this model group.
example: embed_large
readOnly: true
type: string
modelNames:
description: List of embedding model names included in this model group.
items:
type: string
maxItems: 100
readOnly: true
type: array
requestsPerMinuteLimit:
description: The number of requests per minute allowed for this model group. Must be a positive integer. Cannot be more than the organization level limit for this group model.
example: 2000
format: int32
minimum: 1
type: integer
tokensPerMinuteLimit:
description: The number of tokens per minute allowed for this model group. Must be a positive integer. Cannot be more than the organization level limit for this group model.
example: 3000000
format: int32
minimum: 1
type: integer
type: object
AiModelsRateLimitUpdateRequest:
properties:
requestsPerMinuteLimit:
description: The number of requests per minute allowed for this model group. Must be a positive integer. Cannot be more than the organization level limit for this group model.
format: int32
minimum: 1
type: integer
tokensPerMinuteLimit:
description: The number of tokens per minute allowed for this model group. Must be a positive integer. Cannot be more than the organization level limit for this group model.
format: int32
minimum: 1
type: integer
required:
- requestsPerMinuteLimit
- tokensPerMinuteLimit
type: object
AlertViewForNdsGroup:
type: object
properties:
acknowledgedUntil:
description: |-
Date and time until which this alert has been acknowledged. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter if a MongoDB User previously acknowledged this alert.
- To acknowledge this alert forever, set the parameter value to 100 years in the future.
- To unacknowledge a previously acknowledged alert, do not set this parameter value.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
acknowledgementComment:
description: Comment that a MongoDB Cloud user submitted when acknowledging the alert.
example: Expiration on 3/19. Silencing for 7 days.
maxLength: 200
type: string
acknowledgingUsername:
description: MongoDB Cloud username of the person who acknowledged the alert. The response returns this parameter if a MongoDB Cloud user previously acknowledged this alert.
format: email
readOnly: true
type: string
alertConfigId:
description: Unique 24-hexadecimal digit string that identifies the alert configuration that sets this alert.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
created:
description: Date and time when MongoDB Cloud created this alert. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
eventTypeName:
description: Incident that triggered this alert.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that owns this alert.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this alert.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lastNotified:
description: Date and time that any notifications were last sent for this alert. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter if MongoDB Cloud has sent notifications for this alert.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal character string that identifies the organization that owns the project to which this alert applies.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resolved:
description: 'Date and time that this alert changed to `"status" : "CLOSED"`. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter once `"status" : "CLOSED"`.'
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
severity:
description: Severity of the event.
readOnly: true
type: string
status:
description: State of this alert at the time you requested its details. TRACKING indicates the alert condition exists but has not persisted for the minimum notification delay. OPEN indicates the alert condition currently exists. CLOSED indicates the alert condition has been resolved.
example: OPEN
readOnly: true
type: string
updated:
description: Date and time when someone last updated this alert. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster to which this alert applies. This resource returns this parameter for alerts of events impacting backups, replica sets, or sharded clusters.
example: cluster1
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
hostnameAndPort:
description: Hostname and port of the host to which this alert applies. The resource returns this parameter for alerts of events impacting hosts or replica sets.
example: cloud-test.mongodb.com:27017
readOnly: true
type: string
replicaSetName:
description: Name of the replica set to which this alert applies. The response returns this parameter for alerts of events impacting backups, hosts, or replica sets.
example: event-replica-set
readOnly: true
type: string
currentValue:
$ref: "#/components/schemas/NumberMetricValue"
metricName:
description: |-
Name of the metric against which Atlas checks the configured `metricThreshold.threshold`.
To learn more about the available metrics, see Host Metrics.
**NOTE**: If you set `eventTypeName` to `OUTSIDE_SERVERLESS_METRIC_THRESHOLD`, you can specify only metrics available for serverless. To learn more, see Serverless Measurements.
example: ASSERT_USER
readOnly: true
type: string
nonRunningHostIds:
description: List of unique 24-hexadecimal character strings that identify the replica set members that are not in PRIMARY nor SECONDARY state.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{8,32})$
type: string
readOnly: true
type: array
parentClusterId:
description: Unique 24-hexadecimal character string that identifies the parent cluster to which this alert applies. The parent cluster contains the sharded nodes. MongoDB Cloud returns this parameter only for alerts of events impacting sharded clusters.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
instanceName:
description: The name of the Stream Processing Workspace to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processing Workspaces.
example: foobar
readOnly: true
type: string
processorErrorMsg:
description: The error message associated with the Stream Processor to which this alert applies.
example: "MongoServerError: Failed to start stream processor: (Location77175) Could not connect to the Kafka topic with kafka error code: -195, message: Local: Broker transport failure.: (Location77175)"
readOnly: true
type: string
processorName:
description: The name of the Stream Processor to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processors.
example: foobar
readOnly: true
type: string
processorState:
description: The state of the Stream Processor to which this alert applies. The resource returns this parameter for alerts of events impacting Stream Processors.
example: STARTED
readOnly: true
type: string
AlertsNotificationRootForGroup:
description: One target that MongoDB Cloud sends notifications when an alert triggers.
type: object
properties:
datadogApiKey:
description: |-
Datadog API Key that MongoDB Cloud needs to send alert notifications to Datadog. You can find this API key in the Datadog dashboard. The resource requires this parameter when `"notifications.[n].typeName" : "DATADOG"`.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "****************************a23c"
type: string
datadogRegion:
default: US
description: 'Datadog region that indicates which API Uniform Resource Locator (URL) to use. The resource requires this parameter when `"notifications.[n].typeName" : "DATADOG"`.'
externalDocs:
description: Datadog regions
url: https://docs.datadoghq.com/getting_started/site/
type: string
delayMin:
description: Number of minutes that MongoDB Cloud waits after detecting an alert condition before it sends out the first notification.
format: int32
type: integer
integrationId:
description: The id of the associated integration, the credentials of which to use for requests.
example: 32b6e34b3d91647abb20e7b8
type: string
intervalMin:
description: |-
Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.
PagerDuty, VictorOps, and OpsGenie notifications don't return this element. Configure and manage the notification interval within each of those services.
format: int32
minimum: 5
type: integer
notifierId:
description: The `notifierId` is a system-generated unique identifier assigned to each notification method. This is needed when updating third-party notifications without requiring explicit authentication credentials.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
typeName:
description: Human-readable label that displays the alert notification type.
type: string
emailAddress:
description: |-
Email address to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `"notifications.[n].typeName" : "EMAIL"`. You don't need to set this value to send emails to individual or groups of MongoDB Cloud users including:
- specific MongoDB Cloud users (`"notifications.[n].typeName" : "USER"`)
- MongoDB Cloud users with specific project roles (`"notifications.[n].typeName" : "GROUP"`)
- MongoDB Cloud users with specific organization roles (`"notifications.[n].typeName" : "ORG"`)
- MongoDB Cloud teams (`"notifications.[n].typeName" : "TEAM"`)
To send emails to one MongoDB Cloud user or grouping of users, set the `notifications.[n].emailEnabled` parameter.
format: email
type: string
emailEnabled:
description: |-
Flag that indicates whether MongoDB Cloud should send email notifications. The resource requires this parameter when one of the following values have been set:
- `"notifications.[n].typeName" : "ORG"`
- `"notifications.[n].typeName" : "GROUP"`
- `"notifications.[n].typeName" : "USER"`
type: boolean
roles:
description: 'List that contains the one or more organization roles that receive the configured alert. This parameter is available when `"notifications.[n].typeName" : "GROUP"` or `"notifications.[n].typeName" : "ORG"`. If you include this parameter, MongoDB Cloud sends alerts only to users assigned the roles you specify in the array. If you omit this parameter, MongoDB Cloud sends alerts to users assigned any role.'
externalDocs:
description: Organization Roles
url: https://dochub.mongodb.org/core/atlas-org-roles
items:
description: One or more organization roles that receive the configured alert.
type: string
type: array
smsEnabled:
description: |-
Flag that indicates whether MongoDB Cloud should send text message notifications. The resource requires this parameter when one of the following values have been set:
- `"notifications.[n].typeName" : "ORG"`
- `"notifications.[n].typeName" : "GROUP"`
- `"notifications.[n].typeName" : "USER"`
type: boolean
notificationToken:
description: |-
HipChat API token that MongoDB Cloud needs to send alert notifications to HipChat. The resource requires this parameter when `"notifications.[n].typeName" : "HIP_CHAT"`". If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes it.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "************************************1234"
type: string
roomName:
description: 'HipChat API room name to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `"notifications.[n].typeName" : "HIP_CHAT"`".'
example: test room
type: string
microsoftTeamsWebhookUrl:
description: |-
Microsoft Teams Webhook Uniform Resource Locator (URL) that MongoDB Cloud needs to send this notification via Microsoft Teams. The resource requires this parameter when `"notifications.[n].typeName" : "MICROSOFT_TEAMS"`. If the URL later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
**NOTE**: When you view or edit the alert for a Microsoft Teams notification, the URL appears partially redacted.
example: https://webhook.com/****
type: string
opsGenieApiKey:
description: |-
API Key that MongoDB Cloud needs to send this notification via OpsGenie. The resource requires this parameter when `"notifications.[n].typeName" : "OPS_GENIE"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "********************************a111"
type: string
opsGenieRegion:
default: US
description: OpsGenie region that indicates which API Uniform Resource Locator (URL) to use.
type: string
region:
default: US
description: PagerDuty region that indicates which API Uniform Resource Locator (URL) to use.
type: string
serviceKey:
description: |-
PagerDuty service key that MongoDB Cloud needs to send notifications via PagerDuty. The resource requires this parameter when `"notifications.[n].typeName" : "PAGER_DUTY"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "****************************7890"
type: string
apiToken:
description: |-
Slack API token or Bot token that MongoDB Cloud needs to send alert notifications via Slack. The resource requires this parameter when `"notifications.[n].typeName" : "SLACK"`. If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes the token.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "**********************************************************************abcd"
type: string
channelName:
description: 'Name of the Slack channel to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `"notifications.[n].typeName" : "SLACK"`.'
example: alerts
type: string
mobileNumber:
description: 'Mobile phone number to which MongoDB Cloud sends alert notifications. The resource requires this parameter when `"notifications.[n].typeName" : "SMS"`.'
example: "1233337892"
type: string
teamId:
description: 'Unique 24-hexadecimal digit string that identifies one MongoDB Cloud team. The resource requires this parameter when `"notifications.[n].typeName" : "TEAM"`.'
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
teamName:
description: 'Name of the MongoDB Cloud team that receives this notification. The resource requires this parameter when `"notifications.[n].typeName" : "TEAM"`.'
example: Atlas
type: string
username:
description: 'MongoDB Cloud username of the person to whom MongoDB Cloud sends notifications. Specify only MongoDB Cloud users who belong to the project that owns the alert configuration. The resource requires this parameter when `"notifications.[n].typeName" : "USER"`.'
format: email
type: string
victorOpsApiKey:
description: |-
API key that MongoDB Cloud needs to send alert notifications to Splunk On-Call. The resource requires this parameter when `"notifications.[n].typeName" : "VICTOR_OPS"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "********************************9abc"
type: string
victorOpsRoutingKey:
description: 'Routing key that MongoDB Cloud needs to send alert notifications to Splunk On-Call. The resource requires this parameter when `"notifications.[n].typeName" : "VICTOR_OPS"`. If the key later becomes invalid, MongoDB Cloud sends an email to the project owners. If the key remains invalid, MongoDB Cloud removes it.'
example: test routing
type: string
webhookBodyTemplate:
description: Template, using ${field} interpolation, that renders the HTTP body MongoDB Cloud sends with each webhook notification. Must render valid JSON. When unset, MongoDB Cloud sends its default JSON payload.
format: password
type: string
webhookHeadersTemplate:
description: Template, using ${field} interpolation, that renders the HTTP headers MongoDB Cloud sends with each webhook notification. Must render a JSON object mapping header name to header value. The webhook secret and the signature header are NOT exposed to templates.
format: password
type: string
webhookSecret:
description: |-
Authentication secret for a webhook-based alert.
Atlas returns this value if you set `notifications.[n].typeName` :`WEBHOOK` and either:
* You set `notification.[n].webhookSecret` to a non-empty string
* You set a default webhook secret either on the Integrations page, or with the Integrations API
**NOTE**: When you view or edit the alert for a webhook notification, the secret appears completely redacted.
externalDocs:
description: Integrations page
url: https://www.mongodb.com/docs/atlas/tutorial/third-party-service-integrations/#std-label-third-party-integrations
format: password
type: string
webhookUrl:
description: |-
Target URL for a webhook-based alert.
Atlas returns this value if you set `"notifications.[n].typeName" :"WEBHOOK"` and either:
* You set `notification.[n].webhookURL` to a non-empty string
* You set a default webhook URL either on the Integrations page, or with the Integrations API
**NOTE**: When you view or edit the alert for a Webhook URL notification, the URL appears partially redacted.
example: https://webhook.com/****
externalDocs:
description: Integrations page
url: https://www.mongodb.com/docs/atlas/tutorial/third-party-service-integrations/#std-label-third-party-integrations
type: string
AlertsToggle:
description: Enables or disables the specified alert configuration in the specified project.
properties:
enabled:
description: Flag that indicates whether to enable or disable the specified alert configuration in the specified project.
type: boolean
title: Toggle Request
type: object
ApiAtlasCollectionRestoreCollectionStateResponse:
description: Collection-level state within a collection restore job.
properties:
effectiveTargetNamespace:
description: Actual target namespace after restore (e.g. after conflict rename).
readOnly: true
type: string
indexStatus:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreIndexStatus"
restoredDocuments:
description: Number of documents restored so far.
format: int64
readOnly: true
type: integer
sourceNamespace:
description: Source namespace that was requested to restore.
readOnly: true
type: string
state:
description: Current state of this collection within the restore job.
readOnly: true
type: string
targetNamespace:
description: Requested target namespace for the restored collection.
readOnly: true
type: string
totalDocuments:
description: Total document count for this collection.
format: int64
readOnly: true
type: integer
type: object
ApiAtlasCollectionRestoreIndexStatus:
description: Index build status for a collection within a restore job.
properties:
errorMessage:
description: Error message if index build failed.
type: string
failedIndexes:
description: List of index specifications that failed to build (up to 64 items).
items:
additionalProperties: true
description: Index specification with arbitrary fields (e.g. name, key, unique).
type: object
maxItems: 64
type: array
state:
description: Index build state indicating the status of index creation during or after a restore operation.
type: string
readOnly: true
type: object
ApiAtlasCollectionRestoreJobIndexStatus:
description: Overall index build status for a collection restore job.
properties:
failedCollectionCount:
description: Number of collections that failed to build indexes.
format: int32
minimum: 0
type: integer
state:
description: Index build state indicating the status of index creation during or after a restore operation.
type: string
readOnly: true
type: object
ApiAtlasCollectionRestoreJobRequest:
description: Request body for creating a collection restore job.
properties:
collectionSuffix:
description: Optional suffix applied to restored collection names.
type: string
collections:
description: List of collections to restore (up to 100 items).
items:
$ref: "#/components/schemas/ApiAtlasRestoreCollectionNamespace"
maxItems: 100
type: array
databaseSuffix:
description: Optional suffix applied to restored database names.
type: string
databases:
description: List of databases to restore (up to 100 items).
items:
$ref: "#/components/schemas/ApiAtlasRestoreDatabaseNamespace"
maxItems: 100
type: array
indexStrategy:
description: Strategy for restoring indexes (all, none, or all except TTL).
type: string
oplogInc:
description: Oplog increment for point-in-time restore.
format: int32
type: integer
oplogTs:
description: Oplog timestamp (seconds part) for point-in-time restore.
format: int32
type: integer
pointInTimeUtcSeconds:
description: Point-in-time restore time in seconds since UNIX epoch.
format: int32
type: integer
snapshotId:
description: ID of the snapshot to restore.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
targetClusterName:
description: Target cluster name.
type: string
targetGroupId:
description: Unique 24-hexadecimal digit string that identifies the target group.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeStrategy:
description: Strategy for writing data on the target (create as new or overwrite existing). With `OVERWRITE_EXISTING`, any writes to the affected databases or collections during the restore will be lost when the existing namespaces are dropped and replaced. To avoid data loss, stop writes to the affected namespaces before starting the restore.
type: string
required:
- indexStrategy
- targetClusterName
- targetGroupId
- writeStrategy
type: object
ApiAtlasCollectionRestoreJobResponse:
description: Collection restore job summary including the list of databases and collections in the restore scope (up to 100 items each).
properties:
collectionSuffix:
description: Suffix applied to restored collection names.
type: string
collections:
description: List of collections in the restore scope (up to 100 items).
items:
$ref: "#/components/schemas/ApiAtlasRestoreCollectionNamespace"
maxItems: 100
type: array
createdAt:
description: Date and time when the restore job was created (ISO 8601 format in UTC).
format: date-time
readOnly: true
type: string
databaseSuffix:
description: Suffix applied to restored database names.
type: string
databases:
description: List of databases in the restore scope (up to 100 items).
items:
$ref: "#/components/schemas/ApiAtlasRestoreDatabaseNamespace"
maxItems: 100
type: array
errorMessage:
description: Error message when the job has failed or been canceled.
readOnly: true
type: string
finishedAt:
description: Date and time when the restore job finished (ISO 8601 format in UTC).
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the collection restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
indexStatus:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreJobIndexStatus"
indexStrategy:
description: Strategy for restoring indexes (all, none, or all except TTL).
type: string
oplogInc:
description: Oplog increment for point-in-time restore.
format: int32
type: integer
oplogTs:
description: Oplog timestamp (seconds part) for point-in-time restore.
format: int32
type: integer
pointInTimeUtcSeconds:
description: Point-in-time restore time in seconds since UNIX epoch.
format: int32
type: integer
restoredDocuments:
description: Number of documents restored so far across all supported collections.
format: int64
minimum: 0
readOnly: true
type: integer
snapshotId:
description: Unique 24-hexadecimal digit string that identifies the snapshot being restored.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
state:
description: Current state of the collection restore job. A `SUCCESSFUL` job can include individual `UNSUPPORTED` collection restores. Use the restore job collections endpoint to get per-collection detailed states.
readOnly: true
type: string
targetClusterName:
description: Human-readable label that identifies the target cluster.
type: string
targetGroupId:
description: Unique 24-hexadecimal digit string that identifies the target group.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
totalDocuments:
description: Total number of documents across all supported collections in the restore job. This value may initially reflect an estimate based on collection metadata and can change as accurate document counts become available during the restore.
format: int64
minimum: 0
readOnly: true
type: integer
writeStrategy:
description: Strategy for writing data on the target (create as new or overwrite existing). With `OVERWRITE_EXISTING`, any writes to the affected databases or collections during the restore will be lost when the existing namespaces are dropped and replaced. To avoid data loss, stop writes to the affected namespaces before starting the restore.
type: string
type: object
ApiClusterScaleView_Atlas:
description: Information on scaling the cluster to a tier that supports the requested feature. Present only when the feature is unavailable on the cluster's current tier.
properties:
docsUrl:
description: Documentation page describing feature availability by cluster tier.
readOnly: true
type: string
minimumTier:
description: Lowest cluster tier that supports the requested feature.
example: M10
readOnly: true
type: string
scaleUrl:
description: Link to the Atlas UI page that scales the cluster, with the minimum supported tier pre-selected.
readOnly: true
type: string
readOnly: true
type: object
ApiError:
properties:
badRequestDetail:
$ref: "#/components/schemas/BadRequestDetail"
detail:
description: Describes the specific conditions or reasons that cause each type of error.
type: string
error:
description: HTTP status code returned with this error.
externalDocs:
url: https://developer.mozilla.org/en-US/docs/Web/HTTP/Status
format: int32
readOnly: true
type: integer
errorCode:
description: Application error code returned with this error.
readOnly: true
type: string
parameters:
description: Parameters used to give more information about the error.
items: {}
readOnly: true
type: array
policiesCausingDecision:
description: Atlas Resource Policies that caused the request to be denied. Returned only when `errorCode` is `ATLAS_RESOURCE_POLICIES_VIOLATION_NOT_AUTHORIZED`.
items:
$ref: "#/components/schemas/ResourcePolicyReference"
maxItems: 100
readOnly: true
type: array
x-xgen-array-semantic: set
reason:
description: Application error message returned with this error.
readOnly: true
type: string
required:
- error
- errorCode
type: object
ApiHostView_Atlas:
properties:
created:
description: Date and time when MongoDB Cloud created this MongoDB process. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hostname:
description: Hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`).
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?$
readOnly: true
type: string
id:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
lastPing:
description: Date and time when MongoDB Cloud received the last ping for this MongoDB process. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link_Atlas"
readOnly: true
type: array
port:
description: Internet Assigned Numbers Authority (IANA) port on which the MongoDB process listens for requests.
format: int32
readOnly: true
type: integer
replicaSetName:
description: Human-readable label that identifies the replica set that contains this process. This resource returns this parameter if this process belongs to a replica set.
readOnly: true
type: string
shardName:
description: Human-readable label that identifies the shard that contains this process. This resource returns this value only if this process belongs to a sharded cluster.
readOnly: true
type: string
typeName:
description: Type of MongoDB process that MongoDB Cloud tracks. MongoDB Cloud returns new processes as `NO_DATA` until MongoDB Cloud completes deploying the process.
readOnly: true
type: string
userAlias:
description: Human-readable label that identifies the cluster node. MongoDB Cloud sets this hostname usually to the standard hostname for the cluster node. It appears in the connection string for a cluster instead of the value of the hostname parameter.
readOnly: true
type: string
version:
description: Version of MongoDB that this process runs.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
type: object
ApiKey:
description: Details contained in one API key.
properties:
accessList:
description: List of network addresses granted access to this API using this API key.
items:
$ref: "#/components/schemas/AccessListItem"
readOnly: true
type: array
id:
description: Unique 24-hexadecimal digit string that identifies this organization API key.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
publicKey:
description: Public API key value set for the specified organization API key.
maxLength: 8
minLength: 8
readOnly: true
type: string
roles:
description: List that contains roles that the API key needs to have. All roles you provide must be valid for the specified project or organization. Each request must include a minimum of one valid role. The resource returns all project and organization roles assigned to the Cloud user.
items:
$ref: "#/components/schemas/CloudAccessRoleAssignment"
readOnly: true
type: array
readOnly: true
required:
- accessList
- id
- publicKey
- roles
type: object
ApiKeyUserDetails:
description: Details of the Programmatic API Keys.
properties:
desc:
description: Purpose or explanation provided when someone created this organization API key.
maxLength: 250
minLength: 1
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this organization API key assigned to this project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
privateKey:
description: Redacted private key returned for this organization API key. This key displays unredacted when first created.
example: 55c3bbb6-b4bb-0be1-e66d20841f3e
readOnly: true
type: string
publicKey:
description: Public API key value set for the specified organization API key.
example: zmmrboas
maxLength: 8
minLength: 8
readOnly: true
type: string
roles:
description: List that contains the roles that the API key needs to have. All roles you provide must be valid for the specified project or organization. Each request must include a minimum of one valid role. The resource returns all project and organization roles assigned to the API key.
items:
$ref: "#/components/schemas/CloudAccessRoleAssignment"
type: array
type: object
ApiMeasurementsGeneralView_Atlas:
properties:
databaseName:
description: Human-readable label that identifies the database that the specified MongoDB process serves.
readOnly: true
type: string
end:
description: Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hostId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link_Atlas"
readOnly: true
type: array
measurements:
description: List that contains measurements and their data points.
items:
$ref: "#/components/schemas/MetricsMeasurement_Atlas"
readOnly: true
type: array
message:
description: Explanation of measurement availability limitations on the current tier.
readOnly: true
type: string
partitionName:
description: Human-readable label of the disk or partition to which the measurements apply.
readOnly: true
type: string
processId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
scale:
$ref: "#/components/schemas/ApiClusterScaleView_Atlas"
start:
description: Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
ApiPrivateDownloadDeliveryUrl:
description: One Uniform Resource Locator (URL) that points to the compressed snapshot files for manual download and the corresponding private endpoint.
properties:
deliveryUrl:
description: One Uniform Resource Locator that points to the compressed snapshot files for manual download.
type: string
endpointId:
description: Unique 22-character alphanumeric string that identifies the private endpoint.
example: vpce-3bf78b0ddee411ba1
pattern: ^vpce-[0-9a-f]{17}$
type: string
type: object
ApiPublicUsageDetailsQueryRequest:
description: Request body for an Invoice Usage Details query with filtering, pagination, and sort.
properties:
filters:
$ref: "#/components/schemas/UsageDetailsFilterRequest"
sortField:
description: Specify the field used to specify how to sort query results. Default to bill date.
type: string
sortOrder:
description: Specify the sort order (ascending / descending) used to specify how to sort query results. Defaults to descending.
type: string
type: object
AssociatedInvoice:
description: An invoice associated with an organization.
properties:
invoiceId:
description: Unique 24-hexadecimal digit identifier for an invoice.
readOnly: true
type: string
orgId:
description: Unique 24-hexadecimal digit identifier for an organization.
readOnly: true
type: string
type: object
AtlasClusterOutageSimulationOutageFilter:
properties:
cloudProvider:
description: The cloud provider of the region that undergoes the outage simulation.
type: string
regionName:
description: The name of the region to undergo an outage simulation.
type: string
type:
description: The type of cluster outage to simulate. `REGION` simulates a cluster outage for a region.
type: string
type: object
AtlasOrganization:
description: Details that describe the organization.
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the organization.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
isDeleted:
description: Flag that indicates whether this organization has been deleted.
readOnly: true
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the organization.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
skipDefaultAlertsSettings:
default: false
description: Disables automatic alert creation. When set to true, no organization level alerts will be created automatically.
type: boolean
required:
- name
type: object
AtlasSearchAnalyzer:
properties:
charFilters:
description: Filters that examine text one character at a time and perform filtering operations.
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
name:
description: |-
Name that identifies the custom analyzer. Names must be unique within an index, and must not start with any of the following strings:
- `lucene.`
- `builtin.`
- `mongodb.`
type: string
tokenFilters:
description: |-
Filter that performs operations such as:
- Stemming, which reduces related words, such as "talking", "talked", and "talks" to their root word "talk".
- Redaction, which is the removal of sensitive information from public documents.
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
tokenizer:
description: Tokenizer that you want to use to create tokens. Tokens determine how Atlas Search splits up text into discrete chunks for indexing.
type: object
required:
- name
- tokenizer
title: Atlas Search Analyzer
type: object
AtlasTenantClusterUpgradeRequest20240805:
description: Request containing target state of tenant cluster to be upgraded.
properties:
acceptDataRisksAndForceReplicaSetReconfig:
description: If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set `acceptDataRisksAndForceReplicaSetReconfig` to the current date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: Reconfiguring a Replica Set during a regional outage
url: https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set
format: date-time
type: string
adaptiveCapacity:
description: Governs adaptive capacity behavior of nodes in clusters on providers that support fallback hardware, including those providers' nodes in multi-cloud clusters. Adaptive capacity enables fallback hardware selection when the primary instance family is unavailable. ``ENABLED`` means the cluster explicitly opts in to adaptive capacity. ``DISABLED`` means the cluster explicitly opts out; the cluster receives capacity errors instead of being placed on fallback hardware. ``null`` means the field is unset; clusters use adaptive capacity by default on a provider that supports it.
type: string
advancedConfiguration:
$ref: "#/components/schemas/ApiAtlasClusterAdvancedConfiguration"
backupEnabled:
description: |-
Flag that indicates whether Atlas backs up the cluster.
On Atlas Core clusters, dedicated clusters use [Cloud Backups](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/) and Flex clusters use [Flex Cluster Backups](https://www.mongodb.com/docs/atlas/backup/cloud-backup/flex-cluster-backup/). Default value is `false`. For clusters that use local [NVMe SSDs](https://www.mongodb.com/docs/atlas/manage-clusters/#nvme-storage) for storage, you can't disable backup, so you must set `backupEnabled` to `true`.
On Atlas Infinite clusters, the `backupEnabled` flag controls Additional Backup Retention, not whether backups run. To retain snapshots beyond the 24-hour window, set `backupEnabled` to `true`. For Atlas Infinite clusters, continuous cloud backups are enabled by default, always run, and include a 24-hour window in which you can restore to any point in time. Atlas then applies your snapshot retention policies. To keep only the included window under an Atlas-managed retention policy that you can't edit, set `backupEnabled` to `false`. A cluster covered by a Data Protection policy has this flag set to `true` regardless of the requested value. Default value is `true`.
externalDocs:
description: Cloud Backups
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/
type: boolean
biConnector:
$ref: "#/components/schemas/BiConnector"
clusterType:
description: Configuration of nodes that comprise the cluster.
type: string
configServerManagementMode:
default: ATLAS_MANAGED
description: Config Server Management Mode for creating or updating a sharded cluster. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
type: string
configServerType:
description: Describes a sharded cluster's config server type.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
readOnly: true
type: string
connectionStrings:
$ref: "#/components/schemas/ClusterConnectionStrings"
createDate:
description: Date and time when MongoDB Cloud created this cluster. This parameter expresses its value in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your cluster will be Atlas INFINITE or CORE. You can set it only when you create the cluster, or when you upgrade a Free or Flex cluster to a dedicated cluster. This value is immutable once the dedicated cluster exists; attempting to change it on an update request returns an error."
type: string
diskWarmingMode:
default: FULLY_WARMED
description: Disk warming mode selection.
externalDocs:
description: Reduce Secondary Disk Warming Impact
url: https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact
type: string
effectiveDatabaseEdition:
description: "Available in Public Preview: Field that represents whether your cluster is Atlas INFINITE or CORE. This is read-only and always returned in the response. It reflects the actual cluster state. This value matches `databaseEdition` if it was set, otherwise it reflects the default database edition assigned to the cluster."
readOnly: true
type: string
effectiveReplicationSpecs:
description: List of settings that represent the actual cluster state. This is read-only and always returned in the response. It reflects the current cluster configuration, which may differ from `replicationSpecs` due to system-managed changes.
items:
$ref: "#/components/schemas/ReplicationSpec20240805"
readOnly: true
type: array
encryptionAtRestProvider:
description: 'Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster `replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize` setting must be `M10` or higher and `"backupEnabled" : false` or omitted entirely.'
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
type: string
featureCompatibilityVersion:
description: Feature compatibility version of the cluster. This will always appear regardless of whether FCV is pinned.
readOnly: true
type: string
featureCompatibilityVersionExpirationDate:
description: Feature compatibility version expiration date. Will only appear if FCV is pinned. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
globalClusterSelfManagedSharding:
description: |-
Set this field to configure the Sharding Management Mode when creating a new Global Cluster.
When set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.
When set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.
This setting cannot be changed once the cluster is deployed.
externalDocs:
description: Creating a Global Cluster
url: https://dochub.mongodb.org/core/global-cluster-management
type: boolean
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
internalClusterRole:
description: "Internal classification of the cluster's role. Possible values: `NONE` (regular user cluster), `SYSTEM_CLUSTER` (system cluster for backup), `INTERNAL_SHADOW_CLUSTER` (internal use shadow cluster for testing)."
readOnly: true
type: string
labels:
deprecated: true
description: |-
Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.
Cluster labels are deprecated and will be removed in a future release. We strongly recommend that you use Resource Tags instead.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ComponentLabel"
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBEmployeeAccessGrant:
$ref: "#/components/schemas/EmployeeAccessGrant"
mongoDBMajorVersion:
description: |-
MongoDB major version of the cluster. Set to the binary major version.
On creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLtsVersions).
On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.
externalDocs:
description: Available MongoDB Versions in Atlas
url: https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-
type: string
mongoDBVersion:
description: Version of MongoDB that the cluster runs.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
name:
description: Human-readable label that identifies the cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
paused:
description: Flag that indicates whether the cluster is paused.
type: boolean
pitEnabled:
description: |-
Flag that indicates whether the cluster uses continuous cloud backups.
For Atlas Infinite clusters, continuous cloud backups always run. Omit this field or set it to `true`. Setting it to `false` returns an invalid attribute error.
externalDocs:
description: Continuous Cloud Backups
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/
type: boolean
redactClientLogData:
description: |-
Enable or disable log redaction.
This setting configures the ``mongod`` or ``mongos`` to redact any document field contents from a message accompanying a given log event before logging. This prevents the program from writing potentially sensitive data stored on the database to the diagnostic log. Metadata such as error or operation codes, line numbers, and source file names are still visible in the logs.
Use ``redactClientLogData`` in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements.
*Note*: changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated.
externalDocs:
description: Log Redaction
url: https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction
type: boolean
replicaSetScalingStrategy:
default: WORKLOAD_TYPE
description: |-
Set this field to configure the replica set scaling mode for your cluster.
By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes.
When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads.
When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads.
externalDocs:
description: Modify the Replica Set Scaling Mode
url: https://dochub.mongodb.org/core/scale-nodes
type: string
replicationSpecs:
description: List of settings that configure your cluster regions. This array has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations.
items:
$ref: "#/components/schemas/ReplicationSpec20240805"
type: array
retainBackups:
default: false
description: Flag that indicates whether the cluster retains backups.
type: boolean
rootCertType:
default: ISRGROOTX1
description: Root Certificate Authority that MongoDB Atlas cluster uses. MongoDB Cloud supports Internet Security Research Group.
type: string
searchAutoMigration:
$ref: "#/components/schemas/SearchAutoMigration"
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
useAwsTimeBasedSnapshotCopyForFastInitialSync:
default: false
description: Flag that indicates whether AWS time-based snapshot copies will be used instead of slower standard snapshot copies during fast Atlas cross-region initial syncs. This flag is only relevant for clusters containing AWS nodes.
type: boolean
versionReleaseSystem:
default: LTS
description: Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify `mongoDBMajorVersion`.
type: string
required:
- name
title: Tenant Cluster Upgrade Request
type: object
AuditLog:
properties:
auditAuthorizationSuccess:
default: false
description: 'Flag that indicates whether someone set auditing to track successful authentications. This only applies to the `"atype" : "authCheck"` audit filter. Setting this parameter to `true` degrades cluster performance.'
externalDocs:
description: System Auditing Messages
url: https://docs.mongodb.com/manual/reference/audit-message/#audit-event-actions-details-and-results
type: boolean
auditFilter:
description: JSON document that specifies which events to record. Escape any characters that may prevent parsing, such as single or double quotes, using a backslash (`\`).
externalDocs:
description: Custom Auditing Filter
url: https://docs.atlas.mongodb.com/tutorial/auditing-custom-filter/
type: string
configurationType:
description: Human-readable label that displays how to configure the audit filter.
readOnly: true
type: string
enabled:
default: false
description: Flag that indicates whether someone enabled database auditing for the specified project.
type: boolean
type: object
AuthFederationRoleMapping:
description: Mapping settings that link one IdP and MongoDB Cloud.
properties:
externalGroupName:
description: Unique human-readable label that identifies the identity provider group to which this role mapping applies.
maxLength: 200
minLength: 1
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this role mapping.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
roleAssignments:
description: Atlas roles and the unique identifiers of the groups and organizations associated with each role. The array must include at least one element with an Organization role and its respective `orgId`. Each element in the array can have a value for `orgId` or `groupId`, but not both.
items:
$ref: "#/components/schemas/ConnectedOrgConfigRoleAssignment"
type: array
uniqueItems: true
required:
- externalGroupName
- roleAssignments
title: Federated Authentication Role Mapping
type: object
AuthenticatedUser:
description: Details about the MongoDB Cloud user that this request is authenticated as.
properties:
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
readOnly: true
type: string
readOnly: true
type: object
AvailableCloudProviderRegion:
properties:
default:
description: Flag that indicates whether the cloud provider sets this region as its default. AWS defaults to `US_EAST_1`, GCP defaults to `CENTRAL_US`, and AZURE defaults to `US_WEST_2`.
readOnly: true
type: boolean
name:
description: Human-readable label that identifies the supported region.
readOnly: true
type: string
type: object
AvailableClustersDeployment:
description: Deployments that can be migrated to MongoDB Atlas.
properties:
agentVersion:
description: Version of MongoDB Agent that monitors/manages the cluster.
readOnly: true
type: string
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
dbSizeBytes:
description: Size of this database on disk at the time of the request expressed in bytes.
example: 8192
format: int64
readOnly: true
type: integer
featureCompatibilityVersion:
description: Version of MongoDB features that this cluster supports.
externalDocs:
description: MongoDB feature versions
url: https://docs.mongodb.com/manual/reference/command/setFeatureCompatibilityVersion
readOnly: true
type: string
managed:
description: Flag that indicates whether Automation manages this cluster.
readOnly: true
type: boolean
mongoDBVersion:
description: Version of MongoDB that this cluster runs.
readOnly: true
type: string
name:
description: Human-readable label that identifies this cluster.
example: Project X sharded cluster
readOnly: true
type: string
oplogSizeMB:
description: Size of the Oplog on disk at the time of the request expressed in MB.
example: 3
format: int32
readOnly: true
type: integer
sharded:
description: |-
Flag that indicates whether someone configured this cluster as a sharded cluster.
- If `true`, this cluster serves as a sharded cluster.
- If `false`, this cluster serves as a replica set.
readOnly: true
type: boolean
shardsSize:
description: Number of shards that comprise this cluster.
example: 3
format: int32
readOnly: true
type: integer
tlsEnabled:
description: Flag that indicates whether someone enabled TLS for this cluster.
readOnly: true
type: boolean
required:
- featureCompatibilityVersion
- managed
- mongoDBVersion
- name
- sharded
- tlsEnabled
title: Available Clusters
type: object
AzureConnection:
description: Azure-specific configuration for the connection.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
region:
deprecated: true
description: Azure region where the storage account is located.
type: string
servicePrincipalId:
description: Unique ID of the Azure Service Principal that has access to the storage account.
type: string
storageAccountName:
description: Name of the Azure Storage Account to connect to.
type: string
type: object
AzureKeyVault:
description: Details that define the configuration of Encryption at Rest using Azure Key Vault (AKV).
externalDocs:
description: Azure Key Vault
url: https://www.mongodb.com/docs/atlas/security-azure-kms/
properties:
azureEnvironment:
description: Azure environment in which your account credentials reside.
type: string
clientID:
description: Unique 36-hexadecimal character string that identifies an Azure application associated with your Azure Active Directory tenant.
format: uuid
type: string
enabled:
description: Flag that indicates whether someone enabled encryption at rest for the specified project. To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.
type: boolean
keyIdentifier:
description: Web address with a unique key that identifies for your Azure Key Vault.
example: https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86
type: string
keyVaultName:
description: Unique string that identifies the Azure Key Vault that contains your key. This field cannot be modified when you enable and set up private endpoint connections to your Azure Key Vault.
type: string
requirePrivateNetworking:
description: Enable connection to your Azure Key Vault over private networking.
type: boolean
resourceGroupName:
description: Name of the Azure resource group that contains your Azure Key Vault. This field cannot be modified when you enable and set up private endpoint connections to your Azure Key Vault.
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the Azure Service Principal that MongoDB Cloud uses to access the Azure Key Vault.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
secret:
description: Private data that you need secured and that belongs to the specified Azure Key Vault (AKV) tenant (`azureKeyVault.tenantID`). This data can include any type of sensitive data such as passwords, database connection strings, API keys, and the like. AKV stores this information as encrypted binary data.
externalDocs:
description: Azure Key Vault Secrets
url: https://docs.microsoft.com/en-us/azure/key-vault/secrets/about-secrets
type: string
writeOnly: true
subscriptionID:
description: Unique 36-hexadecimal character string that identifies your Azure subscription. This field cannot be modified when you enable and set up private endpoint connections to your Azure Key Vault.
format: uuid
type: string
tenantID:
description: Unique 36-hexadecimal character string that identifies the Azure Active Directory tenant within your Azure subscription.
format: uuid
type: string
valid:
description: Flag that indicates whether the Azure encryption key can encrypt and decrypt data.
readOnly: true
type: boolean
type: object
BackupComplianceOnDemandPolicyItem:
description: Specifications for on-demand policy.
properties:
frequencyInterval:
description: Number that indicates the frequency interval for a set of snapshots. MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.
format: int32
type: integer
frequencyType:
description: Human-readable label that identifies the frequency type associated with the backup policy.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this backup policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
retentionUnit:
description: Unit of time in which MongoDB Cloud measures snapshot retention.
type: string
retentionValue:
description: |-
Duration in days, weeks, months, or years that MongoDB Cloud retains the snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.
For example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.
format: int32
type: integer
required:
- frequencyInterval
- frequencyType
- retentionUnit
- retentionValue
type: object
BackupComplianceScheduledPolicyItem:
description: Specifications for scheduled policy.
properties:
frequencyInterval:
description: |-
Number that indicates the frequency interval for a set of Snapshots. A value of `1` specifies the first instance of the corresponding `frequencyType`.
- In a yearly policy item, `1` indicates that the yearly Snapshot occurs on the first day of January and `12` indicates the first day of December.
- In a monthly policy item, `1` indicates that the monthly Snapshot occurs on the first day of the month and `40` indicates the last day of the month.
- In a weekly policy item, `1` indicates that the weekly Snapshot occurs on Monday and `7` indicates Sunday.
- In an hourly policy item, you can set the frequency interval to `1`, `2`, `4`, `6`, `8`, or `12`. For hourly policy items for NVMe clusters, MongoDB Cloud accepts only `12` as the frequency interval value.
MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.
format: int32
type: integer
frequencyType:
description: Human-readable label that identifies the frequency type associated with the backup policy.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this backup policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
retentionUnit:
description: Unit of time in which MongoDB Cloud measures Snapshot retention.
type: string
retentionValue:
description: |-
Duration in days, weeks, months, or years that MongoDB Cloud retains the Snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.
For example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.
format: int32
type: integer
required:
- frequencyInterval
- frequencyType
- retentionUnit
- retentionValue
type: object
BackupLabel:
description: Collection of key-value pairs that represent custom data to add to the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.
properties:
key:
description: Key for the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.
type: string
value:
description: Value for the key to include in file that MongoDB Cloud uploads to the bucket when the export job finishes.
type: string
type: object
BackupOnlineArchive:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the online archive.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster that contains the collection for which you want to create an online archive.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
collName:
description: Human-readable label that identifies the collection for which you created the online archive.
readOnly: true
type: string
collectionType:
default: STANDARD
description: |-
Classification of MongoDB database collection that you want to return.
If you set this parameter to `TIMESERIES`, set `"criteria.type" : "date"` and `"criteria.dateFormat" : "ISODATE"`.
readOnly: true
type: string
criteria:
$ref: "#/components/schemas/Criteria"
dataExpirationRule:
$ref: "#/components/schemas/DataExpirationRule"
dataProcessRegion:
$ref: "#/components/schemas/DataProcessRegion"
dataSetName:
description: Human-readable label that identifies the dataset that Atlas generates for this online archive.
readOnly: true
type: string
dbName:
description: Human-readable label of the database that contains the collection that contains the online archive.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the specified cluster. The specified cluster contains the collection for which to create the online archive.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
partitionFields:
description: "List that contains document parameters to use to logically divide data within a collection. Partitions provide a coarse level of filtering of the underlying collection data. To divide your data, specify parameters that you frequently query. If you specified `criteria.type`: `DATE` in the Create One Online Archive endpoint, then you can specify up to three parameters by which to query. One of these parameters must be the `DATE` value, which is required in this case. If you specified `criteria.type`: `CUSTOM` in the Create One Online Archive endpoint, then you can specify up to two parameters by which to query. Queries that don't use `criteria.type`: `DATE` or `criteria.type`: `CUSTOM` parameters cause MongoDB to scan a full collection of all archived documents. This takes more time and increases your costs."
items:
$ref: "#/components/schemas/PartitionField"
minItems: 1
readOnly: true
type: array
paused:
description: Flag that indicates whether this online archive exists in the paused state. A request to resume fails if the collection has another active online archive. To pause an active online archive or resume a paused online archive, you must include this parameter. To pause an active archive, set this to **true**. To resume a paused archive, set this to **false**.
type: boolean
schedule:
$ref: "#/components/schemas/OnlineArchiveSchedule"
state:
description: |-
Phase of the process to create this online archive when you made this request.
| State | Indication |
|-------------|------------|
| `PENDING` | MongoDB Cloud has queued documents for archive. Archiving hasn't started. |
| `ARCHIVING` | MongoDB Cloud started archiving documents that meet the archival criteria. |
| `IDLE` | MongoDB Cloud waits to start the next archival job. |
| `PAUSING` | Someone chose to stop archiving. MongoDB Cloud finishes the running archival job then changes the state to `PAUSED` when that job completes. |
| `PAUSED` | MongoDB Cloud has stopped archiving. Archived documents can be queried. The specified archiving operation on the active cluster cannot archive additional documents. You can resume archiving for paused archives at any time. |
| `ORPHANED` | Someone has deleted the collection associated with an active or paused archive. MongoDB Cloud doesn't delete the archived data. You must manually delete the online archives associated with the deleted collection. |
| `DELETED` | Someone has deleted the archive was deleted. When someone deletes an online archive, MongoDB Cloud removes all associated archived documents from the cloud object storage. |
readOnly: true
type: string
type: object
BackupOnlineArchiveCreate:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the online archive.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster that contains the collection for which you want to create an online archive.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
collName:
description: Human-readable label that identifies the collection for which you created the online archive.
type: string
writeOnly: true
collectionType:
default: STANDARD
description: |-
Classification of MongoDB database collection that you want to return.
If you set this parameter to `TIMESERIES`, set `"criteria.type" : "date"` and `"criteria.dateFormat" : "ISODATE"`.
type: string
writeOnly: true
criteria:
$ref: "#/components/schemas/Criteria"
dataExpirationRule:
$ref: "#/components/schemas/DataExpirationRule"
dataProcessRegion:
$ref: "#/components/schemas/CreateDataProcessRegion"
dataSetName:
description: Human-readable label that identifies the dataset that Atlas generates for this online archive.
readOnly: true
type: string
dbName:
description: Human-readable label of the database that contains the collection that contains the online archive.
maxLength: 64
type: string
writeOnly: true
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the specified cluster. The specified cluster contains the collection for which to create the online archive.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
partitionFields:
description: "List that contains document parameters to use to logically divide data within a collection. Partitions provide a coarse level of filtering of the underlying collection data. To divide your data, specify parameters that you frequently query. If you specified `criteria.type`: `DATE` in the Create One Online Archive endpoint, then you can specify up to three parameters by which to query. One of these parameters must be the `DATE` value, which is required in this case. If you specified `criteria.type`: `CUSTOM` in the Create One Online Archive endpoint, then you can specify up to two parameters by which to query. Queries that don't use `criteria.type`: `DATE` or `criteria.type`: `CUSTOM` parameters cause MongoDB to scan a full collection of all archived documents. This takes more time and increases your costs."
items:
$ref: "#/components/schemas/PartitionField"
minItems: 1
type: array
writeOnly: true
paused:
description: Flag that indicates whether this online archive exists in the paused state. A request to resume fails if the collection has another active online archive. To pause an active online archive or resume a paused online archive, you must include this parameter. To pause an active archive, set this to **true**. To resume a paused archive, set this to **false**.
type: boolean
schedule:
$ref: "#/components/schemas/OnlineArchiveSchedule"
state:
description: |-
Phase of the process to create this online archive when you made this request.
| State | Indication |
|-------------|------------|
| `PENDING` | MongoDB Cloud has queued documents for archive. Archiving hasn't started. |
| `ARCHIVING` | MongoDB Cloud started archiving documents that meet the archival criteria. |
| `IDLE` | MongoDB Cloud waits to start the next archival job. |
| `PAUSING` | Someone chose to stop archiving. MongoDB Cloud finishes the running archival job then changes the state to `PAUSED` when that job completes. |
| `PAUSED` | MongoDB Cloud has stopped archiving. Archived documents can be queried. The specified archiving operation on the active cluster cannot archive additional documents. You can resume archiving for paused archives at any time. |
| `ORPHANED` | Someone has deleted the collection associated with an active or paused archive. MongoDB Cloud doesn't delete the archived data. You must manually delete the online archives associated with the deleted collection. |
| `DELETED` | Someone has deleted the archive was deleted. When someone deletes an online archive, MongoDB Cloud removes all associated archived documents from the cloud object storage. |
readOnly: true
type: string
required:
- collName
- criteria
- dbName
type: object
BackupRestoreJob:
properties:
batchId:
description: Unique 24-hexadecimal digit string that identifies the batch to which this restore job belongs. This parameter exists only for a sharded cluster restore.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
checkpointId:
description: |-
Unique 24-hexadecimal digit string that identifies the sharded cluster checkpoint. The checkpoint represents the point in time back to which you want to restore you data. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`. Use this parameter with sharded clusters only.
- If you set `checkpointId`, you can't set `oplogInc`, `oplogTs`, `snapshotId`, or `pointInTimeUTCMillis`.
- If you provide this parameter, this endpoint restores all data up to this checkpoint to the database you specify in the `delivery` object.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster with the snapshot you want to return. This parameter returns for restore clusters.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster containing the snapshots you want to retrieve.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
created:
description: Date and time when someone requested this restore job. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
delivery:
$ref: "#/components/schemas/BackupRestoreJobDelivery"
deploymentJobId:
description: Unique 24-hexadecimal digit string that identifies the an imported deployment job. This parameter exists when restoring from an imported snapshot/cluster shot.
readOnly: true
type: string
encryptionEnabled:
description: Flag that indicates whether someone encrypted the data in the restored snapshot.
readOnly: true
type: boolean
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that owns the snapshots.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hashes:
description: 'List that contains documents mapping each restore file to a hashed checksum. This parameter applies after you download the corresponding `delivery.url`. If `"methodName" : "HTTP"`, this list contains one object that represents the hash of the `.tar.gz` file.'
items:
$ref: "#/components/schemas/RestoreJobFileHash"
readOnly: true
type: array
id:
description: Unique 24-hexadecimal digit string that identifies the restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
masterKeyUUID:
description: 'Universally Unique Identifier (UUID) that identifies the Key Management Interoperability (KMIP) master key used to encrypt the snapshot data. This parameter applies only when `"encryptionEnabled" : "true"`.'
format: uuid
readOnly: true
type: string
oplogInc:
description: |-
Thirty-two-bit incrementing ordinal that represents operations within a given second. When paired with `oplogTs`, this represents the point in time to which MongoDB Cloud restores your data. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`.
- If you set `oplogInc`, you must set `oplogTs`, and can't set `checkpointId`, `snapshotId`, or `pointInTimeUTCMillis`.
- If you provide this parameter, this endpoint restores all data up to and including this Oplog timestamp to the database you specified in the `delivery` object.
format: int32
minimum: 1
type: integer
writeOnly: true
oplogTs:
description: |-
Date and time from which you want to restore this snapshot. This parameter expresses its value in ISO 8601 format in UTC. This represents the first part of an Oplog timestamp. When paired with `oplogInc`, they represent the last database operation to which you want to restore your data. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`. Run a query against `local.oplog.rs` on your replica set to find the desired timestamp.
- If you set `oplogTs`, you must set `oplogInc`, and you can't set `checkpointId`, `snapshotId`, or `pointInTimeUTCMillis`.
- If you provide this parameter, this endpoint restores all data up to and including this Oplog timestamp to the database you specified in the `delivery` object.
pattern: ^(?:[1-9]\\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d{1,9})?(?:Z|[+-][01]\\d:[0-5]\\d)$
type: string
writeOnly: true
pointInTimeUTCMillis:
description: |-
Timestamp from which you want to restore this snapshot. This parameter expresses its value in the number of milliseconds elapsed since the UNIX epoch. This timestamp must fall within the last 24 hours of the current time. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`.
- If you provide this parameter, this endpoint restores all data up to this point in time to the database you specified in the `delivery` object.
- If you set `pointInTimeUTCMillis`, you can't set `oplogInc`, `oplogTs`, `snapshotId`, or `checkpointId`.
externalDocs:
description: UNIX Epoch
url: https://en.wikipedia.org/wiki/Unix_time
format: int64
minimum: 1199145600000
type: integer
writeOnly: true
snapshotId:
description: Unique 24-hexadecimal digit string that identifies the snapshot to restore. If you set `snapshotId`, you can't set `oplogInc`, `oplogTs`, `pointInTimeUTCMillis`, or `checkpointId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
statusName:
description: Human-readable label that identifies the status of the downloadable file at the time of the request.
readOnly: true
type: string
timestamp:
$ref: "#/components/schemas/ApiBSONTimestamp"
required:
- delivery
type: object
BackupRestoreJobDelivery:
description: Method and details that indicate how to deliver the restored snapshot data.
properties:
authHeader:
description: 'Header name to use when downloading the restore, used with `"delivery.methodName" : "HTTP"`.'
readOnly: true
type: string
authValue:
description: 'Header value to use when downloading the restore, used with `"delivery.methodName" : "HTTP"`.'
readOnly: true
type: string
expirationHours:
description: 'Number of hours after the restore job completes that indicates when the Uniform Resource Locator (URL) for the snapshot download file expires. The resource returns this parameter when `"delivery.methodName" : "HTTP"`.'
format: int32
minimum: 1
type: integer
expires:
description: 'Date and time when the Uniform Resource Locator (URL) for the snapshot download file expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC. The resource returns this parameter when `"delivery.methodName" : "HTTP"`.'
format: date-time
readOnly: true
type: string
maxDownloads:
description: 'Positive integer that indicates how many times you can use the Uniform Resource Locator (URL) for the snapshot download file. The resource returns this parameter when `"delivery.methodName" : "HTTP"`.'
format: int32
minimum: 1
type: integer
methodName:
description: 'Human-readable label that identifies the means for delivering the data. If you set `"delivery.methodName" : "AUTOMATED_RESTORE"`, you must also set: `delivery.targetGroupId` and `delivery.targetClusterName` or `delivery.targetClusterId`. The response returns `"delivery.methodName" : "HTTP"` as an automated restore uses HyperText Transport Protocol (HTTP) to deliver the restore job to the target host.'
type: string
statusName:
description: State of the downloadable snapshot file when MongoDB Cloud received this request.
readOnly: true
type: string
targetClusterId:
description: |-
Unique 24-hexadecimal digit string that identifies the target cluster. Use the `clusterId` returned in the response body of the **Get All Snapshots** and **Get a Snapshot** endpoints. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`.
If the target cluster doesn't have backup enabled, two resources return parameters with empty values:
- **Get All Snapshots** endpoint returns an empty results array without `clusterId` elements
- **Get a Snapshot** endpoint doesn't return a `clusterId` parameter.
To return a response with the `clusterId` parameter, either use the `delivery.targetClusterName` parameter or enable backup on the target cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
targetClusterName:
description: |-
Human-readable label that identifies the target cluster. Use the `clusterName` returned in the response body of the **Get All Snapshots** and **Get a Snapshot** endpoints. This parameter applies when `"delivery.methodName" : "AUTOMATED_RESTORE"`.
If the target cluster doesn't have backup enabled, two resources return parameters with empty values:
- **Get All Snapshots** endpoint returns an empty results array without `clusterId` elements
- **Get a Snapshot** endpoint doesn't return a `clusterId` parameter.
To return a response with the `clusterId` parameter, either use the `delivery.targetClusterName` parameter or enable backup on the target cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
targetGroupId:
description: 'Unique 24-hexadecimal digit string that identifies the project that contains the destination cluster for the restore job. The resource returns this parameter when `"delivery.methodName" : "AUTOMATED_RESTORE"`.'
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
url:
deprecated: true
description: 'Uniform Resource Locator (URL) from which you can download the restored snapshot data. URL includes the verification key. The resource returns this parameter when `"delivery.methodName" : "HTTP"`.'
readOnly: true
type: string
urlV2:
description: 'Uniform Resource Locator (URL) from which you can download the restored snapshot data. This should be preferred over `url`. The verification key must be sent as an HTTP header. The resource returns this parameter when `"delivery.methodName" : "HTTP"`.'
readOnly: true
type: string
required:
- methodName
title: Restore Snapshot Delivery Metadata
type: object
BackupSnapshot:
properties:
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster with the snapshots you want to return.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster.
readOnly: true
type: string
complete:
description: Flag that indicates whether the snapshot exists. This flag returns `false` while MongoDB Cloud creates the snapshot.
readOnly: true
type: boolean
created:
$ref: "#/components/schemas/ApiBSONTimestamp"
doNotDelete:
description: "Flag that indicates whether someone can delete this snapshot. You can't set `\"doNotDelete\" : true` and set a timestamp for **expires** in the same request."
type: boolean
expires:
description: 'Date and time when MongoDB Cloud deletes the snapshot. If `"doNotDelete" : true`, MongoDB Cloud removes any value set for this parameter. This parameter expresses its value in the ISO 8601 timestamp format in UTC.'
format: date-time
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that owns the snapshots.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
incremental:
description: Flag indicating if this is an incremental or a full snapshot.
readOnly: true
type: boolean
lastOplogAppliedTimestamp:
$ref: "#/components/schemas/ApiBSONTimestamp"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
parts:
description: |-
Metadata that describes the complete snapshot.
- For a replica set, this array contains a single document.
- For a sharded cluster, this array contains one document for each shard plus one document for the config host.
items:
$ref: "#/components/schemas/BackupSnapshotPart"
readOnly: true
type: array
type: object
BackupSnapshotPart:
description: Characteristics that identify this snapshot.
properties:
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster with the snapshots you want to return.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
completedTime:
description: Date and time when the snapshot completed. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
compressionSetting:
description: Human-readable label that identifies the method of compression for the snapshot.
readOnly: true
type: string
dataSizeBytes:
description: Total size of the data stored on each node in the cluster. This parameter expresses its value in bytes.
format: int64
readOnly: true
type: integer
encryptionEnabled:
description: Flag that indicates whether someone encrypted this snapshot.
readOnly: true
type: boolean
fcv:
description: Number that indicates the feature compatibility version of MongoDB that the replica set primary ran when MongoDB Cloud created the snapshot.
readOnly: true
type: string
fileSizeBytes:
description: Number that indicates the total size of the data files in bytes.
format: int64
readOnly: true
type: integer
machineId:
description: Hostname and port that indicate the node on which MongoDB Cloud created the snapshot.
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
masterKeyUUID:
description: 'Unique string that identifies the Key Management Interoperability (KMIP) master key used to encrypt the snapshot data. The resource returns this parameter when `"parts.encryptionEnabled" : true`.'
format: uuid
readOnly: true
type: string
mongodVersion:
description: Number that indicates the version of MongoDB that the replica set primary ran when MongoDB Cloud created the snapshot.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
replicaSetName:
description: Human-readable label that identifies the replica set.
readOnly: true
type: string
replicaState:
description: The node's role at the time when snapshot process began.
readOnly: true
type: string
storageSizeBytes:
description: Number that indicates the total size of space allocated for document storage.
format: int64
readOnly: true
type: integer
typeName:
description: Human-readable label that identifies the type of server from which MongoDB Cloud took this snapshot.
readOnly: true
type: string
readOnly: true
title: Snapshot Components
type: object
BackupSnapshotRetention:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
retentionUnit:
description: Quantity of time in which MongoDB Cloud measures snapshot retention.
type: string
retentionValue:
description: Number that indicates the amount of days, weeks, months, or years that MongoDB Cloud retains the snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items. If the hourly policy item specifies a retention of two days, specify two days or greater for the retention of the weekly policy item.
example: 5
format: int32
type: integer
required:
- retentionUnit
- retentionValue
type: object
BadRequestDetail:
description: Bad request detail.
properties:
fields:
description: Describes all violations in a client request.
items:
$ref: "#/components/schemas/FieldViolation"
type: array
readOnly: true
type: object
BaseAtlasDataLakeRegion:
description: Name of the region to which the data lake routes client connections.
type: string
BaseCloudProviderInstanceSize:
description: Instance size boundary to which your cluster can automatically scale.
readOnly: true
type: string
BaseNetworkPeeringConnectionSettings:
properties:
containerId:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that contains the specified network peering connection.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the network peering connection.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
providerName:
description: Cloud service provider that serves the requested network peering connection.
type: string
accepterRegionName:
description: Amazon Web Services (AWS) region where the Virtual Peering Connection (VPC) that you peered with the MongoDB Cloud VPC resides. The resource returns `null` if your VPC and the MongoDB Cloud VPC reside in the same region.
type: string
awsAccountId:
description: Unique twelve-digit string that identifies the Amazon Web Services (AWS) account that owns the VPC that you peered with the MongoDB Cloud VPC.
pattern: ^[0-9]{12}$
type: string
connectionId:
description: Unique string that identifies the peering connection on AWS.
readOnly: true
type: string
errorStateName:
description: Type of error that can be returned when requesting an Amazon Web Services (AWS) peering connection. The resource returns `null` if the request succeeded.
readOnly: true
type: string
routeTableCidrBlock:
description: Internet Protocol (IP) addresses expressed in Classless Inter-Domain Routing (CIDR) notation of the VPC's subnet that you want to peer with the MongoDB Cloud VPC.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
statusName:
description: State of the network peering connection at the time you made the request.
readOnly: true
type: string
vpcId:
description: Unique string that identifies the VPC on Amazon Web Services (AWS) that you want to peer with the MongoDB Cloud VPC.
pattern: ^vpc-[0-9a-f]{17}$
type: string
azureDirectoryId:
description: Unique string that identifies the Azure AD directory in which the VNet peered with the MongoDB Cloud VNet resides.
format: uuid
type: string
azureSubscriptionId:
description: Unique string that identifies the Azure subscription in which the VNet you peered with the MongoDB Cloud VNet resides.
format: uuid
type: string
errorState:
description: 'Error message returned when a requested Azure network peering resource returns `"status" : "FAILED"`. The resource returns `null` if the request succeeded.'
readOnly: true
type: string
resourceGroupName:
description: Human-readable label that identifies the resource group in which the VNet to peer with the MongoDB Cloud VNet resides.
pattern: ^([-\w._()])+$
type: string
status:
description: State of the network peering connection at the time you made the request.
readOnly: true
type: string
vnetName:
description: Human-readable label that identifies the VNet that you want to peer with the MongoDB Cloud VNet.
pattern: ^([-\w._()])+$
type: string
errorMessage:
description: Details of the error returned when requesting a GCP network peering resource. The resource returns `null` if the request succeeded.
readOnly: true
type: string
gcpProjectId:
description: Human-readable label that identifies the GCP project that contains the network that you want to peer with the MongoDB Cloud VPC.
pattern: ^[a-z][0-9a-z-]{4,28}[0-9a-z]{1}
type: string
networkName:
description: Human-readable label that identifies the network to peer with the MongoDB Cloud VPC.
pattern: "[a-z]([-a-z0-9]{0,62}[a-z0-9]{0,1})?"
type: string
required:
- containerId
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- accepterRegionName
- awsAccountId
- connectionId
- errorStateName
- routeTableCidrBlock
- statusName
- vpcId
required:
- accepterRegionName
- awsAccountId
- routeTableCidrBlock
- vpcId
AZURE:
properties:
- azureDirectoryId
- azureSubscriptionId
- errorState
- resourceGroupName
- status
- vnetName
required:
- azureDirectoryId
- azureSubscriptionId
- resourceGroupName
- vnetName
GCP:
properties:
- errorMessage
- gcpProjectId
- networkName
- status
required:
- gcpProjectId
- networkName
BaseStreamsRegion:
description: Name of the cloud provider region hosting Atlas Stream Processing.
type: string
BasicDBObject:
type: object
BiConnector:
description: Settings needed to configure the MongoDB Connector for Business Intelligence for this cluster.
externalDocs:
description: MongoDB Connector for Business Intelligence
url: https://docs.mongodb.com/bi-connector/current/
properties:
enabled:
description: Flag that indicates whether MongoDB Connector for Business Intelligence is enabled on the specified cluster.
type: boolean
readPreference:
description: Data source node designated for the MongoDB Connector for Business Intelligence on MongoDB Cloud. The MongoDB Connector for Business Intelligence on MongoDB Cloud reads data from the primary, secondary, or analytics node based on your read preferences. Defaults to `ANALYTICS` node, or `SECONDARY` if there are no `ANALYTICS` nodes.
externalDocs:
description: Read preferences for BI Connector
url: https://docs.atlas.mongodb.com/cluster-config/enable-bic/#std-label-bic-read-preferences
type: string
title: MongoDB Connector for Business Intelligence Settings
type: object
BillingInvoice:
properties:
amountBilledCents:
description: Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
amountPaidCents:
description: Sum that the specified organization paid toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
created:
description: Date and time when MongoDB Cloud created this invoice. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
creditsCents:
description: Sum that MongoDB credited the specified organization toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
endDate:
description: Date and time when MongoDB Cloud finished the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the invoice submitted to the specified organization. Charges typically post the next day.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lineItems:
description: List that contains individual services included in this invoice.
items:
$ref: "#/components/schemas/InvoiceLineItem"
readOnly: true
type: array
linkedInvoices:
description: List that contains the invoices for organizations linked to the paying organization.
items:
$ref: "#/components/schemas/BillingInvoice"
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization charged for services consumed from MongoDB Cloud.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
payments:
description: List that contains funds transferred to MongoDB to cover the specified service noted in this invoice.
items:
$ref: "#/components/schemas/BillingPayment"
readOnly: true
type: array
refunds:
description: List that contains payments that MongoDB returned to the organization for this invoice.
items:
$ref: "#/components/schemas/BillingRefund"
readOnly: true
type: array
salesTaxCents:
description: Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
startDate:
description: Date and time when MongoDB Cloud began the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
startingBalanceCents:
description: Sum that the specified organization owed to MongoDB when MongoDB issued this invoice. This parameter expresses its value in US Dollars.
format: int64
readOnly: true
type: integer
statusName:
description: |-
Phase of payment processing in which this invoice exists when you made this request. Accepted phases include:
- `CLOSED`: MongoDB finalized all charges in the billing cycle but has yet to charge the customer.
- `FAILED`: MongoDB attempted to charge the provided credit card but charge for that amount failed.
- `FORGIVEN`: Customer initiated payment which MongoDB later forgave.
- `FREE`: All charges totalled zero so the customer won't be charged.
- `INVOICED`: MongoDB handled these charges using elastic invoicing.
- `PAID`: MongoDB succeeded in charging the provided credit card.
- `PENDING`: Invoice includes charges for the current billing cycle.
- `PREPAID`: Customer has a pre-paid plan so they won't be charged.
type: string
subtotalCents:
description: Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
updated:
description: Date and time when MongoDB Cloud last updated the value of this payment. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
BillingInvoiceMetadata:
properties:
amountBilledCents:
description: Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
amountPaidCents:
description: Sum that the specified organization paid toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
created:
description: Date and time when MongoDB Cloud created this invoice. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
creditsCents:
description: Sum that MongoDB credited the specified organization toward this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
endDate:
description: Date and time when MongoDB Cloud finished the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the invoice submitted to the specified organization. Charges typically post the next day.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
linkedInvoices:
description: List that contains the invoices for organizations linked to the paying organization.
items:
$ref: "#/components/schemas/BillingInvoiceMetadata"
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization charged for services consumed from MongoDB Cloud.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
salesTaxCents:
description: Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
startDate:
description: Date and time when MongoDB Cloud began the billing period that this invoice covers. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
startingBalanceCents:
description: Sum that the specified organization owed to MongoDB when MongoDB issued this invoice. This parameter expresses its value in US Dollars.
format: int64
readOnly: true
type: integer
statusName:
description: |-
Phase of payment processing in which this invoice exists when you made this request. Accepted phases include:
- `CLOSED`: MongoDB finalized all charges in the billing cycle but has yet to charge the customer.
- `FAILED`: MongoDB attempted to charge the provided credit card but charge for that amount failed.
- `FORGIVEN`: Customer initiated payment which MongoDB later forgave.
- `FREE`: All charges totalled zero so the customer won't be charged.
- `INVOICED`: MongoDB handled these charges using elastic invoicing.
- `PAID`: MongoDB succeeded in charging the provided credit card.
- `PENDING`: Invoice includes charges for the current billing cycle.
- `PREPAID`: Customer has a pre-paid plan so they won't be charged.
type: string
subtotalCents:
description: Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
updated:
description: Date and time when MongoDB Cloud last updated the value of this payment. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
BillingPayment:
description: Funds transferred to MongoDB to cover the specified service in this invoice.
properties:
amountBilledCents:
description: Sum of services that the specified organization consumed in the period covered in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
amountPaidCents:
description: Sum that the specified organization paid toward the associated invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
created:
description: Date and time when the customer made this payment attempt. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
currency:
description: The currency in which payment was paid. This parameter expresses its value in 3-letter ISO 4217 currency code.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this payment toward the associated invoice.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
salesTaxCents:
description: Sum of sales tax applied to this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
statusName:
description: |-
Phase of payment processing for the associated invoice when you made this request. These phases include:
- `CANCELLED`: Customer or MongoDB cancelled the payment.
- `ERROR`: Issue arose when attempting to complete payment.
- `FAILED`: MongoDB tried to charge the credit card without success.
- `FAILED_AUTHENTICATION`: Strong Customer Authentication has failed. Confirm that your payment method is authenticated.
- `FORGIVEN`: Customer initiated payment which MongoDB later forgave.
- `INVOICED`: MongoDB issued an invoice that included this line item.
- `NEW`: Customer provided a method of payment, but MongoDB hasn't tried to charge the credit card.
- `PAID`: Customer submitted a successful payment.
- `PARTIAL_PAID`: Customer paid for part of this line item.
type: string
subtotalCents:
description: Sum of all positive invoice line items contained in this invoice. This parameter expresses its value in cents (100ths of one US Dollar).
format: int64
readOnly: true
type: integer
unitPrice:
description: The unit price applied to `amountBilledCents` to compute total payment amount. This value is represented as a decimal string.
readOnly: true
type: string
updated:
description: Date and time when the customer made an update to this payment attempt. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
title: Payment
type: object
BillingRefund:
description: One payment that MongoDB returned to the organization for this invoice.
properties:
amountCents:
description: Sum of the funds returned to the specified organization expressed in cents (100th of US Dollar).
format: int64
readOnly: true
type: integer
created:
description: Date and time when MongoDB Cloud created this refund. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
paymentId:
description: Unique 24-hexadecimal digit string that identifies the payment that the organization had made.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
reason:
description: Justification that MongoDB accepted to return funds to the organization.
readOnly: true
type: string
title: Refund
type: object
CloudAccessRoleAssignment:
description: MongoDB Cloud user's roles and the corresponding organization or project to which that role applies. Each role can apply to one organization or one project but not both.
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to which this role belongs. You can set a value for this parameter or `orgId` but not both in the same request.
example: 32b6e34b3d91647abb20e7b8
maxLength: 24
minLength: 24
pattern: ^([a-f0-9]{24})$
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization to which this role belongs. You can set a value for this parameter or `groupId` but not both in the same request.
example: 32b6e34b3d91647abb20e7b8
maxLength: 24
minLength: 24
pattern: ^([a-f0-9]{24})$
type: string
roleName:
description: Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include organization- and project-level roles.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
type: string
title: Role Assignment
type: object
CloudAppUser:
properties:
country:
description: Two alphabet characters that identifies MongoDB Cloud user's geographic location. This parameter uses the ISO 3166-1a2 code format.
pattern: ^([A-Z]{2})$
type: string
createdAt:
description: Date and time when the current account is created. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
emailAddress:
deprecated: true
description: Email address that belongs to the MongoDB Cloud user.
format: email
readOnly: true
type: string
firstName:
description: First or given name that belongs to the MongoDB Cloud user.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lastAuth:
description: Date and time when the current account last authenticated. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
lastName:
description: Last name, family name, or surname that belongs to the MongoDB Cloud user.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mobileNumber:
description: Mobile phone number that belongs to the MongoDB Cloud user.
pattern: (?:(?:\\+?1\\s*(?:[.-]\\s*)?)?(?:(\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\s*)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\s*(?:[.-]\\s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\s*(?:[.-]\\s*)?([0-9]{4})$
type: string
password:
description: Password applied with the username to log in to MongoDB Cloud. MongoDB Cloud does not return this parameter except in response to creating a new MongoDB Cloud user. Only the MongoDB Cloud user can update their password after it has been set from the MongoDB Cloud console.
format: password
minLength: 8
type: string
roles:
description: List of objects that display the MongoDB Cloud user's roles and the corresponding organization or project to which that role applies. A role can apply to one organization or one project but not both.
items:
$ref: "#/components/schemas/CloudAccessRoleAssignment"
type: array
teamIds:
description: List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
items:
description: Unique 24-hexadecimal digit string that identifies the team to which this MongoDB Cloud user belongs.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
readOnly: true
type: array
uniqueItems: true
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
type: string
required:
- country
- emailAddress
- firstName
- lastName
- mobileNumber
- password
- roles
- username
type: object
CloudCluster:
description: Settings that describe the clusters in each project that the API key is authorized to view.
properties:
alertCount:
description: Whole number that indicates the quantity of alerts open on the cluster.
format: int32
readOnly: true
type: integer
authEnabled:
description: Flag that indicates whether authentication is required to access the nodes in this cluster.
readOnly: true
type: boolean
availability:
description: Term that expresses how many nodes of the cluster can be accessed when MongoDB Cloud receives this request. This parameter returns `available` when all nodes are accessible, `warning` only when some nodes in the cluster can be accessed, `unavailable` when the cluster can't be accessed, or `dead` when the cluster has been deactivated.
readOnly: true
type: string
backupEnabled:
description: Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.
readOnly: true
type: boolean
clusterId:
description: Unique 24-hexadecimal character string that identifies the cluster. Each `clusterId` is used only once across all MongoDB Cloud deployments.
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
dataSizeBytes:
description: Total size of the data stored on each node in the cluster. The resource expresses this value in bytes.
format: int64
readOnly: true
type: integer
name:
description: Human-readable label that identifies the cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
nodeCount:
description: Whole number that indicates the quantity of nodes that comprise the cluster.
format: int32
readOnly: true
type: integer
sslEnabled:
description: Flag that indicates whether TLS authentication is required to access the nodes in this cluster.
readOnly: true
type: boolean
type:
description: Human-readable label that indicates the cluster type.
readOnly: true
type: string
versions:
description: List that contains the versions of MongoDB that each node in the cluster runs.
items:
type: string
readOnly: true
type: array
uniqueItems: true
readOnly: true
type: object
CloudDatabaseUser:
properties:
awsIAMType:
default: NONE
description: Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.
type: string
databaseName:
default: admin
description: The database against which the database user authenticates. Database users must provide both a username and authentication database to log into MongoDB. If the user authenticates with AWS IAM, x.509, LDAP, or OIDC Workload this value should be `$external`. If the user authenticates with SCRAM-SHA or OIDC Workforce, this value should be `admin`.
type: string
deleteAfterDate:
description: Date and time when MongoDB Cloud deletes the user. This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. You must specify a future date that falls within one week of making the Application Programming Interface (API) request.
format: date-time
type: string
description:
description: Description of this database user.
maxLength: 100
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project.
type: string
writeOnly: true
labels:
description: List that contains the key-value pairs for tagging and categorizing the MongoDB database user. The labels that you define do not appear in the console.
items:
$ref: "#/components/schemas/ComponentLabel"
type: array
ldapAuthType:
default: NONE
description: Part of the Lightweight Directory Access Protocol (LDAP) record that the database uses to authenticate this database user on the LDAP host.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
oidcAuthType:
default: NONE
description: Human-readable label that indicates whether the new database user or group authenticates with OIDC federated authentication. To create a federated authentication user, specify the value of USER in this field. To create a federated authentication group, specify the value of `IDP_GROUP` in this field.
type: string
password:
description: Alphanumeric string that authenticates this database user against the database specified in `databaseName`. To authenticate with SCRAM-SHA, you must specify this parameter. This parameter doesn't appear in this response.
externalDocs:
description: SCRAM-SHA
url: https://docs.mongodb.com/manual/core/security-scram/
minLength: 8
type: string
writeOnly: true
roles:
description: List that provides the pairings of one role with one applicable database.
items:
$ref: "#/components/schemas/DatabaseUserRole"
type: array
scopes:
description: List that contains clusters, MongoDB Atlas Data Lakes, and MongoDB Atlas Streams Workspaces that this database user can access. If omitted, MongoDB Cloud grants the database user access to all the clusters, MongoDB Atlas Data Lakes, and MongoDB Atlas Streams Workspaces in the project.
items:
$ref: "#/components/schemas/UserScope"
type: array
username:
description: |
Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication:
| Authentication Method | Parameter Needed | Parameter Value | username Format |
|---|---|---|---|
| AWS IAM | `awsIAMType` | `ROLE` | ARN |
| AWS IAM | `awsIAMType` | `USER` | ARN |
| x.509 | `x509Type` | `CUSTOMER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| x.509 | `x509Type` | `MANAGED` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `USER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `GROUP` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| OIDC Workforce | `oidcAuthType` | `IDP_GROUP` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP group name |
| OIDC Workload | `oidcAuthType` | `USER` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP user name |
| SCRAM-SHA | `awsIAMType`, `x509Type`, `ldapAuthType`, `oidcAuthType` | `NONE` | Alphanumeric string |
maxLength: 1024
type: string
x509Type:
default: NONE
description: |-
X.509 method that MongoDB Cloud uses to authenticate the database user.
- For application-managed X.509, specify `MANAGED`.
- For self-managed X.509, specify `CUSTOMER`.
Users created with the `CUSTOMER` method require a Common Name (CN) in the **username** parameter. You must create externally authenticated users on the `$external` database.
type: string
required:
- databaseName
- groupId
- roles
- username
type: object
CloudProviderAccessAWSIAMRole:
allOf:
- $ref: "#/components/schemas/CloudProviderAccessRole"
- properties:
atlasAWSAccountArn:
description: Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.
example: arn:aws:iam::772401394250:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
type: string
atlasAssumedRoleExternalId:
description: Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.
format: uuid
readOnly: true
type: string
authorizedDate:
description: Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
createdDate:
description: Date and time when someone created this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Amazon Web Services (AWS) Identity and Access Management (IAM) role.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
iamAssumedRoleArn:
description: Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.
example: arn:aws:iam::123456789012:root
maxLength: 2048
minLength: 20
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
type: object
description: Details that describe the features linked to the Amazon Web Services (AWS) Identity and Access Management (IAM) role.
required:
- providerName
type: object
properties:
atlasAWSAccountArn:
description: Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.
example: arn:aws:iam::772401394250:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
type: string
atlasAssumedRoleExternalId:
description: Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.
format: uuid
readOnly: true
type: string
authorizedDate:
description: Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
createdDate:
description: Date and time when someone created this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Amazon Web Services (AWS) Identity and Access Management (IAM) role.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
iamAssumedRoleArn:
description: Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.
example: arn:aws:iam::123456789012:root
maxLength: 2048
minLength: 20
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
CloudProviderAccessAzureServicePrincipal:
allOf:
- $ref: "#/components/schemas/CloudProviderAccessRole"
- properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the role. Pass this value as the `roleId` path parameter when you request, update, or remove this Azure Service Principal. Azure Service Principals return this identifier as `_id`, while Amazon Web Services (AWS) IAM roles and Google Service Accounts return it as `roleId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
atlasAzureAppId:
description: Azure Active Directory Application ID of Atlas. This field is optional and will be derived from the Azure subscription if not provided.
format: uuid
type: string
createdDate:
description: Date and time when this Azure Service Principal was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Azure Service Principal.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
lastUpdatedDate:
description: Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
servicePrincipalId:
description: UUID string that identifies the Azure Service Principal.
format: uuid
type: string
tenantId:
description: UUID String that identifies the Azure Active Directory Tenant ID.
format: uuid
type: string
type: object
description: Details that describe the features linked to the Azure Service Principal.
required:
- providerName
type: object
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the role. Pass this value as the `roleId` path parameter when you request, update, or remove this Azure Service Principal. Azure Service Principals return this identifier as `_id`, while Amazon Web Services (AWS) IAM roles and Google Service Accounts return it as `roleId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
atlasAzureAppId:
description: Azure Active Directory Application ID of Atlas. This field is optional and will be derived from the Azure subscription if not provided.
format: uuid
type: string
createdDate:
description: Date and time when this Azure Service Principal was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Azure Service Principal.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
lastUpdatedDate:
description: Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
servicePrincipalId:
description: UUID string that identifies the Azure Service Principal.
format: uuid
type: string
tenantId:
description: UUID String that identifies the Azure Active Directory Tenant ID.
format: uuid
type: string
CloudProviderAccessFeatureUsage:
description: MongoDB Cloud features associated with this Amazon Web Services (AWS) Identity and Access Management (IAM) role.
properties:
featureType:
description: Human-readable label that describes one MongoDB Cloud feature linked to this Amazon Web Services (AWS) Identity and Access Management (IAM) role.
readOnly: true
type: string
featureId:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsagePushBasedLogExportFeatureId"
type: object
x-xgen-discriminator:
propertyName: featureType
mapping:
ATLAS_DATA_LAKE:
properties:
- featureId
ATLAS_LOG_INTEGRATION:
properties:
- featureId
ENCRYPTION_AT_REST:
properties:
- featureId
EXPORT_SNAPSHOT:
properties:
- featureId
PUSH_BASED_LOG_EXPORT:
properties:
- featureId
CloudProviderAccessFeatureUsagePushBasedLogExportFeatureId:
description: Identifying characteristics about the Amazon Web Services (AWS) Simple Storage Service (S3) export bucket linked to this AWS Identity and Access Management (IAM) role.
properties:
bucketName:
description: Name of the AWS S3 bucket to which your logs will be exported to.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies your project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
type: object
CloudProviderAccessGCPServiceAccount:
allOf:
- $ref: "#/components/schemas/CloudProviderAccessRole"
- properties:
createdDate:
description: Date and time when this Google Service Account was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Google Service Account.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
gcpServiceAccountForAtlas:
description: Email address for the Google Service Account created by Atlas.
pattern: ^mongodb-atlas-[0-9a-z]{16}@p-[0-9a-z]{24}.iam.gserviceaccount.com$
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
status:
description: Provision status of the service account.
readOnly: true
type: string
type: object
description: Details that describe the features linked to the GCP Service Account.
required:
- providerName
type: object
properties:
createdDate:
description: Date and time when this Google Service Account was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Google Service Account.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
gcpServiceAccountForAtlas:
description: Email address for the Google Service Account created by Atlas.
pattern: ^mongodb-atlas-[0-9a-z]{16}@p-[0-9a-z]{24}.iam.gserviceaccount.com$
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
status:
description: Provision status of the service account.
readOnly: true
type: string
CloudProviderAccessRole:
description: Cloud provider access role.
properties:
providerName:
description: Human-readable label that identifies the cloud provider of the role.
type: string
atlasAWSAccountArn:
description: Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.
example: arn:aws:iam::772401394250:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
type: string
atlasAssumedRoleExternalId:
description: Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.
format: uuid
readOnly: true
type: string
authorizedDate:
description: Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
createdDate:
description: Date and time when this Google Service Account was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Google Service Account.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
iamAssumedRoleArn:
description: Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.
example: arn:aws:iam::123456789012:root
maxLength: 2048
minLength: 20
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
_id:
description: Unique 24-hexadecimal digit string that identifies the role. Pass this value as the `roleId` path parameter when you request, update, or remove this Azure Service Principal. Azure Service Principals return this identifier as `_id`, while Amazon Web Services (AWS) IAM roles and Google Service Accounts return it as `roleId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
atlasAzureAppId:
description: Azure Active Directory Application ID of Atlas. This field is optional and will be derived from the Azure subscription if not provided.
format: uuid
type: string
lastUpdatedDate:
description: Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
servicePrincipalId:
description: UUID string that identifies the Azure Service Principal.
format: uuid
type: string
tenantId:
description: UUID String that identifies the Azure Active Directory Tenant ID.
format: uuid
type: string
gcpServiceAccountForAtlas:
description: Email address for the Google Service Account created by Atlas.
pattern: ^mongodb-atlas-[0-9a-z]{16}@p-[0-9a-z]{24}.iam.gserviceaccount.com$
type: string
status:
description: Provision status of the service account.
readOnly: true
type: string
required:
- providerName
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- atlasAWSAccountArn
- atlasAssumedRoleExternalId
- authorizedDate
- createdDate
- featureUsages
- iamAssumedRoleArn
- roleId
AZURE:
properties:
- _id
- atlasAzureAppId
- createdDate
- featureUsages
- lastUpdatedDate
- servicePrincipalId
- tenantId
GCP:
properties:
- createdDate
- featureUsages
- gcpServiceAccountForAtlas
- roleId
- status
CloudProviderAccessRoleRequest:
description: Cloud provider access role.
properties:
providerName:
description: Human-readable label that identifies the cloud provider of the role.
type: string
atlasAWSAccountArn:
description: Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.
example: arn:aws:iam::772401394250:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
type: string
atlasAssumedRoleExternalId:
description: Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.
format: uuid
readOnly: true
type: string
authorizedDate:
description: Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
createdDate:
description: Date and time when this GCP Service Account was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this GCP Service Account.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
_id:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
atlasAzureAppId:
description: Azure Active Directory Application ID of Atlas. This field is optional and will be derived from the Azure subscription if not provided.
format: uuid
type: string
lastUpdatedDate:
description: Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
servicePrincipalId:
description: UUID string that identifies the Azure Service Principal.
format: uuid
type: string
tenantId:
description: UUID String that identifies the Azure Active Directory Tenant ID.
format: uuid
type: string
gcpServiceAccountForAtlas:
description: ID string that identifies the GCP Service Account used by Atlas.
readOnly: true
type: string
required:
- providerName
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- atlasAWSAccountArn
- atlasAssumedRoleExternalId
- authorizedDate
- createdDate
- featureUsages
- roleId
AZURE:
properties:
- _id
- atlasAzureAppId
- createdDate
- featureUsages
- lastUpdatedDate
- servicePrincipalId
- tenantId
GCP:
properties:
- createdDate
- featureUsages
- gcpServiceAccountForAtlas
- roleId
CloudProviderAccessRoleRequestUpdate:
description: Cloud provider access role.
properties:
providerName:
description: Human-readable label that identifies the cloud provider of the role.
type: string
atlasAWSAccountArn:
description: Amazon Resource Name that identifies the Amazon Web Services (AWS) user account that MongoDB Cloud uses when it assumes the Identity and Access Management (IAM) role.
example: arn:aws:iam::772401394250:role/my-test-aws-role
maxLength: 2048
minLength: 20
readOnly: true
type: string
atlasAssumedRoleExternalId:
description: Unique external ID that MongoDB Cloud uses when it assumes the IAM role in your Amazon Web Services (AWS) account.
format: uuid
readOnly: true
type: string
authorizedDate:
description: Date and time when someone authorized this role for the specified cloud service provider. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
createdDate:
description: Date and time when this Azure Service Principal was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
featureUsages:
description: List that contains application features associated with this Azure Service Principal.
items:
$ref: "#/components/schemas/CloudProviderAccessFeatureUsage"
readOnly: true
type: array
iamAssumedRoleArn:
description: Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.
example: arn:aws:iam::123456789012:root
maxLength: 2048
minLength: 20
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
_id:
description: Unique 24-hexadecimal digit string that identifies the role.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
atlasAzureAppId:
description: Azure Active Directory Application ID of Atlas. This field is optional and will be derived from the Azure subscription if not provided.
format: uuid
type: string
lastUpdatedDate:
description: Date and time when this Azure Service Principal was last updated. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
servicePrincipalId:
description: UUID string that identifies the Azure Service Principal.
format: uuid
type: string
tenantId:
description: UUID String that identifies the Azure Active Directory Tenant ID.
format: uuid
type: string
required:
- providerName
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- atlasAWSAccountArn
- atlasAssumedRoleExternalId
- authorizedDate
- createdDate
- featureUsages
- iamAssumedRoleArn
- roleId
AZURE:
properties:
- _id
- atlasAzureAppId
- createdDate
- featureUsages
- lastUpdatedDate
- servicePrincipalId
- tenantId
GCP:
properties: []
CloudProviderAccessRoles:
properties:
awsIamRoles:
description: List that contains the Amazon Web Services (AWS) IAM roles registered and authorized with MongoDB Cloud.
items:
$ref: "#/components/schemas/CloudProviderAccessAWSIAMRole"
type: array
azureServicePrincipals:
description: List that contains the Azure Service Principals registered with MongoDB Cloud.
items:
$ref: "#/components/schemas/CloudProviderAccessAzureServicePrincipal"
type: array
gcpServiceAccounts:
description: List that contains the Google Service Accounts registered and authorized with MongoDB Cloud.
items:
$ref: "#/components/schemas/CloudProviderAccessGCPServiceAccount"
type: array
type: object
CloudProviderContainer:
description: Collection of settings that configures the network container for a virtual private connection on Amazon Web Services.
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the network peering container.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
providerName:
description: Cloud service provider that serves the requested network peering containers.
type: string
provisioned:
description: Flag that indicates whether MongoDB Cloud clusters exist in the specified network peering container.
readOnly: true
type: boolean
atlasCidrBlock:
description: |-
IP addresses expressed in Classless Inter-Domain Routing (CIDR) notation that MongoDB Cloud uses for the network peering containers in your project. MongoDB Cloud assigns all of the project's clusters deployed to this cloud provider an IP address from this range. MongoDB Cloud locks this value if an M10 or greater cluster or a network peering connection exists in this project.
These CIDR blocks must fall within the ranges reserved per RFC 1918. AWS and Azure further limit the block to between the `/24` and `/21` ranges.
To modify the CIDR block, the target project cannot have:
- Any M10 or greater clusters
- Any other VPC peering connections
You can also create a new project and create a network peering connection to set the desired MongoDB Cloud network peering container CIDR block for that project. MongoDB Cloud limits the number of MongoDB nodes per network peering connection based on the CIDR block and the region selected for the project.
**Example:** A project in an Amazon Web Services (AWS) region supporting three availability zones and an MongoDB CIDR network peering container block of limit of `/24` equals 27 three-node replica sets.
pattern: ^((([0-9]{1,3}\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$
type: string
azureSubscriptionId:
description: Unique string that identifies the Azure subscription in which the MongoDB Cloud VNet resides.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
region:
description: Azure region to which MongoDB Cloud deployed this network peering container.
type: string
vnetName:
description: Unique string that identifies the Azure VNet in which MongoDB Cloud clusters in this network peering container exist. The response returns **null** if no clusters exist in this network peering container.
pattern: ^([-\w._()])+$
readOnly: true
type: string
gcpProjectId:
description: Unique string that identifies the GCP project in which MongoDB Cloud clusters in this network peering container exist. The response returns **null** if no clusters exist in this network peering container.
pattern: ^p-[0-9a-z]{24}$
readOnly: true
type: string
networkName:
description: Human-readable label that identifies the network in which MongoDB Cloud clusters in this network peering container exist. MongoDB Cloud returns **null** if no clusters exist in this network peering container.
pattern: ^nt-[0-9a-f]{24}-[0-9a-z]{8}$
readOnly: true
type: string
regions:
description: List of GCP regions to which you want to deploy this MongoDB Cloud network peering container. In this MongoDB Cloud project, you can deploy clusters only to the GCP regions in this list. To deploy MongoDB Cloud clusters to other GCP regions, create additional projects.
items:
description: List of GCP regions to which you want to deploy this MongoDB Cloud network peering container. In this MongoDB Cloud project, you can deploy clusters only to the GCP regions in this list. To deploy MongoDB Cloud clusters to other GCP regions, create additional projects.
type: string
type: array
regionName:
description: Geographic area that Amazon Web Services (AWS) defines to which MongoDB Cloud deployed this network peering container.
type: string
vpcId:
description: Unique string that identifies the MongoDB Cloud VPC on AWS.
example: vpc-b555d3b0d9cb783b0
pattern: ^vpc-[0-9a-f]{17}$
readOnly: true
type: string
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- atlasCidrBlock
- regionName
- vpcId
required:
- regionName
AZURE:
properties:
- atlasCidrBlock
- azureSubscriptionId
- region
- vnetName
required:
- atlasCidrBlock
- region
GCP:
properties:
- atlasCidrBlock
- gcpProjectId
- networkName
- regions
required:
- atlasCidrBlock
- regions
CloudProviderEndpointServiceRequest:
properties:
portMappingEnabled:
default: false
description: Flag that indicates whether this endpoint service uses PSC port-mapping. This is only applicable for GCP Private Endpoint Services.
type: boolean
writeOnly: true
providerName:
description: Human-readable label that identifies the cloud service provider for which you want to create the private endpoint service.
type: string
writeOnly: true
region:
description: Cloud provider region in which you want to create the private endpoint service. Regions accepted as values differ for [Amazon Web Services](https://docs.atlas.mongodb.com/reference/amazon-aws/), [Google Cloud Platform](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Microsoft Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
type: string
writeOnly: true
supportedRemoteRegions:
description: List of regions that the endpoint service supports. Native cross region support is implemented for AWS only.
items:
description: AWS region name
type: string
maxItems: 35
type: array
writeOnly: true
required:
- providerName
- region
type: object
CloudProviderRegions:
properties:
instanceSizes:
description: List of instances sizes that this cloud provider supports.
items:
$ref: "#/components/schemas/ClusterCloudProviderInstanceSize"
readOnly: true
type: array
provider:
description: Human-readable label that identifies the Cloud provider.
type: string
type: object
CloudRegionConfig20240805:
description: Cloud service provider on which MongoDB Cloud provisions the hosts.
properties:
electableSpecs:
$ref: "#/components/schemas/HardwareSpec20240805"
priority:
description: |-
Precedence is given to this region when a primary election occurs. If your `regionConfigs` has only `readOnlySpecs`, `analyticsSpecs`, or both, set this value to `0`. If you have multiple `regionConfigs` objects (your cluster is multi-region or multi-cloud), they must have priorities in descending order. The highest priority is `7`.
**Example:** If you have three regions, their priorities would be `7`, `6`, and `5` respectively. If you added two more regions for supporting electable nodes, the priorities of those regions would be `4` and `3` respectively.
example: 7
format: int32
maximum: 7
minimum: 0
type: integer
providerName:
description: Cloud service provider on which MongoDB Cloud provisions the hosts. Set dedicated clusters to `AWS`, `GCP`, `AZURE` or `TENANT`.
type: string
regionName:
description: Physical location of your MongoDB cluster nodes. The region you choose can affect network latency for clients accessing your databases. The region name is only returned in the response for single-region clusters. When MongoDB Cloud deploys a dedicated cluster, it checks if a VPC or VPC connection exists for that provider and region. If not, MongoDB Cloud creates them as part of the deployment. It assigns the VPC a Classless Inter-Domain Routing (CIDR) block. To limit a new VPC peering connection to one Classless Inter-Domain Routing (CIDR) block and region, create the connection first. Deploy the cluster after the connection starts. GCP Clusters and Multi-region clusters require one VPC peering connection for each region. MongoDB nodes can use only the peering connection that resides in the same region as the nodes to communicate with the peered VPC.
type: string
analyticsAutoScaling:
$ref: "#/components/schemas/AdvancedAutoScalingSettings"
analyticsSpecs:
$ref: "#/components/schemas/DedicatedHardwareSpec20240805"
autoScaling:
$ref: "#/components/schemas/AdvancedAutoScalingSettings"
effectiveAnalyticsSpecs:
$ref: "#/components/schemas/DedicatedHardwareSpec20240805"
effectiveElectableSpecs:
$ref: "#/components/schemas/DedicatedHardwareSpec20240805"
effectiveReadOnlySpecs:
$ref: "#/components/schemas/DedicatedHardwareSpec20240805"
readOnlySpecs:
$ref: "#/components/schemas/DedicatedHardwareSpec20240805"
backingProviderName:
description: |-
Cloud service provider on which MongoDB Cloud provisioned the multi-tenant cluster. The resource returns this parameter when `providerName` is `TENANT` and `electableSpecs.instanceSize` is `M0`, `M2` or `M5`.
Please note that using an `instanceSize` of `M2` or `M5` will create a Flex cluster instead. Support for the `instanceSize` of `M2` or `M5` will be discontinued in January 2026. We recommend using the Create Flex Cluster API for such configurations moving forward.
externalDocs:
description: Create Flex Cluster API
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/createFlexCluster
type: string
title: Cloud Service Provider Settings
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- analyticsAutoScaling
- analyticsSpecs
- autoScaling
- effectiveAnalyticsSpecs
- effectiveElectableSpecs
- effectiveReadOnlySpecs
- readOnlySpecs
AZURE:
properties:
- analyticsAutoScaling
- analyticsSpecs
- autoScaling
- effectiveAnalyticsSpecs
- effectiveElectableSpecs
- effectiveReadOnlySpecs
- readOnlySpecs
GCP:
properties:
- analyticsAutoScaling
- analyticsSpecs
- autoScaling
- effectiveAnalyticsSpecs
- effectiveElectableSpecs
- effectiveReadOnlySpecs
- readOnlySpecs
TENANT:
properties:
- backingProviderName
CloudSearchMetrics:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hardwareMetrics:
description: List that contains all host compute, memory, and storage utilization dedicated to Atlas Search when MongoDB Atlas received this request.
items:
$ref: "#/components/schemas/FTSMetric"
readOnly: true
type: array
indexMetrics:
description: List that contains all performance and utilization measurements that Atlas Search index performed by the time MongoDB Atlas received this request.
items:
$ref: "#/components/schemas/FTSMetric"
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
processId:
description: Hostname and port that identifies the process.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
statusMetrics:
description: List that contains all available Atlas Search status metrics when MongoDB Atlas received this request.
items:
$ref: "#/components/schemas/FTSMetric"
type: array
required:
- groupId
- hardwareMetrics
- indexMetrics
- processId
- statusMetrics
type: object
ClusterAutoScalingSettings:
description: Range of instance sizes to which your cluster can scale.
externalDocs:
description: Cluster Auto-Scaling
url: https://docs.atlas.mongodb.com/cluster-autoscaling/
properties:
compute:
$ref: "#/components/schemas/ClusterComputeAutoScaling"
diskGBEnabled:
default: false
description: Flag that indicates whether someone enabled disk auto-scaling for this cluster.
type: boolean
title: Automatic Cluster Scaling Settings
type: object
ClusterCloudProviderInstanceSize:
properties:
availableRegions:
description: List of regions that this cloud provider supports for this instance size.
items:
$ref: "#/components/schemas/AvailableCloudProviderRegion"
readOnly: true
type: array
name:
description: Human-readable label that identifies the instance size or cluster tier.
readOnly: true
type: string
type: object
ClusterComputeAutoScaling:
description: Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down. Cluster tier auto-scaling is unavailable for clusters using Low CPU or NVME storage classes.
properties:
enabled:
default: false
description: |-
Flag that indicates whether instance size reactive auto-scaling is enabled.
- Set to `true` to enable instance size reactive auto-scaling. If enabled, you must specify a value for `providerSettings.autoScaling.compute.maxInstanceSize`.
- Set to `false` to disable instance size reactive auto-scaling.
type: boolean
scaleDownEnabled:
default: false
description: Flag that indicates whether the cluster tier can scale down via reactive auto-scaling. This is required if `autoScaling.compute.enabled` is `true`. If you enable this option, specify a value for `providerSettings.autoScaling.compute.minInstanceSize`.
type: boolean
type: object
ClusterConnectionStrings:
description: Collection of Uniform Resource Locators that point to the MongoDB database.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
properties:
awsPrivateLink:
additionalProperties:
deprecated: true
description: Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to MongoDB Cloud through the interface endpoint that the key names. This field is deprecated. Use the Private Endpoint Connection Strings resource instead.
externalDocs:
description: Private Endpoints
url: https://www.mongodb.com/docs/atlas/security-private-endpoint
readOnly: true
type: string
deprecated: true
description: Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to MongoDB Cloud through the interface endpoint that the key names. This field is deprecated. Use the Private Endpoint Connection Strings resource instead.
externalDocs:
description: Private Endpoints
url: https://www.mongodb.com/docs/atlas/security-private-endpoint
readOnly: true
type: object
awsPrivateLinkSrv:
additionalProperties:
deprecated: true
description: Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to Atlas through the interface endpoint that the key names. If the cluster uses an optimized connection string, `awsPrivateLinkSrv` contains the optimized connection string. If the cluster has the non-optimized (legacy) connection string, `awsPrivateLinkSrv` contains the non-optimized connection string even if an optimized connection string is also present. This field is deprecated. Use the Private Endpoint Connection Strings resource instead.
externalDocs:
description: Private Endpoints
url: https://www.mongodb.com/docs/atlas/security-private-endpoint
readOnly: true
type: string
deprecated: true
description: Private endpoint-aware connection strings that use AWS-hosted clusters with Amazon Web Services (AWS) PrivateLink. Each key identifies an Amazon Web Services (AWS) interface endpoint. Each value identifies the related `mongodb://` connection string that you use to connect to Atlas through the interface endpoint that the key names. If the cluster uses an optimized connection string, `awsPrivateLinkSrv` contains the optimized connection string. If the cluster has the non-optimized (legacy) connection string, `awsPrivateLinkSrv` contains the non-optimized connection string even if an optimized connection string is also present. This field is deprecated. Use the Private Endpoint Connection Strings resource instead.
externalDocs:
description: Private Endpoints
url: https://www.mongodb.com/docs/atlas/security-private-endpoint
readOnly: true
type: object
private:
description: Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster. This connection string uses the `mongodb+srv://` protocol. The resource returns this parameter once someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the URI if the nodes change. Use this URI format if your driver supports it. If it doesn't, use `connectionStrings.private`. For Amazon Web Services (AWS) clusters, this resource returns this parameter only if you enable custom DNS.
externalDocs:
description: Network Peering Connection
url: https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/
readOnly: true
type: string
privateEndpoint:
deprecated: true
description: List of private endpoint-aware connection strings that you can use to connect to this cluster through a private endpoint. This parameter returns only if you deployed a private endpoint to all regions to which you deployed this clusters' nodes. This field is deprecated. Use the Private Endpoint Connection Strings resource instead.
externalDocs:
description: Private Endpoints
url: https://www.mongodb.com/docs/atlas/security-private-endpoint
items:
$ref: "#/components/schemas/ClusterDescriptionConnectionStringsPrivateEndpoint"
readOnly: true
type: array
privateSrv:
description: Network peering connection strings for each interface Virtual Private Cloud (VPC) endpoint that you configured to connect to this cluster. This connection string uses the `mongodb+srv://` protocol. The resource returns this parameter when someone creates a network peering connection to this cluster. This protocol tells the application to look up the host seed list in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your driver supports it. If it doesn't, use `connectionStrings.private`. For Amazon Web Services (AWS) clusters, this parameter returns only if you [enable custom DNS](https://docs.atlas.mongodb.com/reference/api/aws-custom-dns-update/).
externalDocs:
description: Network Peering Connection
url: https://docs.atlas.mongodb.com/security-vpc-peering/#std-label-vpc-peering/
readOnly: true
type: string
standard:
description: Public connection string that you can use to connect to this cluster. This connection string uses the `mongodb://` protocol.
externalDocs:
description: Connection String URI Format
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
standardSrv:
description: Public connection string that you can use to connect to this cluster. This connection string uses the `mongodb+srv://` protocol.
externalDocs:
description: Connection String URI Format
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
readOnly: true
title: Cluster Connection Strings
type: object
ClusterDescription20240805:
description: Configuration of a MongoDB Atlas cluster, including its replication topology, instance sizing, storage, and operational settings.
properties:
acceptDataRisksAndForceReplicaSetReconfig:
description: If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set `acceptDataRisksAndForceReplicaSetReconfig` to the current date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: Reconfiguring a Replica Set during a regional outage
url: https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set
format: date-time
type: string
adaptiveCapacity:
description: Governs adaptive capacity behavior of nodes in clusters on providers that support fallback hardware, including those providers' nodes in multi-cloud clusters. Adaptive capacity enables fallback hardware selection when the primary instance family is unavailable. ``ENABLED`` means the cluster explicitly opts in to adaptive capacity. ``DISABLED`` means the cluster explicitly opts out; the cluster receives capacity errors instead of being placed on fallback hardware. ``null`` means the field is unset; clusters use adaptive capacity by default on a provider that supports it.
type: string
advancedConfiguration:
$ref: "#/components/schemas/ApiAtlasClusterAdvancedConfiguration"
backupEnabled:
description: |-
Flag that indicates whether Atlas backs up the cluster.
On Atlas Core clusters, dedicated clusters use [Cloud Backups](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/) and Flex clusters use [Flex Cluster Backups](https://www.mongodb.com/docs/atlas/backup/cloud-backup/flex-cluster-backup/). Default value is `false`. For clusters that use local [NVMe SSDs](https://www.mongodb.com/docs/atlas/manage-clusters/#nvme-storage) for storage, you can't disable backup, so you must set `backupEnabled` to `true`.
On Atlas Infinite clusters, the `backupEnabled` flag controls Additional Backup Retention, not whether backups run. To retain snapshots beyond the 24-hour window, set `backupEnabled` to `true`. For Atlas Infinite clusters, continuous cloud backups are enabled by default, always run, and include a 24-hour window in which you can restore to any point in time. Atlas then applies your snapshot retention policies. To keep only the included window under an Atlas-managed retention policy that you can't edit, set `backupEnabled` to `false`. A cluster covered by a Data Protection policy has this flag set to `true` regardless of the requested value. Default value is `true`.
externalDocs:
description: Cloud Backups
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/
type: boolean
biConnector:
$ref: "#/components/schemas/BiConnector"
clusterType:
description: Configuration of nodes that comprise the cluster.
type: string
configServerManagementMode:
default: ATLAS_MANAGED
description: Config Server Management Mode for creating or updating a sharded cluster. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
type: string
configServerType:
description: Describes a sharded cluster's config server type.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
readOnly: true
type: string
connectionStrings:
$ref: "#/components/schemas/ClusterConnectionStrings"
createDate:
description: Date and time when MongoDB Cloud created this cluster. This parameter expresses its value in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your cluster will be Atlas INFINITE or CORE. You can set it only when you create the cluster, or when you upgrade a Free or Flex cluster to a dedicated cluster. This value is immutable once the dedicated cluster exists; attempting to change it on an update request returns an error."
type: string
diskWarmingMode:
default: FULLY_WARMED
description: Disk warming mode selection.
externalDocs:
description: Reduce Secondary Disk Warming Impact
url: https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact
type: string
effectiveDatabaseEdition:
description: "Available in Public Preview: Field that represents whether your cluster is Atlas INFINITE or CORE. This is read-only and always returned in the response. It reflects the actual cluster state. This value matches `databaseEdition` if it was set, otherwise it reflects the default database edition assigned to the cluster."
readOnly: true
type: string
effectiveReplicationSpecs:
description: List of settings that represent the actual cluster state. This is read-only and always returned in the response. It reflects the current cluster configuration, which may differ from `replicationSpecs` due to system-managed changes.
items:
$ref: "#/components/schemas/ReplicationSpec20240805"
readOnly: true
type: array
encryptionAtRestProvider:
description: 'Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster `replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize` setting must be `M10` or higher and `"backupEnabled" : false` or omitted entirely.'
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
type: string
featureCompatibilityVersion:
description: Feature compatibility version of the cluster. This will always appear regardless of whether FCV is pinned.
readOnly: true
type: string
featureCompatibilityVersionExpirationDate:
description: Feature compatibility version expiration date. Will only appear if FCV is pinned. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
globalClusterSelfManagedSharding:
description: |-
Set this field to configure the Sharding Management Mode when creating a new Global Cluster.
When set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.
When set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.
This setting cannot be changed once the cluster is deployed.
externalDocs:
description: Creating a Global Cluster
url: https://dochub.mongodb.org/core/global-cluster-management
type: boolean
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
internalClusterRole:
description: "Internal classification of the cluster's role. Possible values: `NONE` (regular user cluster), `SYSTEM_CLUSTER` (system cluster for backup), `INTERNAL_SHADOW_CLUSTER` (internal use shadow cluster for testing)."
readOnly: true
type: string
labels:
deprecated: true
description: |-
Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.
Cluster labels are deprecated and will be removed in a future release. We strongly recommend that you use Resource Tags instead.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ComponentLabel"
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBEmployeeAccessGrant:
$ref: "#/components/schemas/EmployeeAccessGrant"
mongoDBMajorVersion:
description: |-
MongoDB major version of the cluster. Set to the binary major version.
On creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLtsVersions).
On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.
externalDocs:
description: Available MongoDB Versions in Atlas
url: https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-
type: string
mongoDBVersion:
description: Version of MongoDB that the cluster runs.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
name:
description: Human-readable label that identifies the cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
paused:
description: Flag that indicates whether the cluster is paused.
type: boolean
pitEnabled:
description: |-
Flag that indicates whether the cluster uses continuous cloud backups.
For Atlas Infinite clusters, continuous cloud backups always run. Omit this field or set it to `true`. Setting it to `false` returns an invalid attribute error.
externalDocs:
description: Continuous Cloud Backups
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/
type: boolean
redactClientLogData:
description: |-
Enable or disable log redaction.
This setting configures the ``mongod`` or ``mongos`` to redact any document field contents from a message accompanying a given log event before logging. This prevents the program from writing potentially sensitive data stored on the database to the diagnostic log. Metadata such as error or operation codes, line numbers, and source file names are still visible in the logs.
Use ``redactClientLogData`` in conjunction with Encryption at Rest and TLS/SSL (Transport Encryption) to assist compliance with regulatory requirements.
*Note*: changing this setting on a cluster will trigger a rolling restart as soon as the cluster is updated.
externalDocs:
description: Log Redaction
url: https://www.mongodb.com/docs/manual/administration/monitoring/#log-redaction
type: boolean
replicaSetScalingStrategy:
default: WORKLOAD_TYPE
description: |-
Set this field to configure the replica set scaling mode for your cluster.
By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes.
When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads.
When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads.
externalDocs:
description: Modify the Replica Set Scaling Mode
url: https://dochub.mongodb.org/core/scale-nodes
type: string
replicationSpecs:
description: List of settings that configure your cluster regions. This array has one object per shard representing node configurations in each shard. For replica sets there is only one object representing node configurations.
items:
$ref: "#/components/schemas/ReplicationSpec20240805"
type: array
retainBackups:
default: false
description: Flag that indicates whether the cluster retains backups.
type: boolean
rootCertType:
default: ISRGROOTX1
description: Root Certificate Authority that MongoDB Atlas cluster uses. MongoDB Cloud supports Internet Security Research Group.
type: string
searchAutoMigration:
$ref: "#/components/schemas/SearchAutoMigration"
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
useAwsTimeBasedSnapshotCopyForFastInitialSync:
default: false
description: Flag that indicates whether AWS time-based snapshot copies will be used instead of slower standard snapshot copies during fast Atlas cross-region initial syncs. This flag is only relevant for clusters containing AWS nodes.
type: boolean
versionReleaseSystem:
default: LTS
description: Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify `mongoDBMajorVersion`.
type: string
type: object
ClusterDescriptionAutoScalingModeConfiguration:
description: Contains the internal configuration of AutoScaling on sharded clusters.
properties:
autoScalingMode:
description: Describes whether cluster nodes scale together across all shards or independently.
type: string
title: Internal configuration of AutoScaling on sharded clusters
type: object
ClusterDescriptionConnectionStringsPrivateEndpoint:
description: Private endpoint-aware connection string that you can use to connect to this cluster through a private endpoint.
externalDocs:
description: Private Endpoint for Dedicated Cluster
url: https://docs.atlas.mongodb.com/security-private-endpoint/
properties:
connectionString:
description: Private endpoint-aware connection string that uses the `mongodb://` protocol to connect to MongoDB Cloud through a private endpoint.
readOnly: true
type: string
endpoints:
description: List that contains the private endpoints through which you connect to MongoDB Cloud when you use `connectionStrings.privateEndpoint[n].connectionString` or `connectionStrings.privateEndpoint[n].srvConnectionString`.
items:
$ref: "#/components/schemas/ClusterDescriptionConnectionStringsPrivateEndpointEndpoint"
readOnly: true
type: array
srvConnectionString:
description: Private endpoint-aware connection string that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. The `mongodb+srv` protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS). This list synchronizes with the nodes in a cluster. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to append the seed list or change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application supports it. If it doesn't, use `connectionStrings.privateEndpoint[n].connectionString`.
readOnly: true
type: string
srvShardOptimizedConnectionString:
description: Private endpoint-aware connection string optimized for sharded clusters that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. If the connection string uses this Uniform Resource Identifier (URI) format, you don't need to change the Uniform Resource Identifier (URI) if the nodes change. Use this Uniform Resource Identifier (URI) format if your application and Atlas cluster supports it. If it doesn't, use and consult the documentation for `connectionStrings.privateEndpoint[n].srvConnectionString`.
readOnly: true
type: string
type:
description: MongoDB process type to which your application connects. Use `MONGOD` for replica sets and `MONGOS` for sharded clusters.
readOnly: true
type: string
title: Cluster Private Endpoint Connection String
type: object
ClusterDescriptionConnectionStringsPrivateEndpointEndpoint:
description: Details of a private endpoint deployed for this cluster.
properties:
endpointId:
description: Unique string that the cloud provider uses to identify the private endpoint.
readOnly: true
type: string
providerName:
description: Cloud provider in which MongoDB Cloud deploys the private endpoint.
readOnly: true
type: string
region:
description: Region where the private endpoint is deployed.
readOnly: true
type: string
title: Cluster Private Endpoint Connection Strings Endpoint
type: object
ClusterDescriptionProcessArgs20240805:
description: Advanced MongoDB process configuration options applied to the cluster.
properties:
changeStreamOptionsPreAndPostImagesExpireAfterSeconds:
default: -1
description: The minimum pre- and post-image retention time in seconds.
externalDocs:
description: "This option corresponds to the ``changeStreamOptions.preAndPostImages.expireAfterSeconds`` cluster parameter. This setting controls the retention policy of change stream pre- and post-images. Pre- and post-images are the versions of a document before and after document modification, respectively. ``expireAfterSeconds`` controls how long MongoDB retains pre- and post-images. When set to -1 (off), MongoDB uses the default retention policy: pre- and post-images are retained until the corresponding change stream events are removed from the oplog. To set the minimum pre- and post-image retention time, specify an integer value greater than zero. Setting this too low could increase the risk of interrupting Realm sync or triggers processing. The default value is -1 (off)."
url: https://www.mongodb.com/docs/upcoming/reference/cluster-parameters/changeStreamOptions/#mongodb-parameter-param.changeStreamOptions.preAndPostImages.expireAfterSeconds
format: int32
type: integer
chunkMigrationConcurrency:
description: Number of threads on the source shard and the receiving shard for chunk migration. The number of threads should not exceed the half the total number of CPU cores in the sharded cluster.
externalDocs:
description: This option corresponds to the `chunkMigrationConcurrency` `mongod` configuration file option.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.chunkMigrationConcurrency
format: int32
type: integer
customOpensslCipherConfigTls12:
description: The custom OpenSSL cipher suite list for TLS 1.2. Requires `tlsCipherConfigMode` = `CUSTOM`; when `tlsCipherConfigMode` is omitted, supplying a non-empty list infers `CUSTOM`.
externalDocs:
description: This option corresponds to the `opensslCipherConfig` `mongod` configuration file option.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.opensslCipherConfig
items:
type: string
type: array
customOpensslCipherConfigTls13:
description: The custom OpenSSL cipher suite list for TLS 1.3. Requires `tlsCipherConfigMode` = `CUSTOM`; when `tlsCipherConfigMode` is omitted, supplying a non-empty list infers `CUSTOM`.
externalDocs:
description: This option corresponds to the `opensslCipherSuiteConfig` `mongod` configuration file option.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.opensslCipherSuiteConfig
items:
type: string
maxItems: 4
type: array
defaultMaxTimeMS:
description: Default time limit in milliseconds for individual read operations to complete.
externalDocs:
description: This option corresponds to the `defaultMaxTimeMS` cluster parameter.
url: https://www.mongodb.com/docs/upcoming/reference/cluster-parameters/defaultMaxTimeMS/
format: int32
type: integer
defaultWriteConcern:
description: Default level of acknowledgment requested from MongoDB for write operations when none is specified by the driver.
externalDocs:
description: This option corresponds to the the implicit default write concern.
url: https://docs.mongodb.com/manual/reference/write-concern/
type: string
javascriptEnabled:
description: Flag that indicates whether the cluster allows execution of operations that perform server-side executions of JavaScript. When using 8.0+, we recommend disabling server-side JavaScript and using operators of aggregation pipeline as more performant alternative.
externalDocs:
description: This option corresponds to modifying the `security.javascriptEnabled` configuration file option for each `mongod` and `mongos` in the cluster.
url: https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-security.javascriptEnabled
type: boolean
minimumEnabledTlsProtocol:
description: Minimum Transport Layer Security (TLS) version that the cluster accepts for incoming connections.
externalDocs:
description: This option corresponds to the `net.ssl.disabledProtocols` `mongod` configuration file option.
url: https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-net.ssl.disabledProtocols
type: string
noTableScan:
description: Flag that indicates whether the cluster disables executing any query that requires a collection scan to return results.
externalDocs:
description: This option corresponds to the `notablescan` `mongod` configuration file option.
url: https://docs.mongodb.com/upcoming/reference/parameters/#mongodb-parameter-param.notablescan
type: boolean
oplogMinRetentionHours:
description: Minimum retention window for cluster's oplog expressed in hours. A value of null indicates that the cluster uses the default minimum oplog window that MongoDB Cloud calculates.
externalDocs:
description: This option corresponds to the `storage.oplogMinRetentionHours` `mongod` configuration file option.
url: https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-storage.oplogMinRetentionHours
format: double
type: number
oplogSizeMB:
description: Storage limit of cluster's oplog expressed in megabytes. A value of null indicates that the cluster uses the default oplog size that MongoDB Cloud calculates.
externalDocs:
description: This option corresponds to the `replication.oplogSizeMB` `mongod` configuration file option.
url: https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-replication.oplogSizeMB
format: int32
type: integer
queryStatsLogVerbosity:
description: May be set to 1 (disabled) or 3 (enabled). When set to 3, Atlas will include redacted and anonymized `$queryStats` output in MongoDB logs. `$queryStats` output does not contain literals or field values. Enabling this setting might impact the performance of your cluster.
externalDocs:
description: This option corresponds to the `queryStats` component for the `logComponentVerbosity` server parameter.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.logComponentVerbosity
format: int32
type: integer
sampleRefreshIntervalBIConnector:
default: 0
description: Interval in seconds at which the mongosqld process re-samples data to create its relational schema.
externalDocs:
description: This option corresponds to the `sampleRefreshIntervalSecs` `mongosqld` option.
url: https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--schemaRefreshIntervalSecs
format: int32
minimum: 0
type: integer
sampleSizeBIConnector:
description: Number of documents per database to sample when gathering schema information.
externalDocs:
description: This option corresponds to the `sampleSize` `mongosqld` option.
url: https://docs.mongodb.com/bi-connector/current/reference/mongosqld/#std-option-mongosqld.--sampleSize
format: int32
minimum: 0
type: integer
tlsCipherConfigMode:
description: The TLS cipher suite configuration mode. The default mode uses the default cipher suites. The custom mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3.
type: string
transactionLifetimeLimitSeconds:
description: Lifetime, in seconds, of multi-document transactions. Atlas considers the transactions that exceed this limit as expired and so aborts them through a periodic clean-up process.
externalDocs:
description: This option corresponds to the `transactionLifetimeLimitSeconds` `mongod` configuration file option.
url: https://www.mongodb.com/docs/upcoming/reference/parameters/#mongodb-parameter-param.transactionLifetimeLimitSeconds
format: int64
minimum: 1
type: integer
type: object
ClusterFreeAutoScaling:
description: Range of instance sizes to which your cluster can scale.
properties:
compute:
$ref: "#/components/schemas/FreeComputeAutoScalingRules"
type: object
ClusterIPAddresses:
description: List of IP addresses in a cluster.
properties:
clusterName:
description: Human-readable label that identifies the cluster.
readOnly: true
type: string
futureInbound:
description: List of future inbound IP addresses associated with the cluster. If your network allows outbound HTTP requests only to specific IP addresses, you must allow access to the following IP addresses so that your application can connect to your Atlas cluster.
items:
type: string
readOnly: true
type: array
futureOutbound:
description: List of future outbound IP addresses associated with the cluster. If your network allows inbound HTTP requests only from specific IP addresses, you must allow access from the following IP addresses so that your Atlas cluster can communicate with your webhooks and KMS.
items:
type: string
readOnly: true
type: array
inbound:
description: List of inbound IP addresses associated with the cluster. If your network allows outbound HTTP requests only to specific IP addresses, you must allow access to the following IP addresses so that your application can connect to your Atlas cluster.
items:
type: string
readOnly: true
type: array
outbound:
description: List of outbound IP addresses associated with the cluster. If your network allows inbound HTTP requests only from specific IP addresses, you must allow access from the following IP addresses so that your Atlas cluster can communicate with your webhooks and KMS.
items:
type: string
readOnly: true
type: array
title: Cluster IP Addresses
type: object
ClusterOutageSimulation:
properties:
clusterName:
description: Human-readable label that identifies the cluster that undergoes outage simulation.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
expirationDate:
description: Date and time when MongoDB Cloud expires the outage simulation. This parameter expresses its value in the ISO 8601 timestamp format in UTC. If not provided, defaults to 3 days from the start date.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project that contains the cluster to undergo outage simulation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the outage simulation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
outageFilters:
description: List of settings that specify the type of cluster outage simulation.
items:
$ref: "#/components/schemas/AtlasClusterOutageSimulationOutageFilter"
minItems: 1
type: array
startRequestDate:
description: Date and time when MongoDB Cloud started the regional outage simulation. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
state:
description: |-
Phase of the outage simulation.
| State | Indication |
|-------------|------------|
| `START_REQUESTED` | User has requested cluster outage simulation.|
| `STARTING` | MongoDB Cloud is starting cluster outage simulation.|
| `SIMULATING` | MongoDB Cloud is simulating cluster outage.|
| `RECOVERY_REQUESTED` | User has requested recovery from the simulated outage.|
| `RECOVERING` | MongoDB Cloud is recovering the cluster from the simulated outage.|
| `COMPLETE` | MongoDB Cloud has completed the cluster outage simulation.|
readOnly: true
type: string
type: object
ClusterProviderSettings:
description: Group of cloud provider settings that configure the provisioned MongoDB hosts.
properties:
providerName:
type: string
autoScaling:
$ref: "#/components/schemas/ClusterFreeAutoScaling"
diskIOPS:
description: Maximum Disk Input/Output Operations per Second (IOPS) that the database host can perform.
format: int32
type: integer
encryptEBSVolume:
default: true
deprecated: true
description: Flag that indicates whether the Amazon Elastic Block Store (EBS) encryption feature encrypts the host's root volume for both data at rest within the volume and for data moving between the volume and the cluster. Clusters always have this setting enabled.
type: boolean
instanceSizeName:
description: Cluster tier, with a default storage and memory capacity, that applies to all the data-bearing hosts in your cluster. You must set `providerSettings.providerName` to `FLEX` and specify the cloud service provider in `providerSettings.backingProviderName`.
title: Flex Instance Sizes
type: string
regionName:
description: Human-readable label that identifies the geographic location of your MongoDB cluster. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
type: string
volumeType:
description: Disk Input/Output Operations per Second (IOPS) setting for Amazon Web Services (AWS) storage that you configure only for AWS. Specify whether Disk Input/Output Operations per Second (IOPS) must not exceed the default Input/Output Operations per Second (IOPS) rate for the selected volume size (`STANDARD`), or must fall within the allowable Input/Output Operations per Second (IOPS) range for the selected volume size (`PROVISIONED` or `HIGH_PERFORMANCE`). NVMe clusters require either `PROVISIONED` or `HIGH_PERFORMANCE`.
type: string
diskTypeName:
description: Disk type that corresponds to the host's root volume for Azure instances. If omitted, the default disk type for the selected `providerSettings.instanceSizeName` applies.
externalDocs:
description: Disk type
url: https://docs.microsoft.com/en-us/azure/virtual-machines/premium-storage-performance#premium-storage-disk-sizes
type: string
backingProviderName:
description: Cloud service provider on which MongoDB Cloud provisioned the multi-tenant host. The resource returns this parameter when `providerSettings.providerName` is `FLEX` and `providerSetting.instanceSizeName` is `FLEX`.
type: string
effectiveInstanceSizeName:
description: The true tenant instance size. This is present to support backwards compatibility for deprecated provider types and/or instance sizes.
readOnly: true
type: string
required:
- providerName
title: Cloud Service Provider Settings for a Cluster
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- autoScaling
- diskIOPS
- encryptEBSVolume
- instanceSizeName
- regionName
- volumeType
AZURE:
properties:
- autoScaling
- diskTypeName
- instanceSizeName
- regionName
FLEX:
properties:
- backingProviderName
- instanceSizeName
- regionName
GCP:
properties:
- autoScaling
- instanceSizeName
- regionName
TENANT:
properties:
- autoScaling
- backingProviderName
- effectiveInstanceSizeName
- instanceSizeName
- regionName
ClusterSearchIndex:
properties:
collectionName:
description: Human-readable label that identifies the collection that contains one or more Atlas Search indexes.
type: string
database:
description: Human-readable label that identifies the database that contains the collection with one or more Atlas Search indexes.
type: string
indexID:
description: Unique 24-hexadecimal digit string that identifies this Atlas Search index.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
name:
description: Human-readable label that identifies this index. Within each namespace, names of all indexes in the namespace must be unique.
type: string
numPartitions:
default: 1
description: Number of index partitions. Allowed values are [1, 2, 4].
format: int32
type: integer
status:
description: |-
Condition of the search index when you made this request.
- `IN_PROGRESS`: Atlas is building or re-building the index after an edit.
- `STEADY`: You can use this search index.
- `FAILED`: Atlas could not build the index.
- `MIGRATING`: Atlas is upgrading the underlying cluster tier and migrating indexes.
- `PAUSED`: The cluster is paused.
readOnly: true
type: string
storedSource:
description: Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. Note that storing all fields (true) is not allowed for vector search indexes. To learn more, see documentation.
example:
include | exclude:
- field1
- field2
externalDocs:
description: Stored Source Fields
url: https://dochub.mongodb.org/core/atlas-search-stored-source
type: object
type:
description: Type of the index. Default type is search.
type: string
analyzer:
default: lucene.standard
description: |-
Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves a variety of changes made to the text in fields:
- extracting words
- removing punctuation
- removing accents
- changing to lowercase
- removing common words
- reducing words to their root form (stemming)
- changing words to their base form (lemmatization)
MongoDB Cloud uses the selected process to build the Atlas Search index.
externalDocs:
description: Atlas Search Analyzers
url: https://dochub.mongodb.org/core/analyzers--fts
type: string
analyzers:
description: List of user-defined methods to convert database field text into searchable words.
externalDocs:
description: Custom Atlas Search Analyzers
url: https://dochub.mongodb.org/core/custom-fts
items:
$ref: "#/components/schemas/ApiAtlasFTSAnalyzers"
type: array
mappings:
$ref: "#/components/schemas/ApiAtlasFTSMappings"
searchAnalyzer:
default: lucene.standard
description: Method applied to identify words when searching this index.
type: string
synonyms:
description: Rule sets that map words to their synonyms in this index.
externalDocs:
description: Synonym Mapping
url: https://dochub.mongodb.org/core/fts-synonym-mappings
items:
$ref: "#/components/schemas/SearchSynonymMappingDefinition"
type: array
fields:
description: Settings that configure the fields, one per object, to index. You must define at least one "vector" type field. You can optionally define "filter" type fields also.
externalDocs:
description: Vector Search Fields
url: https://dochub.mongodb.org/core/avs-vector-type
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
nestedRoot:
description: Top-level path to the array that contains vector fields. When provided, vector fields under this path are treated as nested.
example: sections
type: string
required:
- collectionName
- database
- name
type: object
x-xgen-discriminator:
propertyName: type
mapping:
search:
properties:
- analyzer
- analyzers
- mappings
- searchAnalyzer
- synonyms
vectorSearch:
properties:
- fields
- nestedRoot
ClusterServerlessBackupOptions:
description: Group of settings that configure serverless backup.
properties:
serverlessContinuousBackupEnabled:
default: true
description: |-
Flag that indicates whether the serverless instance uses **Serverless Continuous Backup**.
If this parameter is `false`, the serverless instance uses **Basic Backup**.
| Option | Description |
|---|---|
| Serverless Continuous Backup | Atlas takes incremental [snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/#std-label-serverless-snapshots) of the data in your serverless instance every six hours and lets you restore the data from a selected point in time within the last 72 hours. Atlas also takes daily snapshots and retains these daily snapshots for 35 days. To learn more, see [Serverless Instance Costs](https://www.mongodb.com/docs/atlas/billing/serverless-instance-costs/#std-label-serverless-instance-costs). |
| Basic Backup | Atlas takes incremental [snapshots](https://www.mongodb.com/docs/atlas/backup/cloud-backup/overview/#std-label-serverless-snapshots) of the data in your serverless instance every six hours and retains only the two most recent snapshots. You can use this option for free. |
type: boolean
title: Serverless Backup Options
type: object
ClusterShardMeasurementsResponse:
description: Measurement time series for every shard of one sharded cluster over the requested window, one series per shard and measurement.
properties:
clusterName:
description: Human-readable label that identifies the cluster.
readOnly: true
type: string
end:
description: Date and time at which the window ends. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Interval between consecutive data points, in ISO 8601 duration format. Either the requested `granularity` or, when none was requested, the resolution MongoDB Cloud chose for the width of the window.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
measurements:
description: One time series per requested measurement on each shard of the cluster, ordered by measurement and then by `replicaSetName`. A shard that MongoDB Cloud has no readings for is still listed, with `null` data point values.
items:
$ref: "#/components/schemas/ShardMeasurement"
maxItems: 11000
readOnly: true
type: array
start:
description: Date and time of the first data point. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
required:
- clusterName
- end
- granularity
- groupId
- measurements
- start
type: object
ClusterStatus:
properties:
changeStatus:
description: State of cluster at the time of this request. Atlas returns **Applied** if it completed adding a user to, or removing a user from, your cluster. Atlas returns **Pending** if it's still making the requested user changes. When status is **Pending**, new users can't log in.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
CollStatsLatencyNamespaceMetric:
description: Coll Stats Latency metric name and its unit of measurement.
properties:
metricName:
description: Human-readable label that identifies this metric.
example: READS_OPS
readOnly: true
type: string
units:
description: Unit of measurement that applies to this metric.
readOnly: true
type: string
readOnly: true
required:
- metricName
- units
type: object
CollStatsLatencyNamespaceMetrics:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
metrics:
description: List of Coll Stats Latency metric names and their respective units.
items:
$ref: "#/components/schemas/CollStatsLatencyNamespaceMetric"
readOnly: true
type: array
required:
- groupId
- metrics
type: object
Collation:
description: One or more settings that specify language-specific rules to compare strings within this index.
externalDocs:
description: Collation Options
url: https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#options
properties:
alternate:
default: non-ignorable
description: Method to handle whitespace and punctuation as base characters for purposes of comparison. `"non-ignorable"` will evaluate Whitespace and Punctuation as Base Characters. `"shifted"` will not, MongoDB Cloud distinguishes these characters when `"strength" > 3`.
type: string
backwards:
default: false
description: Flag that indicates whether strings with diacritics sort from back of the string. Some French dictionary orders strings in this way. `true` will compare from back to front. `false` will compare from front to back.
type: boolean
caseFirst:
default: off
description: Method to handle sort order of case differences during tertiary level comparisons. `"upper"` sorts Uppercase before lowercase. `"lower"` sorts Lowercase before uppercase. `"off"` is similar to "lower" with slight differences.
type: string
caseLevel:
default: false
description: |-
Flag that indicates whether to include case comparison when `"strength" : 1` or `"strength" : 2`.
- `true` - Include casing in comparison
- Strength Level: 1 - Base characters and case.
- Strength Level: 2 - Base characters, diacritics (and possible other secondary differences), and case.
- `false` - Case is NOT included in comparison.
type: boolean
locale:
description: 'International Components for Unicode (ICU) code that represents a localized language. To specify simple binary comparison, set `"locale" : "simple"`.'
type: string
maxVariable:
description: 'Field that indicates which characters can be ignored when `"alternate" : "shifted"`.`"punct"` ignores both whitespace and punctuation. `"space"` ignores whitespace. This has no affect if `"alternate" : "non-ignorable"`.'
type: string
normalization:
default: false
description: |-
Flag that indicates whether to check if the text requires normalization and then perform it. Most text doesn't require this normalization processing.
`true` will check if fully normalized and perform normalization to compare text. `false` will not check.
type: boolean
numericOrdering:
default: false
description: Flag that indicates whether to compare sequences of digits as numbers or as strings. `true` will compare as numbers, this results in `10 > 2`. `false` will Compare as strings. This results in `"10" < "2"`.
type: boolean
strength:
default: 3
description: |-
Degree of comparison to perform when sorting words.
MongoDB Cloud accepts the following _numeric values_ that correspond to the _comparison level_ and what that _comparison method_ is.
- `1` - "Primary" - Compares the base characters only, ignoring other differences such as diacritics and case.
- `2` - "Secondary" - Compares base characters (primary) and diacritics (secondary). Primary differences take precedence over secondary differences.
- `3` - "Tertiary" - Compares base characters (primary), diacritics (secondary), and case and variants (tertiary). Differences between base characters takes precedence over secondary differences which take precedence over tertiary differences.
- `4` - "Quaternary" - Compares for the specific use case to consider punctuation when levels 1 through 3 ignore punctuation or for processing Japanese text.
- `5` - "Identical" - Compares for the specific use case of tie breaker.
format: int32
maximum: 5
minimum: 1
type: integer
required:
- locale
type: object
writeOnly: true
ComponentLabel:
description: Human-readable labels applied to this MongoDB Cloud component.
properties:
key:
description: Key applied to tag and categorize this component.
maxLength: 255
minLength: 1
type: string
value:
description: Value set to the Key applied to tag and categorize this component.
maxLength: 255
minLength: 1
type: string
title: Component Label
type: object
ConnectedOrgConfig:
properties:
dataAccessIdentityProviderIds:
description: The collection of unique ids representing the identity providers that can be used for data access in this organization.
items:
description: Unique 24-hexadecimal digit string that represents the id of the identity providers that can be used for data access in this organization.
type: string
type: array
uniqueItems: true
domainAllowList:
description: Approved domains that restrict users who can join the organization based on their email address.
items:
type: string
type: array
uniqueItems: true
domainRestrictionEnabled:
description: Value that indicates whether domain restriction is enabled for this connected organization.
type: boolean
identityProviderId:
description: Legacy 20-hexadecimal digit string that identifies the UI access identity provider that this connected organization configuration is associated with. This id can be found within the Federation Management Console > Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider.
pattern: ^([a-f0-9]{20})$
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the connected organization configuration.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
postAuthRoleGrants:
description: Atlas roles that are granted to a user in this organization after authenticating. Roles are a human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific MongoDB Cloud user. These roles can only be organization specific roles.
items:
type: string
type: array
uniqueItems: true
roleMappings:
description: Role mappings that are configured in this organization.
items:
$ref: "#/components/schemas/AuthFederationRoleMapping"
type: array
uniqueItems: true
userConflicts:
description: List that contains the users who have an email address that doesn't match any domain on the allowed list.
items:
$ref: "#/components/schemas/FederatedUser"
type: array
required:
- domainRestrictionEnabled
- orgId
type: object
ConnectedOrgConfigRoleAssignment:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to which this role belongs. Each element within `roleAssignments` can have a value for `groupId` or `orgId`, but not both.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization to which this role belongs. Each element within `roleAssignments` can have a value for `orgId` or `groupId`, but not both.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
role:
description: Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include organization- and project-level roles.
externalDocs:
description: MongoDB Atlas User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
type: string
type: object
ControlPlaneIPAddresses:
description: List of IP addresses in the Atlas control plane.
properties:
gateways:
description: List of gateways, each representing a group of service-specific IP addresses that customers can add to their allow lists independently. Includes the Atlas Gateway (data plane) group when present.
items:
$ref: "#/components/schemas/Gateway"
maxItems: 25
readOnly: true
type: array
inbound:
$ref: "#/components/schemas/InboundControlPlaneCloudProviderIPAddresses"
outbound:
$ref: "#/components/schemas/OutboundControlPlaneCloudProviderIPAddresses"
title: Control Plane IP Addresses
type: object
CostExplorerFilterRequestBody:
description: Request body for a cost explorer query.
properties:
clusters:
description: The list of clusters to be included in the Cost Explorer Query.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
endDate:
description: The exclusive ending date for the Cost Explorer query. The date must be the start of a month.
format: date
type: string
groupBy:
description: The dimension to group the returned usage results by. At least one filter value needs to be provided for a dimension to be used.
type: string
includePartialMatches:
description: Flag to control whether usage that matches the filter criteria, but does not have values for all filter criteria is included in response. Default is false, which excludes the partially matching data.
type: boolean
organizations:
description: The list of organizations to be included in the Cost Explorer Query.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
projects:
description: The list of projects to be included in the Cost Explorer Query.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
services:
description: The list of SKU services to be included in the Cost Explorer Query.
items:
type: string
type: array
startDate:
description: The inclusive starting date for the Cost Explorer query. The date must be the start of a month.
format: date
type: string
required:
- endDate
- startDate
type: object
CostExplorerQueryResult:
type: object
CreateAtlasOrganizationApiKey:
description: Organization Service Account that Atlas creates for this organization. If omitted, Atlas doesn't create an organization Service Account for this organization. If specified, this object requires all body parameters. Note that API Keys cannot be specified in the same request.
properties:
desc:
description: Purpose or explanation provided when someone created this organization API key.
maxLength: 250
minLength: 1
type: string
roles:
description: List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this organization.
items:
type: string
minItems: 1
type: array
required:
- desc
- roles
type: object
CreateAtlasProjectApiKey:
properties:
desc:
description: Purpose or explanation provided when someone created this project API key.
maxLength: 250
minLength: 1
type: string
roles:
description: List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.
externalDocs:
description: MongoDB Cloud API Key Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
minItems: 1
type: array
required:
- desc
- roles
type: object
CreateEndpointRequest:
properties:
cloudProvider:
description: Cloud service provider that manages this private endpoint.
type: string
id:
description: Unique string that identifies the private endpoint's network interface that someone added to this private endpoint service.
example: /subscriptions/cba6d9c6-1d3f-3c11-03cb-c705d895e636/resourcegroups/qrRTqi4TSN)7yB5YLRjVDveH3.yLzpNR7Br0D3-SGrU3j0.0/providers/Microsoft.Network/privateEndpoints/pVP(vb(XeckpxtXzP0NaOsDjeWDbOK)DX8A2j2E_vBYL2.GEYIdln
type: string
writeOnly: true
privateEndpointIPAddress:
description: IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
endpointGroupName:
description: Human-readable label that identifies a set of endpoints. If this private endpoint belongs to a port-mapped endpoint service, this field is still required but ignored.
type: string
writeOnly: true
endpoints:
description: List of individual private endpoints that comprise this endpoint group. If this endpoint belongs to a port-mapped endpoint service, this field will only take in a list of one private endpoint.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
items:
$ref: "#/components/schemas/CreateGCPForwardingRuleRequest"
type: array
gcpProjectId:
description: Unique string that identifies the Google Cloud project in which you created the endpoints. Specify the Google Cloud project ID or project number.
example: my-project-12345
externalDocs:
description: Google Cloud Creating and Managing Projects
url: https://cloud.google.com/resource-manager/docs/creating-managing-projects
pattern: ^([a-z][a-z0-9-]{4,28}[a-z0-9]|[0-9]{1,20})$
type: string
writeOnly: true
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- id
required:
- id
AZURE:
properties:
- id
- privateEndpointIPAddress
required:
- id
- privateEndpointIPAddress
GCP:
properties:
- endpointGroupName
- endpoints
- gcpProjectId
required:
- endpointGroupName
- gcpProjectId
CreateGCPForwardingRuleRequest:
properties:
endpointName:
description: Human-readable label that identifies the Google Cloud consumer forwarding rule that you created.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
type: string
writeOnly: true
ipAddress:
description: One Private Internet Protocol version 4 (IPv4) address to which this Google Cloud consumer forwarding rule resolves.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
writeOnly: true
title: GCP Forwarding Rules
type: object
CreateGroupMcpConfigRequest:
properties:
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigName:
description: Human-readable name that identifies this MCP configuration.
maxLength: 64
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: List of project roles to assign to this MCP configuration.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
maxItems: 100
minItems: 1
type: array
x-xgen-array-semantic: set
required:
- mcpConfigName
- roles
type: object
CreateOrgMcpConfigRequest:
properties:
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigName:
description: Human-readable name that identifies this MCP configuration.
maxLength: 64
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: List of organization roles to assign to this MCP configuration.
items:
description: Organization roles available for Service Accounts.
type: string
maxItems: 100
minItems: 1
type: array
x-xgen-array-semantic: set
required:
- mcpConfigName
- roles
type: object
CreateOrganizationRequest:
properties:
apiKey:
$ref: "#/components/schemas/CreateAtlasOrganizationApiKey"
federationSettingsId:
description: Unique 24-hexadecimal digit string that identifies the federation to link the newly created organization to. If specified, the proposed Organization Owner of the new organization must have the Organization Owner role in an organization associated with the federation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
name:
description: Human-readable label that identifies the organization.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
orgOwnerId:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user that you want to assign the Organization Owner role. This user must be a member of the same organization as the calling API key. If you provide `federationSettingsId`, this user must instead have the Organization Owner role on an organization in the specified federation. This parameter is required only when you authenticate with Programmatic API Keys.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
serviceAccount:
$ref: "#/components/schemas/OrgServiceAccountRequest"
skipDefaultAlertsSettings:
default: false
description: Disables automatic alert creation. When set to true, no organization level alerts will be created automatically.
type: boolean
required:
- name
type: object
CreateOrganizationResponse:
properties:
apiKey:
$ref: "#/components/schemas/ApiKeyUserDetails"
federationSettingsId:
description: Unique 24-hexadecimal digit string that identifies the federation that you linked the newly created organization to.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgOwnerId:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user that you assigned the Organization Owner role in the new organization.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
organization:
$ref: "#/components/schemas/AtlasOrganization"
serviceAccount:
$ref: "#/components/schemas/OrgServiceAccount"
skipDefaultAlertsSettings:
default: false
description: Disables automatic alert creation. When set to true, no organization level alerts will be created automatically.
type: boolean
type: object
CreatePushBasedLogExportProjectRequest:
properties:
bucketName:
description: The name of the bucket to which the agent will send the logs to.
type: string
iamRoleId:
description: ID of the AWS IAM role that will be used to write to the S3 bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
prefixPath:
description: S3 directory in which vector will write to in order to store the logs. An empty string denotes the root directory.
type: string
required:
- bucketName
- iamRoleId
- prefixPath
type: object
CustomSessionTimeouts:
description: Defines the session timeout settings for managing user sessions at the organization level. When set to null, the field's value is unset, and the default timeout settings are applied.
properties:
absoluteSessionTimeoutInSeconds:
description: Specifies the absolute session timeout duration in seconds. When set to null, the field's value is unset, and the default value of 43,200 seconds (12 hours) is applied. Accepted values range between a minimum of 3,600 seconds (1 hour) and a maximum of 43,200 seconds (12 hours).
format: int32
type: integer
idleSessionTimeoutInSeconds:
description: "Specifies the idle session timeout duration in seconds. When set to null, the field's value is unset, and the default behavior depends on the context: no timeout for Atlas Commercial, and 600 seconds (10 minutes) for Atlas for Government. Accepted values start at a minimum of 300 seconds (5 minutes). For Atlas Commercial, the maximum value cannot exceed the configured absolute session timeout. For Atlas for Government, the maximum value is capped at 600 seconds (10 minutes)."
format: int32
type: integer
type: object
CustomZoneMappings:
properties:
customZoneMappings:
description: |-
List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.
This parameter returns an empty object if no custom zones exist.
items:
$ref: "#/components/schemas/ZoneMapping"
type: array
required:
- customZoneMappings
type: object
DBRoleToExecute:
description: Name of a built-in or custom DB Role to connect to a MongoDB Cloud Cluster.
externalDocs:
description: Built-in Roles
url: https://www.mongodb.com/docs/atlas/mongodb-users-roles-and-privileges/#mongodb-atlasrole-atlasAdmin
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
role:
description: The name of the role to use. Can be a built in role or a custom role.
type: string
type:
description: Type of the DB role. Can be either Built In or Custom.
title: DB Role Type
type: string
type: object
DBUserTLSX509Settings:
description: Settings to configure TLS Certificates for database users.
properties:
cas:
description: Concatenated list of customer certificate authority (CA) certificates needed to authenticate database users. MongoDB Cloud expects this as a PEM-formatted certificate.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
title: Database User TLS Certificate Settings
type: object
DataFederationAzureCloudProviderConfig:
description: Configuration for running Data Federation in Azure.
properties:
atlasAppId:
description: The App ID generated by Atlas for the Service Principal's access policy.
readOnly: true
type: string
roleId:
description: Unique identifier of the role that Data Federation can use to access the data stores. Required if specifying `cloudProviderConfig`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
servicePrincipalId:
description: The ID of the Service Principal for which there is an access policy for Atlas to access Azure resources.
readOnly: true
type: string
tenantId:
description: The Azure Active Directory / Entra ID tenant ID associated with the Service Principal.
readOnly: true
type: string
required:
- roleId
type: object
DataFederationGCPCloudProviderConfig:
description: Configuration for running Data Federation in GCP.
properties:
gcpServiceAccount:
description: The email address of the Google Cloud Platform (GCP) service account created by Atlas which should be authorized to allow Atlas to access Google Cloud Storage.
readOnly: true
type: string
roleId:
description: Unique identifier of the role that Data Federation can use to access the data stores. Required if specifying `cloudProviderConfig`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
required:
- roleId
type: object
DataFederationLimit:
description: Details of user managed limits.
properties:
currentUsage:
description: Amount that indicates the current usage of the limit.
format: int64
readOnly: true
type: integer
defaultLimit:
description: Default value of the limit.
format: int64
readOnly: true
type: integer
maximumLimit:
description: Maximum value of the limit.
format: int64
readOnly: true
type: integer
name:
description: Human-readable label that identifies the user-managed limit to modify.
readOnly: true
type: string
value:
description: Amount to set the limit to.
format: int64
type: integer
required:
- name
- value
title: Limits
type: object
x-xgen-discriminator:
propertyName: name
mapping:
atlas.project.deployment.clusters:
properties: []
atlas.project.deployment.nodesPerPrivateLinkRegion:
properties: []
atlas.project.deployment.serverlessMTMs:
properties: []
atlas.project.security.databaseAccess.customRoles:
properties: []
atlas.project.security.databaseAccess.users:
properties: []
atlas.project.security.networkAccess.crossRegionEntries:
properties: []
atlas.project.security.networkAccess.entries:
properties: []
DataFederationTenantQueryLimit:
description: Details of a tenant-level query limit for Data Federation. Query limit is the limit on the amount of usage during a time period based on cost.
properties:
currentUsage:
description: Amount that indicates the current usage of the limit.
format: int64
readOnly: true
type: integer
defaultLimit:
description: Default value of the limit.
format: int64
readOnly: true
type: integer
lastModifiedDate:
description: Only used for Data Federation limits. Timestamp that indicates when this usage limit was last modified. This field uses the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
maximumLimit:
description: Maximum value of the limit.
format: int64
readOnly: true
type: integer
name:
description: Human-readable label that identifies the user-managed limit to modify.
readOnly: true
type: string
overrunPolicy:
description: Only used for Data Federation limits. Action to take when the usage limit is exceeded. If limit span is set to QUERY, this is ignored because MongoDB Cloud stops the query when it exceeds the usage limit.
type: string
tenantName:
description: Human-readable label that identifies the Federated Database Instance. If specified, the usage limit is for the specified federated database instance only. If omitted, the usage limit is for all federated database instances in the project.
readOnly: true
type: string
value:
description: Amount to set the limit to.
format: int64
type: integer
required:
- name
- value
title: Data Federation Tenant-Level Query Limit
type: object
DataLakeAWSCloudProviderConfig:
description: Configuration for running Data Federation in AWS.
properties:
externalId:
description: Unique identifier associated with the Identity and Access Management (IAM) role that the data lake assumes when accessing the data stores.
readOnly: true
type: string
iamAssumedRoleARN:
description: Amazon Resource Name (ARN) of the Identity and Access Management (IAM) role that the data lake assumes when accessing data stores.
example: arn:aws:iam::123456789012:root
maxLength: 2048
minLength: 20
readOnly: true
type: string
iamUserARN:
description: Amazon Resource Name (ARN) of the user that the data lake assumes when accessing data stores.
readOnly: true
type: string
roleId:
description: Unique identifier of the role that the data lake can use to access the data stores.Required if specifying cloudProviderConfig.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
testS3Bucket:
description: Name of the S3 data bucket that the provided role ID is authorized to access. Required if specifying `cloudProviderConfig`.
type: string
writeOnly: true
required:
- roleId
- testS3Bucket
type: object
DataLakeApiBase:
description: An aggregation pipeline that applies to the collection.
properties:
name:
description: Human-readable label that identifies the view, which corresponds to an aggregation pipeline on a collection.
type: string
pipeline:
description: Aggregation pipeline stages to apply to the source collection.
externalDocs:
description: Aggregation Pipelines
url: https://docs.mongodb.com/manual/core/aggregation-pipeline/
type: string
source:
description: Human-readable label that identifies the source collection for the view.
type: string
type: object
DataLakeAtlasStoreReadConcern:
description: MongoDB Cloud cluster read concern, which determines the consistency and isolation properties of the data read from an Atlas cluster.
properties:
level:
description: Read Concern level that specifies the consistency and availability of the data read.
externalDocs:
description: Read Concern Level
url: https://www.mongodb.com/docs/manual/reference/read-concern/#read-concern-levels
type: string
type: object
DataLakeAtlasStoreReadPreference:
description: MongoDB Cloud cluster read preference, which describes how to route read requests to the cluster.
properties:
maxStalenessSeconds:
description: Maximum replication lag, or **staleness**, for reads from secondaries.
format: int32
type: integer
mode:
description: Read preference mode that specifies to which replica set member to route the read requests.
externalDocs:
description: Read Preference Modes
url: https://docs.mongodb.com/manual/core/read-preference/#read-preference-modes
type: string
tagSets:
description: List that contains tag sets or tag specification documents. If specified, Atlas Data Lake routes read requests to replica set member or members that are associated with the specified tags.
externalDocs:
description: Read Preference Tag Set Lists
url: https://docs.mongodb.com/manual/core/read-preference-tags/
items:
items:
$ref: "#/components/schemas/DataLakeAtlasStoreReadPreferenceTag"
type: array
type: array
type: object
DataLakeAtlasStoreReadPreferenceTag:
properties:
name:
description: Human-readable label of the tag.
type: string
value:
description: Value of the tag.
type: string
type: object
DataLakeCloudProviderConfig:
description: Cloud provider where this Federated Database Instance is hosted.
properties:
aws:
$ref: "#/components/schemas/DataLakeAWSCloudProviderConfig"
azure:
$ref: "#/components/schemas/DataFederationAzureCloudProviderConfig"
gcp:
$ref: "#/components/schemas/DataFederationGCPCloudProviderConfig"
title: Data Federation Cloud Provider
type: object
DataLakeDataProcessRegion:
description: Information about the cloud provider region to which the Federated Database Instance routes client connections.
properties:
cloudProvider:
description: Name of the cloud service that hosts the Federated Database Instance's infrastructure.
type: string
region:
$ref: "#/components/schemas/BaseAtlasDataLakeRegion"
required:
- cloudProvider
- region
type: object
DataLakeDatabaseCollection:
description: A collection and data sources that map to a ``stores`` data store.
properties:
dataSources:
description: Array that contains the data stores that map to a collection for this data lake.
items:
$ref: "#/components/schemas/DataLakeDatabaseDataSourceSettings"
type: array
name:
description: Human-readable label that identifies the collection to which MongoDB Cloud maps the data in the data stores.
type: string
type: object
DataLakeDatabaseDataSourceSettings:
description: Data store that maps to a collection for this data lake.
properties:
allowInsecure:
default: false
description: Flag that validates the scheme in the specified URLs. If `true`, allows insecure `HTTP` scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If `false`, allows secure `HTTPS` scheme only.
type: boolean
collection:
description: Human-readable label that identifies the collection in the database. For creating a wildcard (`*`) collection, you must omit this parameter.
type: string
collectionRegex:
description: Regex pattern to use for creating the wildcard (*) collection. To learn more about the regex syntax, see [Go programming language](https://pkg.go.dev/regexp).
type: string
database:
description: Human-readable label that identifies the database, which contains the collection in the cluster. You must omit this parameter to generate wildcard (`*`) collections for dynamically generated databases.
type: string
databaseRegex:
description: Regex pattern to use for creating the wildcard (*) database. To learn more about the regex syntax, see [Go programming language](https://pkg.go.dev/regexp).
type: string
datasetName:
description: Human-readable label that identifies the dataset that Atlas generates for an ingestion pipeline run or Online Archive.
example: v1$atlas$snapshot$Cluster0$myDatabase$myCollection$19700101T000000Z
type: string
datasetPrefix:
description: Human-readable label that matches against the dataset names for ingestion pipeline runs or Online Archives.
type: string
defaultFormat:
description: File format that MongoDB Cloud uses if it encounters a file without a file extension while searching **storeName**.
type: string
path:
description: File path that controls how MongoDB Cloud searches for and parses files in the **storeName** before mapping them to a collection.Specify ``/`` to capture all files and folders from the ``prefix`` path.
type: string
provenanceFieldName:
description: Name for the field that includes the provenance of the documents in the results. MongoDB Cloud returns different fields in the results for each supported provider.
type: string
storeName:
description: Human-readable label that identifies the data store that MongoDB Cloud maps to the collection.
type: string
trimLevel:
description: Unsigned integer that specifies how many fields of the dataset name to trim from the left of the dataset name before mapping the remaining fields to a wildcard collection name.
format: int32
type: integer
urls:
description: URLs of the publicly accessible data files. You can't specify URLs that require authentication. Atlas Data Lake creates a partition for each URL. If empty or omitted, Data Lake uses the URLs from the store specified in the **dataSources.storeName** parameter.
items:
type: string
type: array
type: object
DataLakeDatabaseInstance:
description: Database associated with this data lake. Databases contain collections and views.
properties:
collections:
description: Array of collections and data sources that map to a ``stores`` data store.
items:
$ref: "#/components/schemas/DataLakeDatabaseCollection"
type: array
maxWildcardCollections:
default: 100
description: Maximum number of wildcard collections in the database. This only applies to S3 data sources.
format: int32
maximum: 1000
minimum: 1
type: integer
name:
description: Human-readable label that identifies the database to which the data lake maps data.
type: string
views:
description: Array of aggregation pipelines that apply to the collection. This only applies to S3 data sources.
items:
$ref: "#/components/schemas/DataLakeApiBase"
type: array
type: object
DataLakeStorage:
description: Configuration information for each data store and its mapping to MongoDB Cloud databases.
properties:
databases:
description: Array that contains the queryable databases and collections for this data lake.
items:
$ref: "#/components/schemas/DataLakeDatabaseInstance"
type: array
stores:
description: Array that contains the data stores for the data lake.
items:
$ref: "#/components/schemas/DataLakeStoreSettings"
type: array
type: object
DataLakeStoreSettings:
description: Group of settings that define where the data is stored.
properties:
name:
description: Human-readable label that identifies the data store. The **databases.[n].collections.[n].dataSources.[n].storeName** field references this values as part of the mapping configuration. To use MongoDB Cloud as a data store, the data lake requires a serverless instance or an `M10` or higher cluster.
type: string
provider:
type: string
additionalStorageClasses:
description: Collection of AWS S3 [storage classes](https://aws.amazon.com/s3/storage-classes/). Atlas Data Lake includes the files in these storage classes in the query results.
items:
description: AWS S3 [storage class](https://aws.amazon.com/s3/storage-classes/) where the files to include in the results are stored.
type: string
type: array
bucket:
description: Human-readable label that identifies the Google Cloud Storage bucket.
type: string
delimiter:
description: Delimiter.
type: string
includeTags:
default: false
description: Flag that indicates whether to use S3 tags on the files in the given path as additional partition attributes. If set to `true`, data lake adds the S3 tags as additional partition attributes and adds new top-level BSON elements associating each tag to each document.
type: boolean
prefix:
description: Prefix.
type: string
public:
default: false
description: Flag that indicates whether the bucket is public. If set to `true`, MongoDB Cloud doesn't use the configured GCP service account to access the bucket. If set to `false`, the configured GCP service acccount must include permissions to access the bucket.
type: boolean
region:
description: Google Cloud Platform Regions.
title: GCP Regions
type: string
clusterName:
description: Human-readable label of the MongoDB Cloud cluster on which the store is based.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
projectId:
description: Unique 24-hexadecimal digit string that identifies the project.
maxLength: 24
minLength: 24
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
readConcern:
$ref: "#/components/schemas/DataLakeAtlasStoreReadConcern"
readPreference:
$ref: "#/components/schemas/DataLakeAtlasStoreReadPreference"
allowInsecure:
default: false
description: Flag that validates the scheme in the specified URLs. If `true`, allows insecure `HTTP` scheme, doesn't verify the server's certificate chain and hostname, and accepts any certificate with any hostname presented by the server. If `false`, allows secure `HTTPS` scheme only.
type: boolean
defaultFormat:
description: Default format that Data Lake assumes if it encounters a file without an extension while searching the `storeName`. If omitted, Data Lake attempts to detect the file type by processing a few bytes of the file. The specified format only applies to the URLs specified in the **databases.[n].collections.[n].dataSources** object.
type: string
urls:
description: Comma-separated list of publicly accessible HTTP URLs where data is stored. You can't specify URLs that require authentication.
items:
description: Comma-separated list of publicly accessible HTTP URLs where data is stored. You can't specify URLs that require authentication.
type: string
type: array
containerName:
description: Human-readable label that identifies the name of the container.
type: string
replacementDelimiter:
description: Replacement Delimiter.
type: string
serviceURL:
description: Service URL.
type: string
required:
- provider
type: object
x-xgen-discriminator:
propertyName: provider
mapping:
atlas:
properties:
- clusterName
- projectId
- readConcern
- readPreference
azure:
properties:
- containerName
- delimiter
- prefix
- public
- region
- replacementDelimiter
- serviceURL
dls:aws:
properties:
- region
dls:azure:
properties:
- region
dls:gcp:
properties:
- region
gcs:
properties:
- bucket
- delimiter
- prefix
- public
- region
- replacementDelimiter
http:
properties:
- allowInsecure
- defaultFormat
- urls
s3:
properties:
- additionalStorageClasses
- bucket
- delimiter
- includeTags
- prefix
- public
- region
DataLakeTenant:
properties:
cloudProviderConfig:
$ref: "#/components/schemas/DataLakeCloudProviderConfig"
dataProcessRegion:
$ref: "#/components/schemas/DataLakeDataProcessRegion"
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hostnames:
description: List that contains the hostnames assigned to the Federated Database Instance.
items:
description: Unique hostname assigned to the Federated Database Instance.
readOnly: true
type: string
readOnly: true
type: array
name:
description: Human-readable label that identifies the Federated Database Instance.
type: string
privateEndpointHostnames:
description: List that contains the sets of private endpoints and hostnames.
items:
$ref: "#/components/schemas/PrivateEndpointHostname"
readOnly: true
type: array
state:
description: Label that indicates the status of the Federated Database Instance.
readOnly: true
type: string
storage:
$ref: "#/components/schemas/DataLakeStorage"
type: object
DataProtectionSettings20231001:
properties:
authorizedEmail:
description: Email address of the user who authorized to update the Backup Compliance Policy settings.
format: email
type: string
authorizedUserFirstName:
description: First name of the user who authorized to updated the Backup Compliance Policy settings.
type: string
authorizedUserLastName:
description: Last name of the user who authorized to updated the Backup Compliance Policy settings.
type: string
copyProtectionEnabled:
default: false
description: Flag that indicates whether to prevent cluster users from deleting backups copied to other regions, even if those additional snapshot regions are removed. If unspecified, this value defaults to false.
type: boolean
deletable:
default: false
description: Flag that indicates whether the Backup Compliance Policy is allowed to be disabled. It is default to false and a support ticket needs to be filed to request setting to true.
externalDocs:
description: Configure a Backup Compliance Policy
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/
readOnly: true
type: boolean
encryptionAtRestEnabled:
default: false
description: Flag that indicates whether Encryption at Rest using Customer Key Management is required for all clusters with a Backup Compliance Policy. If unspecified, this value defaults to false.
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
type: boolean
onDemandPolicyItem:
$ref: "#/components/schemas/BackupComplianceOnDemandPolicyItem"
pitEnabled:
default: false
description: Flag that indicates whether the cluster uses Continuous Cloud Backups with a Backup Compliance Policy. If unspecified, this value defaults to false.
externalDocs:
description: Continuous Cloud Backups
url: https://docs.atlas.mongodb.com/backup/cloud-backup/overview/
type: boolean
projectId:
description: Unique 24-hexadecimal digit string that identifies the project for the Backup Compliance Policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
restoreWindowDays:
description: Number of previous days that you can restore back to with Continuous Cloud Backup with a Backup Compliance Policy. You must specify a positive, non-zero integer, and the maximum retention window can't exceed the hourly retention time. This parameter applies only to Continuous Cloud Backups with a Backup Compliance Policy.
format: int32
type: integer
scheduledPolicyItems:
description: List that contains the specifications for one scheduled policy.
items:
$ref: "#/components/schemas/BackupComplianceScheduledPolicyItem"
type: array
state:
description: Label that indicates the state of the Backup Compliance Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.
readOnly: true
type: string
updatedDate:
description: ISO 8601 timestamp format in UTC that indicates when the user updated the Data Protection Policy settings. MongoDB Cloud ignores this setting when you enable or update the Backup Compliance Policy settings.
format: date-time
readOnly: true
type: string
updatedUser:
description: Email address that identifies the user who updated the Backup Compliance Policy settings. MongoDB Cloud ignores this email setting when you enable or update the Backup Compliance Policy settings.
format: email
readOnly: true
type: string
required:
- authorizedEmail
- authorizedUserFirstName
- authorizedUserLastName
type: object
DatabaseInheritedRole:
description: Role inherited from another context for this database user.
externalDocs:
description: Built-in MongoDB Roles
url: https://docs.mongodb.com/manual/reference/built-in-roles/
properties:
db:
description: Human-readable label that identifies the database on which someone grants the action to one MongoDB user.
type: string
role:
description: Human-readable label that identifies the role inherited. Set this value to `admin` for every role except `read` or `readWrite`.
externalDocs:
description: MongoDB Built-In Roles
url: https://docs.mongodb.com/manual/reference/built-in-roles/
type: string
required:
- db
- role
title: Inherited Role
type: object
DatabasePermittedNamespaceResource:
description: Namespace to which this database user has access.
externalDocs:
description: Cluster Resources
url: https://docs.mongodb.com/manual/reference/resource-document/#cluster-resource
properties:
cluster:
description: Flag that indicates whether to grant the action on the cluster resource. If `true`, MongoDB Cloud ignores the `actions.resources.collection` and `actions.resources.db` parameters.
type: boolean
collection:
description: "Human-readable label that identifies the collection on which you grant the action to one MongoDB user. If you don't set this parameter, you grant the action to all collections in the database specified in the `actions.resources.db` parameter. If you set `\"actions.resources.cluster\" : true`, MongoDB Cloud ignores this parameter."
type: string
db:
description: 'Human-readable label that identifies the database on which you grant the action to one MongoDB user. If you set `"actions.resources.cluster" : true`, MongoDB Cloud ignores this parameter.'
type: string
required:
- cluster
- collection
- db
title: Permitted Namespace
type: object
DatabasePrivilegeAction:
description: Privilege action that the role grants.
properties:
action:
description: Human-readable label that identifies the privilege action.
type: string
resources:
description: List of resources on which you grant the action.
items:
$ref: "#/components/schemas/DatabasePermittedNamespaceResource"
type: array
required:
- action
- resources
title: Database Privilege Action
type: object
DatabaseRollingIndexRequest:
properties:
collation:
$ref: "#/components/schemas/Collation"
collection:
description: Human-readable label of the collection for which MongoDB Cloud creates an index.
type: string
writeOnly: true
db:
description: Human-readable label of the database that holds the collection on which MongoDB Cloud creates an index.
type: string
writeOnly: true
keys:
description: List that contains one or more objects that describe the parameters that you want to index.
items:
additionalProperties:
description: Key-value pair that sets the parameter to index as the key and the type of index as its value. To create a [multi-key index](https://docs.mongodb.com/manual/core/index-multikey/), list each parameter in its own object within this array.
externalDocs:
description: Index Types
url: https://docs.mongodb.com/manual/indexes/#index-types
maxProperties: 1
minProperties: 1
type: string
writeOnly: true
description: Key-value pair that sets the parameter to index as the key and the type of index as its value. To create a [multi-key index](https://docs.mongodb.com/manual/core/index-multikey/), list each parameter in its own object within this array.
externalDocs:
description: Index Types
url: https://docs.mongodb.com/manual/indexes/#index-types
maxProperties: 1
minProperties: 1
type: object
writeOnly: true
type: array
writeOnly: true
options:
$ref: "#/components/schemas/IndexOptions"
required:
- collection
- db
- keys
type: object
DatabaseUserRole:
description: Range of resources available to this database user.
properties:
collectionName:
description: Collection on which this role applies.
type: string
databaseName:
description: Database to which the user is granted access privileges.
type: string
roleName:
description: Human-readable label that identifies a group of privileges assigned to a database user. This value can either be a built-in role or a custom role.
type: string
required:
- databaseName
- roleName
title: Database User Role
type: object
DedicatedHardwareSpec20240805:
description: The current hardware specifications for read only nodes in the region.
properties:
diskSizeGB:
description: |-
Storage capacity of instance data volumes expressed in gigabytes. Increase this number to add capacity.
This value must be equal for all shards and node types.
This value is not configurable on M0/M2/M5 clusters.
MongoDB Cloud requires this parameter if you set `replicationSpecs`.
If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value.
Storage charge calculations depend on whether you choose the default value or a custom value.
The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.
externalDocs:
description: Customize Storage
url: https://dochub.mongodb.org/core/customize-storage
format: double
type: number
nodeCount:
description: Number of nodes of the given type for MongoDB Cloud to deploy to the region.
example: 3
format: int32
type: integer
diskIOPS:
description: |-
Target IOPS (Input/Output Operations Per Second) desired for storage attached to this hardware. Only configurable for Gen 2 instance sizes.
Change this parameter if you:
- set `"replicationSpecs[n].regionConfigs[m].providerName" : "GCP"`.
- set `"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize"` to a Gen 2 instance size (`"M30_GEN_2"` or greater).
The maximum input/output operations per second (IOPS) depend on the selected `.instanceSize` and `.diskSizeGB`.
This parameter defaults to the standard IOPS value for the selected `.diskSizeGB`.
Changing this value impacts cluster cost.
format: int32
type: integer
diskThroughput:
description: Throughput (in MiB/s) provisioned for storage attached to this hardware. Only returned for Gen 2 instance sizes.
format: int32
readOnly: true
type: integer
ebsVolumeType:
default: STANDARD
description: |-
Type of storage you want to attach to your AWS-provisioned cluster.
- `STANDARD` volume types can't exceed the default input/output operations per second (IOPS) rate for the selected volume size.
- `PROVISIONED` volume types must fall within the allowable IOPS range for the selected volume size.
- `HIGH_PERFORMANCE` volume types use IO2 EBS volumes and must fall within the allowable IOPS range for the selected volume size.
NVMe clusters require either `PROVISIONED` or `HIGH_PERFORMANCE`.
type: string
instanceSize:
description: Hardware specification for the instance sizes in this region in this shard. Each instance size has a default storage and memory capacity. Electable nodes and read-only nodes (known as "base nodes") within a single shard must use the same instance size. Analytics nodes can scale independently from base nodes within a shard. Both base nodes and analytics nodes can scale independently from their equivalents in other shards.
title: GCP Instance Sizes
type: string
readOnly: true
type: object
DeleteCopiedBackups20240805:
description: Deleted copy setting whose backup copies need to also be deleted.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider for the deleted copy setting whose backup copies you want to delete.
type: string
writeOnly: true
regionName:
description: Target region for the deleted copy setting whose backup copies you want to delete. Please supply the 'Atlas Region'.
externalDocs:
description: Cloud Provider Regions
url: https://www.mongodb.com/docs/atlas/reference/cloud-providers/
type: string
writeOnly: true
zoneId:
description: Unique 24-hexadecimal digit string that identifies the zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Zone Id, do a GET request to Return One Cluster from One Project and consult the `replicationSpecs` array.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Return One Cluster from One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getCluster
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
type: object
writeOnly: true
Destination:
description: Document that describes the destination of the migration.
properties:
clusterName:
description: Label that identifies the destination cluster.
minLength: 1
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the destination project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
hostnameSchemaType:
description: The network type to use between the migration host and the destination cluster.
minLength: 1
type: string
privateLinkId:
description: Represents the endpoint to use when the host schema type is `PRIVATE_LINK`.
type: string
required:
- clusterName
- groupId
- hostnameSchemaType
type: object
DiskBackupApiPolicyItem:
description: Specifications for one policy.
properties:
frequencyInterval:
description: |-
Number that indicates the frequency interval for a set of Snapshots. A value of `1` specifies the first instance of the corresponding `frequencyType`.
- In a yearly policy item, `1` indicates that the yearly Snapshot occurs on the first day of January and `12` indicates the first day of December.
- In a monthly policy item, `1` indicates that the monthly Snapshot occurs on the first day of the month and `40` indicates the last day of the month.
- In a weekly policy item, `1` indicates that the weekly Snapshot occurs on Monday and `7` indicates Sunday.
- In an hourly policy item, you can set the frequency interval to `1`, `2`, `4`, `6`, `8`, or `12`. For hourly policy items for NVMe clusters, MongoDB Cloud accepts only `12` as the frequency interval value.
MongoDB Cloud ignores this setting for non-hourly policy items in Backup Compliance Policy settings.
format: int32
type: integer
frequencyType:
description: Human-readable label that identifies the frequency type associated with the backup policy.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this backup policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
retentionUnit:
description: Unit of time in which MongoDB Cloud measures Snapshot retention.
type: string
retentionValue:
description: |-
Duration in days, weeks, months, or years that MongoDB Cloud retains the Snapshot. For less frequent policy items, MongoDB Cloud requires that you specify a value greater than or equal to the value specified for more frequent policy items.
For example: If the hourly policy item specifies a retention of two days, you must specify two days or greater for the retention of the weekly policy item.
format: int32
type: integer
required:
- frequencyInterval
- frequencyType
- retentionUnit
- retentionValue
type: object
DiskBackupCollectionResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the collection in the database within the snapshot.
readOnly: true
type: string
required:
- name
type: object
DiskBackupCopyPolicyItem:
description: Specifications for one copy policy item.
properties:
frequencyType:
description: Human-readable label that identifies the frequency type associated with the copy policy.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this copy policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
retentionUnit:
description: Unit of time in which MongoDB Cloud measures snapshot copy retention.
type: string
retentionValue:
description: Duration in days, weeks, months, or years that MongoDB Cloud retains the snapshot copy.
format: int32
type: integer
required:
- frequencyType
type: object
x-xgen-discriminator:
propertyName: frequencyType
mapping:
daily:
properties:
- retentionUnit
- retentionValue
required:
- retentionUnit
- retentionValue
hourly:
properties:
- retentionUnit
- retentionValue
required:
- retentionUnit
- retentionValue
monthly:
properties:
- retentionUnit
- retentionValue
required:
- retentionUnit
- retentionValue
ondemand:
properties: []
weekly:
properties:
- retentionUnit
- retentionValue
required:
- retentionUnit
- retentionValue
yearly:
properties:
- retentionUnit
- retentionValue
required:
- retentionUnit
- retentionValue
DiskBackupCopySetting20240805:
description: Copy setting item in the desired backup policy.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider that stores the snapshot copy.
type: string
copyPolicyItems:
description: List that contains a document for each copy policy item. Allowed only when `copyPolicyItemsEnabled` is true. Responses omit this field when `copyPolicyItemsEnabled` is false or omitted.
items:
$ref: "#/components/schemas/DiskBackupCopyPolicyItem"
maxItems: 6
type: array
frequencies:
deprecated: true
description: "Deprecated: use `copyPolicyItems`, which defines which snapshots to copy and their retention. Allowed only when `copyPolicyItemsEnabled` is false or omitted. Responses omit this field when `copyPolicyItemsEnabled` is true."
items:
type: string
maxItems: 6
type: array
lastNumberOfSnapshots:
description: Number of most recent snapshots to copy to the target region. If specified, Atlas copies this number of the most recent snapshots rather than using a frequency-based or policy-based copy schedule. This field is mutually exclusive with `frequencies` and `copyPolicyItems`.
format: int32
maximum: 500
minimum: 1
type: integer
regionName:
description: Target region to copy snapshots belonging to `zoneId`. Please supply the 'Atlas Region'.
externalDocs:
description: Cloud Provider Regions
url: https://www.mongodb.com/docs/atlas/reference/cloud-providers/
type: string
shouldCopyOplogs:
description: Flag that indicates whether to copy the oplogs to the target region. You can use the oplogs to perform point-in-time restores.
type: boolean
zoneId:
description: Unique 24-hexadecimal digit string that identifies the zone in a cluster. For global clusters, there can be multiple zones to choose from. For sharded clusters and replica set clusters, there is only one zone in the cluster. To find the Zone Id, do a GET request to Return One Cluster from One Project and consult the `replicationSpecs` array.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Return One Cluster From One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getCluster
pattern: ^([a-f0-9]{24})$
type: string
required:
- zoneId
type: object
DiskBackupDatabaseResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the database within the snapshot.
readOnly: true
type: string
required:
- name
type: object
DiskBackupExportJob:
properties:
components:
description: Information on the export job for each replica set in the sharded cluster.
items:
$ref: "#/components/schemas/DiskBackupExportMember"
readOnly: true
type: array
createdAt:
description: Date and time when a user or Atlas created the Export Job. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
customData:
description: Collection of key-value pairs that represent custom data for the metadata file that MongoDB Cloud uploads when the Export Job finishes.
items:
$ref: "#/components/schemas/BackupLabel"
type: array
exportBucketId:
description: Unique 24-hexadecimal character string that identifies the Export Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
exportStatus:
$ref: "#/components/schemas/ExportStatus"
finishedAt:
description: Date and time when this Export Job completed. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
prefix:
description: Prefix used for all blob storage objects uploaded as part of the Export Job.
pattern: /exported_snapshots/\{ORG-NAME\}/\{PROJECT-NAME\}/\{CLUSTER-NAME\}/\{SNAPSHOT-INITIATION-DATE\}/\{TIMESTAMP\}
readOnly: true
type: string
snapshotId:
description: Unique 24-hexadecimal character string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
state:
description: State of the Export Job.
readOnly: true
type: string
stateReason:
$ref: "#/components/schemas/StateReason"
required:
- exportBucketId
type: object
DiskBackupExportJobRequest:
properties:
customData:
description: Collection of key-value pairs that represent custom data to add to the metadata file that MongoDB Cloud uploads to the bucket when the export job finishes.
items:
$ref: "#/components/schemas/BackupLabel"
type: array
exportBucketId:
description: Unique 24-hexadecimal character string that identifies the Export Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
snapshotId:
description: Unique 24-hexadecimal character string that identifies the Cloud Backup Snapshot to export.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
required:
- exportBucketId
- snapshotId
type: object
DiskBackupExportMember:
properties:
exportId:
description: Unique 24-hexadecimal character string that identifies the the Cloud Backup snapshot export job for each shard in a sharded cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
replicaSetName:
description: Human-readable label that identifies the replica set on the sharded cluster.
readOnly: true
type: string
type: object
DiskBackupOnDemandSnapshotRequest:
properties:
description:
description: 'Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `"status" : "onDemand"`.'
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
retentionInDays:
description: Number of days that MongoDB Cloud should retain the on-demand snapshot. Must be at least **1**.
format: int32
minimum: 1
type: integer
type: object
DiskBackupReplicaSet:
description: Details of the replica set snapshot that MongoDB Cloud created.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
readOnly: true
type: string
copyRegions:
description: List that identifies the regions to which MongoDB Cloud copies the snapshot.
items:
type: string
readOnly: true
type: array
createdAt:
description: Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
description:
description: 'Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `"status": "onDemand"`.'
readOnly: true
type: string
expiresAt:
description: Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
frequencyType:
description: Human-readable label that identifies how often this snapshot triggers.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
masterKeyUUID:
description: 'Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `"encryptionEnabled" : true`.'
format: uuid
readOnly: true
type: string
mongodVersion:
description: Version of the MongoDB host that this snapshot backs up.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
policyItems:
description: List that contains unique identifiers for the policy items.
items:
description: Unique 24-hexadecimal digit string that identifies one policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
readOnly: true
type: array
replicaSetName:
description: 'Human-readable label that identifies the replica set from which MongoDB Cloud took this snapshot. The resource returns this parameter when `"type": "replicaSet"`.'
readOnly: true
type: string
snapshotType:
description: Human-readable label that identifies when this snapshot triggers.
readOnly: true
type: string
status:
description: Human-readable label that indicates the stage of the backup process for this snapshot.
readOnly: true
type: string
storageSizeBytes:
description: Number of bytes taken to store the backup at time of snapshot.
format: int64
readOnly: true
type: integer
type:
description: Human-readable label that categorizes the cluster as a replica set or sharded cluster.
readOnly: true
type: string
title: Replica Set Snapshot
type: object
DiskBackupRestoreMember:
properties:
downloadUrl:
description: 'One Uniform Resource Locator that points to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `"deliveryType" : "download"`.'
readOnly: true
type: string
privateDownloadDeliveryUrls:
description: 'One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download and the corresponding private endpoint(s). MongoDB Cloud returns this parameter when `"deliveryType" : "download"` and the download can be performed privately.'
items:
$ref: "#/components/schemas/ApiPrivateDownloadDeliveryUrl"
readOnly: true
type: array
replicaSetName:
description: Human-readable label that identifies the replica set on the sharded cluster.
readOnly: true
type: string
type: object
DiskBackupShardedClusterSnapshot:
description: Details of the sharded cluster snapshot that MongoDB Cloud created.
properties:
configServerType:
description: Describes a sharded cluster's config server type.
readOnly: true
type: string
createdAt:
description: Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
description:
description: 'Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `"status": "onDemand"`.'
readOnly: true
type: string
expiresAt:
description: Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
frequencyType:
description: Human-readable label that identifies how often this snapshot triggers.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
masterKeyUUID:
description: 'Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `"encryptionEnabled" : true`.'
format: uuid
readOnly: true
type: string
members:
description: 'List that includes the snapshots and the cloud provider that stores the snapshots. The resource returns this parameter when `"type" : "SHARDED_CLUSTER"`.'
items:
$ref: "#/components/schemas/DiskBackupShardedClusterSnapshotMember"
readOnly: true
type: array
mongodVersion:
description: Version of the MongoDB host that this snapshot backs up.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
policyItems:
description: List that contains unique identifiers for the policy items.
items:
description: Unique 24-hexadecimal digit string that identifies one policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
readOnly: true
type: array
snapshotIds:
description: 'List that contains the unique identifiers of the snapshots created for the shards and config host for a sharded cluster. The resource returns this parameter when `"type": "SHARDED_CLUSTER"`. These identifiers should match the ones specified in the **members[n].id** parameters. This allows you to map a snapshot to its shard or config host name.'
items:
description: Unique 24-hexadecimal digit string that identifies the snapshot for part of the sharded cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
readOnly: true
type: array
snapshotType:
description: Human-readable label that identifies when this snapshot triggers.
readOnly: true
type: string
status:
description: Human-readable label that indicates the stage of the backup process for this snapshot.
readOnly: true
type: string
storageSizeBytes:
description: Number of bytes taken to store the backup at time of snapshot.
format: int64
readOnly: true
type: integer
type:
description: Human-readable label that categorizes the cluster as a replica set or sharded cluster.
readOnly: true
type: string
title: Sharded Cluster Snapshot
type: object
DiskBackupShardedClusterSnapshotMember:
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
replicaSetName:
description: Human-readable label that identifies the shard or config host from which MongoDB Cloud took this snapshot.
readOnly: true
type: string
required:
- cloudProvider
- id
- replicaSetName
type: object
DiskBackupSnapshot:
properties:
createdAt:
description: Date and time when MongoDB Cloud took the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
description:
description: 'Human-readable phrase or sentence that explains the purpose of the snapshot. The resource returns this parameter when `"status": "onDemand"`.'
readOnly: true
type: string
expiresAt:
description: Date and time when MongoDB Cloud deletes the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
frequencyType:
description: Human-readable label that identifies how often this snapshot triggers.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
masterKeyUUID:
description: 'Unique string that identifies the Amazon Web Services (AWS) Key Management Service (KMS) Customer Master Key (CMK) used to encrypt the snapshot. The resource returns this value when `"encryptionEnabled" : true`.'
format: uuid
readOnly: true
type: string
mongodVersion:
description: Version of the MongoDB host that this snapshot backs up.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
policyItems:
description: List that contains unique identifiers for the policy items.
items:
description: Unique 24-hexadecimal digit string that identifies one policy item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
readOnly: true
type: array
snapshotType:
description: Human-readable label that identifies when this snapshot triggers.
readOnly: true
type: string
status:
description: Human-readable label that indicates the stage of the backup process for this snapshot.
readOnly: true
type: string
storageSizeBytes:
description: Number of bytes taken to store the backup at time of snapshot.
format: int64
readOnly: true
type: integer
type:
description: Human-readable label that categorizes the cluster as a replica set or sharded cluster.
readOnly: true
type: string
cloudProvider:
description: Human-readable label that identifies the cloud provider.
readOnly: true
type: string
copyRegions:
description: List that identifies the regions to which MongoDB Cloud copies the snapshot.
items:
type: string
readOnly: true
type: array
replicaSetName:
description: 'Human-readable label that identifies the replica set from which MongoDB Cloud took this snapshot. The resource returns this parameter when `"type": "replicaSet"`.'
readOnly: true
type: string
configServerType:
description: Describes a sharded cluster's config server type.
readOnly: true
type: string
members:
description: 'List that includes the snapshots and the cloud provider that stores the snapshots. The resource returns this parameter when `"type" : "SHARDED_CLUSTER"`.'
items:
$ref: "#/components/schemas/DiskBackupShardedClusterSnapshotMember"
readOnly: true
type: array
snapshotIds:
description: 'List that contains the unique identifiers of the snapshots created for the shards and config host for a sharded cluster. The resource returns this parameter when `"type": "SHARDED_CLUSTER"`. These identifiers should match the ones specified in the **members[n].id** parameters. This allows you to map a snapshot to its shard or config host name.'
items:
description: Unique 24-hexadecimal digit string that identifies the snapshot for part of the sharded cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
readOnly: true
type: array
type: object
x-xgen-discriminator:
propertyName: type
mapping:
replicaSet:
properties:
- cloudProvider
- copyRegions
- replicaSetName
shardedCluster:
properties:
- configServerType
- members
- snapshotIds
DiskBackupSnapshotAWSExportBucketResponse:
properties:
_id:
description: Unique 24-hexadecimal character string that identifies the Export Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
bucketName:
description: The name of the AWS S3 Bucket, Azure Storage Container, or Google Cloud Storage Bucket that Snapshots are exported to.
example: export-bucket
maxLength: 63
minLength: 3
type: string
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
iamRoleId:
description: Unique 24-hexadecimal character string that identifies the Unified AWS Access role ID that MongoDB Cloud uses to access the AWS S3 bucket.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Unified AWS Access role ID
url: https://www.mongodb.com/docs/atlas/security/set-up-unified-aws-access/
pattern: ^([a-f0-9]{24})$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
region:
description: AWS region for the export bucket. This is set by Atlas and is never user-supplied.
example: us-east-1
readOnly: true
type: string
requirePrivateNetworking:
description: Indicates whether to use private link. User supplied.
type: boolean
required:
- _id
- bucketName
- cloudProvider
- iamRoleId
type: object
DiskBackupSnapshotExportBucketRequest:
description: Disk backup snapshot Export Bucket Request.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
bucketName:
description: Human-readable label that identifies the Google Cloud Storage Bucket that the role is authorized to export to.
example: export-bucket
maxLength: 63
minLength: 3
type: string
iamRoleId:
description: Unique 24-hexadecimal character string that identifies the Unified AWS Access role ID that MongoDB Cloud uses to access the AWS S3 bucket.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Unified AWS Access role ID
url: https://www.mongodb.com/docs/atlas/security/set-up-unified-aws-access/
pattern: ^([a-f0-9]{24})$
type: string
requirePrivateNetworking:
description: Indicates whether to do exports over PrivateLink as opposed to public IPs. Defaults to False.
type: boolean
roleId:
description: Unique 24-hexadecimal digit string that identifies the GCP Cloud Provider Access Role that MongoDB Cloud uses to access the Google Cloud Storage Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
serviceUrl:
description: "URL of the Azure Storage Account to export to. For example: `https://examplestorageaccount.blob.core.windows.net/exportcontainer`. Only standard endpoints (with `blob.core.windows.net`) are supported."
example: https://examplestorageaccount.blob.core.windows.net/exportcontainer
maxLength: 2048
minLength: 33
type: string
tenantId:
deprecated: true
description: "UUID that identifies the Azure Active Directory Tenant ID. Deprecated: this field is ignored; the `tenantId` of the Cloud Provider Access role (from `roleId`) is used."
format: uuid
type: string
required:
- cloudProvider
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- bucketName
- iamRoleId
- requirePrivateNetworking
required:
- bucketName
- iamRoleId
AZURE:
properties:
- bucketName
- roleId
- serviceUrl
- tenantId
required:
- roleId
- serviceUrl
GCP:
properties:
- bucketName
- roleId
required:
- bucketName
- roleId
DiskBackupSnapshotExportBucketResponse:
description: Disk backup snapshot Export Bucket.
properties:
_id:
description: Unique 24-hexadecimal character string that identifies the Export Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
bucketName:
description: The name of the AWS S3 Bucket, Azure Storage Container, or Google Cloud Storage Bucket that Snapshots are exported to.
example: export-bucket
maxLength: 63
minLength: 3
type: string
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
iamRoleId:
description: Unique 24-hexadecimal character string that identifies the Unified AWS Access role ID that MongoDB Cloud uses to access the AWS S3 bucket.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Unified AWS Access role ID
url: https://www.mongodb.com/docs/atlas/security/set-up-unified-aws-access/
pattern: ^([a-f0-9]{24})$
type: string
region:
description: AWS region for the export bucket. This is set by Atlas and is never user-supplied.
example: us-east-1
readOnly: true
type: string
requirePrivateNetworking:
description: Indicates whether to use private link. User supplied.
type: boolean
roleId:
description: Unique 24-hexadecimal digit string that identifies the GCP Cloud Provider Access Role that MongoDB Cloud uses to access the Google Cloud Storage Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
serviceUrl:
description: URL of the Azure Storage Account to export to. Only standard endpoints (with `blob.core.windows.net`) are supported.
example: https://examplestorageaccount.blob.core.windows.net/exportcontainer
maxLength: 2048
minLength: 33
type: string
tenantId:
description: UUID that identifies the Azure Active Directory Tenant ID used during exports.
format: uuid
type: string
required:
- _id
- bucketName
- cloudProvider
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- iamRoleId
- region
- requirePrivateNetworking
required:
- iamRoleId
AZURE:
properties:
- roleId
- serviceUrl
- tenantId
required:
- roleId
- serviceUrl
- tenantId
GCP:
properties:
- roleId
required:
- roleId
DiskBackupSnapshotRestoreJob:
properties:
cancelled:
description: Flag that indicates whether someone canceled this restore job.
readOnly: true
type: boolean
components:
description: Information on the restore job for each replica set in the sharded cluster.
items:
$ref: "#/components/schemas/DiskBackupRestoreMember"
readOnly: true
type: array
deliveryType:
description: Human-readable label that categorizes the restore job to create.
type: string
deliveryUrl:
description: 'One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download. MongoDB Cloud returns this parameter when `"deliveryType" : "download"`.'
items:
description: One Uniform Resource Locator that points to the compressed snapshot files for manual download.
type: string
readOnly: true
type: array
desiredTimestamp:
$ref: "#/components/schemas/ApiBSONTimestamp"
expired:
description: Flag that indicates whether the restore job expired.
readOnly: true
type: boolean
expiresAt:
description: Date and time when the restore job expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
failed:
description: Flag that indicates whether the restore job failed.
readOnly: true
type: boolean
finishedAt:
description: Date and time when the restore job completed. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
oplogInc:
description: 'Oplog operation number from which you want to restore this snapshot. This number represents the second part of an Oplog timestamp. The resource returns this parameter when `"deliveryType" : "pointInTime"` and `oplogTs` exceeds `0`.'
example: 1
format: int32
minimum: 1
type: integer
oplogTs:
description: 'Date and time from which you want to restore this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. This number represents the first part of an Oplog timestamp. The resource returns this parameter when `"deliveryType" : "pointInTime"` and `oplogTs` exceeds `0`.'
format: int32
minimum: 1199145600
type: integer
pointInTimeUTCSeconds:
description: 'Date and time from which MongoDB Cloud restored this snapshot. This parameter expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch. The resource returns this parameter when `"deliveryType" : "pointInTime"` and `pointInTimeUTCSeconds` exceeds `0`.'
format: int32
minimum: 1199145600
type: integer
privateDownloadDeliveryUrls:
description: 'One or more Uniform Resource Locators (URLs) that point to the compressed snapshot files for manual download and the corresponding private endpoint(s). MongoDB Cloud returns this parameter when `"deliveryType" : "download"` and the download can be performed privately.'
items:
$ref: "#/components/schemas/ApiPrivateDownloadDeliveryUrl"
readOnly: true
type: array
snapshotId:
description: Unique 24-hexadecimal character string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
targetClusterName:
description: Human-readable label that identifies the target cluster to which the restore job restores the snapshot. The resource returns this parameter when `"deliveryType":` `"automated"`. Required for `automated` and `pointInTime` restore types.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
targetGroupId:
description: Unique 24-hexadecimal digit string that identifies the target project for the specified `targetClusterName`. Required for `automated` and `pointInTime` restore types.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
timestamp:
description: Date and time when MongoDB Cloud took the snapshot associated with `snapshotId`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
required:
- deliveryType
type: object
DiskBackupSnapshotSchedule20240805:
properties:
autoCopySettingsEnabled:
description: Flag that indicates whether the copy settings are automatically managed by MongoDB Cloud and sync to the cluster topology.
type: boolean
autoExportEnabled:
description: Flag that indicates whether MongoDB Cloud automatically exports Cloud Backup Snapshots to the Export Bucket.
type: boolean
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster with the Snapshot you want to return.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster with the Snapshot you want to return.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
copyPolicyItemsEnabled:
description: Flag that indicates whether copy settings use `copyPolicyItems` instead of `frequencies`. When true, requests must supply `copyPolicyItems` and responses return `copyPolicyItems` only. When false or omitted, requests must supply `frequencies` and responses return `frequencies` only.
type: boolean
copySettings:
description: List that contains a document for each copy setting item in the desired backup policy.
items:
$ref: "#/components/schemas/DiskBackupCopySetting20240805"
type: array
deleteCopiedBackups:
description: List that contains a document for each deleted copy setting whose backup copies you want to delete.
items:
$ref: "#/components/schemas/DeleteCopiedBackups20240805"
type: array
writeOnly: true
deleteCopySnapshots:
description: Flag that indicates whether to delete Snapshot copies that MongoDB Cloud took previously when their associated `copyPolicyItems` are removed from a `copySetting`. This option requires `copyPolicyItemsEnabled` to be true.
type: boolean
writeOnly: true
deleteSnapshots:
description: Flag that indicates whether to delete Snapshots that MongoDB Cloud took previously when deleting the associated backup policy.
type: boolean
writeOnly: true
export:
$ref: "#/components/schemas/AutoExportPolicy"
extraRetentionSettings:
description: List that contains a document for each extra retention setting item in the desired backup policy.
items:
$ref: "#/components/schemas/ExtraRetentionSetting"
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
nextSnapshot:
description: Date and time when MongoDB Cloud takes the next Snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
policies:
description: Rules set for this backup schedule.
items:
$ref: "#/components/schemas/AdvancedDiskBackupSnapshotSchedulePolicy"
maxItems: 1
type: array
referenceHourOfDay:
description: Hour of day in Coordinated Universal Time (UTC) that represents when MongoDB Cloud takes the Snapshot.
format: int32
type: integer
referenceMinuteOfHour:
description: Minute of the `referenceHourOfDay` that represents when MongoDB Cloud takes the Snapshot.
format: int32
type: integer
restoreWindowDays:
description: Number of previous days that you can restore back to with Continuous Cloud Backup accuracy. You must specify a positive, non-zero integer. This parameter applies to continuous Cloud Backups only.
format: int32
type: integer
updateCopySnapshots:
description: Flag that indicates whether to apply the retention changes for updated copy policy items to Snapshot copies that MongoDB Cloud took previously.
type: boolean
writeOnly: true
updateSnapshots:
description: Flag that indicates whether to apply the retention changes in the updated backup policy to Snapshots that MongoDB Cloud took previously.
type: boolean
writeOnly: true
useOrgAndGroupNamesInExportPrefix:
description: Flag that indicates whether to use organization and project names instead of organization and project UUIDs in the path to the metadata files that MongoDB Cloud uploads to your Export Bucket.
type: boolean
required:
- policies
type: object
DiskGBAutoScaling:
description: Setting that enables disk auto-scaling.
properties:
enabled:
description: Flag that indicates whether this cluster enables disk auto-scaling. The maximum memory allowed for the selected cluster tier and the oplog size can limit storage auto-scaling.
type: boolean
type: object
Document:
type: object
DropIndexSuggestionsIndex:
properties:
accessCount:
description: Usage count (since last restart) of index.
format: int64
type: integer
collation:
additionalProperties: true
description: Collation this index was built with. An index only serves a query that runs with the same collation. Absent when the index uses the default (simple) collation.
type: object
index:
description: List that contains documents that specify a key in the index and its sort order.
items:
description: One index key paired with its sort order. A value of `1` indicates an ascending sort order. A value of `-1` indicates a descending sort order. Keys in indexes with multiple keys appear in the same order that they appear in the index.
type: object
type: array
name:
description: Name of index.
type: string
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
type: string
shards:
description: List that contains strings that specifies the shards where the index is found.
items:
description: Shard name.
type: string
type: array
since:
description: Date of most recent usage of index. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
sizeBytes:
description: Size of index.
format: int64
type: integer
type: object
DropIndexSuggestionsResponse:
description: Response that contains Performance Advisor drop index suggestions.
properties:
hiddenIndexes:
description: List that contains the documents with information about the hidden indexes that the Performance Advisor suggests to remove.
items:
$ref: "#/components/schemas/DropIndexSuggestionsIndex"
readOnly: true
type: array
message:
description: Explanation of Performance Advisor availability limitations on the current tier.
readOnly: true
type: string
redundantIndexes:
description: List that contains the documents with information about the redundant indexes that the Performance Advisor suggests to remove.
items:
$ref: "#/components/schemas/DropIndexSuggestionsIndex"
readOnly: true
type: array
scale:
$ref: "#/components/schemas/ApiClusterScale"
unusedIndexes:
description: List that contains the documents with information about the unused indexes that the Performance Advisor suggests to remove.
items:
$ref: "#/components/schemas/DropIndexSuggestionsIndex"
readOnly: true
type: array
type: object
EARPrivateEndpoint:
description: Encryption At Rest Private Endpoint.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider for the Encryption At Rest private endpoint.
readOnly: true
type: string
errorMessage:
description: Error message for failures associated with the Encryption At Rest private endpoint.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
regionName:
description: Cloud provider region in which the Encryption At Rest private endpoint is located.
type: string
status:
description: State of the Encryption At Rest private endpoint.
readOnly: true
type: string
privateEndpointConnectionName:
description: Resource Id of the Aws Private Endpoint.
readOnly: true
type: string
title: Encryption At Rest Private Endpoint
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- privateEndpointConnectionName
AZURE:
properties:
- privateEndpointConnectionName
EncryptionAtRest:
properties:
awsKms:
$ref: "#/components/schemas/AWSKMSConfiguration"
azureKeyVault:
$ref: "#/components/schemas/AzureKeyVault"
enabledForSearchNodes:
description: Flag that indicates whether Encryption at Rest for Dedicated Search Nodes is enabled in the specified project.
type: boolean
googleCloudKms:
$ref: "#/components/schemas/GoogleCloudKMS"
type: object
EndpointService:
properties:
cloudProvider:
description: Cloud service provider that serves the requested endpoint service.
readOnly: true
type: string
errorMessage:
description: Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
regionName:
description: Cloud provider region that manages this Private Endpoint Service.
readOnly: true
type: string
status:
description: State of the Private Endpoint Service connection when MongoDB Cloud received this request.
readOnly: true
type: string
endpointServiceName:
description: Unique string that identifies the Amazon Web Services (AWS) PrivateLink endpoint service. MongoDB Cloud returns null while it creates the endpoint service.
pattern: ^com\.amazonaws\.vpce\.[a-z-0-9]+\.vpce-svc-[0-9a-f]{17}
readOnly: true
type: string
interfaceEndpoints:
description: List of strings that identify private endpoint interfaces applied to the specified project.
items:
description: Unique 24-hexadecimal digit string that identifies the interface endpoint.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
readOnly: true
type: array
supportedRemoteRegions:
description: List of regions that the endpoint service supports. Native cross region support is implemented for AWS only.
items:
description: AWS region name
type: string
maxItems: 35
type: array
privateEndpoints:
description: List of private endpoints assigned to this Azure Private Link Service.
items:
description: Root-relative path to one private endpoint assigned to this Azure Private Link Service.
pattern: ^\/subscriptions\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\/resource[gG]roups\/([-\w._()]+)\/providers\/Microsoft\.Network\/privateEndpoints\/([-\w._()]+)
readOnly: true
type: string
readOnly: true
type: array
privateLinkServiceName:
description: Unique string that identifies the Azure Private Link Service that MongoDB Cloud manages.
pattern: ^pls_[0-9a-f]{24}$
readOnly: true
type: string
privateLinkServiceResourceId:
description: Root-relative path that identifies of the Azure Private Link Service that MongoDB Cloud manages. Use this value to create a private endpoint connection to an Azure VNet.
example: /subscriptions/ae349d51-d12b-ee3d-2a27-7d53f6479cf0/resourcegroups/KObGGz/providers/Microsoft.Network/privateLinkServices/pls_d1820713f8153388d533e9de
readOnly: true
type: string
endpointGroupNames:
description: List of Google Cloud network endpoint groups that corresponds to the Private Service Connect endpoint service. If this endpoint service uses PSC port-mapping, this field will only contain a list of one endpoint.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
items:
description: One Google Cloud network endpoint group that corresponds to the Private Service Connect endpoint service.
type: string
type: array
portMappingEnabled:
description: Flag that indicates whether this endpoint service uses PSC port-mapping.
type: boolean
serviceAttachmentNames:
description: List of Uniform Resource Locators (URLs) that identifies endpoints that MongoDB Cloud can use to access one Google Cloud Service across a Google Cloud Virtual Private Connection (VPC) network. If this endpoint service uses PSC port-mapping, this field will only contain a list of one service attachment.
externalDocs:
description: Google Cloud Private Service Connect Service Attachments
url: https://cloud.google.com/vpc/docs/private-service-connect#service-attachments
items:
description: Uniform Resource Locator (URL) that identifies one endpoint that MongoDB Cloud can use to access one Google Cloud Service across a Google Cloud Virtual Private Connection (VPC) network.
pattern: https:\/\/([a-z0-9\.]+)+\.[a-z]{2,}(\/[a-z0-9\-]+)+\/projects\/p-[a-z0-9]+\/regions\/[a-z\-0-9]+\/serviceAttachments\/[a-z0-9\-]+
type: string
type: array
required:
- cloudProvider
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- endpointServiceName
- interfaceEndpoints
- supportedRemoteRegions
required:
- interfaceEndpoints
AZURE:
properties:
- privateEndpoints
- privateLinkServiceName
- privateLinkServiceResourceId
GCP:
properties:
- endpointGroupNames
- portMappingEnabled
- serviceAttachmentNames
EnvelopedDropIndexSuggestionsResponse:
description: Response envelope that wraps the response payload in `content` and includes response metadata such as `status` and `locations`.
properties:
content:
$ref: "#/components/schemas/DropIndexSuggestionsResponse"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
locations:
description: URLs of resources created by this request.
items:
type: string
maxItems: 100
readOnly: true
type: array
status:
description: HTTP status code returned with this response.
format: int32
maximum: 599
minimum: 100
readOnly: true
type: integer
required:
- content
- status
type: object
EnvelopedPerformanceAdvisorResponse:
description: Response envelope that wraps the response payload in `content` and includes response metadata such as `status` and `locations`.
properties:
content:
$ref: "#/components/schemas/PerformanceAdvisorResponse"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
locations:
description: URLs of resources created by this request.
items:
type: string
maxItems: 100
readOnly: true
type: array
status:
description: HTTP status code returned with this response.
format: int32
maximum: 599
minimum: 100
readOnly: true
type: integer
required:
- content
- status
type: object
EnvelopedSchemaAdvisorResponse:
description: Response envelope that wraps the response payload in `content` and includes response metadata such as `status` and `locations`.
properties:
content:
$ref: "#/components/schemas/SchemaAdvisorResponse"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
locations:
description: URLs of resources created by this request.
items:
type: string
maxItems: 100
readOnly: true
type: array
status:
description: HTTP status code returned with this response.
format: int32
maximum: 599
minimum: 100
readOnly: true
type: integer
required:
- content
- status
type: object
EventSeverity:
description: Severity of the event.
type: string
EventTypeDetails:
description: A singular type of event.
properties:
alertable:
description: Whether or not this event type can be configured as an alert via the API.
readOnly: true
type: boolean
description:
description: Description of the event type.
readOnly: true
type: string
eventType:
description: Enum representation of the event type.
readOnly: true
type: string
title: Event type details
type: object
EventTypeForNdsGroup:
type: string
EventTypeForOrg:
type: string
EventViewForNdsGroup:
type: object
properties:
apiKeyId:
description: Unique 24-hexadecimal digit string that identifies the API Key that triggered the event. If this resource returns this parameter, it doesn't return the `userId` parameter.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Create Programmatic API Key
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
created:
description: Date and time when this event occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
delegatePrincipal:
$ref: "#/components/schemas/Principal"
eventTypeName:
description: Unique identifier of event type.
example: RESOURCE_POLICY_VIOLATED
title: Atlas Resource Policy Audit Types
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The `eventId` identifies the specific event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
isGlobalAdmin:
description: Flag that indicates whether a MongoDB employee triggered the specified event.
readOnly: true
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization to which these events apply.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
publicKey:
description: Public part of the API key that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.
externalDocs:
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
readOnly: true
type: string
raw:
$ref: "#/components/schemas/raw"
remoteAddress:
description: IPv4 or IPv6 address from which the user triggered this event.
example: 216.172.40.186
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
userId:
description: Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the `apiKeyId` parameter.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
username:
description: Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the `publicApiKey` parameter.
format: email
readOnly: true
type: string
alertId:
description: Unique 24-hexadecimal digit string that identifies the alert associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
alertConfigId:
description: Unique 24-hexadecimal digit string that identifies the alert configuration associated with the `alertId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
targetPublicKey:
description: Public part of the API key that this event targets.
example: zmmrboas
readOnly: true
type: string
whitelistEntry:
description: Entry in the list of source host addresses that the API key accepts and this event targets.
example: 0.0.0.0
readOnly: true
type: string
invoiceId:
description: Unique 24-hexadecimal digit string that identifies of the invoice associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
paymentId:
description: Unique 24-hexadecimal digit string that identifies the invoice payment associated with this event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
shardName:
description: Human-readable label of the shard associated with the event.
example: event-sh-01
readOnly: true
type: string
collection:
description: Human-readable label of the collection on which the event occurred. The resource returns this parameter when the `eventTypeName` includes `DATA_EXPLORER`.
example: test_collection
readOnly: true
type: string
database:
description: 'Human-readable label of the database on which this incident occurred. The resource returns this parameter when `"eventTypeName" : "DATA_EXPLORER"` or `"eventTypeName" : "DATA_EXPLORER_CRUD"`.'
example: test_db
readOnly: true
type: string
opType:
description: 'Action that the database attempted to execute when the event triggered. The response returns this parameter when `eventTypeName" : "DATA_EXPLORER"`.'
example: insertDocument
readOnly: true
type: string
sessionId:
description: Unique 24-hexadecimal digit string that identifies the Data Explorer session associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
deskLocation:
description: Desk location of MongoDB employee associated with the event.
readOnly: true
type: string
employeeIdentifier:
description: Identifier of MongoDB employee associated with the event.
readOnly: true
type: string
port:
description: IANA port on which the MongoDB process listens for requests.
example: 27017
format: int32
readOnly: true
type: integer
replicaSetName:
description: Human-readable label of the replica set associated with the event.
example: event-replica-set
readOnly: true
type: string
currentValue:
$ref: "#/components/schemas/NumberMetricValue"
metricName:
description: Human-readable label of the metric associated with the `alertId`. This field may change type of `currentValue` field.
readOnly: true
type: string
dbUserUsername:
description: The username of the MongoDB User that was created, deleted, or edited.
example: user1
readOnly: true
type: string
endpointId:
description: Unique 24-hexadecimal digit string that identifies the endpoint associated with this event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
providerEndpointId:
description: Unique identification string that the cloud provider uses to identify the private endpoint.
example: vpce-0d6c248dedef65a25
readOnly: true
type: string
hostname:
description: Fully qualified domain name (FQDN) of the host associated with the event.
example: mongodb-host-1.example.com
readOnly: true
type: string
teamId:
description: Unique 24-hexadecimal digit string that identifies the organization team associated with this event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
targetUsername:
description: 'Email address for the console user that this event targets. The resource returns this parameter when `"eventTypeName" : "USER"`.'
example: test.user@mongodb.com
format: email
readOnly: true
type: string
resourceId:
description: Unique 24-hexadecimal digit string that identifies the resource associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resourceType:
description: Unique identifier of resource type.
example: cluster
type: string
instanceName:
description: Name of the stream processing workspace associated with the event.
example: foobar
readOnly: true
type: string
fromTier:
description: Tier the stream processor scaled from.
example: SP10
readOnly: true
type: string
processorErrorMsg:
description: Error message linked to the stream processor associated with the event.
example: invalid auth
readOnly: true
type: string
processorName:
description: Name of the stream processor associated with the event.
example: foobar
readOnly: true
type: string
processorState:
description: State of the stream processor associated with the event.
example: FAILED
readOnly: true
type: string
reason:
description: Reason for the autoscale event.
example: Out of memory
readOnly: true
type: string
region:
description: Cloud provider region in which the stream processor is running.
example: US_EAST_1
readOnly: true
type: string
toTier:
description: Tier the stream processor scaled to.
example: SP30
readOnly: true
type: string
resourcePolicyId:
description: Unique 24-hexadecimal character string that identifies the resource policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
violatedPolicies:
description: String representation of the violated resource policy ids.
items:
type: string
type: array
violationAction:
description: Resource policy action taken by the user and evaluated against the currently active policies.
readOnly: true
type: string
EventViewForOrg:
type: object
properties:
apiKeyId:
description: Unique 24-hexadecimal digit string that identifies the API Key that triggered the event. If this resource returns this parameter, it doesn't return the `userId` parameter.
example: 32b6e34b3d91647abb20e7b8
externalDocs:
description: Create Programmatic API Key
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
created:
description: Date and time when this event occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
delegatePrincipal:
$ref: "#/components/schemas/Principal"
eventTypeName:
description: Unique identifier of event type.
example: RESOURCE_POLICY_CREATED
title: Atlas Resource Policy Audit Types
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project in which the event occurred. The `eventId` identifies the specific event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
isGlobalAdmin:
description: Flag that indicates whether a MongoDB employee triggered the specified event.
readOnly: true
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization to which these events apply.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
publicKey:
description: Public part of the API key that triggered the event. If this resource returns this parameter, it doesn't return the **username** parameter.
externalDocs:
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
readOnly: true
type: string
raw:
$ref: "#/components/schemas/raw"
remoteAddress:
description: IPv4 or IPv6 address from which the user triggered this event.
example: 216.172.40.186
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
userId:
description: Unique 24-hexadecimal digit string that identifies the console user who triggered the event. If this resource returns this parameter, it doesn't return the `apiKeyId` parameter.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
username:
description: Email address for the user who triggered this event. If this resource returns this parameter, it doesn't return the `publicApiKey` parameter.
format: email
readOnly: true
type: string
alertId:
description: Unique 24-hexadecimal digit string that identifies the alert associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
alertConfigId:
description: Unique 24-hexadecimal digit string that identifies the alert configuration associated with the `alertId`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
targetPublicKey:
description: Public part of the API key that this event targets.
example: zmmrboas
readOnly: true
type: string
whitelistEntry:
description: Entry in the list of source host addresses that the API key accepts and this event targets.
example: 0.0.0.0
readOnly: true
type: string
invoiceId:
description: Unique 24-hexadecimal digit string that identifies of the invoice associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
paymentId:
description: Unique 24-hexadecimal digit string that identifies the invoice payment associated with this event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
dbUserUsername:
description: The username of the MongoDB User that was created, deleted, or edited.
example: user1
readOnly: true
type: string
teamId:
description: Unique 24-hexadecimal digit string that identifies the organization team associated with this event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
targetUsername:
description: 'Email address for the console user that this event targets. The resource returns this parameter when `"eventTypeName" : "USER"`.'
example: test.user@mongodb.com
format: email
readOnly: true
type: string
resourceId:
description: Unique 24-hexadecimal digit string that identifies the resource associated with the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resourceType:
description: Unique identifier of resource type.
example: cluster
type: string
resourcePolicyId:
description: Unique 24-hexadecimal character string that identifies the resource policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
ExportStatus:
description: State of the Export Job.
properties:
exportedCollections:
description: Count of collections whose documents were exported to the Export Bucket.
format: int32
readOnly: true
type: integer
totalCollections:
description: Total count of collections whose documents will be exported to the Export Bucket.
format: int32
readOnly: true
type: integer
type: object
ExtraRetentionSetting:
description: Extra retention setting item in the desired backup policy.
properties:
frequencyType:
description: The frequency type for the extra retention settings for the cluster.
type: string
retentionDays:
description: The number of extra retention days for the cluster.
format: int32
type: integer
type: object
FTSMetric:
description: Measurement of one Atlas Search status when MongoDB Atlas received this request.
properties:
metricName:
description: Human-readable label that identifies this Atlas Search hardware, status, or index measurement.
readOnly: true
type: string
units:
description: Unit of measurement that applies to this Atlas Search metric.
readOnly: true
type: string
readOnly: true
required:
- metricName
- units
type: object
FederatedUser:
description: MongoDB Cloud user linked to this federated authentication.
properties:
emailAddress:
description: Email address of the MongoDB Cloud user linked to the federated organization.
format: email
type: string
federationSettingsId:
description: Unique 24-hexadecimal digit string that identifies the federation to which this MongoDB Cloud user belongs.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
firstName:
description: First or given name that belongs to the MongoDB Cloud user.
type: string
lastName:
description: Last name, family name, or surname that belongs to the MongoDB Cloud user.
type: string
userId:
description: Unique 24-hexadecimal digit string that identifies this user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
required:
- emailAddress
- federationSettingsId
- firstName
- lastName
title: Federated User
type: object
FederationIdentityProvider:
properties:
associatedOrgs:
description: List that contains the connected organization configurations associated with the identity provider.
items:
$ref: "#/components/schemas/ConnectedOrgConfig"
type: array
uniqueItems: true
createdAt:
description: Date that the identity provider was created on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
description:
description: The description of the identity provider.
type: string
displayName:
description: Human-readable label that identifies the identity provider.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the identity provider.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
idpType:
description: String enum that indicates the type of the identity provider. Default is WORKFORCE.
type: string
issuerUri:
description: Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.
type: string
oktaIdpId:
description: Legacy 20-hexadecimal digit string that identifies the identity provider.
pattern: ^([a-f0-9]{20})$
type: string
protocol:
description: String enum that indicates the protocol of the identity provider. Either SAML or OIDC.
type: string
updatedAt:
description: Date that the identity provider was last updated on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
acsUrl:
description: URL that points to where to send the SAML response.
type: string
associatedDomains:
description: List that contains the domains associated with the identity provider.
items:
type: string
type: array
uniqueItems: true
audienceUri:
description: Unique string that identifies the intended audience of the SAML assertion.
type: string
pemFileInfo:
$ref: "#/components/schemas/PemFileInfo"
requestBinding:
description: SAML Authentication Request Protocol HTTP method binding (POST or REDIRECT) that Federated Authentication uses to send the authentication request.
type: string
responseSignatureAlgorithm:
description: Signature algorithm that Federated Authentication uses to encrypt the identity provider signature.
type: string
slug:
description: Custom SSO URL for the identity provider.
type: string
ssoDebugEnabled:
description: Flag that indicates whether the identity provider has SSO debug enabled.
type: boolean
ssoUrl:
description: URL that points to the receiver of the SAML authentication request.
type: string
status:
description: String enum that indicates whether the identity provider is active.
type: string
audience:
description: Identifier of the intended recipient of the token.
type: string
authorizationType:
description: Indicates whether authorization is granted based on group membership or user ID.
type: string
clientId:
description: Client identifier that is assigned to an application by the Identity Provider.
type: string
groupsClaim:
description: Identifier of the claim which contains IdP Group IDs in the token.
type: string
requestedScopes:
description: Scopes that MongoDB applications will request from the authorization endpoint.
items:
type: string
type: array
userClaim:
description: Identifier of the claim which contains the user ID in the token.
type: string
required:
- id
- oktaIdpId
type: object
FederationIdentityProviderUpdate:
properties:
description:
description: The description of the identity provider.
type: string
displayName:
description: Human-readable label that identifies the identity provider.
maxLength: 50
minLength: 1
type: string
idpType:
description: String enum that indicates the type of the identity provider. Default is WORKFORCE.
type: string
issuerUri:
description: Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.
example: urn:idp:default
type: string
protocol:
description: String enum that indicates the protocol of the identity provider. Either SAML or OIDC.
type: string
associatedDomains:
description: List that contains the domains associated with the identity provider.
items:
type: string
type: array
uniqueItems: true
pemFileInfo:
$ref: "#/components/schemas/PemFileInfoUpdate"
requestBinding:
description: SAML Authentication Request Protocol HTTP method binding (POST or REDIRECT) that Federated Authentication uses to send the authentication request.
type: string
responseSignatureAlgorithm:
description: Signature algorithm that Federated Authentication uses to encrypt the identity provider signature.
type: string
slug:
description: Custom SSO URL for the identity provider.
type: string
ssoDebugEnabled:
description: Flag that indicates whether the identity provider has SSO debug enabled.
type: boolean
ssoUrl:
description: URL that points to the receiver of the SAML authentication request.
example: https://example.com
type: string
status:
description: String enum that indicates whether the identity provider is active.
type: string
audience:
description: Identifier of the intended recipient of the token.
type: string
authorizationType:
description: Indicates whether authorization is granted based on group membership or user ID.
type: string
clientId:
description: Client identifier that is assigned to an application by the Identity Provider.
type: string
groupsClaim:
description: Identifier of the claim which contains IdP Group IDs in the token.
type: string
requestedScopes:
description: Scopes that MongoDB applications will request from the authorization endpoint.
items:
type: string
type: array
userClaim:
description: Identifier of the claim which contains the user ID in the token.
type: string
type: object
FederationOidcIdentityProvider:
properties:
associatedOrgs:
description: List that contains the connected organization configurations associated with the identity provider.
items:
$ref: "#/components/schemas/ConnectedOrgConfig"
type: array
uniqueItems: true
audience:
description: Identifier of the intended recipient of the token.
type: string
authorizationType:
description: Indicates whether authorization is granted based on group membership or user ID.
type: string
createdAt:
description: Date that the identity provider was created on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
description:
description: The description of the identity provider.
type: string
displayName:
description: Human-readable label that identifies the identity provider.
type: string
groupsClaim:
description: Identifier of the claim which contains IdP Group IDs in the token.
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the identity provider.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
idpType:
description: String enum that indicates the type of the identity provider. Default is WORKFORCE.
type: string
issuerUri:
description: Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.
type: string
oktaIdpId:
description: Legacy 20-hexadecimal digit string that identifies the identity provider.
pattern: ^([a-f0-9]{20})$
type: string
protocol:
description: String enum that indicates the protocol of the identity provider. Either SAML or OIDC.
type: string
updatedAt:
description: Date that the identity provider was last updated on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
userClaim:
description: Identifier of the claim which contains the user ID in the token.
type: string
associatedDomains:
description: List that contains the domains associated with the identity provider.
items:
type: string
type: array
uniqueItems: true
clientId:
description: Client identifier that is assigned to an application by the Identity Provider.
type: string
requestedScopes:
description: Scopes that MongoDB applications will request from the authorization endpoint.
items:
type: string
type: array
required:
- id
- oktaIdpId
type: object
FederationOidcIdentityProviderUpdate:
properties:
audience:
description: Identifier of the intended recipient of the token.
type: string
authorizationType:
description: Indicates whether authorization is granted based on group membership or user ID.
type: string
description:
description: The description of the identity provider.
type: string
displayName:
description: Human-readable label that identifies the identity provider.
maxLength: 50
minLength: 1
type: string
groupsClaim:
description: Identifier of the claim which contains IdP Group IDs in the token.
type: string
idpType:
description: String enum that indicates the type of the identity provider. Default is WORKFORCE.
type: string
issuerUri:
description: Unique string that identifies the issuer of the SAML Assertion or OIDC metadata/discovery document URL.
example: urn:idp:default
type: string
protocol:
description: String enum that indicates the protocol of the identity provider. Either SAML or OIDC.
type: string
userClaim:
description: Identifier of the claim which contains the user ID in the token.
type: string
associatedDomains:
description: List that contains the domains associated with the identity provider.
items:
type: string
type: array
uniqueItems: true
clientId:
description: Client identifier that is assigned to an application by the Identity Provider.
type: string
requestedScopes:
description: Scopes that MongoDB applications will request from the authorization endpoint.
items:
type: string
type: array
type: object
FieldViolation:
properties:
description:
description: A description of why the request element is bad.
type: string
field:
description: A path that leads to a field in the request body.
type: string
required:
- description
- field
type: object
Fields:
externalDocs:
description: Atlas Search Field Mappings
url: https://dochub.mongodb.org/core/field-mapping-definition-fts#define-field-mappings
type: object
FlexBackupRestoreJob20241113:
description: Details for one restore job of a flex cluster.
properties:
deliveryType:
description: Means by which this resource returns the snapshot to the requesting MongoDB Cloud user.
readOnly: true
type: string
expirationDate:
description: Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
instanceName:
description: Human-readable label that identifies the source instance.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
projectId:
description: Unique 24-hexadecimal digit string that identifies the project from which the restore job originated.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
restoreFinishedDate:
description: Date and time when MongoDB Cloud completed writing this snapshot. MongoDB Cloud changes the status of the restore job to `CLOSED`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
restoreScheduledDate:
description: Date and time when MongoDB Cloud will restore this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
snapshotFinishedDate:
description: Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
snapshotId:
description: Unique 24-hexadecimal digit string that identifies the snapshot to restore.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
snapshotUrl:
description: 'Internet address from which you can download the compressed snapshot files. The resource returns this parameter when `"deliveryType" : "DOWNLOAD"`.'
readOnly: true
type: string
status:
description: Phase of the restore workflow for this job at the time this resource made this request.
readOnly: true
type: string
targetDeploymentItemName:
description: Human-readable label that identifies the instance or cluster on the target project to which you want to restore the snapshot. You can restore the snapshot to another flex or dedicated cluster tier.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
readOnly: true
type: string
targetProjectId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the instance or cluster to which you want to restore the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
title: Flex Backup Restore Job
type: object
FlexBackupRestoreJobCreate20241113:
description: Details to create one restore job of a flex cluster.
properties:
deliveryType:
description: Means by which this resource returns the snapshot to the requesting MongoDB Cloud user.
readOnly: true
type: string
expirationDate:
description: Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the restore job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
instanceName:
description: Human-readable label that identifies the source instance.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
projectId:
description: Unique 24-hexadecimal digit string that identifies the project from which the restore job originated.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
restoreFinishedDate:
description: Date and time when MongoDB Cloud completed writing this snapshot. MongoDB Cloud changes the status of the restore job to `CLOSED`. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
restoreScheduledDate:
description: Date and time when MongoDB Cloud will restore this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
snapshotFinishedDate:
description: Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
snapshotId:
description: Unique 24-hexadecimal digit string that identifies the snapshot to restore.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
snapshotUrl:
description: 'Internet address from which you can download the compressed snapshot files. The resource returns this parameter when `"deliveryType" : "DOWNLOAD"`.'
readOnly: true
type: string
status:
description: Phase of the restore workflow for this job at the time this resource made this request.
readOnly: true
type: string
targetDeploymentItemName:
description: Human-readable label that identifies the instance or cluster on the target project to which you want to restore the snapshot. You can restore the snapshot to another flex cluster or dedicated cluster tier.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
writeOnly: true
targetProjectId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the instance or cluster to which you want to restore the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
required:
- snapshotId
- targetDeploymentItemName
title: Create Flex Backup Restore Job
type: object
FlexBackupSettings20241113:
description: Flex backup configuration.
properties:
enabled:
default: true
description: Flag that indicates whether backups are performed for this flex cluster. Backup uses flex cluster backups.
externalDocs:
description: Flex Cluster Backups
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/flex-cluster-backup/
readOnly: true
type: boolean
readOnly: true
title: Flex Backup Configuration
type: object
FlexBackupSnapshot20241113:
description: Details for one snapshot of a flex cluster.
properties:
expiration:
description: Date and time when the download link no longer works. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
finishTime:
description: Date and time when MongoDB Cloud completed writing this snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the snapshot.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBVersion:
description: MongoDB host version that the snapshot runs.
readOnly: true
type: string
scheduledTime:
description: Date and time when MongoDB Cloud will take the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
startTime:
description: Date and time when MongoDB Cloud began taking the snapshot. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
status:
description: Phase of the workflow for this snapshot at the time this resource made this request.
readOnly: true
type: string
title: Flex Backup Snapshot
type: object
FlexBackupSnapshotDownloadCreate20241113:
description: Details for one backup snapshot download of a flex cluster.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
snapshotId:
description: Unique 24-hexadecimal digit string that identifies the snapshot to download.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
writeOnly: true
required:
- snapshotId
title: Flex Backup Snapshot Download Create
type: object
FlexClusterDescription20241113:
description: Group of settings that configure a MongoDB Flex cluster.
properties:
backupSettings:
$ref: "#/components/schemas/FlexBackupSettings20241113"
clusterType:
default: REPLICASET
description: Flex cluster topology.
readOnly: true
type: string
connectionStrings:
$ref: "#/components/schemas/FlexConnectionStrings20241113"
createDate:
description: Date and time when MongoDB Cloud created this instance. This parameter expresses its value in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your tenant cluster will be upgraded to Atlas INFINITE or CORE."
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the instance.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBVersion:
description: Version of MongoDB that the instance runs.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
name:
description: Human-readable label that identifies the instance.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
providerSettings:
$ref: "#/components/schemas/FlexProviderSettings20241113"
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the instance.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
versionReleaseSystem:
default: LTS
description: Method by which the cluster maintains the MongoDB versions.
readOnly: true
type: string
required:
- providerSettings
title: Flex Cluster Description
type: object
FlexClusterDescriptionCreate20241113:
description: Settings that you can specify when you create a flex cluster.
properties:
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your tenant cluster will be upgraded to Atlas INFINITE or CORE."
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the instance.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
writeOnly: true
providerSettings:
$ref: "#/components/schemas/FlexProviderSettingsCreate20241113"
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the instance.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
required:
- name
- providerSettings
title: Flex Cluster Description Create
type: object
FlexClusterDescriptionUpdate20241113:
description: Settings that you can specify when you update a flex cluster.
properties:
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your tenant cluster will be upgraded to Atlas INFINITE or CORE."
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the instance.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
title: Flex Cluster Description Update
type: object
FlexConnectionStrings20241113:
description: Collection of Uniform Resource Locators that point to the MongoDB database.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
properties:
standard:
description: Public connection string that you can use to connect to this cluster. This connection string uses the `mongodb://` protocol.
externalDocs:
description: Connection String URI Format
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
standardSrv:
description: Public connection string that you can use to connect to this flex cluster. This connection string uses the `mongodb+srv://` protocol.
externalDocs:
description: Connection String URI Format
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
readOnly: true
title: Flex Cluster Connection Strings
type: object
FlexProviderSettings20241113:
description: Group of cloud provider settings that configure the provisioned MongoDB flex cluster.
properties:
backingProviderName:
description: Cloud service provider on which MongoDB Cloud provisioned the flex cluster.
readOnly: true
type: string
diskSizeGB:
description: Storage capacity available to the flex cluster expressed in gigabytes.
format: double
readOnly: true
type: number
providerName:
default: FLEX
description: Human-readable label that identifies the provider type.
readOnly: true
type: string
regionName:
description: Human-readable label that identifies the geographic location of your MongoDB flex cluster. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
readOnly: true
type: string
readOnly: true
title: Cloud Service Provider Settings for a Flex Cluster
type: object
FlexProviderSettingsCreate20241113:
description: Group of cloud provider settings that configure the provisioned MongoDB flex cluster.
properties:
backingProviderName:
description: Cloud service provider on which MongoDB Cloud provisioned the flex cluster.
type: string
writeOnly: true
diskSizeGB:
description: Storage capacity available to the flex cluster expressed in gigabytes.
format: double
readOnly: true
type: number
providerName:
default: FLEX
description: Human-readable label that identifies the provider type.
readOnly: true
type: string
regionName:
description: Human-readable label that identifies the geographic location of your MongoDB flex cluster. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
type: string
writeOnly: true
required:
- backingProviderName
- regionName
title: Cloud Service Provider Settings for a Flex Cluster
type: object
writeOnly: true
FreeComputeAutoScalingRules:
description: Collection of settings that configures how a cluster might scale its cluster tier and whether the cluster can scale down.
properties:
maxInstanceSize:
description: Maximum instance size to which your cluster can automatically scale.
title: Tenant Instance Sizes
type: string
minInstanceSize:
description: Minimum instance size to which your cluster can automatically scale.
title: Tenant Instance Sizes
type: string
title: Tenant
type: object
GCPConsumerForwardingRule:
properties:
endpointName:
description: Human-readable label that identifies the Google Cloud consumer forwarding rule that you created.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
readOnly: true
type: string
ipAddress:
description: One Private Internet Protocol version 4 (IPv4) address to which this Google Cloud consumer forwarding rule resolves.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
status:
description: State of the MongoDB Cloud endpoint group when MongoDB Cloud received this request.
readOnly: true
type: string
type: object
Gateway:
description: Represents a service-specific gateway, such as the Atlas Gateway, with its IP addresses.
properties:
ips:
$ref: "#/components/schemas/GatewayIpAddresses"
name:
description: Name of the service that this gateway represents.
readOnly: true
type: string
title: Gateway
type: object
GatewayIpAddresses:
description: IP addresses for a specific gateway, organized by direction and cloud provider.
properties:
inbound:
$ref: "#/components/schemas/InboundControlPlaneCloudProviderIPAddresses"
outbound:
$ref: "#/components/schemas/OutboundControlPlaneCloudProviderIPAddresses"
readOnly: true
title: Gateway IP Addresses
type: object
GeoSharding20240805:
properties:
customZoneMapping:
additionalProperties:
description: |-
List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.
The 24-hexadecimal string corresponds to a `Replication Specifications` `zoneId` property.
This parameter returns an empty object if no custom zones exist.
Example: `{"US-VA": "6716c5a804f4ce77e899bf99", "DE": "6716c5a804f4ce77e899bf9a"}`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
description: |-
List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to a unique 24-hexadecimal string that identifies the custom zone.
The 24-hexadecimal string corresponds to a `Replication Specifications` `zoneId` property.
This parameter returns an empty object if no custom zones exist.
Example: `{"US-VA": "6716c5a804f4ce77e899bf99", "DE": "6716c5a804f4ce77e899bf9a"}`.
readOnly: true
type: object
managedNamespaces:
description: List that contains a namespace for a Global Cluster. MongoDB Cloud manages this cluster.
items:
$ref: "#/components/schemas/ManagedNamespaces"
readOnly: true
type: array
selfManagedSharding:
description: Boolean that controls which management mode the Global Cluster is operating under. If this parameter is true Self-Managed Sharding is enabled and users are in control of the zone sharding within the Global Cluster. If this parameter is false Atlas-Managed Sharding is enabled and Atlas is control of zone sharding within the Global Cluster.
readOnly: true
type: boolean
type: object
GoogleCloudKMS:
description: Details that define the configuration of Encryption at Rest using Google Cloud Key Management Service (KMS).
externalDocs:
description: Google Cloud Key Management Service
url: https://www.mongodb.com/docs/atlas/security-gcp-kms/
properties:
enabled:
description: Flag that indicates whether someone enabled encryption at rest for the specified project. To disable encryption at rest using customer key management and remove the configuration details, pass only this parameter with a value of `false`.
type: boolean
keyVersionResourceID:
description: Resource path that displays the key version resource ID for your Google Cloud KMS.
example: projects/my-project-common-0/locations/us-east4/keyRings/my-key-ring-0/cryptoKeys/my-key-0/cryptoKeyVersions/1
type: string
roleId:
description: Unique 24-hexadecimal digit string that identifies the Google Cloud Provider Access Role that MongoDB Cloud uses to access the Google Cloud KMS.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
serviceAccountKey:
description: JavaScript Object Notation (JSON) object that contains the Google Cloud Key Management Service (KMS). Format the JSON as a string and not as an object.
externalDocs:
description: Google Cloud Authentication
url: https://cloud.google.com/docs/authentication/getting-started
type: string
writeOnly: true
valid:
description: Flag that indicates whether the Google Cloud Key Management Service (KMS) encryption key can encrypt and decrypt data.
readOnly: true
type: boolean
type: object
Group:
properties:
clusterCount:
description: Quantity of MongoDB Cloud clusters deployed in this project.
format: int64
readOnly: true
type: integer
created:
description: Date and time when MongoDB Cloud created this project. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the project included in the MongoDB Cloud organization.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud organization to which the project belongs.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
regionUsageRestrictions:
default: COMMERCIAL_FEDRAMP_REGIONS_ONLY
description: |-
Applies to Atlas for Government only.
In Commercial Atlas, this field will be rejected in requests and missing in responses.
This field sets restrictions on available regions in the project.
`COMMERCIAL_FEDRAMP_REGIONS_ONLY`: Only allows deployments in FedRAMP Moderate regions.
`GOV_REGIONS_ONLY`: Only allows deployments in GovCloud regions.
externalDocs:
url: https://www.mongodb.com/docs/atlas/government/overview/supported-regions/#supported-cloud-providers-and-regions
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the project.
externalDocs:
description: Resource Tags
url: https://www.mongodb.com/docs/atlas/tags
items:
$ref: "#/components/schemas/ResourceTag"
type: array
withDefaultAlertsSettings:
default: true
description: Flag that indicates whether to create the project with default alert settings.
type: boolean
required:
- clusterCount
- created
- name
- orgId
type: object
GroupAlertsConfig:
type: object
properties:
created:
description: Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
enabled:
default: false
description: Flag that indicates whether someone enabled this alert configuration for the specified project.
type: boolean
eventTypeName:
$ref: "#/components/schemas/StreamsPrivateLinkEndpointEventTypeViewForNdsGroupAlertable"
description: Incident that triggered this alert.
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that owns this alert configuration.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this alert configuration.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
matchers:
description: List of rules that determine whether MongoDB Cloud checks an object for the alert configuration.
items:
$ref: "#/components/schemas/StreamsPrivateLinkEndpointMatcher"
maxItems: 100
type: array
notifications:
description: List that contains the targets that MongoDB Cloud sends notifications.
items:
$ref: "#/components/schemas/AlertsNotificationRootForGroup"
maxItems: 25
minItems: 1
type: array
severityOverride:
$ref: "#/components/schemas/EventSeverity"
updated:
description: Date and time when someone last updated this alert configuration. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
metricThreshold:
$ref: "#/components/schemas/StreamProcessorMetricThreshold"
threshold:
$ref: "#/components/schemas/StreamProcessorMetricThreshold"
GroupIPAddresses:
description: List of IP addresses in a project.
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
services:
$ref: "#/components/schemas/GroupService"
title: Group IP Address
type: object
GroupInvitation:
properties:
createdAt:
description: Date and time when MongoDB Cloud sent the invitation. This parameter expresses its value in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
expiresAt:
description: Date and time when MongoDB Cloud expires the invitation. This parameter expresses its value in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
groupName:
description: Human-readable label that identifies the project to which you invited the MongoDB Cloud user.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the invitation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
inviterUsername:
description: Email address of the MongoDB Cloud user who sent the invitation.
format: email
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
roles:
description: One or more organization or project level roles to assign to the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
username:
description: Email address of the MongoDB Cloud user invited to join the project.
format: email
readOnly: true
type: string
type: object
GroupInvitationRequest:
properties:
roles:
description: One or more project level roles to assign to the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
username:
description: Email address of the MongoDB Cloud user invited to the specified project.
format: email
type: string
type: object
GroupInvitationUpdateRequest:
properties:
roles:
description: One or more project-level roles to assign to the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
type: object
GroupMaintenanceWindow:
properties:
autoDeferOnceEnabled:
description: Flag that indicates whether MongoDB Cloud should defer all maintenance windows for one week after you enable them. This setting controls the same underlying auto-deferral feature as the `/maintenanceWindow/autoDefer` endpoint. Use either this field (to set a specific value) or that endpoint (to toggle the current value). For most use cases, this field in the PATCH request is preferred because it allows setting an explicit value rather than toggling.
type: boolean
dayOfWeek:
description: |-
One-based integer that represents the day of the week, in the project's configured time zone (see `timeZoneId`), that the maintenance window starts.
- `1`: Sunday.
- `2`: Monday.
- `3`: Tuesday.
- `4`: Wednesday.
- `5`: Thursday.
- `6`: Friday.
- `7`: Saturday.
format: int32
maximum: 7
minimum: 1
type: integer
effectiveWaveAssignment:
description: "Maintenance wave that Atlas uses when scheduling maintenance for this project. This read-only value can differ from `waveAssignment` in two scenarios: (1) when the organization's `effectiveWaveAssignmentMode` is `ENV_TAG_MAPPING`, the effective wave is derived from environment tags regardless of any explicit assignment; (2) when cross-organization maintenance sequencing is active and this project's organization is a linked non-paying organization, the effective wave reflects the paying organization's mode."
format: int32
maximum: 3
minimum: 1
readOnly: true
type: integer
hourOfDay:
description: Zero-based integer that represents the hour of the day, in the project's configured time zone (see `timeZoneId`), that the maintenance window starts according to a 24-hour clock. Use `0` for midnight and `12` for noon. If you haven't changed your project's time zone, this defaults to UTC.
format: int32
maximum: 23
minimum: 0
type: integer
numberOfDeferrals:
description: Number of times the current maintenance event for this project has been deferred.
format: int32
readOnly: true
type: integer
protectedHours:
$ref: "#/components/schemas/ProtectedHours"
startASAP:
description: Flag that indicates whether MongoDB Cloud starts the maintenance window immediately upon receiving this request. To start the maintenance window immediately for your project, MongoDB Cloud must have maintenance scheduled and you must set a maintenance window. This flag resets to `false` after MongoDB Cloud completes maintenance.
type: boolean
timeZoneId:
description: Identifier for the current time zone of the maintenance window. This can only be updated via the Project Settings UI.
readOnly: true
type: string
waveAssignment:
description: Maintenance wave explicitly assigned to this project. Always returned in GET responses when a value has been set, regardless of the organization's `effectiveWaveAssignmentMode`. When the mode is `ENV_TAG_MAPPING`, this stored assignment is preserved but not used for scheduling — the effective wave is derived from environment tags instead. Not editable when the mode is `ENV_TAG_MAPPING`. Switching back to `MANUAL` restores this value as the effective wave. Must be between 1 and 3, inclusive. Pass `null` to clear an explicit assignment.
format: int32
maximum: 3
minimum: 1
type: integer
type: object
GroupMcpConfigResponse:
properties:
clientId:
description: Unique identifier for the Service Account client associated with this MCP configuration. Use this Service Account to connect to the Atlas Remote MCP.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
readOnly: true
type: string
egressClientId:
description: Unique identifier for the egress Service Account client associated with this MCP configuration. This Service Account is managed by MongoDB Atlas.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
readOnly: true
type: string
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigId:
description: Unique identifier that identifies this MCP configuration.
example: b9254bc4-d6cc-4325-abf4-fb9d2a9de00a
pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
readOnly: true
type: string
mcpConfigName:
description: Human-readable name that identifies this MCP configuration.
type: string
roles:
description: List of project roles associated with this MCP configuration.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
maxItems: 100
type: array
x-xgen-array-semantic: set
type: object
GroupMcpConfigUpdateRequest:
properties:
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration. If provided, replaces the existing IP access list.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigName:
description: Updated human-readable name for this MCP configuration.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: List of project roles associated with this MCP configuration. If provided, replaces the existing list of roles.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
maxItems: 100
minItems: 1
type: array
x-xgen-array-semantic: set
type: object
GroupMigrationRequest:
properties:
destinationOrgId:
description: Unique 24-hexadecimal digit string that identifies the organization to move the specified project to.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
destinationOrgPrivateApiKey:
description: Unique string that identifies the private part of the API Key used to verify access to the destination organization. This parameter is required only when you authenticate with Programmatic API Keys.
example: 55c3bbb6-b4bb-0be1-e66d20841f3e
externalDocs:
description: Grant Programmatic Access to Atlas
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
type: string
destinationOrgPublicApiKey:
description: Unique string that identifies the public part of the API Key used to verify access to the destination organization. This parameter is required only when you authenticate with Programmatic API Keys.
example: zmmrboas
externalDocs:
description: Grant Programmatic Access to Atlas
url: https://dochub.mongodb.org/core/atlas-create-prog-api-key
maxLength: 8
minLength: 8
type: string
type: object
GroupRole:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to which this role belongs.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
groupRole:
description: Human-readable label that identifies the collection of privileges that MongoDB Cloud grants a specific API key, MongoDB Cloud user, or MongoDB Cloud team. These roles include project-level roles.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/#project-roles
type: string
type: object
GroupRoleAssignment:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to which these roles belong.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
groupRoles:
description: One or more project-level roles assigned to the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
type: object
GroupService:
description: List of IP addresses in a project categorized by services.
properties:
clusters:
description: IP addresses of clusters.
items:
$ref: "#/components/schemas/ClusterIPAddresses"
readOnly: true
type: array
readOnly: true
title: Group Service IP Addresses
type: object
GroupServiceAccount:
properties:
clientId:
description: The Client ID of the Service Account.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
type: string
createdAt:
description: The date that the Service Account was created on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
description:
description: Human readable description for the Service Account.
type: string
name:
description: Human-readable name for the Service Account.
type: string
roles:
description: A list of Project roles associated with the Service Account.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
secrets:
description: A list of secrets associated with the specified Service Account.
items:
$ref: "#/components/schemas/ServiceAccountSecret"
type: array
uniqueItems: true
systemManaged:
description: Indicates whether the Service Account is system managed.
readOnly: true
type: boolean
required:
- systemManaged
type: object
GroupServiceAccountRequest:
properties:
description:
description: Human readable description for the Service Account.
maxLength: 250
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
name:
description: Human-readable name for the Service Account. The name is modifiable and does not have to be unique.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: A list of project-level roles for the Service Account.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
minItems: 1
type: array
secretExpiresAfterHours:
description: The expiration time of the new Service Account secret, provided in hours. The minimum and maximum allowed expiration times are subject to change and are controlled by the organization's settings. Required unless `withoutInitialSecret` is true.
example: 8
exclusiveMinimum: true
format: int32
minimum: 0
type: integer
withoutInitialSecret:
default: false
description: "If true, creates the Service Account without generating an initial secret. `secretExpiresAfterHours` must not be set when this is true. Defaults to false, which preserves existing behavior: a secret is generated and returned in the response. Use the `CreateGroupServiceAccountSecret` endpoint to add a secret later."
type: boolean
required:
- description
- name
- roles
type: object
GroupServiceAccountRoleAssignment:
properties:
roles:
description: The Project permissions for the Service Account in the specified Project.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
minItems: 1
type: array
uniqueItems: true
required:
- roles
type: object
GroupServiceAccountUpdateRequest:
properties:
description:
description: Human readable description for the Service Account.
maxLength: 250
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
name:
description: Human-readable name for the Service Account. The name is modifiable and does not have to be unique.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: A list of Project roles associated with the Service Account.
externalDocs:
description: Project-level Roles for Service Accounts
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
type: object
GroupSettings:
description: Collection of settings that configures the project.
properties:
isAtlasHomePageAiAssistantEnabled:
description: Flag that indicates whether the MongoDB Assistant on the Atlas Home Page is enabled for the specified project.
type: boolean
isClusterAiAssistantEnabled:
description: Flag that indicates whether the AI Cluster Assistant is enabled for the specified project.
type: boolean
isCollectDatabaseSpecificsStatisticsEnabled:
description: Flag that indicates whether to collect database-specific metrics for the specified project.
type: boolean
isDataExplorerEnabled:
description: Flag that indicates whether to enable the Data Explorer for the specified project.
type: boolean
isDataExplorerGenAIFeaturesEnabled:
description: Flag that indicates whether to enable the use of generative AI features which make requests to 3rd party services in Data Explorer for the specified project.
type: boolean
isDataExplorerGenAISampleDocumentPassingEnabled:
default: false
description: Flag that indicates whether to enable the passing of sample field values with the use of generative AI features in the Data Explorer for the specified project.
type: boolean
isDataValidationEnabled:
description: Flag that indicates whether data validation is enabled for all clusters in the specified project.
type: boolean
isExtendedStorageSizesEnabled:
description: Flag that indicates whether to enable extended storage sizes for the specified project.
type: boolean
isNativeRerankingEnabled:
description: Flag that indicates whether to enable Native Reranking with Voyage AI models in the Aggregation Pipeline for the specified project.
type: boolean
isPerformanceAdvisorEnabled:
description: Flag that indicates whether to enable the Performance Advisor and Profiler for the specified project.
type: boolean
isRealtimePerformancePanelEnabled:
description: Flag that indicates whether to enable the Real Time Performance Panel for the specified project.
type: boolean
isSchemaAdvisorEnabled:
description: Flag that indicates whether to enable the Schema Advisor for the specified project.
type: boolean
type: object
GroupUpdate:
description: Request view to update the group.
properties:
name:
description: Human-readable label that identifies the project included in the MongoDB Cloud organization.
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the project.
externalDocs:
description: Resource Tags
url: https://www.mongodb.com/docs/atlas/tags
items:
$ref: "#/components/schemas/ResourceTag"
type: array
withDefaultAlertsSettings:
description: Flag that indicates whether the project can automatically create default alerts.
type: boolean
type: object
GroupUserRequest:
properties:
roles:
description: One or more project-level roles to assign the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
minItems: 1
type: array
uniqueItems: true
writeOnly: true
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
type: string
writeOnly: true
required:
- roles
- username
type: object
GroupUserResponse:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgMembershipStatus:
description: "String enum that indicates the user's organization membership status: ACTIVE (member), PENDING (invited), `INVITATION_EXPIRED` (invitation expired), or `INVITATION_REJECTED` (invitation declined)."
readOnly: true
type: string
roles:
description: One or more project-level roles assigned to the MongoDB Cloud user.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
readOnly: true
type: array
uniqueItems: true
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
readOnly: true
type: string
invitationCreatedAt:
description: Date and time when MongoDB Cloud sent the invitation. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC. This field is absent for active users.
format: date-time
readOnly: true
type: string
invitationExpiresAt:
description: Date and time when the invitation from MongoDB Cloud expires. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC. This field is absent for active users and null for rejected invitations.
format: date-time
readOnly: true
type: string
inviterUsername:
description: Username of the MongoDB Cloud user who sent the invitation to join the organization.
format: email
readOnly: true
type: string
country:
description: Two-character alphabetical string that identifies the MongoDB Cloud user's geographic location. This parameter uses the ISO 3166-1a2 code format.
example: US
pattern: ^([A-Z]{2})$
readOnly: true
type: string
createdAt:
description: Date and time when MongoDB Cloud created the current account. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
firstName:
description: First or given name that belongs to the MongoDB Cloud user.
example: John
readOnly: true
type: string
lastAuth:
description: Date and time when the current account last authenticated. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
lastName:
description: Last name, family name, or surname that belongs to the MongoDB Cloud user.
example: Doe
readOnly: true
type: string
mobileNumber:
description: Mobile phone number that belongs to the MongoDB Cloud user.
pattern: (?:(?:\\+?1\\s*(?:[.-]\\s*)?)?(?:(\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\s*)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\s*(?:[.-]\\s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\s*(?:[.-]\\s*)?([0-9]{4})$
readOnly: true
type: string
required:
- id
- orgMembershipStatus
- roles
- username
type: object
x-xgen-discriminator:
propertyName: orgMembershipStatus
mapping:
ACTIVE:
properties:
- country
- createdAt
- firstName
- lastAuth
- lastName
- mobileNumber
required:
- createdAt
- firstName
- lastName
INVITATION_EXPIRED:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
INVITATION_REJECTED:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
PENDING:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
HardwareSpec20240805:
description: Hardware specifications for all electable nodes deployed in the region. Electable nodes can become the primary and can enable local reads. If you don't specify this option, MongoDB Cloud deploys no electable nodes to the region.
properties:
diskSizeGB:
description: |-
Storage capacity of instance data volumes expressed in gigabytes. Increase this number to add capacity.
This value must be equal for all shards and node types.
This value is not configurable on M0/M2/M5 clusters.
MongoDB Cloud requires this parameter if you set `replicationSpecs`.
If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value.
Storage charge calculations depend on whether you choose the default value or a custom value.
The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.
externalDocs:
description: Customize Storage
url: https://dochub.mongodb.org/core/customize-storage
format: double
type: number
diskIOPS:
description: |-
Target IOPS (Input/Output Operations Per Second) desired for storage attached to this hardware. Only configurable for Gen 2 instance sizes.
Change this parameter if you:
- set `"replicationSpecs[n].regionConfigs[m].providerName" : "GCP"`.
- set `"replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize"` to a Gen 2 instance size (`"M30_GEN_2"` or greater).
The maximum input/output operations per second (IOPS) depend on the selected `.instanceSize` and `.diskSizeGB`.
This parameter defaults to the standard IOPS value for the selected `.diskSizeGB`.
Changing this value impacts cluster cost.
format: int32
type: integer
diskThroughput:
description: Throughput (in MiB/s) provisioned for storage attached to this hardware. Only returned for Gen 2 instance sizes.
format: int32
readOnly: true
type: integer
ebsVolumeType:
default: STANDARD
description: |-
Type of storage you want to attach to your AWS-provisioned cluster.
- `STANDARD` volume types can't exceed the default input/output operations per second (IOPS) rate for the selected volume size.
- `PROVISIONED` volume types must fall within the allowable IOPS range for the selected volume size.
- `HIGH_PERFORMANCE` volume types use IO2 EBS volumes and must fall within the allowable IOPS range for the selected volume size.
NVMe clusters require either `PROVISIONED` or `HIGH_PERFORMANCE`.
type: string
instanceSize:
description: Hardware specification for the instances in this M0/M2/M5 tier cluster.
title: Tenant Instance Sizes
type: string
nodeCount:
description: Number of nodes of the given type for MongoDB Cloud to deploy to the region.
example: 3
format: int32
type: integer
effectiveInstanceSize:
description: The true tenant instance size. This is present to support backwards compatibility for deprecated provider types and/or instance sizes.
readOnly: true
type: string
type: object
Header:
description: HTTP header with name and value.
properties:
name:
description: Header name.
example: Authorization
type: string
value:
description: Header value.
example: Bearer token123
format: password
type: string
writeOnly: true
required:
- name
- value
type: object
InboundControlPlaneCloudProviderIPAddresses:
description: List of inbound IP addresses to the Atlas control plane, categorized by cloud provider. If your application allows outbound HTTP requests only to specific IP addresses, you must allow access to the following IP addresses so that your API requests can reach the Atlas control plane.
properties:
aws:
additionalProperties:
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
items:
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
readOnly: true
type: object
azure:
additionalProperties:
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
items:
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
readOnly: true
type: object
gcp:
additionalProperties:
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
items:
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
readOnly: true
type: object
readOnly: true
title: Inbound Control Plane IP Addresses By Cloud Provider
type: object
IndexOptions:
description: One or more settings that determine how the MongoDB Cloud creates this MongoDB index.
externalDocs:
description: Index Options
url: https://docs.mongodb.com/manual/reference/method/db.collection.createIndex/#options
properties:
2dsphereIndexVersion:
default: 3
description: Index version number applied to the 2dsphere index. MongoDB 3.2 and later use version 3. Use this option to override the default version number. This option applies to the **2dsphere** index type only.
format: int32
type: integer
background:
default: false
description: Flag that indicates whether MongoDB should build the index in the background. This applies to MongoDB databases running feature compatibility version 4.0 or earlier. MongoDB databases running FCV 4.2 or later build indexes using an optimized build process. This process holds the exclusive lock only at the beginning and end of the build process. The rest of the build process yields to interleaving read and write operations. MongoDB databases running FCV 4.2 or later ignore this option. This option applies to all index types.
type: boolean
bits:
default: 26
description: Number of precision applied to the stored geohash value of the location data. This option applies to the **2d** index type only.
format: int32
type: integer
bucketSize:
description: |-
Number of units within which to group the location values. You could group in the same bucket those location values within the specified number of units to each other. This option applies to the geoHaystack index type only.
MongoDB 5.0 removed geoHaystack Indexes and the `geoSearch` command.
format: int32
type: integer
columnstoreProjection:
additionalProperties:
description: |-
The `columnstoreProjection` document allows to include or exclude sub-schemas schema. One cannot combine inclusion and exclusion statements. Accordingly, the can be either of the following:
1 or true to include the field and recursively all fields it is a prefix of in the index
0 or false to exclude the field and recursively all fields it is a prefix of from the index.
format: int32
type: integer
description: |-
The `columnstoreProjection` document allows to include or exclude sub-schemas schema. One cannot combine inclusion and exclusion statements. Accordingly, the can be either of the following:
1 or true to include the field and recursively all fields it is a prefix of in the index
0 or false to exclude the field and recursively all fields it is a prefix of from the index.
type: object
default_language:
default: english
description: Human language that determines the list of stop words and the rules for the stemmer and tokenizer. This option accepts the supported languages using its name in lowercase English or the ISO 639-2 code. If you set this parameter to `"none"`, then the text search uses simple tokenization with no list of stop words and no stemming. This option applies to the **text** index type only.
type: string
expireAfterSeconds:
description: Number of seconds that MongoDB retains documents in a Time To Live (TTL) index.
format: int32
type: integer
hidden:
default: false
description: Flag that determines whether the index is hidden from the query planner. A hidden index is not evaluated as part of the query plan selection.
type: boolean
language_override:
default: language
description: Human-readable label that identifies the document parameter that contains the override language for the document. This option applies to the **text** index type only.
type: string
max:
default: 180
description: Upper inclusive boundary to limit the longitude and latitude values. This option applies to the 2d index type only.
format: int32
type: integer
min:
default: -180
description: Lower inclusive boundary to limit the longitude and latitude values. This option applies to the 2d index type only.
format: int32
type: integer
name:
description: Human-readable label that identifies this index. This option applies to all index types.
type: string
partialFilterExpression:
description: |-
Rules that limit the documents that the index references to a filter expression. All MongoDB index types accept a `partialFilterExpression` option. `partialFilterExpression` can include following expressions:
- equality (`"parameter" : "value"` or using the `$eq` operator)
- `"$exists": true`
, maximum: `$gt`, `$gte`, `$lt`, `$lte` comparisons
- `$type`
- `$and` (top-level only)
This option applies to all index types.
type: object
sparse:
default: false
description: |-
Flag that indicates whether the index references documents that only have the specified parameter. These indexes use less space but behave differently in some situations like when sorting. The following index types default to sparse and ignore this option: `2dsphere`, `2d`, `geoHaystack`, `text`.
Compound indexes that includes one or more indexes with `2dsphere` keys alongside other key types, only the `2dsphere` index parameters determine which documents the index references. If you run MongoDB 3.2 or later, use partial indexes. This option applies to all index types.
type: boolean
storageEngine:
description: 'Storage engine set for the specific index. This value can be set only at creation. This option uses the following format: `"storageEngine" : { "" : "" }` MongoDB validates storage engine configuration options when creating indexes. To support replica sets with members with different storage engines, MongoDB logs these options to the oplog during replication. This option applies to all index types.'
externalDocs:
description: MongoDB Server Storage Engines
url: https://docs.mongodb.com/manual/core/storage-engines/
type: object
textIndexVersion:
default: 3
description: Version applied to this text index. MongoDB 3.2 and later use version `3`. Use this option to override the default version number. This option applies to the **text** index type only.
format: int32
type: integer
weights:
description: Relative importance to place upon provided index parameters. This object expresses this as key/value pairs of index parameter and weight to apply to that parameter. You can specify weights for some or all the indexed parameters. The weight must be an integer between 1 and 99,999. MongoDB 5.0 and later can apply **weights** to **text** indexes only.
type: object
type: object
writeOnly: true
InvoiceLineItem:
description: One service included in this invoice.
properties:
cloudProvider:
description: "Code identifying the cloud provider this line item's usage is attributed to. Values map as follows: AWS is Amazon Web Services, GCP is Google Cloud, AZURE is Microsoft Azure, and ATLAS is other Atlas usage not tied to a specific cloud provider."
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster that incurred the charge.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
created:
description: Date and time when MongoDB Cloud created this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
discountCents:
description: Sum by which MongoDB discounted this line item. MongoDB Cloud expresses this value in cents (100ths of one US Dollar). The resource returns this parameter when a discount applies.
format: int64
readOnly: true
type: integer
endDate:
description: Date and time when when MongoDB Cloud finished charging for this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project associated to this line item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
groupName:
description: Human-readable label that identifies the project.
type: string
note:
description: Comment that applies to this line item.
readOnly: true
type: string
percentDiscount:
description: Percentage by which MongoDB discounted this line item. The resource returns this parameter when a discount applies.
format: float
readOnly: true
type: number
quantity:
description: Number of units included for the line item. These can be expressions of storage (GB), time (hours), or other units.
format: double
readOnly: true
type: number
sku:
description: Human-readable description of the service that this line item provided. This Stock Keeping Unit (SKU) could be the instance type, a support charge, advanced security, or another service.
externalDocs:
description: To see how to list all possible values, click here.
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Invoices/operation/listSkus
readOnly: true
type: string
startDate:
description: Date and time when MongoDB Cloud began charging for this line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
stitchAppName:
description: Human-readable label that identifies the Atlas App Services application associated with this line item.
externalDocs:
description: Create a new Atlas App Service
url: https://www.mongodb.com/docs/atlas/app-services/manage-apps/create/create-with-ui/
readOnly: true
type: string
tags:
additionalProperties:
description: A map of key-value pairs corresponding to the tags associated with the line item resource.
items:
description: A map of key-value pairs corresponding to the tags associated with the line item resource.
readOnly: true
type: string
readOnly: true
type: array
description: A map of key-value pairs corresponding to the tags associated with the line item resource.
readOnly: true
type: object
tierLowerBound:
description: |-
Lower bound for usage amount range in current SKU tier.
**NOTE**: `lineItems[n].tierLowerBound` appears only if your `lineItems[n].sku` is tiered.
format: double
readOnly: true
type: number
tierUpperBound:
description: |-
Upper bound for usage amount range in current SKU tier.
**NOTE**: `lineItems[n].tierUpperBound` appears only if your `lineItems[n].sku` is tiered.
format: double
readOnly: true
type: number
totalPriceCents:
description: Sum of the cost set for this line item. MongoDB Cloud expresses this value in cents (100ths of one US Dollar) and calculates this value as `unitPriceDollars` * `quantity` * 100.
format: int64
readOnly: true
type: integer
unit:
description: Element used to express what **quantity** this line item measures. This value can be elements of time, storage capacity, and the like.
readOnly: true
type: string
unitPriceDollars:
description: Value per **unit** for this line item expressed in US Dollars.
format: double
readOnly: true
type: number
title: Line Item
type: object
InvoiceReportRequest:
properties:
formatSpecVersion:
description: Version of the report format specification.
type: string
reportFormat:
description: Format of the report.
type: string
reportType:
description: Type of report to generate.
type: string
required:
- reportFormat
- reportType
type: object
InvoiceReportResponse:
description: Status and details of a previously requested invoice report.
properties:
downloadUrl:
description: URL to download the report. Present only when the report has succeeded.
readOnly: true
type: string
expiresAt:
description: Time at which the download URL expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC. Present only when the report has succeeded.
format: date-time
readOnly: true
type: string
failureReason:
description: Reason the report failed. Present only when the report has failed.
readOnly: true
type: string
formatSpecVersion:
description: Version of the report format specification.
type: string
invoiceId:
description: Unique 24-hexadecimal digit string that identifies the invoice.
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
reportFormat:
description: Format of the generated report.
type: string
reportId:
description: Unique 24-hexadecimal digit string that identifies the report.
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
reportType:
description: Type of the generated report.
type: string
state:
description: Current state of the report generation.
readOnly: true
type: string
required:
- invoiceId
- reportFormat
- reportId
- reportType
- state
type: object
LDAPSecuritySettings:
description: Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details that apply to the specified project.
properties:
authenticationEnabled:
description: Flag that indicates whether users can authenticate using an Lightweight Directory Access Protocol (LDAP) host.
type: boolean
authorizationEnabled:
description: Flag that indicates whether users can authorize access to MongoDB Cloud resources using an Lightweight Directory Access Protocol (LDAP) host.
type: boolean
authzQueryTemplate:
default: "{USER}?memberOf?base"
description: Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud runs to obtain the LDAP groups associated with the authenticated user. MongoDB Cloud uses this parameter only for user authorization. Use the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query according to [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
example: "{USER}?memberOf?base"
type: string
bindPassword:
description: Password that MongoDB Cloud uses to authenticate the `bindUsername`.
type: string
writeOnly: true
bindUsername:
description: Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host. LDAP distinguished names must be formatted according to RFC 2253.
example: CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com
externalDocs:
description: RFC 2253
url: https://tools.ietf.org/html/2253
pattern: ^(?:(?CN=(?[^,]*)),)?(?:(?(?:(?:CN|OU)=[^,]+,?)+),)?(?(?:DC=[^,]+,?)+)$
type: string
caCertificate:
description: 'Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host. MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `"caCertificate": ""`.'
type: string
hostname:
description: Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host. This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
port:
default: 636
description: Port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.
format: int32
type: integer
userToDNMapping:
description: User-to-Distinguished Name (DN) map that MongoDB Cloud uses to transform a Lightweight Directory Access Protocol (LDAP) username into an LDAP DN.
items:
$ref: "#/components/schemas/UserToDNMapping"
type: array
title: LDAP Security Settings
type: object
LDAPVerifyConnectivityJobRequest:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project associated with this Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
request:
$ref: "#/components/schemas/LDAPVerifyConnectivityJobRequestParams"
requestId:
description: Unique 24-hexadecimal digit string that identifies this request to verify an Lightweight Directory Access Protocol (LDAP) configuration.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
status:
description: Human-readable string that indicates the status of the Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration.
readOnly: true
type: string
validations:
description: List that contains the validation messages related to the verification of the provided Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details. The list contains a document for each test that MongoDB Cloud runs. MongoDB Cloud stops running tests after the first failure.
items:
$ref: "#/components/schemas/LDAPVerifyConnectivityJobRequestValidation"
readOnly: true
type: array
type: object
LDAPVerifyConnectivityJobRequestParams:
description: Request information needed to verify an Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration. The response does not return the `bindPassword`.
properties:
authzQueryTemplate:
default: "{USER}?memberOf?base"
description: |-
Lightweight Directory Access Protocol (LDAP) query template that MongoDB Cloud applies to create an LDAP query to return the LDAP groups associated with the authenticated MongoDB user. MongoDB Cloud uses this parameter only for user authorization.
Use the `{USER}` placeholder in the Uniform Resource Locator (URL) to substitute the authenticated username. The query relates to the host specified with the hostname. Format this query per [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
example: "{USER}?memberOf?base"
type: string
writeOnly: true
bindPassword:
description: Password that MongoDB Cloud uses to authenticate the `bindUsername`.
type: string
writeOnly: true
bindUsername:
description: Full Distinguished Name (DN) of the Lightweight Directory Access Protocol (LDAP) user that MongoDB Cloud uses to connect to the LDAP host. LDAP distinguished names must be formatted according to RFC 2253.
example: CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com
externalDocs:
description: RFC 2253
url: https://tools.ietf.org/html/2253
pattern: ^(?:(?CN=(?[^,]*)),)?(?:(?(?:(?:CN|OU)=[^,]+,?)+),)?(?(?:DC=[^,]+,?)+)$
type: string
caCertificate:
description: 'Certificate Authority (CA) certificate that MongoDB Cloud uses to verify the identity of the Lightweight Directory Access Protocol (LDAP) host. MongoDB Cloud allows self-signed certificates. To delete an assigned value, pass an empty string: `"caCertificate": ""`.'
type: string
hostname:
description: Human-readable label that identifies the hostname or Internet Protocol (IP) address of the Lightweight Directory Access Protocol (LDAP) host. This host must have access to the internet or have a Virtual Private Cloud (VPC) peering connection to your cluster.
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
port:
default: 636
description: IANA port to which the Lightweight Directory Access Protocol (LDAP) host listens for client connections.
format: int32
type: integer
required:
- bindPassword
- bindUsername
- hostname
- port
type: object
LDAPVerifyConnectivityJobRequestValidation:
description: One test that MongoDB Cloud runs to test verification of the provided Lightweight Directory Access Protocol (LDAP) over Transport Layer Security (TLS) configuration details.
properties:
status:
description: Human-readable string that indicates the result of this verification test.
readOnly: true
type: string
validationType:
description: Human-readable label that identifies this verification test that MongoDB Cloud runs.
readOnly: true
type: string
readOnly: true
type: object
LegacyAtlasCluster:
description: Group of settings that configure a MongoDB cluster.
properties:
acceptDataRisksAndForceReplicaSetReconfig:
description: If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set `acceptDataRisksAndForceReplicaSetReconfig` to the current date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: Reconfiguring a Replica Set during a regional outage
url: https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set
format: date-time
type: string
advancedConfiguration:
$ref: "#/components/schemas/ApiAtlasClusterAdvancedConfiguration"
autoScaling:
$ref: "#/components/schemas/ClusterAutoScalingSettings"
backupEnabled:
description: Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.
type: boolean
biConnector:
$ref: "#/components/schemas/BiConnector"
clusterType:
description: Configuration of nodes that comprise the cluster.
type: string
configServerManagementMode:
default: ATLAS_MANAGED
description: Config Server Management Mode for creating or updating a sharded cluster. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
type: string
configServerType:
description: Describes a sharded cluster's config server type.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
readOnly: true
type: string
connectionStrings:
$ref: "#/components/schemas/ClusterConnectionStrings"
createDate:
description: Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your cluster will be Atlas INFINITE or CORE. This field applies only to flex and shared clusters. You can set it only when you create the cluster, or when you upgrade a flex cluster to a dedicated cluster. This value is immutable once the dedicated cluster exists; attempting to change it on an update request returns an error."
type: string
deleteAfterCreationHours:
description: |-
Number of hours after cluster creation that this cluster will be automatically deleted.
This field is used to derive `deleteAfterDate` relative to `createDate`.
When set to null or zero on cluster creation, the cluster will not be automatically deleted.
When set to a positive value on cluster creation, the cluster will be automatically deleted after the specified number of hours.
When updating this field on an existing (non-deleted) cluster, and this is set to null, then existing values are preserved for this & `deleteAfterDate`.
When updating this field on an existing (non-deleted) cluster, and this is set to zero, then `deleteAfterDate` is reset to null (disable auto deletion) regardless of previous configurations.
When updating this field on an existing (non-deleted) cluster, and this is set to a positive value, then `createDate` + `deleteAfterCreationHours` must be later than now else the field update is ignored and existing values are preserved for this & `deleteAfterDate`.
format: int32
type: integer
deleteAfterDate:
description: |-
The date at which this cluster will be automatically deleted.
This parameter expresses its value in the ISO 8601 timestamp format in UTC and is derived based on the `createDate` + `deleteAfterCreationHours`.
format: date-time
readOnly: true
type: string
diskSizeGB:
description: |-
Storage capacity of instance data volumes expressed in gigabytes. Increase this number to add capacity.
This value is not configurable on M0/M2/M5 clusters.
MongoDB Cloud requires this parameter if you set `replicationSpecs`.
If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value.
Storage charge calculations depend on whether you choose the default value or a custom value.
The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.
format: double
maximum: 4096
minimum: 10
type: number
diskWarmingMode:
default: FULLY_WARMED
description: Disk warming mode selection.
externalDocs:
description: Reduce Secondary Disk Warming Impact
url: https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact
type: string
effectiveDatabaseEdition:
description: "Available in Public Preview: Field that represents whether your cluster is Atlas INFINITE or CORE. This field applies only to flex and shared clusters. This is read-only and always returned in the response. It reflects the actual cluster state. This value matches `databaseEdition` if it was set, otherwise it reflects the default database edition assigned to the cluster."
readOnly: true
type: string
encryptionAtRestProvider:
description: 'Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster `replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize` setting must be `M10` or higher and `"backupEnabled" : false` or omitted entirely.'
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
type: string
featureCompatibilityVersion:
description: Feature compatibility version of the cluster.
readOnly: true
type: string
featureCompatibilityVersionExpirationDate:
description: Feature compatibility version expiration date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
globalClusterSelfManagedSharding:
description: |-
Set this field to configure the Sharding Management Mode when creating a new Global Cluster.
When set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.
When set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.
This setting cannot be changed once the cluster is deployed.
externalDocs:
description: Creating a Global Cluster
url: https://dochub.mongodb.org/core/global-cluster-management
type: boolean
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
labels:
deprecated: true
description: |-
Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.
Cluster labels are deprecated and will be removed in a future release. We strongly recommend that you use Resource Tags instead.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ComponentLabel"
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBEmployeeAccessGrant:
$ref: "#/components/schemas/EmployeeAccessGrant"
mongoDBMajorVersion:
description: |-
MongoDB major version of the cluster.
On creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).
On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.
example: "5.0"
externalDocs:
description: Available MongoDB Versions in Atlas
url: https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-
type: string
mongoDBVersion:
description: Version of MongoDB that the cluster runs.
example: 5.0.25
pattern: ([\d]+\.[\d]+\.[\d]+)
type: string
mongoURI:
description: Base connection string that you can use to connect to the cluster. MongoDB Cloud displays the string only after the cluster starts, not while it builds the cluster.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
mongoURIUpdated:
description: Date and time when someone last updated the connection string. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
mongoURIWithOptions:
description: Connection string that you can use to connect to the cluster including the `replicaSet`, `ssl`, and `authSource` query parameters with values appropriate for the cluster. You may need to add MongoDB database users. The response returns this parameter once the cluster can receive requests, not while it builds the cluster.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
name:
description: Human-readable label that identifies the cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
numShards:
default: 1
description: Number of shards up to 50 to deploy for a sharded cluster. The resource returns `1` to indicate a replica set and values of `2` and higher to indicate a sharded cluster. The returned value equals the number of shards in the cluster.
externalDocs:
description: Sharding
url: https://docs.mongodb.com/manual/sharding/
format: int32
maximum: 50
minimum: 1
type: integer
paused:
description: Flag that indicates whether the cluster is paused.
type: boolean
pitEnabled:
description: Flag that indicates whether the cluster uses continuous cloud backups.
externalDocs:
description: Continuous Cloud Backups
url: https://docs.atlas.mongodb.com/backup/cloud-backup/overview/
type: boolean
providerBackupEnabled:
description: Flag that indicates whether the M10 or higher cluster can perform Cloud Backups. If set to `true`, the cluster can perform backups. If this and `backupEnabled` are set to `false`, the cluster doesn't use MongoDB Cloud backups.
type: boolean
providerSettings:
$ref: "#/components/schemas/ClusterProviderSettings"
replicaSetScalingStrategy:
default: WORKLOAD_TYPE
description: |-
Set this field to configure the replica set scaling mode for your cluster.
By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes.
When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads.
When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads.
externalDocs:
description: Modify the Replica Set Scaling Mode
url: https://dochub.mongodb.org/core/scale-nodes
type: string
replicationFactor:
default: 3
deprecated: true
description: Number of members that belong to the replica set. Each member retains a copy of your databases, providing high availability and data redundancy. Use `replicationSpecs` instead.
format: int32
type: integer
replicationSpec:
additionalProperties:
$ref: "#/components/schemas/RegionSpec"
description: Physical location where MongoDB Cloud provisions cluster nodes.
title: Region Configuration
type: object
replicationSpecs:
description: |-
List of settings that configure your cluster regions.
- For Global Clusters, each object in the array represents one zone where MongoDB Cloud deploys your clusters nodes.
- For non-Global sharded clusters and replica sets, the single object represents where MongoDB Cloud deploys your clusters nodes.
items:
$ref: "#/components/schemas/LegacyReplicationSpec"
type: array
rootCertType:
default: ISRGROOTX1
description: Root Certificate Authority that MongoDB Atlas cluster uses. MongoDB Cloud supports Internet Security Research Group.
type: string
srvAddress:
description: Connection string that you can use to connect to the cluster. The `+srv` modifier forces the connection to use Transport Layer Security (TLS). The `mongoURI` parameter lists additional options.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
versionReleaseSystem:
default: LTS
description: Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify `mongoDBMajorVersion`.
type: string
title: Cluster Description
type: object
LegacyAtlasTenantClusterUpgradeRequest:
description: Request containing target state of tenant cluster to be upgraded.
properties:
acceptDataRisksAndForceReplicaSetReconfig:
description: If reconfiguration is necessary to regain a primary due to a regional outage, submit this field alongside your topology reconfiguration to request a new regional outage resistant topology. Forced reconfigurations during an outage of the majority of electable nodes carry a risk of data loss if replicated writes (even majority committed writes) have not been replicated to the new primary node. MongoDB Atlas docs contain more information. To proceed with an operation which carries that risk, set `acceptDataRisksAndForceReplicaSetReconfig` to the current date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: Reconfiguring a Replica Set during a regional outage
url: https://dochub.mongodb.org/core/regional-outage-reconfigure-replica-set
format: date-time
type: string
advancedConfiguration:
$ref: "#/components/schemas/ApiAtlasClusterAdvancedConfiguration"
autoScaling:
$ref: "#/components/schemas/ClusterAutoScalingSettings"
backupEnabled:
description: Flag that indicates whether the cluster can perform backups. If set to `true`, the cluster can perform backups. You must set this value to `true` for NVMe clusters. Backup uses Cloud Backups for dedicated clusters and Shared Cluster Backups for tenant clusters. If set to `false`, the cluster doesn't use MongoDB Cloud backups.
type: boolean
biConnector:
$ref: "#/components/schemas/BiConnector"
clusterType:
description: Configuration of nodes that comprise the cluster.
type: string
configServerManagementMode:
default: ATLAS_MANAGED
description: Config Server Management Mode for creating or updating a sharded cluster. When configured as `ATLAS_MANAGED`, Atlas may automatically switch the cluster's config server type for optimal performance and savings. When configured as `FIXED_TO_DEDICATED`, the cluster will always use a dedicated config server.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
type: string
configServerType:
description: Describes a sharded cluster's config server type.
externalDocs:
description: MongoDB Sharded Cluster Config Servers
url: https://dochub.mongodb.org/docs/manual/core/sharded-cluster-config-servers
readOnly: true
type: string
connectionStrings:
$ref: "#/components/schemas/ClusterConnectionStrings"
createDate:
description: Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
databaseEdition:
description: "Available in Public Preview: Optional field that indicates whether your cluster will be Atlas INFINITE or CORE. This field applies only to flex and shared clusters. You can set it only when you create the cluster, or when you upgrade a flex cluster to a dedicated cluster. This value is immutable once the dedicated cluster exists; attempting to change it on an update request returns an error."
type: string
deleteAfterCreationHours:
description: |-
Number of hours after cluster creation that this cluster will be automatically deleted.
This field is used to derive `deleteAfterDate` relative to `createDate`.
When set to null or zero on cluster creation, the cluster will not be automatically deleted.
When set to a positive value on cluster creation, the cluster will be automatically deleted after the specified number of hours.
When updating this field on an existing (non-deleted) cluster, and this is set to null, then existing values are preserved for this & `deleteAfterDate`.
When updating this field on an existing (non-deleted) cluster, and this is set to zero, then `deleteAfterDate` is reset to null (disable auto deletion) regardless of previous configurations.
When updating this field on an existing (non-deleted) cluster, and this is set to a positive value, then `createDate` + `deleteAfterCreationHours` must be later than now else the field update is ignored and existing values are preserved for this & `deleteAfterDate`.
format: int32
type: integer
deleteAfterDate:
description: |-
The date at which this cluster will be automatically deleted.
This parameter expresses its value in the ISO 8601 timestamp format in UTC and is derived based on the `createDate` + `deleteAfterCreationHours`.
format: date-time
readOnly: true
type: string
diskSizeGB:
description: |-
Storage capacity of instance data volumes expressed in gigabytes. Increase this number to add capacity.
This value is not configurable on M0/M2/M5 clusters.
MongoDB Cloud requires this parameter if you set `replicationSpecs`.
If you specify a disk size below the minimum (10 GB), this parameter defaults to the minimum disk size value.
Storage charge calculations depend on whether you choose the default value or a custom value.
The maximum value for disk storage cannot exceed 50 times the maximum RAM for the selected cluster. If you require more storage space, consider upgrading your cluster to a higher tier.
format: double
maximum: 4096
minimum: 10
type: number
diskWarmingMode:
default: FULLY_WARMED
description: Disk warming mode selection.
externalDocs:
description: Reduce Secondary Disk Warming Impact
url: https://docs.atlas.mongodb.com/reference/replica-set-tags/#reduce-secondary-disk-warming-impact
type: string
effectiveDatabaseEdition:
description: "Available in Public Preview: Field that represents whether your cluster is Atlas INFINITE or CORE. This field applies only to flex and shared clusters. This is read-only and always returned in the response. It reflects the actual cluster state. This value matches `databaseEdition` if it was set, otherwise it reflects the default database edition assigned to the cluster."
readOnly: true
type: string
encryptionAtRestProvider:
description: 'Cloud service provider that manages your customer keys to provide an additional layer of encryption at rest for the cluster. To enable customer key management for encryption at rest, the cluster `replicationSpecs[n].regionConfigs[m].{type}Specs.instanceSize` setting must be `M10` or higher and `"backupEnabled" : false` or omitted entirely.'
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
type: string
featureCompatibilityVersion:
description: Feature compatibility version of the cluster.
readOnly: true
type: string
featureCompatibilityVersionExpirationDate:
description: Feature compatibility version expiration date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
globalClusterSelfManagedSharding:
description: |-
Set this field to configure the Sharding Management Mode when creating a new Global Cluster.
When set to false, the management mode is set to Atlas-Managed Sharding. This mode fully manages the sharding of your Global Cluster and is built to provide a seamless deployment experience.
When set to true, the management mode is set to Self-Managed Sharding. This mode leaves the management of shards in your hands and is built to provide an advanced and flexible deployment experience.
This setting cannot be changed once the cluster is deployed.
externalDocs:
description: Creating a Global Cluster
url: https://dochub.mongodb.org/core/global-cluster-management
type: boolean
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
labels:
deprecated: true
description: |-
Collection of key-value pairs between 1 to 255 characters in length that tag and categorize the cluster. The MongoDB Cloud console doesn't display your labels.
Cluster labels are deprecated and will be removed in a future release. We strongly recommend that you use Resource Tags instead.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ComponentLabel"
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBEmployeeAccessGrant:
$ref: "#/components/schemas/EmployeeAccessGrant"
mongoDBMajorVersion:
description: |-
MongoDB major version of the cluster.
On creation: Choose from the available versions of MongoDB, or leave unspecified for the current recommended default in the MongoDB Cloud platform. The recommended version is a recent Long Term Support version. The default is not guaranteed to be the most recently released version throughout the entire release cycle. For versions available in a specific project, see the linked documentation or use the API endpoint for [project LTS versions endpoint](#tag/Projects/operation/getProjectLTSVersions).
On update: Increase version only by 1 major version at a time. If the cluster is pinned to a MongoDB feature compatibility version exactly one major version below the current MongoDB version, the MongoDB version can be downgraded to the previous major version.
example: "5.0"
externalDocs:
description: Available MongoDB Versions in Atlas
url: https://www.mongodb.com/docs/atlas/reference/faq/database/#which-versions-of-mongodb-do-service-clusters-use-
type: string
mongoDBVersion:
description: Version of MongoDB that the cluster runs.
example: 5.0.25
pattern: ([\d]+\.[\d]+\.[\d]+)
type: string
mongoURI:
description: Base connection string that you can use to connect to the cluster. MongoDB Cloud displays the string only after the cluster starts, not while it builds the cluster.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
mongoURIUpdated:
description: Date and time when someone last updated the connection string. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
mongoURIWithOptions:
description: Connection string that you can use to connect to the cluster including the `replicaSet`, `ssl`, and `authSource` query parameters with values appropriate for the cluster. You may need to add MongoDB database users. The response returns this parameter once the cluster can receive requests, not while it builds the cluster.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
name:
description: Human-readable label that identifies the cluster.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
numShards:
default: 1
description: Number of shards up to 50 to deploy for a sharded cluster. The resource returns `1` to indicate a replica set and values of `2` and higher to indicate a sharded cluster. The returned value equals the number of shards in the cluster.
externalDocs:
description: Sharding
url: https://docs.mongodb.com/manual/sharding/
format: int32
maximum: 50
minimum: 1
type: integer
paused:
description: Flag that indicates whether the cluster is paused.
type: boolean
pitEnabled:
description: Flag that indicates whether the cluster uses continuous cloud backups.
externalDocs:
description: Continuous Cloud Backups
url: https://docs.atlas.mongodb.com/backup/cloud-backup/overview/
type: boolean
providerBackupEnabled:
description: Flag that indicates whether the M10 or higher cluster can perform Cloud Backups. If set to `true`, the cluster can perform backups. If this and `backupEnabled` are set to `false`, the cluster doesn't use MongoDB Cloud backups.
type: boolean
providerSettings:
$ref: "#/components/schemas/ClusterProviderSettings"
replicaSetScalingStrategy:
default: WORKLOAD_TYPE
description: |-
Set this field to configure the replica set scaling mode for your cluster.
By default, Atlas scales under `WORKLOAD_TYPE`. This mode allows Atlas to scale your analytics nodes in parallel to your operational nodes.
When configured as `SEQUENTIAL`, Atlas scales all nodes sequentially. This mode is intended for steady-state workloads and applications performing latency-sensitive secondary reads.
When configured as `NODE_TYPE`, Atlas scales your electable nodes in parallel with your read-only and analytics nodes. This mode is intended for large, dynamic workloads requiring frequent and timely cluster tier scaling. This is the fastest scaling strategy, but it might impact latency of workloads when performing extensive secondary reads.
externalDocs:
description: Modify the Replica Set Scaling Mode
url: https://dochub.mongodb.org/core/scale-nodes
type: string
replicationFactor:
default: 3
deprecated: true
description: Number of members that belong to the replica set. Each member retains a copy of your databases, providing high availability and data redundancy. Use `replicationSpecs` instead.
format: int32
type: integer
replicationSpec:
additionalProperties:
$ref: "#/components/schemas/RegionSpec"
description: Physical location where MongoDB Cloud provisions cluster nodes.
title: Region Configuration
type: object
replicationSpecs:
description: |-
List of settings that configure your cluster regions.
- For Global Clusters, each object in the array represents one zone where MongoDB Cloud deploys your clusters nodes.
- For non-Global sharded clusters and replica sets, the single object represents where MongoDB Cloud deploys your clusters nodes.
items:
$ref: "#/components/schemas/LegacyReplicationSpec"
type: array
rootCertType:
default: ISRGROOTX1
description: Root Certificate Authority that MongoDB Atlas cluster uses. MongoDB Cloud supports Internet Security Research Group.
type: string
srvAddress:
description: Connection string that you can use to connect to the cluster. The `+srv` modifier forces the connection to use Transport Layer Security (TLS). The `mongoURI` parameter lists additional options.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the cluster.
externalDocs:
description: Resource Tags
url: https://dochub.mongodb.org/core/add-cluster-tag-atlas
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the cluster. If set to `true`, MongoDB Cloud won't delete the cluster. If set to `false`, MongoDB Cloud will delete the cluster.
type: boolean
versionReleaseSystem:
default: LTS
description: Method by which the cluster maintains the MongoDB versions. If value is `CONTINUOUS`, you must not specify `mongoDBMajorVersion`.
type: string
required:
- name
title: Tenant Cluster Upgrade Request
type: object
LegacyRegionsConfig:
additionalProperties:
$ref: "#/components/schemas/RegionSpec"
description: Physical location where MongoDB Cloud provisions cluster nodes.
title: Region Configuration
type: object
LegacyReplicationSpec:
properties:
id:
description: |-
Unique 24-hexadecimal digit string that identifies the replication object for a zone in a Global Cluster.
- If you include existing zones in the request, you must specify this parameter.
- If you add a new zone to an existing Global Cluster, you may specify this parameter. The request deletes any existing zones in a Global Cluster that you exclude from the request.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
numShards:
default: 1
description: |-
Positive integer that specifies the number of shards to deploy in each specified zone If you set this value to `1` and `clusterType` is `SHARDED`, MongoDB Cloud deploys a single-shard sharded cluster. Don't create a sharded cluster with a single shard for production environments. Single-shard sharded clusters don't provide the same benefits as multi-shard configurations.
If you are upgrading a replica set to a sharded cluster, you cannot increase the number of shards in the same update request. You should wait until after the cluster has completed upgrading to sharded and you have reconnected all application clients to the MongoDB router before adding additional shards. Otherwise, your data might become inconsistent once MongoDB Cloud begins distributing data across shards.
format: int32
type: integer
regionsConfig:
$ref: "#/components/schemas/LegacyRegionsConfig"
zoneName:
description: Human-readable label that identifies the zone in a Global Cluster. Provide this value only if `clusterType` is `GEOSHARDED`.
type: string
type: object
Link:
properties:
href:
description: Uniform Resource Locator (URL) that points another API resource to which this response has some relationship. This URL often begins with `https://cloud.mongodb.com/api/atlas`.
example: https://cloud.mongodb.com/api/atlas
type: string
rel:
description: Uniform Resource Locator (URL) that defines the semantic relationship between this resource and another API resource. This URL often begins with `https://cloud.mongodb.com/api/atlas`.
example: self
type: string
type: object
Link_Atlas:
properties:
href:
description: Uniform Resource Locator (URL) that points another API resource to which this response has some relationship. This URL often begins with `https://cloud.mongodb.com/api/atlas`.
example: https://cloud.mongodb.com/api/atlas
type: string
rel:
description: Uniform Resource Locator (URL) that defines the semantic relationship between this resource and another API resource. This URL often begins with `https://cloud.mongodb.com/api/atlas`.
example: self
type: string
type: object
LiveImportAvailableProject:
properties:
deployments:
description: List of clusters that can be migrated to MongoDB Cloud.
items:
$ref: "#/components/schemas/AvailableClustersDeployment"
type: array
migrationHosts:
description: Hostname of MongoDB Agent list that you configured to perform a migration.
items:
description: Hostname of MongoDB Agent that you configured to perform a migration.
type: string
type: array
name:
description: Human-readable label that identifies this project.
maxLength: 64
minLength: 1
readOnly: true
type: string
projectId:
description: Unique 24-hexadecimal digit string that identifies the project to be migrated.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
required:
- deployments
- migrationHosts
- name
- projectId
type: object
LiveImportValidation:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the validation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
errorMessage:
description: Reason why the validation job failed.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to validate.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
sourceGroupId:
description: Unique 24-hexadecimal digit string that identifies the source project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
status:
description: State of the specified validation job returned at the time of the request.
readOnly: true
type: string
type: object
LiveMigrationRequest20240530:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the migration request.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
destination:
$ref: "#/components/schemas/Destination"
dropDestinationData:
default: false
description: Flag that indicates whether the migration process drops all collections from the destination cluster before the migration starts.
type: boolean
writeOnly: true
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
migrationHosts:
description: List of migration hosts used for this migration.
items:
example: vm001.example.com
minLength: 1
type: string
maxItems: 1
minItems: 1
type: array
sharding:
$ref: "#/components/schemas/ShardingRequest"
source:
$ref: "#/components/schemas/Source"
required:
- destination
- migrationHosts
- source
type: object
LiveMigrationResponse:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the migration job.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lagTimeSeconds:
description: Replication lag between the source and destination clusters. Atlas returns this setting only during an active migration, before the cutover phase.
format: int64
readOnly: true
type: integer
migrationHosts:
description: List of hosts running MongoDB Agents. These Agents can transfer your MongoDB data between one source and one destination cluster.
items:
description: One host running a MongoDB Agent. This Agent can transfer your MongoDB data between one source and one destination cluster.
example: vm001.example.com
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?$
type: string
readOnly: true
type: array
readyForCutover:
description: Flag that indicates the migrated cluster can be cut over to MongoDB Atlas.
readOnly: true
type: boolean
status:
description: |-
Progress made in migrating one cluster to MongoDB Atlas.
`NEW`: Someone scheduled a local cluster migration to MongoDB Atlas.
`FAILED`: The cluster migration to MongoDB Atlas failed.
`COMPLETE`: The cluster migration to MongoDB Atlas succeeded.
`EXPIRED`: MongoDB Atlas prepares to begin the cut over of the migrating cluster when source and destination clusters have almost synchronized. If `"readyForCutover" : true`, this synchronization starts a timer of 120 hours. You can extend this timer. If the timer expires, MongoDB Atlas returns this status.
`WORKING`: The cluster migration to MongoDB Atlas is performing one of the following tasks:
- Preparing connections to source and destination clusters.
- Replicating data from source to destination.
- Verifying MongoDB Atlas connection settings.
- Stopping replication after the cut over.
readOnly: true
type: string
type: object
LogIntegrationRequest:
description: Request schema for creating or updating a log integration.
properties:
logTypes:
description: Array of log types exported by this integration.
example:
- MONGOD
- MONGOS
items:
type: string
maxItems: 10
type: array
uniqueItems: true
type:
description: Human-readable label that identifies the service to which you want to integrate with Atlas. The value must match the log integration type. This value cannot be modified after the integration is created.
type: string
bucketName:
description: Name of the bucket to store log files.
example: my-gcs-log-bucket
type: string
iamRoleId:
description: Unique 24-character hexadecimal string that identifies the AWS IAM role that Atlas uses to access the S3 bucket.
example: 507f1f77bcf86cd799439011
pattern: ^[a-fA-F0-9]{24}$
type: string
kmsKey:
description: AWS KMS key ID or ARN for server-side encryption (optional). If not provided, uses bucket default encryption settings.
example: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
type: string
prefixPath:
description: Path prefix where the log files will be stored. Atlas will add further sub-directories based on the log type.
example: logs/mongodb/
type: string
useLegacyPathStructure:
description: "When true, uses the legacy daily-folder path structure compatible with Push-Based Log Export: `{prefix}/{cluster}/{hostname}/{logType}/{YYYY-MM-DD}/{timestamp}-{logType}.log`. When false (default), uses the flat timestamped structure: `{prefix}/{cluster}/{hostname}/{logType}/{timestamp}-{logType}.log`."
type: boolean
apiKey:
description: API key for authentication.
example: a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6
format: password
type: string
region:
description: "Datadog site/region for log ingestion. Valid values: US1, US3, US5, EU, AP1, AP2, US1_FED."
example: US1
type: string
roleId:
description: Unique 24-character hexadecimal string that identifies the Atlas Cloud Provider Access role.
example: 507f1f77bcf86cd799439011
pattern: ^[a-fA-F0-9]{24}$
type: string
otelEndpoint:
description: OpenTelemetry collector endpoint URL. Must be HTTPS and not exceed 2048 characters.
example: https://otel-collector.example.com:4318/v1/logs
type: string
otelSuppliedHeaders:
description: HTTP headers for authentication and configuration. Maximum 10 headers, total size limit 2KB.
items:
$ref: "#/components/schemas/Header"
maxItems: 10
minItems: 1
type: array
hecToken:
description: HTTP Event Collector (HEC) token for authentication.
example: 12345678-1234-1234-1234-123456789012
format: password
type: string
hecUrl:
description: HTTP Event Collector (HEC) endpoint URL.
example: https://http-inputs-acme.splunkcloud.com:8088/services/collector/event
type: string
storageAccountName:
description: Storage account name where logs will be stored.
example: mylogstorageaccount
type: string
storageContainerName:
description: Storage container name for log files.
example: mongodb-logs
type: string
required:
- logTypes
- type
title: Log Export Integration Request
type: object
x-xgen-discriminator:
propertyName: type
mapping:
AZURE_LOG_EXPORT:
properties:
- prefixPath
- roleId
- storageAccountName
- storageContainerName
required:
- prefixPath
- roleId
- storageAccountName
- storageContainerName
DATADOG_LOG_EXPORT:
properties:
- apiKey
- region
required:
- apiKey
- region
GCS_LOG_EXPORT:
properties:
- bucketName
- prefixPath
- roleId
required:
- bucketName
- prefixPath
- roleId
OTEL_LOG_EXPORT:
properties:
- otelEndpoint
- otelSuppliedHeaders
required:
- otelEndpoint
- otelSuppliedHeaders
S3_LOG_EXPORT:
properties:
- bucketName
- iamRoleId
- kmsKey
- prefixPath
- useLegacyPathStructure
required:
- bucketName
- iamRoleId
- prefixPath
SPLUNK_LOG_EXPORT:
properties:
- hecToken
- hecUrl
required:
- hecToken
- hecUrl
LogIntegrationResponse:
description: Response schema for log integration operations.
properties:
id:
description: Unique 24-character hexadecimal digit string that identifies the log integration configuration.
example: 507f1f77bcf86cd799439011
type: string
logTypes:
description: Array of log types exported by this integration.
example:
- MONGOD
- MONGOS
items:
type: string
maxItems: 10
type: array
uniqueItems: true
type:
description: Human-readable label that identifies the service to which you want to integrate with Atlas. The value must match the log integration type. This value cannot be modified after the integration is created.
type: string
bucketName:
description: Name of the bucket to store log files.
example: my-gcs-log-bucket
type: string
iamRoleId:
description: Unique 24-character hexadecimal string that identifies the AWS IAM role that Atlas uses to access the S3 bucket.
example: 507f1f77bcf86cd799439011
pattern: ^[a-fA-F0-9]{24}$
type: string
kmsKey:
description: AWS KMS key ID or ARN for server-side encryption (optional). If not provided, uses bucket default encryption settings.
example: arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
type: string
prefixPath:
description: Path prefix where the log files will be stored. Atlas will add further sub-directories based on the log type.
example: logs/mongodb/
type: string
useLegacyPathStructure:
description: "When true, uses the legacy daily-folder path structure compatible with Push-Based Log Export: `{prefix}/{cluster}/{hostname}/{logType}/{YYYY-MM-DD}/{timestamp}-{logType}.log`. When false (default), uses the flat timestamped structure: `{prefix}/{cluster}/{hostname}/{logType}/{timestamp}-{logType}.log`."
type: boolean
apiKey:
description: API key for authentication.
example: "****************************o5p6"
format: password
type: string
region:
description: "Datadog site/region for log ingestion. Valid values: US1, US3, US5, EU, AP1, AP2, US1_FED."
example: US1
type: string
roleId:
description: Unique 24-character hexadecimal string that identifies the Atlas Cloud Provider Access role.
example: 507f1f77bcf86cd799439011
pattern: ^[a-fA-F0-9]{24}$
type: string
otelEndpoint:
description: OpenTelemetry collector endpoint URL.
example: https://otel-collector.example.com:4318/v1/logs
type: string
otelSuppliedHeaders:
description: HTTP headers for authentication and configuration. Maximum 10 headers, total size limit 2KB.
items:
$ref: "#/components/schemas/Header"
maxItems: 10
minItems: 1
type: array
hecToken:
description: HTTP Event Collector (HEC) token for authentication.
example: "****************************9012"
format: password
type: string
hecUrl:
description: HTTP Event Collector (HEC) endpoint URL.
example: https://http-inputs-acme.splunkcloud.com:8088/services/collector
type: string
storageAccountName:
description: Storage account name where logs will be stored.
example: mylogstorageaccount
type: string
storageContainerName:
description: Storage container name for log files.
example: mongodb-logs
type: string
required:
- id
- logTypes
- type
title: Log Integration Response
type: object
x-xgen-discriminator:
propertyName: type
mapping:
AZURE_LOG_EXPORT:
properties:
- prefixPath
- roleId
- storageAccountName
- storageContainerName
required:
- prefixPath
- roleId
- storageAccountName
- storageContainerName
DATADOG_LOG_EXPORT:
properties:
- apiKey
- region
required:
- apiKey
- region
GCS_LOG_EXPORT:
properties:
- bucketName
- prefixPath
- roleId
required:
- bucketName
- prefixPath
- roleId
OTEL_LOG_EXPORT:
properties:
- otelEndpoint
- otelSuppliedHeaders
required:
- otelEndpoint
- otelSuppliedHeaders
S3_LOG_EXPORT:
properties:
- bucketName
- iamRoleId
- kmsKey
- prefixPath
- useLegacyPathStructure
required:
- bucketName
- iamRoleId
- prefixPath
SPLUNK_LOG_EXPORT:
properties:
- hecToken
- hecUrl
required:
- hecToken
- hecUrl
ManagedNamespaces:
properties:
collection:
description: Human-readable label of the collection to manage for this Global Cluster.
type: string
customShardKey:
description: Database parameter used to divide the *collection* into shards. Global clusters require a compound shard key. This compound shard key combines the location parameter and the user-selected custom key.
type: string
db:
description: Human-readable label of the database to manage for this Global Cluster.
type: string
isCustomShardKeyHashed:
default: false
description: Flag that indicates whether someone hashed the custom shard key for the specified collection. If you set this value to `false`, MongoDB Cloud uses ranged sharding.
externalDocs:
description: Hashed Shard Keys
url: https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection/#hashed-shard-keys
type: boolean
isShardKeyUnique:
default: false
description: Flag that indicates whether someone [hashed](https://www.mongodb.com/docs/manual/reference/method/sh.shardCollection/#hashed-shard-keys) the custom shard key. If this parameter returns `false`, this cluster uses [ranged sharding](https://www.mongodb.com/docs/manual/core/ranged-sharding/).
type: boolean
numInitialChunks:
description: Minimum number of chunks to create initially when sharding an empty collection with a [hashed shard key](https://www.mongodb.com/docs/manual/core/hashed-sharding/).
externalDocs:
description: Global Cluster Sharding
url: https://www.mongodb.com/docs/atlas/shard-global-collection/
format: int64
maximum: 8192
type: integer
presplitHashedZones:
default: false
description: Flag that indicates whether MongoDB Cloud should create and distribute initial chunks for an empty or non-existing collection. MongoDB Cloud distributes data based on the defined zones and zone ranges for the collection.
externalDocs:
description: Hashed Shard Key
url: https://www.mongodb.com/docs/manual/core/hashed-sharding/
type: boolean
required:
- collection
- customShardKey
- db
type: object
MdbAvailableVersion:
properties:
cloudProvider:
description: Cloud service provider on which MongoDB Cloud provisions the hosts. Set dedicated clusters to `AWS`, `GCP`, `AZURE` or `TENANT`.
type: string
defaultStatus:
description: Whether the version is the current default for the Instance Size and Cloud Provider.
type: string
instanceSize:
$ref: "#/components/schemas/BaseCloudProviderInstanceSize"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
version:
description: The MongoDB Major Version in question.
externalDocs:
description: MongoDB Versioning
url: https://www.mongodb.com/docs/manual/reference/versioning/
type: string
type: object
MeasurementDiskPartition:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
partitionName:
description: Human-readable label of the disk or partition to which the measurements apply.
readOnly: true
type: string
type: object
MeasurementsCollStatsLatencyCluster:
properties:
clusterId:
description: Unique identifier for Clusters.
readOnly: true
type: string
clusterView:
description: Cluster topology view.
readOnly: true
type: string
collectionName:
description: Human-readable label that identifies the collection.
readOnly: true
type: string
databaseName:
description: Human-readable label that identifies the database that the specified MongoDB process serves.
readOnly: true
type: string
end:
description: Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
measurements:
description: List that contains measurements and their data points.
items:
$ref: "#/components/schemas/MetricsMeasurement"
readOnly: true
type: array
processId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
start:
description: Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
MeasurementsCollStatsLatencyHost:
properties:
collectionName:
description: Human-readable label that identifies the collection.
readOnly: true
type: string
databaseName:
description: Human-readable label that identifies the database that the specified MongoDB process serves.
readOnly: true
type: string
end:
description: Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
measurements:
description: List that contains measurements and their data points.
items:
$ref: "#/components/schemas/MetricsMeasurement"
readOnly: true
type: array
processId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
start:
description: Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
MeasurementsIndexes:
properties:
collectionName:
description: Human-readable label that identifies the collection.
readOnly: true
type: string
databaseName:
description: Human-readable label that identifies the database that the specified MongoDB process serves.
readOnly: true
type: string
end:
description: Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
indexIds:
description: List that contains the Atlas Search index identifiers.
items:
description: Unique 24-hexadecimal digit string that identifies the index.
type: string
readOnly: true
type: array
indexStatsMeasurements:
description: List that contains the Atlas Search index stats measurements.
items:
$ref: "#/components/schemas/MetricsMeasurement"
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
processId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
start:
description: Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
MeasurementsNonIndex:
properties:
end:
description: Date and time that specifies when to stop retrieving measurements. If you set **end**, you must set **start**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Duration that specifies the interval between measurement data points. The parameter expresses its value in ISO 8601 timestamp format in UTC. If you set this parameter, you must set either **period** or **start** and **end**.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project. The project contains MongoDB processes that you want to return. The MongoDB process can be either the `mongod` or `mongos`.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hardwareMeasurements:
description: List that contains the Atlas Search hardware measurements.
items:
$ref: "#/components/schemas/MetricsMeasurement"
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
processId:
description: Combination of hostname and Internet Assigned Numbers Authority (IANA) port that serves the MongoDB process. The host must be the hostname, fully qualified domain name (FQDN), or Internet Protocol address (IPv4 or IPv6) of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests.
example: mongodb.example.com:27017
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
readOnly: true
type: string
start:
description: Date and time that specifies when to start retrieving measurements. If you set **start**, you must set **end**. You can't set this parameter and **period** in the same request. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
statusMeasurements:
description: List that contains the Atlas Search status measurements.
items:
$ref: "#/components/schemas/MetricsMeasurement"
readOnly: true
type: array
type: object
MesurementsDatabase:
properties:
databaseName:
description: Human-readable label that identifies the database that the specified MongoDB process serves.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
MetricDataPoint:
description: Value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.
properties:
timestamp:
description: Date and time when this data point occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
value:
description: Value that comprises this data point.
readOnly: true
type: number
readOnly: true
type: object
MetricDataPoint_Atlas:
description: Value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.
properties:
timestamp:
description: Date and time when this data point occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
value:
description: Value that comprises this data point.
readOnly: true
type: number
readOnly: true
type: object
MetricIntegrationRequest:
description: Request schema for creating a metric integration.
properties:
aggregationTemporality:
description: The temporality to send to the metric integration.
type: string
authType:
description: Authentication method the integration uses when exporting metrics to the endpoint. `HEADER` authenticates with the static HTTP headers provided in the `headers` field, which must be set when this value is used. `OAUTH2` acquires a bearer token from an OAuth 2.0 token endpoint using the `oauth` field.
type: string
endpoint:
description: OpenTelemetry collector endpoint URL. Must use HTTPS.
example: https://otel-collector.example.com:4318/v1/metrics
maxLength: 2048
type: string
headers:
description: HTTP headers for authentication and configuration. Total size limit 2KB. Required when `authType` is `HEADER`.
items:
$ref: "#/components/schemas/Header"
maxItems: 10
minItems: 1
type: array
writeOnly: true
integrationType:
description: Type of metric integration. Identifies which protocol will be used for the integration. This value cannot be modified after the integration is created.
type: string
metricSelection:
description: Array of metric categories to export. Determines which types of metrics are sent to the integration.
items:
type: string
maxItems: 30
minItems: 1
type: array
uniqueItems: true
oauth:
$ref: "#/components/schemas/OAuthConfigRequest"
providerType:
description: The provider type for the metric integration. Identifies the third-party service provider.
type: string
required:
- aggregationTemporality
- authType
- endpoint
- integrationType
- metricSelection
- providerType
title: Metric Integration Request
type: object
MetricIntegrationResponse:
description: Response schema for metric integration operations.
properties:
aggregationTemporality:
description: The temporality to send to the metric integration.
type: string
authType:
description: Authentication method the integration uses when exporting metrics to the endpoint.
type: string
endpoint:
description: OpenTelemetry collector endpoint URL.
example: https://otel-collector.example.com:4318/v1/metrics
maxLength: 2048
type: string
headersRedacted:
description: HTTP headers for authentication and configuration. Values are redacted and never returned in plaintext.
items:
$ref: "#/components/schemas/RedactedHeader"
maxItems: 10
minItems: 1
readOnly: true
type: array
integrationType:
description: Type of metric integration. Identifies which protocol will be used for the integration.
type: string
metricIntegrationId:
description: Unique identifier of the metric integration configuration.
example: 507f1f77bcf86cd799439011
maxLength: 24
minLength: 24
readOnly: true
type: string
x-xgen-server-computed-immutable: true
metricSelection:
description: Array of metric categories to export. Determines which types of metrics are sent to the integration.
items:
type: string
maxItems: 30
minItems: 1
type: array
uniqueItems: true
oauth:
$ref: "#/components/schemas/OAuthConfigResponse"
providerType:
description: The provider type for the metric integration. Identifies the third-party service provider.
type: string
required:
- aggregationTemporality
- authType
- endpoint
- integrationType
- metricIntegrationId
- metricSelection
- providerType
title: Metric Integration Response
type: object
MetricIntegrationUpdateRequest:
description: Request schema for updating a metric integration. Omitted OAuth fields keep their stored values. An explicit null, an empty `scopes` array, or an empty `tokenRequestParams` object clears that field. Omitting `clientSecret` keeps the stored secret.
properties:
aggregationTemporality:
description: The temporality to send to the metric integration.
type: string
authType:
description: Authentication method the integration uses when exporting metrics to the endpoint. `HEADER` authenticates with the static HTTP headers provided in the `headers` field, which must be set when this value is used. `OAUTH2` acquires a bearer token from an OAuth 2.0 token endpoint using the `oauth` field.
type: string
endpoint:
description: OpenTelemetry collector endpoint URL. Must use HTTPS.
example: https://otel-collector.example.com:4318/v1/metrics
maxLength: 2048
type: string
headers:
description: HTTP headers for authentication and configuration. Total size limit 2KB. Required when `authType` is `HEADER`.
items:
$ref: "#/components/schemas/Header"
maxItems: 10
minItems: 1
type: array
writeOnly: true
integrationType:
description: Type of metric integration. Identifies which protocol will be used for the integration. This value cannot be modified after the integration is created.
type: string
metricSelection:
description: Array of metric categories to export. Determines which types of metrics are sent to the integration.
items:
type: string
maxItems: 30
minItems: 1
type: array
uniqueItems: true
oauth:
$ref: "#/components/schemas/OAuthConfigRequest"
providerType:
description: The provider type for the metric integration. Identifies the third-party service provider.
type: string
required:
- aggregationTemporality
- authType
- endpoint
- integrationType
- metricSelection
- providerType
title: Metric Integration Update Request
type: object
MetricsMeasurement:
properties:
dataPoints:
description: List that contains the value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.
items:
$ref: "#/components/schemas/MetricDataPoint"
readOnly: true
type: array
name:
description: Human-readable label of the measurement that this data point covers.
readOnly: true
type: string
units:
description: Element used to quantify the measurement. The resource returns units of throughput, storage, and time.
readOnly: true
type: string
type: object
MetricsMeasurement_Atlas:
properties:
dataPoints:
description: List that contains the value of, and metadata provided for, one data point generated at a particular moment in time. If no data point exists for a particular moment in time, the `value` parameter returns `null`.
items:
$ref: "#/components/schemas/MetricDataPoint_Atlas"
readOnly: true
type: array
name:
description: Human-readable label of the measurement that this data point covers.
readOnly: true
type: string
units:
description: Element used to quantify the measurement. The resource returns units of throughput, storage, and time.
readOnly: true
type: string
type: object
MongoDBAccessLogs:
description: Authentication attempt, one per object, made against the cluster.
properties:
authResult:
description: Flag that indicates whether the response should return successful authentication attempts only.
type: boolean
authSource:
description: Database against which someone attempted to authenticate.
readOnly: true
type: string
failureReason:
description: Reason that the authentication failed. Null if authentication succeeded.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
readOnly: true
type: string
hostname:
description: Human-readable label that identifies the hostname of the target node that received the authentication attempt.
readOnly: true
type: string
ipAddress:
description: Internet Protocol address that attempted to authenticate with the database.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
logLine:
description: Text of the host log concerning the authentication attempt.
readOnly: true
type: string
timestamp:
description: Date and time when someone made this authentication attempt. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
readOnly: true
type: string
username:
description: Username used to authenticate against the database.
readOnly: true
type: string
type: object
MongoDBAccessLogsList:
properties:
accessLogs:
description: Authentication attempt, one per object, made against the cluster.
items:
$ref: "#/components/schemas/MongoDBAccessLogs"
readOnly: true
type: array
type: object
NamespaceObj:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
properties:
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
readOnly: true
type: string
type:
default: collection
description: Human-readable label that identifies the type of namespace.
readOnly: true
type: string
readOnly: true
type: object
Namespaces:
properties:
namespaces:
description: List that contains each combination of database, collection, and type on the specified host.
items:
$ref: "#/components/schemas/NamespaceObj"
readOnly: true
type: array
uniqueItems: true
type: object
NamespacesRequest:
properties:
namespaces:
description: List of namespace strings (combination of database and collection) on the specified host or cluster.
items:
description: Human-readable label that identifies the namespace on the specified host or cluster. The resource expresses this parameter value as `.`.
type: string
writeOnly: true
type: array
uniqueItems: true
writeOnly: true
type: object
NetworkPermissionEntry:
properties:
awsSecurityGroup:
description: Unique string of the Amazon Web Services (AWS) security group that you want to add to the project's IP access list. Your IP access list entry can be one `awsSecurityGroup`, one `cidrBlock`, or one `ipAddress`. You must configure Virtual Private Connection (VPC) peering for your project before you can add an AWS security group to an IP access list. You cannot set AWS security groups as temporary access list entries. Don't set this parameter if you set `cidrBlock` or `ipAddress`.
pattern: ^([0-9]*/)?sg-([0-9]*)
type: string
cidrBlock:
description: Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation that you want to add to the project's IP access list. Your IP access list entry can be one `awsSecurityGroup`, one `cidrBlock`, or one `ipAddress`. Don't set this parameter if you set `awsSecurityGroup` or `ipAddress`.
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})?$
type: string
comment:
description: Remark that explains the purpose or scope of this IP access list entry.
maxLength: 80
type: string
deleteAfterDate:
description: Date and time after which MongoDB Cloud deletes the temporary access list entry. This parameter expresses its value in the ISO 8601 timestamp format in UTC and can include the time zone designation. The date must be later than the current date but no later than one week after you submit this request. The resource returns this parameter if you specified an expiration date when creating this IP access list entry.
format: date-time
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the IP access list to which you want to add one or more entries.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
ipAddress:
description: IP address that you want to add to the project's IP access list. Your IP access list entry can be one `awsSecurityGroup`, one `cidrBlock`, or one `ipAddress`. Don't set this parameter if you set `awsSecurityGroup` or `cidrBlock`.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
NetworkPermissionEntryStatus:
properties:
STATUS:
description: |-
State of the access list entry when MongoDB Cloud made this request.
`ACTIVE`: This access list entry applies to all relevant cloud providers.
`PENDING`: MongoDB Cloud has started to add access list entry. This access list entry may not apply to all cloud providers at the time of this request.
`FAILED`: MongoDB Cloud didn't succeed in adding this access list entry.
readOnly: true
type: string
required:
- STATUS
type: object
NumberMetricUnits:
description: Element used to express the quantity. This can be an element of time, storage capacity, and the like.
example: COUNT
title: Number Metric Units
type: string
OAuthConfigRequest:
description: OAuth 2.0 client credentials configuration. Required when `authType` is `OAUTH2`. Secrets are never returned.
properties:
clientAuthMethod:
description: How the client authenticates to the token endpoint. `CLIENT_SECRET` sends a shared secret. `PRIVATE_KEY_JWT` signs a client assertion with an Atlas-generated, Atlas-managed key. Register the returned JWKS URL with your identity provider.
type: string
clientId:
description: OAuth 2.0 client identifier registered with the token endpoint.
example: atlas-otel
maxLength: 2048
type: string
clientSecret:
description: Shared client secret. Required when `clientAuthMethod` is `CLIENT_SECRET`, and rejected for `PRIVATE_KEY_JWT`. Encrypted at rest and never returned.
format: password
type: string
writeOnly: true
scopes:
description: Optional OAuth 2.0 scopes requested on the token, sent as a space delimited `scope` parameter. Applies to both client authentication methods.
items:
maxLength: 256
type: string
maxItems: 20
type: array
uniqueItems: true
tokenEndpoint:
description: OAuth 2.0 token endpoint URL. Must use HTTPS.
example: https://idp.example.com/oauth2/token
maxLength: 2048
type: string
tokenRequestParams:
additionalProperties:
description: Optional provider-specific parameters added to the token request, for example a resource indicator. Applies to both client authentication methods.
example: '{"resource":"https://otel.example.com/metrics"}'
maxProperties: 10
type: string
description: Optional provider-specific parameters added to the token request, for example a resource indicator. Applies to both client authentication methods.
example:
resource: https://otel.example.com/metrics
maxProperties: 10
type: object
required:
- clientAuthMethod
- clientId
- tokenEndpoint
title: OAuth Config Request
type: object
OAuthConfigResponse:
description: OAuth 2.0 configuration returned for a metric integration. Secrets are never returned.
properties:
clientAuthMethod:
description: How the client authenticates to the token endpoint.
type: string
clientId:
description: OAuth 2.0 client identifier registered with the token endpoint.
maxLength: 2048
type: string
scopes:
description: OAuth 2.0 scopes requested on the token.
items:
maxLength: 256
type: string
maxItems: 20
type: array
uniqueItems: true
signingKeyInfo:
$ref: "#/components/schemas/OAuthSigningKeyInfo"
tokenEndpoint:
description: OAuth 2.0 token endpoint URL.
maxLength: 2048
type: string
tokenRequestParams:
additionalProperties:
description: Provider-specific parameters added to the token request.
maxProperties: 10
type: string
description: Provider-specific parameters added to the token request.
maxProperties: 10
type: object
required:
- clientAuthMethod
- clientId
- tokenEndpoint
title: OAuth Config Response
type: object
OAuthSigningKeyInfo:
description: Read-only metadata for the Atlas-managed signing key used by `PRIVATE_KEY_JWT`. Present only for that method. Register the `jwksUri` with your identity provider. Atlas rotates the underlying key without changing this URL.
properties:
algorithm:
description: Signing algorithm of the Atlas-managed key.
example: RS256
readOnly: true
type: string
createdAt:
description: When the currently active signing key was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
jwksUri:
description: Public JWKS URL serving this integration's signing keys. Fixed for the lifetime of the integration.
example: https://cloud.mongodb.com/api/keys/clientJwks/9f6c2a1e-8b3d-4e7a-a2c5-1f0e9d41d000
readOnly: true
type: string
kid:
description: Key ID stamped on client assertions, the `SHA-1` thumbprint of the key certificate in uppercase hexadecimal. Changes when Atlas rotates the key.
readOnly: true
type: string
readOnly: true
title: OAuth Signing Key Info
type: object
ObjectStoragePrivateEndpointRequest:
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
regionName:
description: Cloud provider region of the S3 bucket that the Object Storage private endpoint accesses. For same-region endpoints, this is also the region where the VPC interface endpoint is deployed.
type: string
vpcRegionName:
description: Cloud provider region in which the VPC interface endpoint is deployed. Omit to deploy the interface endpoint in the same region as the S3 bucket (same-region endpoint). Set to a region different from `regionName` to create a cross-region endpoint.
type: string
type: object
ObjectStoragePrivateEndpointResponse:
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
errorMessage:
description: Error message for failures associated with the Object Storage private endpoint.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the Private Endpoint Service.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
privateEndpointConnectionName:
description: Connection name of the Private Endpoint.
readOnly: true
type: string
regionName:
description: Cloud provider region in which the Object Storage bucket is located. For cross-region endpoints, this differs from `vpcRegionName`, which is the region in which the VPC interface endpoint is deployed.
type: string
status:
description: State of the Object Storage private endpoint.
readOnly: true
type: string
vpcRegionName:
description: Cloud provider region in which the VPC interface endpoint is deployed. Echoes `regionName` for same-region endpoints.
type: string
type: object
OnlineArchiveSchedule:
description: Regular frequency and duration when archiving process occurs.
properties:
type:
description: Type of schedule.
type: string
endHour:
description: Hour of the day when the scheduled window to run one online archive ends. This field uses the UTC time zone. The window must have a duration of at least two hours. If the end time is before or equal to the start time, the window extends to the next day.
format: int32
maximum: 23
minimum: 0
type: integer
endMinute:
description: Minute of the hour when the scheduled window to run one online archive ends. This field uses the UTC time zone. The window must have a duration of at least two hours. If the end time is before or equal to the start time, the window extends to the next day.
format: int32
maximum: 59
minimum: 0
type: integer
startHour:
description: Hour of the day when the scheduled window to run one online archive starts. This field uses the UTC time zone.
format: int32
maximum: 23
minimum: 0
type: integer
startMinute:
description: Minute of the hour when the scheduled window to run one online archive starts. This field uses the UTC time zone.
format: int32
maximum: 59
minimum: 0
type: integer
dayOfWeek:
description: Day of the week when the scheduled archive starts. The week starts with Monday (`1`) and ends with Sunday (`7`).
format: int32
maximum: 7
minimum: 1
type: integer
dayOfMonth:
description: Day of the month when the scheduled archive starts.
format: int32
maximum: 31
minimum: 1
type: integer
required:
- type
title: Online Archive Schedule
type: object
x-xgen-discriminator:
propertyName: type
mapping:
DAILY:
properties:
- endHour
- endMinute
- startHour
- startMinute
DEFAULT:
properties: []
MONTHLY:
properties:
- dayOfMonth
- endHour
- endMinute
- startHour
- startMinute
WEEKLY:
properties:
- dayOfWeek
- endHour
- endMinute
- startHour
- startMinute
OrgAssociatedInvoiceResponse:
description: Response containing associated invoices for an organization.
properties:
associatedInvoices:
description: List of invoices associated with the organization for the specified period.
items:
$ref: "#/components/schemas/AssociatedInvoice"
readOnly: true
type: array
month:
description: Two-digit number that represents the month of the associated invoices.
example: "01"
readOnly: true
type: string
year:
description: Four-digit number that represents the year of the associated invoices.
example: "2024"
readOnly: true
type: string
type: object
OrgDelegationSettingsResponse:
properties:
delegatedMcpAccess:
description: Policy that controls how MCP (Model Context Protocol) delegated access is permitted within this organization. Possible values are `DISALLOWED`, `READ_ONLY`, and `READ_WRITE`. Defaults to `DISALLOWED`.
type: string
delegatedPartnerAccess:
description: Policy that controls whether partner delegated access is permitted within this organization. Possible values are `DISALLOWED` and `READ_WRITE`. Defaults to `DISALLOWED`.
type: string
idleRefreshTokenLifetime:
description: Maximum number of seconds a refresh token may be idle before it expires. When not set, the system default applies.
format: int64
maximum: 31536000
minimum: 1
type: integer
maximumRefreshTokenLifetime:
description: Maximum lifetime of a refresh token in seconds, regardless of activity. When not set, the system default applies.
format: int64
maximum: 31536000
minimum: 1
type: integer
type: object
OrgDelegationSettingsUpdateRequest:
properties:
delegatedMcpAccess:
description: Policy that controls how MCP (Model Context Protocol) delegated access is permitted within this organization. Possible values are `DISALLOWED`, `READ_ONLY`, and `READ_WRITE`. Defaults to `DISALLOWED`.
type: string
delegatedPartnerAccess:
description: Policy that controls whether partner delegated access is permitted within this organization. Possible values are `DISALLOWED` and `READ_WRITE`. Defaults to `DISALLOWED`.
type: string
idleRefreshTokenLifetime:
description: Maximum number of seconds a refresh token may be idle before it expires. Omit to leave unchanged; set to null to reset to the system default. Must be between 1 and 31536000 (1 year) when provided.
format: int64
maximum: 31536000
minimum: 1
type: integer
maximumRefreshTokenLifetime:
description: Maximum lifetime of a refresh token in seconds, regardless of activity. Omit to leave unchanged; set to null to reset to the system default. Must be between 1 and 31536000 (1 year) when provided.
format: int64
maximum: 31536000
minimum: 1
type: integer
type: object
OrgFederationSettings:
description: Details that define how to connect one MongoDB Cloud organization to one federated authentication service.
properties:
federatedDomains:
description: List of domains associated with the organization's identity provider.
items:
type: string
type: array
uniqueItems: true
hasRoleMappings:
description: Flag that indicates whether this organization has role mappings configured.
type: boolean
id:
description: Unique 24-hexadecimal digit string that identifies this federation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
identityProviderId:
description: Legacy 20-hexadecimal digit string that identifies the identity provider connected to this organization.
example: c2777a9eca931f29fc2f
pattern: ^([a-f0-9]{20})$
type: string
identityProviderStatus:
description: String enum that indicates whether the identity provider is active.
type: string
required:
- federatedDomains
title: Organization Federation Settings
type: object
OrgGroup:
properties:
clusters:
description: Settings that describe the clusters in each project that the API key is authorized to view.
items:
$ref: "#/components/schemas/CloudCluster"
readOnly: true
type: array
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
readOnly: true
type: string
groupName:
description: Human-readable label that identifies the project.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
orgId:
description: Unique 24-hexadecimal character string that identifies the organization that contains the project.
readOnly: true
type: string
orgName:
description: Human-readable label that identifies the organization that contains the project.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
planType:
description: Human-readable label that indicates the plan type.
readOnly: true
type: string
tags:
description: List of human-readable labels that categorize the specified project. MongoDB Cloud returns an empty array.
items:
readOnly: true
type: string
readOnly: true
type: array
type: object
OrgLogIntegrationHeader:
description: HTTP header with name and value.
properties:
name:
description: Header name.
example: Authorization
type: string
value:
description: Header value. Redacted in responses.
example: Bearer token123
format: password
type: string
required:
- name
- value
type: object
OrgLogIntegrationRequest:
description: Request schema for creating an organization-level log integration.
properties:
logTypes:
description: Array of log types exported by this integration.
example:
- EVENTS
items:
type: string
maxItems: 1
type: array
uniqueItems: true
type:
description: Human-readable label that identifies the service to which you want to integrate with Atlas. The value must match the log integration type. This value cannot be modified after the integration is created.
type: string
otelEndpoint:
description: OpenTelemetry collector endpoint URL. Must be HTTPS and not exceed 2048 characters.
example: https://otel-collector.example.com:4318/v1/logs
type: string
otelSuppliedHeaders:
description: HTTP headers for authentication and configuration. Maximum 10 headers, total size limit 2KB.
items:
$ref: "#/components/schemas/OrgLogIntegrationHeader"
maxItems: 10
minItems: 1
type: array
required:
- logTypes
- type
title: Organization Log Integration Request
type: object
x-xgen-discriminator:
propertyName: type
mapping:
OTEL_LOG_EXPORT:
properties:
- otelEndpoint
- otelSuppliedHeaders
required:
- otelEndpoint
- otelSuppliedHeaders
OrgLogIntegrationResponse:
description: Response schema for organization-level log integration operations.
properties:
id:
description: Unique 24-character hexadecimal digit string that identifies the log integration configuration.
example: 507f1f77bcf86cd799439011
readOnly: true
type: string
logTypes:
description: Array of log types exported by this integration.
example:
- EVENTS
items:
type: string
maxItems: 1
type: array
uniqueItems: true
type:
description: Human-readable label that identifies the service to which you want to integrate with Atlas. The value must match the log integration type. This value cannot be modified after the integration is created.
type: string
otelEndpoint:
description: OpenTelemetry collector endpoint URL.
example: https://otel-collector.example.com:4318/v1/logs
type: string
otelSuppliedHeaders:
description: HTTP headers for authentication and configuration. Maximum 10 headers, total size limit 2KB. Values are redacted.
items:
$ref: "#/components/schemas/OrgLogIntegrationHeader"
maxItems: 10
minItems: 1
type: array
required:
- id
- logTypes
- type
title: Organization Log Integration Response
type: object
x-xgen-discriminator:
propertyName: type
mapping:
OTEL_LOG_EXPORT:
properties:
- otelEndpoint
- otelSuppliedHeaders
required:
- otelEndpoint
- otelSuppliedHeaders
OrgLogIntegrationUpdateRequest:
description: Request schema for updating an organization-level log integration.
properties:
logTypes:
description: Array of log types exported by this integration.
example:
- EVENTS
items:
type: string
maxItems: 1
type: array
uniqueItems: true
type:
description: Human-readable label that identifies the service to which you want to integrate with Atlas. The value must match the log integration type. This value cannot be modified after the integration is created.
type: string
otelEndpoint:
description: OpenTelemetry collector endpoint URL. Must be HTTPS and not exceed 2048 characters.
example: https://otel-collector.example.com:4318/v1/logs
type: string
otelSuppliedHeaders:
description: HTTP headers for authentication and configuration. Maximum 10 headers, total size limit 2KB.
items:
$ref: "#/components/schemas/OrgLogIntegrationHeader"
maxItems: 10
minItems: 1
type: array
required:
- logTypes
- type
title: Organization Log Integration Update Request
type: object
x-xgen-discriminator:
propertyName: type
mapping:
OTEL_LOG_EXPORT:
properties:
- otelEndpoint
- otelSuppliedHeaders
required:
- otelEndpoint
- otelSuppliedHeaders
OrgMcpConfigResponse:
properties:
clientId:
description: Unique identifier for the Service Account client associated with this MCP configuration. Use this Service Account to connect to the Atlas Remote MCP.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
readOnly: true
type: string
egressClientId:
description: Unique identifier for the egress Service Account client associated with this MCP configuration. This Service Account is managed by MongoDB Atlas.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
readOnly: true
type: string
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigId:
description: Unique identifier that identifies this MCP configuration.
example: b9254bc4-d6cc-4325-abf4-fb9d2a9de00a
pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
readOnly: true
type: string
mcpConfigName:
description: Human-readable name that identifies this MCP configuration.
type: string
roles:
description: List of organization roles associated with this MCP configuration.
items:
description: Organization roles available for Service Accounts.
type: string
maxItems: 100
type: array
x-xgen-array-semantic: set
type: object
OrgMcpConfigUpdateRequest:
properties:
ipAccessList:
description: List of IP access list entries that define allowed source addresses for this MCP configuration. If provided, replaces the existing IP access list.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
maxItems: 200
type: array
x-xgen-array-semantic: set
mcpConfigName:
description: Updated human-readable name for this MCP configuration.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: List of organization roles associated with this MCP configuration. If provided, replaces the existing list of roles.
items:
description: Organization roles available for Service Accounts.
type: string
maxItems: 100
minItems: 1
type: array
x-xgen-array-semantic: set
type: object
OrgServiceAccount:
description: Organization Service Account that Atlas created for the organization.
properties:
clientId:
description: The Client ID of the Service Account.
example: mdb_sa_id_1234567890abcdef12345678
pattern: ^mdb_sa_id_[a-fA-F\d]{24}$
type: string
createdAt:
description: The date that the Service Account was created on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
description:
description: Human readable description for the Service Account.
type: string
name:
description: Human-readable name for the Service Account.
type: string
roles:
description: A list of Organization roles associated with the Service Account.
items:
description: Organization roles available for Service Accounts.
type: string
type: array
uniqueItems: true
secrets:
description: A list of secrets associated with the specified Service Account.
items:
$ref: "#/components/schemas/ServiceAccountSecret"
type: array
uniqueItems: true
systemManaged:
description: Indicates whether the Service Account is system managed.
readOnly: true
type: boolean
readOnly: true
required:
- systemManaged
type: object
OrgServiceAccountRequest:
description: Organization Service Account that Atlas creates for this organization. If omitted, Atlas doesn't create an organization Service Account for this organization. If specified, this object requires all body parameters. Note that API Keys cannot be specified in the same request.
properties:
description:
description: Human readable description for the Service Account.
maxLength: 250
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
name:
description: Human-readable name for the Service Account. The name is modifiable and does not have to be unique.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: A list of organization-level roles for the Service Account.
items:
description: Organization roles available for Service Accounts.
type: string
minItems: 1
type: array
secretExpiresAfterHours:
description: The expiration time of the new Service Account secret, provided in hours. The minimum and maximum allowed expiration times are subject to change and are controlled by the organization's settings. Required unless `withoutInitialSecret` is true.
example: 8
exclusiveMinimum: true
format: int32
minimum: 0
type: integer
withoutInitialSecret:
default: false
description: "If true, creates the Service Account without generating an initial secret. `secretExpiresAfterHours` must not be set when this is true. Defaults to false, which preserves existing behavior: a secret is generated and returned in the response. Use the `CreateOrgServiceAccountSecret` endpoint to add a secret later."
type: boolean
required:
- description
- name
- roles
type: object
OrgServiceAccountUpdateRequest:
properties:
description:
description: Human readable description for the Service Account.
maxLength: 250
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
name:
description: Human-readable name for the Service Account. The name is modifiable and does not have to be unique.
maxLength: 64
minLength: 1
pattern: ^[\p{L}\p{N}\-_.,' ]*$
type: string
roles:
description: A list of organization-level roles for the Service Account.
items:
description: Organization roles available for Service Accounts.
type: string
type: array
type: object
OrgUserRequest:
properties:
roles:
$ref: "#/components/schemas/OrgUserRolesRequest"
teamIds:
description: List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
items:
type: string
type: array
uniqueItems: true
writeOnly: true
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
type: string
writeOnly: true
required:
- roles
- username
type: object
OrgUserResponse:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgMembershipStatus:
description: "String enum that indicates the user's organization membership status: ACTIVE (member), PENDING (invited), `INVITATION_EXPIRED` (invitation expired), or `INVITATION_REJECTED` (invitation declined)."
readOnly: true
type: string
roles:
$ref: "#/components/schemas/OrgUserRolesResponse"
teamIds:
description: List of unique 24-hexadecimal digit strings that identifies the teams to which this MongoDB Cloud user belongs.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
readOnly: true
type: array
uniqueItems: true
username:
description: Email address that represents the username of the MongoDB Cloud user.
format: email
readOnly: true
type: string
invitationCreatedAt:
description: Date and time when MongoDB Cloud sent the invitation. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC. This field is absent for active users.
format: date-time
readOnly: true
type: string
invitationExpiresAt:
description: Date and time when the invitation from MongoDB Cloud expires. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC. This field is absent for active users and null for rejected invitations.
format: date-time
readOnly: true
type: string
inviterUsername:
description: Username of the MongoDB Cloud user who sent the invitation to join the organization.
format: email
readOnly: true
type: string
country:
description: Two-character alphabetical string that identifies the MongoDB Cloud user's geographic location. This parameter uses the ISO 3166-1a2 code format.
example: US
pattern: ^([A-Z]{2})$
readOnly: true
type: string
createdAt:
description: Date and time when MongoDB Cloud created the current account. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
firstName:
description: First or given name that belongs to the MongoDB Cloud user.
example: John
readOnly: true
type: string
lastAuth:
description: Date and time when the current account last authenticated. This value is in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
lastName:
description: Last name, family name, or surname that belongs to the MongoDB Cloud user.
example: Doe
readOnly: true
type: string
mobileNumber:
description: Mobile phone number that belongs to the MongoDB Cloud user.
pattern: (?:(?:\\+?1\\s*(?:[.-]\\s*)?)?(?:(\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\s*)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\s*(?:[.-]\\s*)?)([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\s*(?:[.-]\\s*)?([0-9]{4})$
readOnly: true
type: string
required:
- id
- orgMembershipStatus
- roles
- username
type: object
x-xgen-discriminator:
propertyName: orgMembershipStatus
mapping:
ACTIVE:
properties:
- country
- createdAt
- firstName
- lastAuth
- lastName
- mobileNumber
required:
- createdAt
- firstName
- lastName
INVITATION_EXPIRED:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
INVITATION_REJECTED:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
PENDING:
properties:
- invitationCreatedAt
- invitationExpiresAt
- inviterUsername
required:
- invitationCreatedAt
- inviterUsername
OrgUserRolesRequest:
description: Organization and project level roles to assign the MongoDB Cloud user within one organization.
properties:
groupRoleAssignments:
description: List of project level role assignments to assign the MongoDB Cloud user.
items:
$ref: "#/components/schemas/GroupRoleAssignment"
type: array
orgRoles:
description: One or more organization level roles to assign the MongoDB Cloud user.
items:
description: Organization-level role.
type: string
minItems: 1
type: array
uniqueItems: true
required:
- orgRoles
type: object
writeOnly: true
OrgUserRolesResponse:
description: Organization- and project-level roles assigned to one MongoDB Cloud user within one organization.
properties:
groupRoleAssignments:
description: List of project-level role assignments assigned to the MongoDB Cloud user.
items:
$ref: "#/components/schemas/GroupRoleAssignment"
type: array
orgRoles:
description: One or more organization-level roles assigned to the MongoDB Cloud user.
items:
description: Organization-level role.
type: string
type: array
uniqueItems: true
readOnly: true
type: object
OrgUserUpdateRequest:
properties:
roles:
$ref: "#/components/schemas/OrgUserRolesRequest"
teamIds:
description: List of unique 24-hexadecimal digit strings that identifies the teams to assign the MongoDB Cloud user.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
uniqueItems: true
writeOnly: true
type: object
OrganizationInvitation:
properties:
createdAt:
description: Date and time when MongoDB Cloud sent the invitation. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
expiresAt:
description: Date and time when the invitation from MongoDB Cloud expires. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
groupRoleAssignments:
description: List of projects that the user will be added to when they accept their invitation to the organization.
items:
$ref: "#/components/schemas/GroupRole"
type: array
uniqueItems: true
id:
description: Unique 24-hexadecimal digit string that identifies this invitation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
inviterUsername:
description: Email address of the MongoDB Cloud user who sent the invitation to join the organization.
format: email
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgName:
description: Human-readable label that identifies this organization.
pattern: ^[\p{L}\p{N}\-_.(),:&@+']{1,64}$
type: string
roles:
description: One or more organization-level roles to assign to the MongoDB Cloud user.
items:
type: string
type: array
uniqueItems: true
teamIds:
description: List of unique 24-hexadecimal digit strings that identifies each team.
items:
description: Unique 24-hexadecimal digit string that identifies the team.
type: string
readOnly: true
type: array
uniqueItems: true
username:
description: Email address of the MongoDB Cloud user invited to join the organization.
format: email
type: string
required:
- orgName
type: object
OrganizationInvitationGroupRoleAssignmentsRequest:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the project to which these roles belong.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
roles:
description: One or more project-level roles to assign to the MongoDB Cloud user.
externalDocs:
description: MongoDB Atlas User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
type: object
OrganizationInvitationRequest:
properties:
groupRoleAssignments:
description: List of projects that the user will be added to when they accept their invitation to the organization.
items:
$ref: "#/components/schemas/OrganizationInvitationGroupRoleAssignmentsRequest"
type: array
roles:
description: One or more organization level roles to assign to the MongoDB Cloud user.
items:
type: string
type: array
uniqueItems: true
teamIds:
description: List of teams to which you want to invite the desired MongoDB Cloud user.
items:
description: Unique 24-hexadecimal digit string that identifies the team.
type: string
type: array
uniqueItems: true
username:
description: Email address that belongs to the desired MongoDB Cloud user.
format: email
type: string
type: object
OrganizationInvitationUpdateRequest:
properties:
groupRoleAssignments:
description: List of projects that the user will be added to when they accept their invitation to the organization.
items:
$ref: "#/components/schemas/OrganizationInvitationGroupRoleAssignmentsRequest"
type: array
roles:
description: One or more organization level roles to assign to the MongoDB Cloud user.
items:
type: string
type: array
uniqueItems: true
teamIds:
description: List of teams to which you want to invite the desired MongoDB Cloud user.
items:
description: Unique 24-hexadecimal digit string that identifies the team.
type: string
type: array
uniqueItems: true
type: object
OrganizationMaintenanceSettingsResponse:
description: Maintenance configuration settings for an organization.
properties:
effectiveWaveAssignmentMode:
description: Wave assignment mode that Atlas uses when scheduling maintenance for projects in this organization. This read-only field takes precedence over `waveAssignmentMode` for scheduling. It matches `waveAssignmentMode` except when cross-organization maintenance sequencing is enabled and this organization is a linked non-paying organization, in which case it reflects the paying organization's `waveAssignmentMode`. Possible values are `MANUAL` and `ENV_TAG_MAPPING`. Defaults to `MANUAL` when no mode is configured. Omitted from GET responses when maintenance sequencing is disabled for this organization.
readOnly: true
type: string
waveAssignmentMode:
description: Mode explicitly configured for this organization that determines how maintenance waves are assigned to projects. Possible values are `MANUAL` and `ENV_TAG_MAPPING`. Omitted from the response when no explicit preference has been set; in that case `effectiveWaveAssignmentMode` reflects the value the system uses (`MANUAL` by default). Atlas uses read-only `effectiveWaveAssignmentMode` (not this field) for scheduling. In a cross-organization billing hierarchy, a linked non-paying organization cannot update its `effectiveWaveAssignmentMode` field, which inherits from the paying organization's `waveAssignmentMode`. In this case, a linked non-paying organization's `effectiveWaveAssignmentMode` and `waveAssignmentMode` might differ.
type: string
type: object
OrganizationMaintenanceSettingsUpdateRequest:
properties:
waveAssignmentMode:
description: "Mode configured for this organization that determines how maintenance waves are assigned to projects. Possible values are `MANUAL` and `ENV_TAG_MAPPING`. Defaults to `MANUAL` when unset. Set the organization to `ENV_TAG_MAPPING` mode to have Atlas derive the maintenance wave from each project's environment tag. The tag key must be `environment`. The tag value determines the wave: `development` or `test` maps to Wave 1, `staging` maps to Wave 2, and `production` maps to Wave 3. Only this field can be updated; Atlas derives read-only `effectiveWaveAssignmentMode` on GET responses and uses that value for scheduling when it differs from `waveAssignmentMode`. Omit this field to leave the current value unchanged. Specify null to reset to the default value (`MANUAL`)."
type: string
type: object
OrganizationSettings:
description: Collection of settings that configures the organization.
properties:
apiAccessListRequired:
description: Flag that indicates whether to require API operations to originate from an IP Address added to the API access list for the specified organization.
type: boolean
customSessionTimeouts:
$ref: "#/components/schemas/CustomSessionTimeouts"
genAIFeaturesEnabled:
default: true
description: Flag that indicates whether this organization has access to generative AI features. This setting only applies to Atlas Commercial and is enabled by default. Once this setting is turned on, Project Owners may be able to enable or disable individual AI features at the project level.
externalDocs:
description: Generative AI FAQs
url: https://www.mongodb.com/docs/generative-ai-faq/
type: boolean
maxServiceAccountSecretValidityInHours:
description: Number that represents the maximum period before expiry in hours for new Atlas Admin API Service Account secrets within the specified organization.
format: int32
maximum: 8760
minimum: 8
type: integer
multiFactorAuthRequired:
description: "Flag that indicates whether to require users to set up Multi-Factor Authentication (MFA) before accessing the specified organization. To learn more, see: https://www.mongodb.com/docs/atlas/security-multi-factor-authentication/."
type: boolean
operationsContact:
description: String that specifies a distribution list email address for the specified organization to receive proactive notifications about its infrastructure. The operations contact is used for notifications only and is not authorized to make decisions or approvals. Passing an explicit null clears the existing operations contact (if any). An empty string is invalid and is rejected with a validation error. Addresses are trimmed and converted to lowercase before validation; each normalized address must contain at most 254 characters.
type: string
restrictEmployeeAccess:
description: "Flag that indicates whether to block MongoDB Support from accessing Atlas infrastructure and cluster logs for any deployment in the specified organization without explicit permission. Once this setting is turned on, you can grant MongoDB Support a 24-hour bypass access to the Atlas deployment to resolve support issues. To learn more, see: https://www.mongodb.com/docs/atlas/security-restrict-support-access/."
type: boolean
securityContact:
description: String that specifies a single email address for the specified organization to receive security-related notifications. Specifying a security contact does not grant them authorization or access to Atlas for security decisions or approvals. An empty string is valid and clears the existing security contact (if any). Addresses are trimmed and converted to lowercase before validation; each normalized address must contain at most 254 characters.
type: string
streamsCrossGroupEnabled:
description: Flag that indicates whether a group's Atlas Stream Processing workspaces in this organization can create connections to other group's clusters in the same organization.
type: boolean
type: object
OutboundControlPlaneCloudProviderIPAddresses:
description: List of outbound IP addresses from the Atlas control plane, categorized by cloud provider. If your network allows inbound HTTP requests only from specific IP addresses, you must allow access from the following IP addresses so that Atlas can communicate with your webhooks and KMS.
properties:
aws:
additionalProperties:
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
items:
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in AWS. Each key identifies an Amazon Web Services (AWS) region. Each value identifies control plane IP addresses in the AWS region.
readOnly: true
type: object
azure:
additionalProperties:
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
items:
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in Azure. Each key identifies an Azure region. Each value identifies control plane IP addresses in the Azure region.
readOnly: true
type: object
gcp:
additionalProperties:
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
items:
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
readOnly: true
type: string
readOnly: true
type: array
description: Control plane IP addresses in GCP. Each key identifies a Google Cloud (GCP) region. Each value identifies control plane IP addresses in the GCP region.
readOnly: true
type: object
readOnly: true
title: Outbound Control Plane IP Addresses By Cloud Provider
type: object
OverloadProtectionSimulationRequest:
description: Request to start an overload protection simulation for a cluster.
properties:
durationSeconds:
description: Duration of the overload protection simulation in seconds.
format: int32
type: integer
required:
- durationSeconds
type: object
OverloadProtectionSimulationResponse:
description: Overload protection simulation for a cluster.
properties:
cancelRequestedAt:
description: Date and time when cancellation of the overload protection simulation was requested. This parameter is only present when a cancellation has been requested and expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster on which the simulation is running.
readOnly: true
type: string
durationSeconds:
description: Duration of the overload protection simulation in seconds.
format: int32
type: integer
expiresAt:
description: Date and time when the overload protection simulation expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
x-xgen-server-computed-immutable: true
groupId:
description: Unique 24-hexadecimal character string that identifies the project that contains the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^[a-fA-F0-9]{24}$
readOnly: true
type: string
requestDate:
description: Date and time when the overload protection simulation was requested. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
x-xgen-server-computed-immutable: true
simulationId:
description: Unique identifier of the overload protection simulation.
example: 32b6e34b3d91647abb20e7b8
pattern: ^[a-fA-F0-9]{24}$
readOnly: true
type: string
x-xgen-server-computed-immutable: true
state:
description: Current state of the overload protection simulation.
readOnly: true
type: string
required:
- clusterName
- durationSeconds
- expiresAt
- groupId
- requestDate
- simulationId
- state
type: object
PaginatedApiStreamsFailoverConnection:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsFailoverConnection"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAtlasAiModelApiKeysResponse:
description: List response for AI Model API keys at the organization and project level.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/AiModelApiKeyResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAtlasAiModelRateLimitsResponse:
description: List response for AI Model rate limits at the organization and project level.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/AiModelRateLimitResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedClusterDescription20240805:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ClusterDescription20240805"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedEventTypeDetailsResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/EventTypeDetails"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedFederationIdentityProvider:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/FederationIdentityProvider"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedFlexClusters20241113:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/FlexClusterDescription20241113"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedGroupServiceAccounts:
description: A list of Project Service Accounts.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/GroupServiceAccount"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedHostView_Atlas:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link_Atlas"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ApiHostView_Atlas"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedLogIntegrationResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/LogIntegrationResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedMetricIntegrationResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/MetricIntegrationResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrgLogIntegrationResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OrgLogIntegrationResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrgServiceAccounts:
description: A list of Organization Service Accounts.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OrgServiceAccount"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOverloadProtectionSimulationResponse:
description: List of overload protection simulations for a cluster.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OverloadProtectionSimulationResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedQueryShapes:
description: Paginated collection of query shapes. This endpoint returns a maximum of 100 results.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/QueryShapeResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedRateLimitEndpointSets:
description: A list of rate limit endpoint sets.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/RateLimitEndpointSetResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedServiceAccountGroup:
description: A list of projects associated with the Service Account.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ServiceAccountGroup"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedShardKeyAnalysisOperationResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ShardKeyAnalysisOperationResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedShardKeyAnalysisResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ShardKeyAnalysisResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedShardMetricsResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ShardMetricsResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedStreamsWorkspacePrivateEndpointResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsWorkspacePrivateEndpointResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PemFileInfo:
description: PEM file information for the identity provider's current certificates.
properties:
certificates:
description: List of certificates in the file.
items:
$ref: "#/components/schemas/X509Certificate"
type: array
fileName:
description: Human-readable label given to the file.
type: string
type: object
PemFileInfoUpdate:
description: PEM file information for the identity provider's current certificates.
properties:
certificates:
description: List of certificates in the file.
items:
$ref: "#/components/schemas/X509CertificateUpdate"
type: array
fileName:
description: Human-readable label given to the file.
type: string
type: object
PerformanceAdvisorIndex:
properties:
avgObjSize:
description: The average size of an object in the collection of this index.
format: double
readOnly: true
type: number
collation:
additionalProperties: true
description: Collation the queries behind this suggestion run with. An index only serves a query when the two share a collation, so an index created from this suggestion must be created with it. Absent when those queries use the default (simple) collation.
readOnly: true
type: object
id:
description: Unique 24-hexadecimal digit string that identifies this index.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
impact:
description: List that contains unique 24-hexadecimal character string that identifies the query shapes in this response that the Performance Advisor suggests.
items:
description: One unique 24-hexadecimal character string that identifies one query shape.
type: string
readOnly: true
type: array
index:
description: List that contains documents that specify a key in the index and its sort order.
items:
additionalProperties:
description: One index key paired with its sort order. A value of `1` indicates an ascending sort order. A value of `-1` indicates a descending sort order. Keys in indexes with multiple keys appear in the same order that they appear in the index.
format: int32
type: integer
description: One index key paired with its sort order. A value of `1` indicates an ascending sort order. A value of `-1` indicates a descending sort order. Keys in indexes with multiple keys appear in the same order that they appear in the index.
type: object
readOnly: true
type: array
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
readOnly: true
type: string
weight:
description: Estimated performance improvement that the suggested index provides. This value corresponds to **Impact** in the Performance Advisor user interface.
format: double
readOnly: true
type: number
type: object
PerformanceAdvisorOpStats:
description: Details that this resource returned about the specified query.
properties:
ms:
description: Length of time expressed during which the query finds suggested indexes among the managed namespaces in the cluster. This parameter expresses its value in milliseconds. This parameter relates to the **duration** query parameter.
format: int64
readOnly: true
type: integer
nReturned:
description: Number of results that the query returns.
format: int64
readOnly: true
type: integer
nScanned:
description: Number of documents that the query read.
format: int64
readOnly: true
type: integer
ts:
description: Date and time from which the query retrieves the suggested indexes. This parameter expresses its value in the number of seconds that have elapsed since the UNIX epoch. This parameter relates to the **since** query parameter.
externalDocs:
description: UNIX Epoch
url: https://en.wikipedia.org/wiki/Unix_time
format: int64
readOnly: true
type: integer
readOnly: true
type: object
PerformanceAdvisorResponse:
description: Response that contains Performance Advisor suggested indexes and query shapes.
properties:
message:
description: Explanation of Performance Advisor availability limitations on the current tier.
readOnly: true
type: string
scale:
$ref: "#/components/schemas/ApiClusterScale"
shapes:
description: List of query predicates, sorts, and projections that the Performance Advisor suggests.
items:
$ref: "#/components/schemas/PerformanceAdvisorShape"
readOnly: true
type: array
suggestedIndexes:
description: List that contains the documents with information about the indexes that the Performance Advisor suggests.
items:
$ref: "#/components/schemas/PerformanceAdvisorIndex"
readOnly: true
type: array
type: object
PerformanceAdvisorShape:
properties:
avgMs:
description: Average duration in milliseconds for the queries examined that match this shape.
format: int64
readOnly: true
type: integer
count:
description: Number of queries examined that match this shape.
format: int64
readOnly: true
type: integer
id:
description: Unique 24-hexadecimal digit string that identifies this shape. This string exists only for the duration of this API request.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
inefficiencyScore:
description: Average number of documents read for every document that the query returns.
externalDocs:
description: Understanding the Query Inefficiency Score
url: https://www.mongodb.com/docs/atlas/performance-advisor/#std-label-query-inefficiency-score
format: int64
readOnly: true
type: integer
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
readOnly: true
type: string
operations:
description: List that contains specific about individual queries.
items:
$ref: "#/components/schemas/PerformanceAdvisorOperation"
readOnly: true
type: array
type: object
PerformanceAdvisorSlowQuery:
description: Details of one slow query that the Performance Advisor detected.
properties:
line:
description: Text of the MongoDB log related to this slow query.
readOnly: true
type: string
metrics:
$ref: "#/components/schemas/PerformanceAdvisorSlowQueryMetrics"
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
readOnly: true
type: string
opType:
description: Operation type (read/write/command) associated with this slow query log.
readOnly: true
type: string
replicaState:
description: Replica state associated with this slow query log.
readOnly: true
type: string
readOnly: true
type: object
PerformanceAdvisorSlowQueryList:
properties:
slowQueries:
description: List of operations that the Performance Advisor detected that took longer to execute than a specified threshold.
items:
$ref: "#/components/schemas/PerformanceAdvisorSlowQuery"
readOnly: true
type: array
type: object
PerformanceAdvisorSlowQueryMetrics:
description: Metrics from a slow query log.
properties:
docsExamined:
description: The number of documents in the collection that MongoDB scanned in order to carry out the operation.
format: int64
readOnly: true
type: integer
docsExaminedReturnedRatio:
description: Ratio of documents examined to documents returned.
format: double
readOnly: true
type: number
docsReturned:
description: The number of documents returned by the operation.
format: int64
readOnly: true
type: integer
fromUserConnection:
description: This boolean will be true when the server can identify the query source as non-server. This field is only available for MDB 8.0+.
readOnly: true
type: boolean
hasAutoEmbedding:
description: Flag that indicates whether the slow query used automated embedding, where MongoDB Cloud generates embeddings from raw text at query time instead of the client supplying a precomputed vector.
readOnly: true
type: boolean
hasIndexCoverage:
description: Indicates if the query has index coverage.
readOnly: true
type: boolean
hasRerank:
description: Flag that indicates whether the slow query used the `$rerank` aggregation stage, which reorders results using Voyage AI reranking models. Always `false` for MongoDB deployments earlier than 8.3.
readOnly: true
type: boolean
hasSort:
description: This boolean will be true when a query cannot use the ordering in the index to return the requested sorted results; i.e. MongoDB must sort the documents after it receives the documents from a cursor.
readOnly: true
type: boolean
keysExamined:
description: The number of index keys that MongoDB scanned in order to carry out the operation.
format: int64
readOnly: true
type: integer
keysExaminedReturnedRatio:
description: Ratio of keys examined to documents returned.
format: double
readOnly: true
type: number
numYields:
description: The number of times the operation yielded to allow other operations to complete.
format: int64
readOnly: true
type: integer
operationExecutionTime:
description: Total execution time of a query in milliseconds.
format: int64
readOnly: true
type: integer
responseLength:
description: The length in bytes of the operation's result document.
format: int64
readOnly: true
type: integer
tokensUsed:
description: The total inference tokens consumed by this operation, including tokens used by `$rerank`. Returned only for inference queries that consumed tokens; it is omitted otherwise, including for MongoDB deployments earlier than 8.3.
example: 363
format: int64
minimum: 0
readOnly: true
type: integer
readOnly: true
type: object
PinnedNamespaces:
description: Pinned namespaces view for cluster.
properties:
clusterId:
description: Unique 24-hexadecimal digit string that identifies the request cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the request project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
pinnedNamespaces:
description: List of all pinned namespaces.
items:
description: A single pinned namespace.
readOnly: true
type: string
readOnly: true
type: array
required:
- pinnedNamespaces
type: object
Principal:
description: Information about a principal, such as an OAuth application, that triggered the event through delegated access.
properties:
id:
description: The identifier of this principal.
type: string
name:
description: The human-readable name of this principal.
type: string
onBehalfOf:
$ref: "#/components/schemas/Principal"
readOnly: true
type: object
PrivateEndpointHostname:
description: Set of Private endpoint and hostnames.
properties:
hostname:
description: Human-readable label that identifies the hostname.
readOnly: true
type: string
privateEndpoint:
description: Human-readable label that identifies private endpoint.
readOnly: true
type: string
readOnly: true
type: object
PrivateLinkEndpoint:
properties:
cloudProvider:
description: Cloud service provider that serves the requested endpoint.
readOnly: true
type: string
deleteRequested:
description: Flag that indicates whether MongoDB Cloud received a request to remove the specified private endpoint from the private endpoint service.
readOnly: true
type: boolean
errorMessage:
description: Error message returned when requesting private connection resource. The resource returns `null` if the request succeeded.
readOnly: true
type: string
regionName:
description: Region name of the private endpoint.
readOnly: true
type: string
connectionStatus:
description: State of the Amazon Web Service PrivateLink connection when MongoDB Cloud received this request.
readOnly: true
type: string
interfaceEndpointId:
description: Unique 24-hexadecimal digit string that identifies the interface endpoint.
readOnly: true
type: string
privateEndpointConnectionName:
description: Human-readable label that MongoDB Cloud generates that identifies the private endpoint connection.
pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}%2[fF]([-\w._()]+)%2[fF]([-\w._()]+)
readOnly: true
type: string
privateEndpointIPAddress:
description: IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
privateEndpointResourceId:
description: Unique string that identifies the Azure private endpoint's network interface that someone added to this private endpoint service.
example: /subscriptions/cba6d9c6-1d3f-3c11-03cb-c705d895e636/resourcegroups/qrRTqi4TSN)7yB5YLRjVDveH3.yLzpNR7Br0D3-SGrU3j0.0/providers/Microsoft.Network/privateEndpoints/pVP(vb(XeckpxtXzP0NaOsDjeWDbOK)DX8A2j2E_vBYL2.GEYIdln
readOnly: true
type: string
status:
description: State of the Google Cloud network endpoint group when MongoDB Cloud received this request.
readOnly: true
type: string
endpointGroupName:
description: Human-readable label that identifies a set of endpoints. If this private endpoint belongs to a port-mapped endpoint service, this field is the private endpoint name.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
readOnly: true
type: string
endpoints:
description: List of individual private endpoints that comprise this endpoint group. If this endpoint belongs to a port-mapped endpoint service, this field will only contain a list of one private endpoint.
externalDocs:
description: Google Cloud Forwarding Rule Concepts
url: https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts
items:
$ref: "#/components/schemas/GCPConsumerForwardingRule"
readOnly: true
type: array
gcpProjectId:
description: Unique string that identifies the Google Cloud project in which you created the endpoints.
externalDocs:
description: Google Cloud Creating and Managing Projects
url: https://cloud.google.com/resource-manager/docs/creating-managing-projects
readOnly: true
type: string
portMappingEnabled:
description: Flag that indicates whether the endpoint service for this endpoint group uses PSC port-mapping.
type: boolean
required:
- cloudProvider
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- connectionStatus
- interfaceEndpointId
AZURE:
properties:
- privateEndpointConnectionName
- privateEndpointIPAddress
- privateEndpointResourceId
- status
GCP:
properties:
- endpointGroupName
- endpoints
- gcpProjectId
- portMappingEnabled
- status
PrivateNetworkEndpointIdEntry:
properties:
azureLinkId:
description: Link ID that identifies the Azure private endpoint connection.
type: string
comment:
description: Human-readable string to associate with this private endpoint.
type: string
customerEndpointDNSName:
description: Human-readable label to identify customer's VPC endpoint DNS name. If defined, you must also specify a value for `region`.
type: string
customerEndpointIPAddress:
description: IP address used to connect to the Azure private endpoint.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
endpointId:
description: Unique string that identifies the private endpoint. For AWS, this is a 22-character alphanumeric string in the format `vpce-<17 hex characters>`. For Azure, this is the full resource ID in the format `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/privateEndpoints/{endpointName}`.
externalDocs:
description: Configure Private Endpoints for Federated Database Instances and Online Archives.
url: https://www.mongodb.com/docs/atlas/data-federation/tutorial/config-private-endpoint/
type: string
errorMessage:
description: Error message describing a failure approving the private endpoint request.
type: string
provider:
default: AWS
description: Human-readable label that identifies the cloud service provider. Atlas Data Lake supports Amazon Web Services and Azure.
type: string
region:
description: Human-readable label to identify the region of customer's VPC endpoint. If defined, you must also specify a value for `customerEndpointDNSName`.
example: US_EAST_1
type: string
status:
description: Status of the private endpoint connection request.
type: string
type:
default: DATA_LAKE
description: Human-readable label that identifies the resource type associated with this private endpoint.
type: string
required:
- endpointId
type: object
ProtectedHours:
description: Defines the a window where maintenance will not begin within.
properties:
endHourOfDay:
description: Zero-based integer, in the project's configured time zone (see `timeZoneId`), that represents the end hour of the day that maintenance will not begin in.
format: int32
maximum: 23
minimum: 0
type: integer
startHourOfDay:
description: Zero-based integer, in the project's configured time zone (see `timeZoneId`), that represents the beginning hour of the day that maintenance will not begin in.
format: int32
maximum: 23
minimum: 0
type: integer
type: object
PushBasedLogExportProject:
properties:
bucketName:
description: The name of the bucket to which the agent will send the logs to.
type: string
createDate:
description: Date and time that this feature was enabled on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
iamRoleId:
description: ID of the AWS IAM role that will be used to write to the S3 bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
prefixPath:
description: S3 directory in which vector will write to in order to store the logs. An empty string denotes the root directory.
type: string
state:
description: Describes whether or not the feature is enabled and what status it is in.
readOnly: true
type: string
type: object
QuerySamplingCreateRequest:
description: Namespace on which to start query sampling.
properties:
namespace:
description: Human-readable label that identifies the namespace (`.`) on which to sample queries.
example: sales.orders
minLength: 1
type: string
required:
- namespace
type: object
QuerySamplingResponse:
description: Query sampling state for one namespace of one cluster. Sampled queries feed the shard key analysis for the namespace.
properties:
active:
description: Flag that indicates whether query sampling is observably running on the namespace. May still be `false` in the response to a successful create request; it becomes `true` asynchronously once the cluster applies the sampling configuration.
readOnly: true
type: boolean
namespace:
description: Human-readable label that identifies the namespace (`.`) on which queries are sampled.
example: sales.orders
type: string
sampledReadsBytes:
description: Total size in bytes of the read operations sampled on the namespace.
format: int64
readOnly: true
type: integer
sampledReadsCount:
description: Number of read operations sampled on the namespace.
format: int64
readOnly: true
type: integer
sampledWritesBytes:
description: Total size in bytes of the write operations sampled on the namespace.
format: int64
readOnly: true
type: integer
sampledWritesCount:
description: Number of write operations sampled on the namespace.
format: int64
readOnly: true
type: integer
samplesPerSecond:
description: Maximum number of queries sampled per second on the namespace. MongoDB Cloud sets this rate.
format: double
readOnly: true
type: number
startTime:
description: Date and time when query sampling started on the namespace. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
required:
- active
- namespace
type: object
QueryShapeResponse:
description: Response containing the details and status of a query shape. The query shape field may be null if the user lacks PII view access.
properties:
command:
description: The MongoDB command type issued for a query shape. The INSERT, UPDATE, and DELETE commands appear only for clusters running MongoDB 9.0 or later.
readOnly: true
type: string
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
readOnly: true
type: string
queryShape:
description: A query shape is a set of specifications that group similar queries together. Specifications can include filters, sorts, projections, aggregation pipeline stages, a namespace, and others. Queries that have similar specifications have the same query shape. This field may be null if the user lacks PII view access.
readOnly: true
type: string
queryShapeHash:
description: A hexadecimal string that represents the hash of a MongoDB query shape.
readOnly: true
type: string
status:
description: The rejection status of a query shape. Use REJECTED to prevent the query shape from executing on the cluster, or UNREJECTED to allow it to execute.
type: string
required:
- queryShapeHash
- status
type: object
QueryShapeSeenMetadata:
description: Metadata about when a query shape was seen.
properties:
applicationName:
description: The name of the application that this query shape came from. This can be set via the MongoDB connection string. The application name is set to unknown for internal MongoDB queries.
type: string
driverName:
description: The name of the MongoDB driver that this query shape was executed from. The driver name is set to unknown for internal MongoDB queries.
type: string
driverVersion:
description: The version of the MongoDB driver that this query shape was executed from. The driver version is set to unknown for internal MongoDB queries.
type: string
timestamp:
description: Unix epoch milliseconds of the time.
format: int64
type: integer
type: object
QueryShapeUpdateRequest:
description: Request body for modifying the rejection status of a query shape.
properties:
status:
description: The rejection status of a query shape. Use REJECTED to prevent the query shape from executing on the cluster, or UNREJECTED to allow it to execute.
type: string
required:
- status
type: object
QueryStatsCollectionResponse:
description: How `queryStats` entries were collected on this cluster's processes. Reflects the collection mode of the cluster's processes regardless of any host or process type filters in the request. Omitted when the collection mode cannot be determined. Sample-based collection requires MongoDB 9.0 or later but may not be enabled on every such cluster; this reflects the mode in effect on the cluster.
properties:
mode:
description: Method used to collect `queryStats` entries on the cluster's processes.
readOnly: true
type: string
sampleRate:
description: Fraction of operations recorded. Dividing reported counts by this rate yields an unbiased estimate of the true totals.
example: 0.01
format: double
readOnly: true
type: number
rateLimitPerSecond:
description: Maximum read queries recorded per second.
example: 100
format: int32
readOnly: true
type: integer
readOnly: true
required:
- mode
type: object
x-xgen-discriminator:
propertyName: mode
mapping:
RATE_LIMITED:
properties:
- rateLimitPerSecond
required:
- rateLimitPerSecond
SAMPLED:
properties:
- sampleRate
required:
- sampleRate
QueryStatsDetailsResponse:
description: Metadata and summary statistics for a given query shape.
properties:
firstSeen:
$ref: "#/components/schemas/QueryShapeSeenMetadata"
lastSeen:
$ref: "#/components/schemas/QueryShapeSeenMetadata"
queryStats:
$ref: "#/components/schemas/QueryStatsSummary"
queryStatsCollection:
$ref: "#/components/schemas/QueryStatsCollectionResponse"
type: object
QueryStatsSummary:
description: A summary of execution statistics for a given query shape.
properties:
avgTimeToResponseMicros:
description: "Average time in microseconds from the beginning of query processing to the first server response, per execution of queries with the given query shape. Calculated as `totalTimeToResponseMicros` divided by `execCount` over the requested time range. As a duration it can be longer or shorter than `avgWorkingMillis` (reported in milliseconds, so convert before comparing): longer when executions spent time blocked on locks or flow control rather than working, shorter when they kept working after the first batch to return later `getMore` batches."
format: double
type: number
avgWorkingMillis:
description: Average active execution time in milliseconds per execution of queries with the given query shape, calculated as `totalWorkingMillis` divided by `execCount` over the requested time range. Excludes intentional pauses such as time waiting on locks or flow control.
format: double
type: number
bytesRead:
description: The number of bytes read by the given query shape from the disk to the cache.
format: double
type: number
command:
description: The MongoDB command issued for this query shape. The insert, update, and delete commands appear only for clusters running MongoDB 9.0 or later.
type: string
cpuTime:
description: Total CPU time in nanoseconds consumed by queries with the given query shape. Available for MDB 8.2 and higher.
format: double
type: number
docsExamined:
description: Total number of documents examined by queries with the given query shape.
format: double
type: number
docsExaminedRatio:
description: Ratio of documents examined to documents returned by queries with the given query shape.
format: double
type: number
docsReturned:
description: Total number of documents returned by queries with the given query shape.
format: double
type: number
execCount:
description: Total number of times that queries with the given query shape have been executed.
format: double
type: number
keysDeleted:
description: Total number of index keys deleted by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
keysExamined:
description: Total number of in-bounds and out-of-bounds index keys examined by queries with the given query shape.
format: double
type: number
keysExaminedRatio:
description: Ratio of in-bounds and out-of-bounds index keys examined to indexes containing documents returned by queries with the given query shape.
format: double
type: number
keysInserted:
description: Total number of index keys inserted by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
lastExecMicros:
description: Execution runtime in microseconds for the most recent query with the given query shape.
format: double
type: number
nDeleted:
description: Total number of documents deleted by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
nInserted:
description: Total number of documents inserted by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
nMatched:
description: Total number of documents matched by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
nModified:
description: Total number of documents modified by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
nUpserted:
description: Total number of documents upserted by queries with the given query shape. Available for MongoDB 9.0+ write commands.
format: double
type: number
namespace:
description: Human-readable label that identifies the namespace on the specified host. The resource expresses this parameter value as `.`.
type: string
p50ExecMicros:
deprecated: true
description: The 50th percentile value of execution time in microseconds. This field is deprecated as the values it reports may be inaccurate. It will be removed in a future release.
format: double
type: number
p90ExecMicros:
deprecated: true
description: The 90th percentile value of execution time in microseconds. This field is deprecated as the values it reports may be inaccurate. It will be removed in a future release.
format: double
type: number
p99ExecMicros:
deprecated: true
description: The 99th percentile value of execution time in microseconds. This field is deprecated as the values it reports may be inaccurate. It will be removed in a future release.
format: double
type: number
queryShape:
description: A query shape is a set of specifications that group similar queries together. Specifications can include filters, sorts, projections, aggregation pipeline stages, a namespace, and others. Queries that have similar specifications have the same query shape.
type: string
queryShapeHash:
description: A hexadecimal string that represents the hash of a MongoDB query shape.
type: string
systemQuery:
description: Indicates whether this query shape represents a system-initiated query.
type: boolean
totalTimeToResponseMicros:
description: Total time in microseconds from the beginning of query processing to the first server response, summed across executions of queries with the given query shape. Includes time spent waiting on locks or flow control. Stops at the first batch of results, so time spent serving later `getMore` batches is not counted.
format: double
type: number
totalWorkingMillis:
description: Total time in milliseconds that queries with the given query shape spent actively executing, summed across executions, including time spent processing `getMore` requests. Excludes intentional pauses such as time waiting on locks or flow control, and time spent waiting for the client.
format: double
type: number
type: object
QueryStatsSummaryListResponse:
properties:
message:
description: Explanation of query shape insights availability limitations on the current tier.
readOnly: true
type: string
queryStatsCollection:
$ref: "#/components/schemas/QueryStatsCollectionResponse"
scale:
$ref: "#/components/schemas/ApiClusterScale"
summaries:
description: List of query shape statistic summaries from Query Shape Insights.
items:
$ref: "#/components/schemas/QueryStatsSummary"
type: array
type: object
RateLimitEndpointSetCapacity:
description: The rate limit capacity for the endpoint set.
properties:
defaultValue:
description: The default request capacity of the endpoint set. Returned if there is a capacity override set for the requested entity.
format: int64
type: integer
value:
description: The applied request capacity of the endpoint set.
format: int64
type: integer
type: object
RateLimitEndpointSetEndpoint:
properties:
method:
description: The HTTP method of the endpoint.
type: string
path:
description: The URL path of the endpoint.
example: /api/atlas/v2/rateLimits
type: string
type: object
RateLimitEndpointSetRefillDurationSeconds:
description: The rate limit refill duration for the endpoint set.
properties:
defaultValue:
description: The default rate limit refill duration, in seconds, of the endpoint set. Returned if there is a rate limit refill duration override set for the requested entity.
format: int64
type: integer
value:
description: The applied rate limit refill duration of the endpoint set.
format: int64
type: integer
type: object
RateLimitEndpointSetRefillRate:
description: The rate limit refill rate for the endpoint set.
properties:
defaultValue:
description: The default rate limit refill rate of the endpoint set. Returned if there is a rate limit refill rate override set for the requested entity.
format: int64
type: integer
value:
description: The applied rate limit refill rate of the endpoint set.
format: int64
type: integer
type: object
RateLimitEndpointSetResponse:
properties:
capacity:
$ref: "#/components/schemas/RateLimitEndpointSetCapacity"
endpointSetId:
description: The ID of the endpoint set.
example: rateLimitsInspection_group
type: string
endpointSetName:
description: The endpoint set name.
example: Rate Limits Inspection
type: string
endpoints:
description: A list of endpoints associated with the specified endpoint set.
items:
$ref: "#/components/schemas/RateLimitEndpointSetEndpoint"
maxItems: 100
type: array
uniqueItems: true
refillDurationSeconds:
$ref: "#/components/schemas/RateLimitEndpointSetRefillDurationSeconds"
refillRate:
$ref: "#/components/schemas/RateLimitEndpointSetRefillRate"
scope:
description: The scope of the endpoint set.
type: string
type: object
RawMetricUnits:
default: RAW
description: Element used to express the quantity. This can be an element of time, storage capacity, and the like.
title: Raw Metric Units
type: string
RedactedHeader:
description: HTTP header with a redacted value.
properties:
name:
description: Header name.
example: Authorization
readOnly: true
type: string
value:
description: Redacted header value.
example: "********oken"
readOnly: true
type: string
required:
- name
- value
type: object
RegionSpec:
description: Physical location where MongoDB Cloud provisions cluster nodes.
properties:
analyticsNodes:
description: Number of analytics nodes in the region. Analytics nodes handle analytic data such as reporting queries from MongoDB Connector for Business Intelligence on MongoDB Cloud. Analytics nodes are read-only, and can never become the primary. Use `replicationSpecs[n].{region}.analyticsNodes` instead.
format: int32
type: integer
electableNodes:
description: Number of electable nodes to deploy in the specified region. Electable nodes can become the primary and can facilitate local reads. Use `replicationSpecs[n].{region}.electableNodes` instead.
format: int32
type: integer
priority:
description: Number that indicates the election priority of the region. To identify the Preferred Region of the cluster, set this parameter to `7`. The primary node runs in the **Preferred Region**. To identify a read-only region, set this parameter to `0`.
format: int32
maximum: 7
minimum: 0
type: integer
readOnlyNodes:
description: Number of read-only nodes in the region. Read-only nodes can never become the primary member, but can facilitate local reads. Use `replicationSpecs[n].{region}.readOnlyNodes` instead.
format: int32
type: integer
title: Region Configuration
type: object
ReplicationSpec20240805:
description: Details that explain how MongoDB Cloud replicates data on the specified MongoDB database.
properties:
id:
description: Unique 24-hexadecimal digit string that identifies the replication object for a shard in a Cluster. If you include existing shard replication configurations in the request, you must specify this parameter. If you add a new shard to an existing Cluster, you may specify this parameter. The request deletes any existing shards in the Cluster that you exclude from the request. This corresponds to Shard ID displayed in the UI.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
regionConfigs:
description: |-
Hardware specifications for nodes set for a given region. Each `regionConfigs` object must be unique by region and cloud provider within the `replicationSpec`. Each `regionConfigs` object describes the region's priority in elections and the number and type of MongoDB nodes that MongoDB Cloud deploys to the region. Each `regionConfigs` object must have either an `analyticsSpecs` object, `electableSpecs` object, or `readOnlySpecs` object. Tenant clusters only require `electableSpecs`. Dedicated clusters can specify any of these specifications, but must have at least one `electableSpecs` object within a `replicationSpec`.
**Example:**
If you set `replicationSpecs[n].regionConfigs[m].analyticsSpecs.instanceSize` : `M30`, set `replicationSpecs[n].regionConfigs[m].electableSpecs.instanceSize` : `M30` if you have electable nodes and `replicationSpecs[n].regionConfigs[m].readOnlySpecs.instanceSize` : `M30` if you have read-only nodes.
items:
$ref: "#/components/schemas/CloudRegionConfig20240805"
type: array
zoneId:
description: Unique 24-hexadecimal digit string that identifies the zone in a Global Cluster. This value can be used to configure Global Cluster backup policies.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
zoneName:
description: "Human-readable label that describes the zone this shard belongs to in a Global Cluster. Provide this value only if `clusterType` : `GEOSHARDED` but not `selfManagedSharding` : `true`."
type: string
title: Replication Specifications
type: object
RequestAccepted:
description: Accepted.
type: object
ResourcePolicyReference:
description: Atlas Resource Policy that caused the request to be denied.
properties:
id:
description: Unique 24-hexadecimal character string that identifies the Atlas Resource Policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
name:
description: Human-readable label that identifies the Atlas Resource Policy.
readOnly: true
type: string
required:
- id
- name
type: object
ResourceTag:
description: "Key-value pair that tags and categorizes a MongoDB Cloud organization, project, or cluster. For example, `environment : production`."
properties:
key:
description: "Constant that defines the set of the tag. For example, `environment` in the `environment : production` tag."
maxLength: 255
minLength: 1
type: string
value:
description: "Variable that belongs to the set of the tag. For example, `production` in the `environment : production` tag."
maxLength: 255
minLength: 1
type: string
required:
- key
- value
title: Resource Tag
type: object
RestoreJobFileHash:
description: Key and value pair that map one restore file to one hashed checksum. This parameter applies after you download the corresponding `delivery.url`.
properties:
fileName:
description: Human-readable label that identifies the hashed file.
readOnly: true
type: string
hash:
description: Hashed checksum that maps to the restore file.
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
typeName:
description: Human-readable label that identifies the hashing algorithm used to compute the hash value.
readOnly: true
type: string
readOnly: true
type: object
SampleDatasetStatus:
properties:
_id:
description: Unique 24-hexadecimal character string that identifies this sample dataset.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
clusterName:
description: Human-readable label that identifies the cluster into which you loaded the sample dataset.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
readOnly: true
type: string
completeDate:
description: Date and time when the sample dataset load job completed. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
createDate:
description: Date and time when you started the sample dataset load job. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
errorMessage:
description: Details of the error returned when MongoDB Cloud loads the sample dataset. This endpoint returns null if state has a value other than FAILED.
readOnly: true
type: string
state:
description: Status of the sample dataset load job.
readOnly: true
type: string
type: object
SchemaAdvisorItemRecommendation:
properties:
affectedNamespaces:
description: List that contains the namespaces and information on why those namespaces triggered the recommendation.
items:
$ref: "#/components/schemas/SchemaAdvisorNamespaceTriggers"
readOnly: true
type: array
description:
description: Description of the specified recommendation.
readOnly: true
type: string
recommendation:
description: Type of recommendation.
readOnly: true
type: string
type: object
SchemaAdvisorNamespaceTriggers:
properties:
namespace:
description: Namespace of the affected collection. Will be null for `REDUCE_NUMBER_OF_NAMESPACE` recommendation.
readOnly: true
type: string
triggers:
description: List of triggers that specify why the collection activated the recommendation.
items:
$ref: "#/components/schemas/SchemaAdvisorTriggerDetails"
readOnly: true
type: array
type: object
SchemaAdvisorResponse:
description: Response that contains Performance Advisor schema suggestions.
properties:
message:
description: Explanation of Performance Advisor availability limitations on the current tier.
readOnly: true
type: string
recommendations:
description: List that contains the documents with information about the schema advice that Performance Advisor suggests.
items:
$ref: "#/components/schemas/SchemaAdvisorItemRecommendation"
readOnly: true
type: array
scale:
$ref: "#/components/schemas/ApiClusterScale"
type: object
SchemaAdvisorTriggerDetails:
properties:
description:
description: Description of the trigger type.
readOnly: true
type: string
triggerType:
description: Type of trigger.
readOnly: true
type: string
type: object
SchemaRegistryAuthentication:
description: Authentication configuration for Schema Registry.
properties:
type:
description: Authentication type discriminator. Specifies the authentication mechanism for Confluent Schema Registry.
type: string
password:
description: Password or Private Key for authentication.
type: string
writeOnly: true
username:
description: Username or Public Key for authentication.
type: string
required:
- type
type: object
x-xgen-discriminator:
propertyName: type
mapping:
SASL_INHERIT:
properties: []
USER_INFO:
properties:
- password
- username
required:
- password
- username
SearchAutoMigration:
description: Configuration for automatically adding Dedicated Search Nodes on eligible Atlas Infinite clusters. This setting has no effect on Atlas Core clusters.
properties:
disabled:
default: false
description: Flag that disables future automatic Search Node provisioning. Defaults to false on creation. Omission on update preserves the stored choice. Disabling retains existing Search Nodes and allows in-flight migrations to continue. Enabling does not bypass resource policies; if indexes exceed the migration threshold, the next eligible evaluation may start provisioning.
type: boolean
type: object
SearchIndexCreateRequest:
properties:
collectionName:
description: Label that identifies the collection to create an Atlas Search index in.
type: string
database:
description: Label that identifies the database that contains the collection to create an Atlas Search index in.
type: string
name:
description: Label that identifies this index. Within each namespace, names of all indexes in the namespace must be unique.
type: string
type:
description: Type of the index. The default type is search.
type: string
definition:
$ref: "#/components/schemas/BaseSearchIndexCreateRequestDefinition"
required:
- collectionName
- database
- name
type: object
x-xgen-discriminator:
propertyName: type
mapping:
search:
properties: []
vectorSearch:
properties: []
SearchIndexDefinitionVersion:
description: Object which includes the version number of the index definition and the time that the index definition was created.
properties:
createdAt:
description: The time at which this index definition was created. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
version:
description: The version number associated with this index definition when it was created.
format: int64
type: integer
title: Search Index Definition Version
type: object
SearchIndexResponse:
properties:
collectionName:
description: Label that identifies the collection that contains one or more Atlas Search indexes.
type: string
database:
description: Label that identifies the database that contains the collection with one or more Atlas Search indexes.
type: string
indexID:
description: Unique 24-hexadecimal digit string that identifies this Atlas Search index.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
latestDefinition:
$ref: "#/components/schemas/BaseSearchIndexResponseLatestDefinition"
latestDefinitionVersion:
$ref: "#/components/schemas/SearchIndexDefinitionVersion"
name:
description: Label that identifies this index. Within each namespace, the names of all indexes must be unique.
type: string
queryable:
description: Flag that indicates whether the index is queryable on the nodes currently receiving query traffic.
type: boolean
status:
description: |-
Condition of the search index when you made this request.
- `DELETING`: The index is being deleted.
- `FAILED` The index build failed. Indexes can enter the FAILED state due to an invalid index definition.
- `STALE`: The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data.
- `PENDING`: Atlas has not yet started building the index.
- `BUILDING`: Atlas is building or re-building the index after an edit.
- `READY`: The index is ready and can support queries.
type: string
statusDetail:
description: List of documents detailing index status on each host.
items:
$ref: "#/components/schemas/VectorSearchHostStatusDetail"
type: array
type:
description: Type of the index. The default type is search.
type: string
synonymMappingStatus:
description: Status that describes this index's synonym mappings. This status appears only if the index has synonyms defined.
type: string
synonymMappingStatusDetail:
description: A list of documents describing the status of the index's synonym mappings on each search host. Only appears if the index has synonyms defined.
items:
additionalProperties:
$ref: "#/components/schemas/SynonymMappingStatusDetail"
type: object
type: array
title: Search Index Response
type: object
x-xgen-discriminator:
propertyName: type
mapping:
search:
properties:
- synonymMappingStatus
- synonymMappingStatusDetail
vectorSearch:
properties: []
SearchIndexUpdateRequest:
properties:
definition:
description: The index definition to update the search index to.
type: object
properties:
analyzer:
default: lucene.standard
description: |-
Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves making the following changes to the text in fields:
- extracting words
- removing punctuation
- removing accents
- changing to lowercase
- removing common words
- reducing words to their root form (stemming)
- changing words to their base form (lemmatization)
MongoDB Cloud uses the process you select to build the Atlas Search index.
externalDocs:
description: Atlas Search Analyzers
url: https://dochub.mongodb.org/core/analyzers--fts
type: string
analyzers:
description: List of user-defined methods to convert database field text into searchable words.
externalDocs:
description: Custom Atlas Search Analyzers
url: https://dochub.mongodb.org/core/custom-fts
items:
$ref: "#/components/schemas/AtlasSearchAnalyzer"
type: array
mappings:
$ref: "#/components/schemas/SearchMappings"
numPartitions:
default: 1
description: Number of index partitions. Allowed values are [1, 2, 4].
format: int32
type: integer
searchAnalyzer:
default: lucene.standard
description: Method applied to identify words when searching this index.
type: string
sort:
description: 'Sort definition for the index. When defined, the index will be pre-sorted on the specified fields, which improves query sort performance for those fields. Supports two formats: simple format with field name and direction, or complex format with additional options. The `order` field is required (1=ascending, -1=descending).The `noData` field is optional and controls how missing values are sorted(default: "lowest").'
example:
anotherField:
noData: highest
order: -1
fieldName: 1
type: object
storedSource:
description: Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. Note that storing all fields (true) is not allowed for vector search indexes. To learn more, see Stored Source Fields.
example:
include | exclude:
- field1
- field2
externalDocs:
description: Stored Source Fields
url: https://dochub.mongodb.org/core/atlas-search-stored-source
type: object
synonyms:
description: Rule sets that map words to their synonyms in this index.
externalDocs:
description: Synonym Mapping
url: https://dochub.mongodb.org/core/fts-synonym-mappings
items:
$ref: "#/components/schemas/SearchSynonymMappingDefinition"
type: array
typeSets:
description: Type sets for the index.
items:
$ref: "#/components/schemas/SearchTypeSets"
maxItems: 100
type: array
fields:
description: Settings that configure the fields, one per object, to index. You must define at least one "vector" type field. You can optionally define "filter" type fields also.
externalDocs:
description: Vector Search Fields
url: https://dochub.mongodb.org/core/avs-vector-type
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
nestedRoot:
description: Top-level path to the array that contains vector fields. When provided, vector fields under this path are treated as nested.
example: sections
type: string
required:
- definition
title: Search Index Update Request
type: object
SearchMappings:
description: Index specifications for the collection's fields.
properties:
dynamic:
description: Indicates whether the index uses static, default dynamic, or configurable dynamic mappings. Set to `true` to enable dynamic mapping with default type set or define object to specify the name of the configured type sets for dynamic mapping. If you specify configurable dynamic mappings, you must define the referred type sets in the `typeSets` field. Set to `false` to use only static mappings through `mappings.fields`.
example:
typeSet: typeSet1
externalDocs:
description: Static, Dynamic or Configurable Dynamic Mappings
url: https://dochub.mongodb.org/core/field-mapping-definition-fts#static-and-dynamic-mappings
type: object
fields:
additionalProperties:
$ref: "#/components/schemas/Fields"
description: One or more field specifications for the Atlas Search index. Required if `mappings.dynamic` is omitted or set to `false`.
externalDocs:
description: Atlas Search Index
url: https://dochub.mongodb.org/core/index-definitions-fts
type: object
x-additionalPropertiesName: Field Name
title: Mappings
type: object
SearchSynonymMappingDefinition:
description: Synonyms used for this full text index.
properties:
analyzer:
description: Specific pre-defined method chosen to apply to the synonyms to be searched.
type: string
name:
description: Label that identifies the synonym definition. Each `synonym.name` must be unique within the same index definition.
type: string
source:
$ref: "#/components/schemas/SynonymSource"
required:
- analyzer
- name
- source
title: Synonym Mapping Definition
type: object
SearchTypeSets:
description: Type sets for an Atlas Search index definition.
externalDocs:
description: Type Sets
url: https://dochub.mongodb.org/core/atlas-search-configure-dynamic-indexing
properties:
name:
description: Label that identifies the type set name. Each `typeSets.name` must be unique within the same index definition.
type: string
types:
description: List of types associated with the type set. Each type definition must include a `type` field specifying the search field type (`autocomplete`, `boolean`, `date`, `geo`, `number`, `objectId`, `string`, `token`, or `uuid`) and may include additional configuration properties specific to that type.
items:
$ref: "#/components/schemas/BasicDBObject"
maxItems: 100
type: array
required:
- name
- types
title: TypeSets
type: object
ServerlessConnectionStringsPrivateEndpointItem:
description: Details of a private endpoint deployed for this serverless instance.
properties:
endpointId:
description: Unique string that the cloud provider uses to identify the private endpoint.
readOnly: true
type: string
providerName:
description: Cloud provider where the private endpoint is deployed.
readOnly: true
type: string
region:
description: Region where the private endpoint is deployed.
readOnly: true
type: string
title: Serverless Instance Private Endpoint Connection Strings Endpoint
type: object
ServerlessConnectionStringsPrivateEndpointList:
description: Private endpoint connection string that you can use to connect to this serverless instance through a private endpoint.
externalDocs:
description: Private Endpoint for Serverless Instance
url: https://docs.atlas.mongodb.com/security-serverless-private-endpoint/
properties:
endpoints:
description: List that contains the private endpoints through which you connect to MongoDB Cloud when you use `connectionStrings.privateEndpoint[n].srvConnectionString`.
items:
$ref: "#/components/schemas/ServerlessConnectionStringsPrivateEndpointItem"
readOnly: true
type: array
srvConnectionString:
description: Private endpoint-aware connection string that uses the `mongodb+srv://` protocol to connect to MongoDB Cloud through a private endpoint. The `mongodb+srv` protocol tells the driver to look up the seed list of hosts in the Domain Name System (DNS).
readOnly: true
type: string
type:
description: MongoDB process type to which your application connects.
readOnly: true
type: string
title: Serverless Instance Private Endpoint Connection String
type: object
ServerlessInstanceDescription:
description: Group of settings that configure a MongoDB serverless instance.
properties:
connectionStrings:
$ref: "#/components/schemas/ServerlessInstanceDescriptionConnectionStrings"
createDate:
description: Date and time when MongoDB Cloud created this serverless instance. MongoDB Cloud represents this timestamp in ISO 8601 format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the serverless instance.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mongoDBVersion:
description: Version of MongoDB that the serverless instance runs.
pattern: ([\d]+\.[\d]+\.[\d]+)
readOnly: true
type: string
name:
description: Human-readable label that identifies the serverless instance.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
providerSettings:
$ref: "#/components/schemas/ServerlessProviderSettings"
serverlessBackupOptions:
$ref: "#/components/schemas/ClusterServerlessBackupOptions"
stateName:
description: |-
Human-readable label that indicates any current activity being taken on this cluster by the Atlas control plane. With the exception of CREATING and DELETING states, clusters should always be available and have a Primary node even when in states indicating ongoing activity.
- `IDLE`: Atlas is making no changes to this cluster and all changes requested via the UI or API can be assumed to have been applied.
- `CREATING`: A cluster being provisioned for the very first time returns state CREATING until it is ready for connections. Ensure IP Access List and DB Users are configured before attempting to connect.
- `UPDATING`: A change requested via the UI, API, AutoScaling, or other scheduled activity is taking place.
- `DELETING`: The cluster is in the process of deletion and will soon be deleted.
- `REPAIRING`: One or more nodes in the cluster are being returned to service by the Atlas control plane. Other nodes should continue to provide service as normal.
readOnly: true
type: string
tags:
description: List that contains key-value pairs between 1 to 255 characters in length for tagging and categorizing the serverless instance.
items:
$ref: "#/components/schemas/ResourceTag"
type: array
terminationProtectionEnabled:
default: false
description: Flag that indicates whether termination protection is enabled on the serverless instance. If set to `true`, MongoDB Cloud won't delete the serverless instance. If set to `false`, MongoDB Cloud will delete the serverless instance.
type: boolean
required:
- providerSettings
title: Serverless Instance Description
type: object
ServerlessInstanceDescriptionConnectionStrings:
description: Collection of Uniform Resource Locators that point to the MongoDB database.
externalDocs:
description: Connection string URI format.
url: https://docs.mongodb.com/manual/reference/connection-string/
properties:
privateEndpoint:
description: List of private endpoint-aware connection strings that you can use to connect to this serverless instance through a private endpoint. This parameter returns only if you created a private endpoint for this serverless instance and it is AVAILABLE.
items:
$ref: "#/components/schemas/ServerlessConnectionStringsPrivateEndpointList"
readOnly: true
type: array
standardSrv:
description: Public connection string that you can use to connect to this serverless instance. This connection string uses the `mongodb+srv://` protocol.
externalDocs:
description: Connection String URI Format
url: https://docs.mongodb.com/manual/reference/connection-string/
readOnly: true
type: string
readOnly: true
title: Serverless Instance Connection Strings
type: object
ServerlessProviderSettings:
description: Group of cloud provider settings that configure the provisioned MongoDB serverless instance.
properties:
backingProviderName:
description: Cloud service provider on which MongoDB Cloud provisioned the serverless instance.
type: string
effectiveDiskSizeGBLimit:
description: Storage capacity of instance data volumes expressed in gigabytes. This value is not configurable for Serverless or effectively Flex clusters.
format: int32
readOnly: true
type: integer
effectiveInstanceSizeName:
$ref: "#/components/schemas/BaseCloudProviderInstanceSize"
effectiveProviderName:
description: Cloud service provider on which MongoDB Cloud effectively provisioned the serverless instance.
readOnly: true
type: string
providerName:
default: SERVERLESS
description: Human-readable label that identifies the cloud service provider.
type: string
regionName:
description: Human-readable label that identifies the geographic location of your MongoDB serverless instance. The region you choose can affect network latency for clients accessing your databases. For a complete list of region names, see [AWS](https://docs.atlas.mongodb.com/reference/amazon-aws/#std-label-amazon-aws), [GCP](https://docs.atlas.mongodb.com/reference/google-gcp/), and [Azure](https://docs.atlas.mongodb.com/reference/microsoft-azure/).
type: string
required:
- backingProviderName
- regionName
title: Cloud Service Provider Settings for a Serverless Instance
type: object
ServerlessTenantCreateRequest:
properties:
comment:
description: Human-readable comment associated with the private endpoint.
maxLength: 80
type: string
writeOnly: true
type: object
ServerlessTenantEndpoint:
properties:
_id:
description: Unique 24-hexadecimal digit string that identifies the private endpoint.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
cloudProviderEndpointId:
description: Unique string that identifies the Azure private endpoint's network interface that someone added to this private endpoint service.
pattern: ^/subscriptions/[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}/resource[gG]roups/private[Ll]ink/providers/Microsoft\.Network/privateEndpoints/[-\w._()]+$
readOnly: true
type: string
comment:
description: Human-readable comment associated with the private endpoint.
maxLength: 80
readOnly: true
type: string
endpointServiceName:
description: Unique string that identifies the Azure private endpoint service. MongoDB Cloud returns null while it creates the endpoint service.
pattern: ^pls_[0-9a-f]{24}$
readOnly: true
type: string
errorMessage:
description: Human-readable error message that indicates error condition associated with establishing the private endpoint connection.
readOnly: true
type: string
status:
description: Human-readable label that indicates the current operating status of the private endpoint.
readOnly: true
type: string
providerName:
description: Human-readable label that identifies the cloud service provider.
readOnly: true
type: string
privateEndpointIpAddress:
description: IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
privateLinkServiceResourceId:
description: Root-relative path that identifies the Azure Private Link Service that MongoDB Cloud manages. MongoDB Cloud returns null while it creates the endpoint service.
readOnly: true
type: string
type: object
ServerlessTenantEndpointUpdate:
description: Update view for a serverless tenant endpoint.
properties:
comment:
description: Human-readable comment associated with the private endpoint.
maxLength: 80
type: string
writeOnly: true
providerName:
description: Human-readable label that identifies the cloud provider of the tenant endpoint.
type: string
writeOnly: true
cloudProviderEndpointId:
description: Unique string that identifies the Azure private endpoint's network interface for this private endpoint service.
pattern: ^/subscriptions/[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}/resource[gG]roups/private[Ll]ink/providers/Microsoft\.Network/privateEndpoints/[-\w._()]+$
type: string
writeOnly: true
privateEndpointIpAddress:
description: IPv4 address of the private endpoint in your Azure VNet that someone added to this private endpoint service.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
writeOnly: true
required:
- providerName
type: object
x-xgen-discriminator:
propertyName: providerName
mapping:
AWS:
properties:
- cloudProviderEndpointId
AZURE:
properties:
- cloudProviderEndpointId
- privateEndpointIpAddress
ServiceAccountGroup:
properties:
groupId:
description: "Unique 24-hexadecimal digit string that identifies your project. **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."
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
roles:
description: A list of project roles assigned to the Service Account in this project.
items:
type: string
maxItems: 100
type: array
type: object
ServiceAccountIPAccessListEntry:
properties:
cidrBlock:
description: Range of network addresses in the access list for the Service Account. This parameter requires the range to be expressed in Classless Inter-Domain Routing (CIDR) notation of Internet Protocol version 4 or version 6 addresses. You can set a value for this parameter or `ipAddress`, but not for both in the same request.
example: 203.0.113.0/24
pattern: ^((([0-9]{1,3}\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$
type: string
createdAt:
description: Date MongoDB Cloud added the entry was added to the Access List. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
ipAddress:
description: Network address in the access list for the Service Account. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. You can set a value for this parameter or `cidrBlock`, but not for both in the same request.
example: 203.0.113.10
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
lastUsedAddress:
description: Network address that issued the most recent request to the API. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. The resource returns this parameter after this IP address makes at least one request.
example: 203.0.113.10
readOnly: true
type: string
lastUsedAt:
description: Date when MongoDB Cloud received the most recent request that originated from this Internet Protocol version 4 or version 6 address. The resource returns this parameter when at least one request originates from this IP address. MongoDB Cloud updates this parameter each time a client accesses the permitted resource, with a delay of up to 5 minutes. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
requestCount:
description: The number of requests that has originated from this network address.
format: int32
readOnly: true
type: integer
type: object
ServiceAccountSecret:
properties:
createdAt:
description: The date that the secret was created on. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
expiresAt:
description: The date for the expiration of the secret. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the secret.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lastUsedAt:
description: The last time the secret was used. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
maskedSecretValue:
description: The masked Service Account secret.
example: mdb_sa_sk_...
readOnly: true
type: string
secret:
description: The secret for the Service Account. It will be returned only the first time after creation.
example: mdb_sa_sk_...
readOnly: true
type: string
required:
- createdAt
- expiresAt
- id
type: object
ServiceAccountSecretRequest:
properties:
secretExpiresAfterHours:
description: The expiration time of the new Service Account secret, provided in hours. The minimum and maximum allowed expiration times are subject to change and are controlled by the organization's settings.
example: 8
exclusiveMinimum: true
format: int32
minimum: 0
type: integer
required:
- secretExpiresAfterHours
type: object
ShardAlert:
description: Open alert on one of the shard's nodes.
properties:
message:
description: Human-readable description of the condition that triggered this alert.
readOnly: true
type: string
severity:
description: Severity that MongoDB Cloud assigned to this alert.
readOnly: true
type: string
required:
- message
- severity
type: object
ShardCacheThroughput:
description: Bytes per second that the shard moved in and out of the cache over the last hour.
properties:
readIntoBytesPerSecond:
description: Average bytes per second read into the cache, across the shard's nodes over the last hour.
format: double
readOnly: true
type: number
writtenFromBytesPerSecond:
description: Average bytes per second written from the cache, across the shard's nodes over the last hour.
format: double
readOnly: true
type: number
required:
- readIntoBytesPerSecond
- writtenFromBytesPerSecond
type: object
ShardCpuUtilization:
description: CPU utilization of the shard's nodes over the last hour, as a percentage.
properties:
averagePercent:
description: Average CPU utilization across the shard's nodes over the last hour.
format: double
readOnly: true
type: number
maximumPercent:
description: Highest CPU utilization that any one of the shard's nodes reached over the last hour.
format: double
readOnly: true
type: number
required:
- averagePercent
- maximumPercent
type: object
ShardEntry:
description: Sharding configuration for a collection to be sharded on the destination cluster.
properties:
collection:
description: Human-readable label that identifies the collection to be sharded on the destination cluster.
type: string
writeOnly: true
database:
description: Human-readable label that identifies the database that contains the collection to be sharded on the destination cluster.
type: string
writeOnly: true
shardCollection:
$ref: "#/components/schemas/ShardKeys"
required:
- collection
- database
- shardCollection
type: object
ShardKeyAnalysisError:
description: Details of the failure that ended the shard key analysis operation.
properties:
code:
description: Reason that the shard key analysis failed. MongoDB Cloud may report additional values in the future without a new resource version, so treat a value this description does not list as a generic failure.
readOnly: true
type: string
message:
description: Human-readable explanation of the failure. This message describes the classified failure and is not the raw error text from the cluster.
readOnly: true
type: string
retryStrategy:
description: How to retry a failed shard key analysis. `BACKOFF` indicates that resubmitting the same request after a delay may succeed. `NONE` indicates that the failure describes the collection or the candidate shard key and that resubmitting the same request will fail the same way.
readOnly: true
type: string
retryable:
description: Flag that indicates whether submitting the same request again may succeed. This flag is `false` when the failure describes the collection or the candidate shard key, because the same request then fails the same way.
readOnly: true
type: boolean
readOnly: true
required:
- code
- message
- retryable
type: object
ShardKeyAnalysisOperationResponse:
description: Progress of one shard key analysis. Poll this resource until `status` reaches a terminal value, then follow `resultHref` to read the analysis.
properties:
createdAt:
description: Date and time when MongoDB Cloud accepted this operation (ISO 8601 format in UTC).
format: date-time
readOnly: true
type: string
error:
$ref: "#/components/schemas/ShardKeyAnalysisError"
expiresAt:
description: Date and time when MongoDB Cloud stops returning this operation (ISO 8601 format in UTC). Reads after this time return an HTTP 404 status. This value derives from `updatedAt`, so it advances with each state change while the operation is running and settles only once the operation is terminal.
format: date-time
readOnly: true
type: string
operationId:
description: Unique 24-hexadecimal digit string that identifies this operation. When the operation succeeds, the analysis it created carries the same identifier.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
operationType:
description: Kind of change the operation makes. Submitting a shard key analysis creates an analysis resource, so the operation type is always `CREATE`.
readOnly: true
type: string
resultHref:
description: URI of the analysis this operation created. MongoDB Cloud returns this parameter only when `status` is `SUCCEEDED`.
readOnly: true
type: string
retryAfterSeconds:
description: Number of seconds to wait before polling this operation again. MongoDB Cloud returns this parameter only while `status` is not terminal.
format: int32
minimum: 1
readOnly: true
type: integer
status:
description: State of the shard key analysis operation. `PENDING` and `IN_PROGRESS` are non-terminal; `SUCCEEDED`, `FAILED`, `CANCELED` and `SUPERSEDED` are terminal. MongoDB Cloud currently reports only `PENDING`, `SUCCEEDED` and `FAILED`. The remaining values are reserved and may be reported in the future without a new resource version.
readOnly: true
type: string
updatedAt:
description: Date and time when this operation last changed state (ISO 8601 format in UTC). Once the operation is terminal, this is when it finished.
format: date-time
readOnly: true
type: string
required:
- createdAt
- expiresAt
- operationId
- operationType
- status
- updatedAt
type: object
ShardKeyAnalysisRequest:
description: Shard key to analyze for one collection.
properties:
includeKeyCharacteristics:
default: true
description: Flag that indicates whether to return the cardinality, frequency and monotonicity of the candidate shard key.
type: boolean
writeOnly: true
includeReadWriteDistribution:
default: false
description: Flag that indicates whether to return how reads and writes would be routed across shards under the candidate shard key. This requires query sampling to have collected operations for the namespace.
type: boolean
writeOnly: true
namespace:
description: Combination of the database and collection to analyze, written as `.`.
example: sales.orders
type: string
shardKey:
description: 'Candidate shard key, given as one object per shard key field in the order the fields form the key. Field order is significant: `[{"a": "1"}, {"b": "1"}]` and `[{"b": "1"}, {"a": "1"}]` are different shard keys. At most one field may be `hashed`.'
items:
additionalProperties:
description: Key-value pair that sets one shard key field as the key and how to index it as its value. Use `1` for an ascending range-based field and `hashed` for a hashed field. MongoDB rejects any other value.
maxProperties: 1
minProperties: 1
type: string
description: Key-value pair that sets one shard key field as the key and how to index it as its value. Use `1` for an ascending range-based field and `hashed` for a hashed field. MongoDB rejects any other value.
maxProperties: 1
minProperties: 1
type: object
maxItems: 32
type: array
uniqueItems: true
required:
- namespace
- shardKey
type: object
ShardKeyAnalysisResponse:
description: Completed analysis of one candidate shard key, describing how well the key would distribute the collection's documents and operations across shards.
properties:
avgDocSizeBytes:
description: Average size of one document in the collection, in bytes.
format: int64
minimum: 0
readOnly: true
type: integer
correlationCoefficient:
description: Correlation between the candidate shard key and the order in which documents were inserted, from `-1` to `1`. Values near `1` or `-1` indicate a monotonically changing key, which directs all inserts to one shard. This parameter is absent when the shard key has no supporting index or the collection is clustered, in which case MongoDB Cloud does not compute it.
format: double
maximum: 1
minimum: -1
readOnly: true
type: number
createdAt:
description: Date and time when this shard key analysis was requested (ISO 8601 format in UTC). This is when the analysis was submitted, not when it completed; the completion time is the `updatedAt` of the operation that produced it.
format: date-time
readOnly: true
type: string
expiresAt:
description: Date and time when MongoDB Cloud stops returning this shard key analysis (ISO 8601 format in UTC). Reads after this time return an HTTP 404 status.
format: date-time
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies this shard key analysis. This is the same identifier as the `operationId` of the operation that produced it.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
isUnique:
description: Flag that indicates whether the index supporting the candidate shard key enforces a uniqueness constraint.
readOnly: true
type: boolean
monotonicity:
description: Whether the shard key value increases or decreases with the order in which documents were inserted. A monotonically changing shard key directs all inserts to one shard. `UNKNOWN` indicates that MongoDB Cloud could not determine monotonicity, which happens when the shard key has no supporting index or the collection is clustered.
readOnly: true
type: string
mostCommonValues:
description: Shard key values that occur most frequently in the sampled documents, with how often each occurs. MongoDB Cloud returns this parameter only to callers that can read the collection's data, because it carries values out of the collection rather than statistics about them.
items:
$ref: "#/components/schemas/ShardKeyMostCommonValue"
maxItems: 100
readOnly: true
type: array
namespace:
description: Combination of the database and collection that was analyzed, written as `.`.
type: string
note:
description: Guidance from MongoDB on how to interpret the metrics in this analysis. This parameter is absent when the analysis carries no guidance.
readOnly: true
type: string
numDistinctValues:
description: Number of distinct values that the candidate shard key takes across the sampled documents. A value close to `numDocsSampled` indicates high cardinality, which distributes documents well.
format: int64
minimum: 0
readOnly: true
type: integer
numDocsSampled:
description: Number of documents that MongoDB Cloud sampled to compute these metrics.
format: int64
minimum: 0
readOnly: true
type: integer
numDocsTotal:
description: Number of documents in the collection.
format: int64
minimum: 0
readOnly: true
type: integer
numOrphanDocs:
description: Number of orphaned documents in the collection. This parameter is absent for collections that have none.
format: int64
minimum: 0
readOnly: true
type: integer
percentageOfMultiShardReads:
description: Percentage of sampled reads that the candidate shard key would route to more than one shard but not to every shard.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
percentageOfMultiShardWrites:
description: Percentage of sampled writes that the candidate shard key would route to more than one shard but not to every shard.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
percentageOfScatterGatherReads:
description: Percentage of sampled reads that the candidate shard key would broadcast to every shard. Lower is better.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
percentageOfScatterGatherWrites:
description: Percentage of sampled writes that the candidate shard key would broadcast to every shard. Lower is better.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
percentageOfSingleShardReads:
description: Percentage of sampled reads that the candidate shard key would route to exactly one shard. Higher is better.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
percentageOfSingleShardWrites:
description: Percentage of sampled writes that the candidate shard key would route to exactly one shard. Higher is better.
format: double
maximum: 100
minimum: 0
readOnly: true
type: number
rawOutput:
description: Unmodified result of the `analyzeShardKey` command, as a JSON string. Its content tracks the MongoDB server version of the analyzed cluster rather than the version of this resource, so members outside the parameters above may appear or change without a new resource version. Do not parse it as a stable contract. `mostCommonValues` is removed from it for callers that cannot read the collection's data. This parameter is absent if MongoDB Cloud could not serialize the command result, which costs the raw view but not the analysis.
readOnly: true
type: string
readSampleSize:
$ref: "#/components/schemas/ShardKeyReadSampleSize"
shardKey:
description: Candidate shard key that was analyzed, given as one object per shard key field in the order the fields form the key. This parameter is absent when MongoDB Cloud has no shard key recorded for the analysis.
items:
additionalProperties:
description: "Key-value pair that sets one shard key field as the key and how it was indexed as its value: `1` for an ascending range-based field, `hashed` for a hashed field."
maxProperties: 1
minProperties: 1
type: string
description: "Key-value pair that sets one shard key field as the key and how it was indexed as its value: `1` for an ascending range-based field, `hashed` for a hashed field."
maxProperties: 1
minProperties: 1
type: object
maxItems: 32
type: array
writeSampleSize:
$ref: "#/components/schemas/ShardKeyWriteSampleSize"
required:
- createdAt
- expiresAt
- id
- namespace
type: object
ShardKeyMostCommonValue:
description: Shard key value that occurs frequently in the sampled documents, with the number of sampled documents that carry it.
properties:
frequency:
description: Number of sampled documents that carry this shard key value.
format: int64
minimum: 0
readOnly: true
type: integer
truncated:
description: Flag that indicates whether MongoDB Cloud omitted `value` because it was too large to return. When this flag is `true`, `frequency` still describes a real shard key value even though the value itself is absent.
readOnly: true
type: boolean
value:
description: Shard key value, given as one field-value pair per shard key field. This parameter is absent when `truncated` is `true`.
readOnly: true
type: object
type: object
ShardKeyReadSampleSize:
description: Number of sampled read operations that MongoDB Cloud used to compute the read distribution, broken down by the command that issued them.
properties:
aggregate:
description: Number of sampled `aggregate` operations.
format: int64
minimum: 0
readOnly: true
type: integer
count:
description: Number of sampled `count` operations.
format: int64
minimum: 0
readOnly: true
type: integer
distinct:
description: Number of sampled `distinct` operations.
format: int64
minimum: 0
readOnly: true
type: integer
find:
description: Number of sampled `find` operations.
format: int64
minimum: 0
readOnly: true
type: integer
total:
description: Total number of sampled read operations.
format: int64
minimum: 0
readOnly: true
type: integer
readOnly: true
type: object
ShardKeyWriteSampleSize:
description: Number of sampled write operations that MongoDB Cloud used to compute the write distribution, broken down by the command that issued them.
properties:
delete:
description: Number of sampled `delete` operations.
format: int64
minimum: 0
readOnly: true
type: integer
findAndModify:
description: Number of sampled `findAndModify` operations.
format: int64
minimum: 0
readOnly: true
type: integer
total:
description: Total number of sampled write operations.
format: int64
minimum: 0
readOnly: true
type: integer
update:
description: Number of sampled `update` operations.
format: int64
minimum: 0
readOnly: true
type: integer
readOnly: true
type: object
ShardKeys:
description: Document that configures the shard key on the destination cluster.
properties:
key:
description: List of fields to use for the shard key.
items:
type: object
type: array
uniqueItems: true
writeOnly: true
required:
- key
type: object
writeOnly: true
ShardMeasurement:
description: Time series of one measurement on one shard of the cluster.
properties:
dataPoints:
description: Data points of the measurement at `granularity` intervals, starting at `start` and not passing `end`, in ascending time order.
items:
$ref: "#/components/schemas/ShardMeasurementDataPoint"
maxItems: 1000
readOnly: true
type: array
name:
description: Measurement that the data points quantify.
readOnly: true
type: string
replicaSetName:
description: Human-readable label that identifies the shard, as the replica set name of its members.
example: atlas-12vorz-shard-0
readOnly: true
type: string
units:
description: Unit in which the data points express the measurement.
readOnly: true
type: string
required:
- dataPoints
- name
- replicaSetName
- units
type: object
ShardMeasurementDataPoint:
description: Value of one measurement at one moment in time. The `value` is `null` when no reading exists for that moment.
properties:
timestamp:
description: Date and time of the data point. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
value:
description: Value of the measurement at this moment, in the `units` of the measurement. `null` when no reading exists for this moment, including the period after a cluster or shard is created before MongoDB Cloud starts collecting its metrics.
format: double
readOnly: true
type: number
required:
- timestamp
- value
type: object
ShardMeasurementSeries:
description: Time series of one measurement on the shard named by the enclosing response.
properties:
dataPoints:
description: Data points of the measurement at `granularity` intervals, starting at `start` and not passing `end`, in ascending time order.
items:
$ref: "#/components/schemas/ShardMeasurementDataPoint"
maxItems: 1000
readOnly: true
type: array
name:
description: Measurement that the data points quantify.
readOnly: true
type: string
units:
description: Unit in which the data points express the measurement.
readOnly: true
type: string
required:
- dataPoints
- name
- units
type: object
ShardMeasurementsResponse:
description: Measurement time series of one shard over the requested window.
properties:
clusterName:
description: Human-readable label that identifies the cluster.
readOnly: true
type: string
end:
description: Date and time at which the window ends. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
granularity:
description: Interval between consecutive data points, in ISO 8601 duration format. Either the requested `granularity` or, when none was requested, the resolution MongoDB Cloud chose for the width of the window.
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
measurements:
description: One time series per requested measurement, in the order of the measurement names. A measurement MongoDB Cloud has no readings for is still listed, with `null` data point values.
items:
$ref: "#/components/schemas/ShardMeasurementSeries"
maxItems: 11
readOnly: true
type: array
replicaSetName:
description: Human-readable label that identifies the shard, as the replica set name of its members.
example: atlas-12vorz-shard-0
readOnly: true
type: string
start:
description: Date and time of the first data point. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
required:
- clusterName
- end
- granularity
- groupId
- measurements
- replicaSetName
- start
type: object
ShardMetricsResponse:
description: Metrics for one shard of a sharded cluster, covering its size, its load, and any alerts open on its nodes.
properties:
alerts:
description: Alerts open on this shard's nodes, sorted by creation date with the most recently created first. MongoDB Cloud returns this property when you request a single shard, and returns at most 100 alerts.
items:
$ref: "#/components/schemas/ShardAlert"
maxItems: 100
readOnly: true
type: array
cacheThroughput:
$ref: "#/components/schemas/ShardCacheThroughput"
cpuUtilization:
$ref: "#/components/schemas/ShardCpuUtilization"
dataSizeBytes:
description: Total size of the user data stored on this shard. The resource expresses this value in bytes.
format: int64
minimum: 0
readOnly: true
type: integer
rangeDeleterTasks:
description: Average number of range deletion tasks queued across the shard's nodes, measured at the time of the request.
format: double
minimum: 0
readOnly: true
type: number
readLatencyMicroseconds:
description: Average latency of the read operations this shard served over the last hour, in microseconds.
format: double
minimum: 0
readOnly: true
type: number
readOperationsPerSecond:
$ref: "#/components/schemas/ShardOperations"
replicaSetName:
description: Name of the shard's replica set. This is the name that identifies the same shard on the processes, alerts, events, and backup resources.
example: atlas-abcdef-shard-0
readOnly: true
type: string
shardedCollections:
description: Number of sharded collections with data on this shard.
format: int32
minimum: 0
readOnly: true
type: integer
warnings:
description: Conditions that MongoDB Cloud observed on this shard relative to the rest of the cluster. `HOTSPOT` means this shard's average CPU utilization is more than twice the average across all shards of the cluster. This is a cluster-scoped comparison, so its value depends on how loaded the other shards are and not only on this shard.
items:
type: string
maxItems: 100
readOnly: true
type: array
writeOperationsPerSecond:
$ref: "#/components/schemas/ShardOperations"
required:
- cpuUtilization
- dataSizeBytes
- readOperationsPerSecond
- replicaSetName
- shardedCollections
- warnings
- writeOperationsPerSecond
type: object
ShardOperations:
description: Operations per second that the shard served over the last hour.
properties:
average:
description: Average operations per second across the shard's nodes over the last hour.
format: double
readOnly: true
type: number
maximum:
description: Highest operations per second that any one of the shard's nodes reached over the last hour.
format: double
readOnly: true
type: number
required:
- average
- maximum
type: object
ShardingInsightsBalancingWindow:
description: Balancing window configured on the sharded cluster. When configured, the balancer moves data only during the daily interval between `startTime` and `endTime`.
properties:
endTime:
description: Time of day at which the balancing window ends, in 24-hour `HH:MM` format as configured on the cluster. Present only when `status` is `CONFIGURED`.
example: 06:00
pattern: ^([01]?\d|2[0-3]):[0-5]\d$
readOnly: true
type: string
startTime:
description: Time of day at which the balancing window starts, in 24-hour `HH:MM` format as configured on the cluster. Present only when `status` is `CONFIGURED`.
example: 02:00
pattern: ^([01]?\d|2[0-3]):[0-5]\d$
readOnly: true
type: string
status:
description: State of the balancing window. `CONFIGURED` means the cluster restricts balancing to the interval between `startTime` and `endTime`. `NOT_CONFIGURED` means the balancer may run at any time. `FAILED_INITIAL_METRIC_PENDING` means MongoDB Cloud has not yet collected balancer metrics for a recently created or converted cluster. `FAILED_TO_DETERMINE` means the window could not be resolved.
readOnly: true
type: string
required:
- status
type: object
ShardingInsightsResponse:
description: "Cluster-level sharding state of one sharded cluster: shard count, balancer state, config server availability, and the configured balancing window."
properties:
balancerState:
description: State of the cluster balancer. `BALANCING` means a balancer round is in progress. `IDLE` means the balancer is enabled and no round is in progress. `DISABLED` means the balancer is turned off. `FAILED_TO_DETERMINE` means the balancer state could not be resolved.
readOnly: true
type: string
balancingWindow:
$ref: "#/components/schemas/ShardingInsightsBalancingWindow"
configServerStatus:
description: Availability of the cluster's config servers. `AVAILABLE` means at least one config server reported recently. `UNAVAILABLE` means config servers exist but none has reported recently. `FAILED_TO_DETERMINE` means availability could not be resolved.
readOnly: true
type: string
totalShards:
description: Number of shards in the cluster.
format: int32
readOnly: true
type: integer
required:
- balancerState
- balancingWindow
- configServerStatus
- totalShards
type: object
ShardingRecommendation:
description: One sharding recommendation for the cluster or one of its collections.
properties:
triggers:
description: Monitored conditions that fired and produced this recommendation.
items:
$ref: "#/components/schemas/ShardingRecommendationTrigger"
maxItems: 100
readOnly: true
type: array
type:
description: Recommendation type that produced this recommendation.
readOnly: true
type: string
recommendedShardCount:
description: Recommended total number of shards for the cluster.
format: int32
readOnly: true
type: integer
namespace:
description: Namespace of the collection to shard, in `.` form.
readOnly: true
type: string
required:
- triggers
- type
type: object
x-xgen-discriminator:
propertyName: type
mapping:
ADD_SHARDS:
properties:
- recommendedShardCount
required:
- recommendedShardCount
SHARD_CLUSTER:
properties: []
SHARD_COLLECTION:
properties:
- namespace
required:
- namespace
ShardingRecommendationTrigger:
description: One monitored condition that fired, observed on one entity.
properties:
name:
description: Identifier of the monitored condition that fired.
example: HIGH_DISK_SPACE_PERCENT_USED
readOnly: true
type: string
target:
description: "Entity the condition was observed on: a namespace in `.` form, a host name, or a replica set (shard) name, as identified by `targetType`. Present if and only if `targetType` is present; both are absent for cluster-wide conditions, such as `UNSHARDED_COLLECTION_COUNT`, which are not tied to a single entity. The cluster is already identified in the request path."
readOnly: true
type: string
targetType:
description: Kind of entity that `target` identifies. Present if and only if `target` is present; both are absent for cluster-wide conditions.
readOnly: true
type: string
unit:
description: Unit of the measured trigger value.
readOnly: true
type: string
value:
description: Measured value of the trigger metric for this entity. This parameter is absent when no finite measurement was available.
format: double
readOnly: true
type: number
required:
- name
- unit
type: object
ShardingRecommendationsResponse:
description: Sharding recommendations generated for one cluster.
properties:
recommendations:
description: Sharding recommendations for the cluster. Each recommendation identifies the recommendation type that produced it in its `type` property.
items:
$ref: "#/components/schemas/ShardingRecommendation"
maxItems: 100
readOnly: true
type: array
required:
- recommendations
type: object
ShardingRequest:
description: Document that configures sharding on the destination cluster when migrating from a replica set source to a sharded cluster destination on MongoDB 6.0 or higher. If you don't wish to shard any collections on the destination cluster, leave this empty.
properties:
createSupportingIndexes:
description: Flag that lets the migration create supporting indexes for the shard keys, if none exists, as the destination cluster also needs compatible indexes for the specified shard keys.
type: boolean
writeOnly: true
shardingEntries:
description: List of shard configurations to shard destination collections. Atlas shards only those collections that you include in the sharding entries array.
items:
$ref: "#/components/schemas/ShardEntry"
type: array
uniqueItems: true
writeOnly: true
required:
- createSupportingIndexes
- shardingEntries
type: object
writeOnly: true
SkuResponse:
properties:
description:
description: Human-readable short summary of what this SKU represents.
readOnly: true
type: string
id:
description: Unique string that identifies the SKU.
readOnly: true
type: string
type: object
SkuServiceResponse:
properties:
name:
description: Human-readable name of the SKU service as shown on invoices.
readOnly: true
type: string
type: object
Source:
description: Document that describes the source of the migration.
properties:
caCertificatePath:
description: Path to the CA certificate that signed SSL certificates use to authenticate to the source cluster.
type: string
clusterName:
description: Label that identifies the source cluster name.
minLength: 1
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the source project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
managedAuthentication:
description: Flag that indicates whether MongoDB Automation manages authentication to the source cluster. If true, do not provide values for username and password.
type: boolean
password:
description: Password that authenticates the username to the source cluster.
type: string
writeOnly: true
ssl:
description: Flag that indicates whether you have SSL enabled.
type: boolean
username:
description: Label that identifies the SCRAM-SHA user that connects to the source cluster.
type: string
writeOnly: true
required:
- clusterName
- groupId
- managedAuthentication
- ssl
type: object
StateReason:
description: State reason of the Job. This is set when the job state is "Failed".
properties:
errorCode:
description: Error code relating to state.
type: string
message:
description: Message describing error or state.
type: string
readOnly: true
type: object
StorageConfig:
properties:
shardSizeLimitGB:
description: "Available in Public Preview: Maximum data size that MongoDB Cloud allows each shard of this cluster to reach, expressed in gigabytes. MongoDB Cloud rejects writes to a shard that reaches the limit that it enforces. In `replicationSpecs`, this field reports the limit that you configured, and MongoDB Cloud omits it when you never configured one. In `effectiveReplicationSpecs`, this field reports the limit that MongoDB Cloud enforces: usually the limit that you configured, otherwise the default limit that MongoDB Cloud assigns when it creates or updates the cluster. This value may differ from the limit that you configured due to system-managed changes. This limit applies to every shard of the cluster; set the same value on each region configuration's `autoScaling`, as MongoDB Cloud rejects requests that specify differing values. You can set this only on Atlas INFINITE clusters: MongoDB Cloud rejects any request that names this field, including as `null`, for a cluster or node type that doesn't support it. In a request that includes `replicationSpecs`, omitting `shardSizeLimitGB` or sending it as `null` clears the limit. Omitting `replicationSpecs` preserves it."
format: int32
minimum: 1
type: integer
type: object
StreamConfig:
description: Configuration options for an Atlas Stream Processing Workspace.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
maxTierSize:
description: Max tier size for the Stream Workspace. Configures Memory or VCPU allowances.
title: Stream Workspace Max Tier Size
type: string
tier:
description: Selected tier for the Stream Workspace. Configures Memory or VCPU allowances.
title: Stream Workspace Tier
type: string
type: object
StreamProcessorMetricThreshold:
description: Threshold for the metric that, when exceeded, triggers an alert. The metric threshold pertains to event types which reflects changes of measurements and metrics in stream processors.
properties:
metricName:
description: Human-readable label that identifies the metric against which MongoDB Cloud checks the configured `metricThreshold.threshold`.
type: string
mode:
description: MongoDB Cloud computes the current metric value as an average.
type: string
operator:
description: Comparison operator to apply when checking the current metric value.
type: string
threshold:
description: Value of metric that, when exceeded, triggers an alert.
format: double
type: number
units:
$ref: "#/components/schemas/RawMetricUnits"
title: Stream Processor Metric Threshold
type: object
x-xgen-discriminator:
propertyName: metricName
mapping:
STREAM_PROCESSOR_CHANGE_STREAM_LAG:
properties: []
STREAM_PROCESSOR_DLQ_MESSAGE_COUNT:
properties: []
STREAM_PROCESSOR_KAFKA_LAG:
properties: []
STREAM_PROCESSOR_OUTPUT_MESSAGE_COUNT:
properties: []
StreamsAWSConnectionConfig:
description: AWS configurations for AWS-based connection types.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
roleArn:
description: Amazon Resource Name (ARN) that identifies the Amazon Web Services (AWS) Identity and Access Management (IAM) role that MongoDB Cloud assumes when it accesses resources in your AWS account.
type: string
testBucket:
description: The name of an S3 bucket used to check authorization of the passed-in IAM role ARN. This field applies only to S3 connections and is ignored for all other connection types and configurations.
type: string
type: object
StreamsAutoscaling:
description: Autoscaling configuration for a stream processor.
properties:
enabled:
description: |-
Flag that indicates whether autoscaling is enabled.
- **Omitted, `null`, or `false`:**
- On `CREATE`: a no-op, there is no persisted setting yet to disable or clear.
- On `MODIFY` or `:startWith`: omitted preserves the current setting. `null` or `false` disables autoscaling and clears its configuration.
- **`true`** on `CREATE`, `MODIFY`, or `:startWith`: enables autoscaling.
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
maxTier:
description: |-
Tier ceiling for autoscaling (scale-up limit).
- **Omitted:**
- On `CREATE`: falls back to the workspace max tier (there is no current bound to preserve).
- On `MODIFY` or `:startWith`: the current bound is preserved.
- **`null`** on `CREATE`, `MODIFY`, or `:startWith`: resets the bound to the workspace max tier.
- **A tier value** on `CREATE`, `MODIFY`, or `:startWith`: sets the bound to that tier.
type: string
x-xgen-server-computed-when-client-omitted: true
minTier:
description: |-
Tier floor for autoscaling (scale-down limit).
- **Omitted:**
- On `CREATE`: defaults to the lower of the processor `tier` and the workspace default tier (there is no current bound to preserve).
- On `MODIFY` or `:startWith`: the current bound is preserved.
- **`null`** on `CREATE`, `MODIFY`, or `:startWith`: resets the bound to the lower of the processor `tier` and the workspace default tier.
- **A tier value** on `CREATE`, `MODIFY`, or `:startWith`: sets the bound to that tier.
type: string
x-xgen-server-computed-when-client-omitted: true
type: object
StreamsConnection:
description: Settings that define a connection to an external data store.
properties:
errorMessage:
description: Connection error message.
readOnly: true
type: string
id:
description: Unique identifier of the connection.
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the stream connection. For the Sample type, this is the name of the sample source.
type: string
region:
description: Connection region.
type: string
state:
description: Connection state.
readOnly: true
type: string
type:
description: Connection type.
type: string
clusterGroupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the configured cluster. Required if the ID does not match the project containing the streams workspace. You must first enable the organization setting.
type: string
clusterName:
description: Name of the cluster configured for this connection.
type: string
dbRoleToExecute:
$ref: "#/components/schemas/DBRoleToExecute"
authentication:
$ref: "#/components/schemas/StreamsKafkaAuthentication"
bootstrapServers:
description: Comma separated list of server addresses.
type: string
config:
additionalProperties:
description: Map of Kafka key-value pairs for optional configuration. This object is flat, and keys can have '.' characters.
example: '{"group.protocol.type":"consumer","debug":"queue, msg, protocol"}'
type: string
description: Map of Kafka key-value pairs for optional configuration. This object is flat, and keys can have '.' characters.
example:
debug: queue, msg, protocol
group.protocol.type: consumer
type: object
networking:
$ref: "#/components/schemas/StreamsKafkaNetworking"
security:
$ref: "#/components/schemas/StreamsKafkaSecurity"
headers:
additionalProperties:
description: A map of key-value pairs that will be passed as headers for the request.
type: string
description: A map of key-value pairs that will be passed as headers for the request.
type: object
url:
description: The URL to be used for the request.
type: string
aws:
$ref: "#/components/schemas/StreamsAWSConnectionConfig"
publicPrivateNetworking:
$ref: "#/components/schemas/StreamsPublicPrivateLinkNetworking"
provider:
description: The Schema Registry provider.
type: string
schemaRegistryAuthentication:
$ref: "#/components/schemas/SchemaRegistryAuthentication"
schemaRegistryUrls:
description: List of Schema Registry endpoint URLs used by this connection. Each URL must use the http or https scheme and specify a valid host and optional port.
items:
description: Schema Registry URL.
format: uri
type: string
maxItems: 10
type: array
uniqueItems: true
azure:
$ref: "#/components/schemas/AzureConnection"
gcp:
$ref: "#/components/schemas/StreamsGCPConnectionConfig"
catalogProvider:
description: Catalog system the connection points at. Cannot be changed after creation.
type: string
databricks:
$ref: "#/components/schemas/StreamsDatabricksConnectionConfig"
snowflake:
$ref: "#/components/schemas/StreamsSnowflakeConnectionConfig"
catalogUrl:
description: "Base HTTPS URL of the catalog. Must be on the provider's domain: `*.cloud.databricks.com` or `*.azuredatabricks.net` for Databricks Unity, and `*.snowflakecomputing.com` for Snowflake Horizon."
format: uri
type: string
readOnly: true
type: object
x-xgen-discriminator:
propertyName: type
mapping:
AWSKinesisDataStreams:
properties:
- aws
- networking
AWSLambda:
properties:
- aws
- publicPrivateNetworking
AzureBlobStorage:
properties:
- azure
- publicPrivateNetworking
Cluster:
properties:
- clusterGroupId
- clusterName
- dbRoleToExecute
DataCatalog:
properties:
- catalogProvider
- databricks
- snowflake
- catalogUrl
required:
- catalogUrl
GCPPubSub:
properties:
- gcp
- publicPrivateNetworking
Https:
properties:
- headers
- url
Kafka:
properties:
- authentication
- bootstrapServers
- config
- networking
- security
S3:
properties:
- aws
- networking
Sample:
properties: []
SchemaRegistry:
properties:
- provider
- schemaRegistryAuthentication
- schemaRegistryUrls
required:
- provider
- schemaRegistryAuthentication
- schemaRegistryUrls
StreamsDLQ:
description: Dead letter queue for the stream processor.
externalDocs:
url: https://www.mongodb.com/docs/atlas/reference/glossary/#std-term-dead-letter-queue
properties:
coll:
description: Name of the collection to use for the DLQ.
type: string
connectionName:
description: Name of the connection to write DLQ messages to. Must be an Atlas connection.
type: string
db:
description: Name of the database to use for the DLQ.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
StreamsDataProcessRegion:
description: Information about the cloud provider region in which MongoDB Cloud processes the stream.
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
region:
$ref: "#/components/schemas/BaseStreamsRegion"
required:
- cloudProvider
- region
type: object
StreamsDatabricksAuthentication:
description: Databricks service principal credentials used to obtain an OAuth token.
properties:
clientId:
description: OAuth client ID of the Databricks service principal.
type: string
clientSecret:
description: OAuth client secret of the Databricks service principal. Never returned in responses; omit or leave blank on update to keep the stored secret.
format: password
type: string
writeOnly: true
required:
- clientId
- clientSecret
type: object
StreamsDatabricksConnectionConfig:
description: Databricks settings for a connection.
properties:
authentication:
$ref: "#/components/schemas/StreamsDatabricksAuthentication"
required:
- authentication
type: object
StreamsFailoverConnection:
description: Settings that define a failover connection to an external data store.
properties:
id:
description: Unique identifier of the connection.
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the stream connection.
type: string
region:
description: Connection region.
type: string
state:
description: Connection state.
readOnly: true
type: string
type:
description: Connection type.
type: string
clusterGroupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the configured cluster. Required if the ID does not match the project containing the streams workspace. You must first enable the organization setting.
type: string
clusterName:
description: Name of the cluster configured for this connection.
type: string
dbRoleToExecute:
$ref: "#/components/schemas/DBRoleToExecute"
authentication:
$ref: "#/components/schemas/StreamsKafkaAuthentication"
bootstrapServers:
description: Comma separated list of server addresses.
type: string
config:
additionalProperties:
description: Map of Kafka key-value pairs for optional configuration. This object is flat, and keys can have '.' characters.
example: '{"group.protocol.type":"consumer","debug":"queue, msg, protocol"}'
type: string
description: Map of Kafka key-value pairs for optional configuration. This object is flat, and keys can have '.' characters.
example:
debug: queue, msg, protocol
group.protocol.type: consumer
type: object
networking:
$ref: "#/components/schemas/StreamsKafkaNetworking"
security:
$ref: "#/components/schemas/StreamsKafkaSecurity"
type: object
x-xgen-discriminator:
propertyName: type
mapping:
Cluster:
properties:
- clusterGroupId
- clusterName
- dbRoleToExecute
Kafka:
properties:
- authentication
- bootstrapServers
- config
- networking
- security
StreamsGCPConnectionConfig:
description: GCP-specific configuration for the connection.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
serviceAccountId:
description: Email address of the Google Cloud Platform (GCP) service account that Atlas Streams uses to connect to the GCP Pub/Sub resources.
type: string
type: object
StreamsKafkaAuthentication:
description: User credentials required to connect to a Kafka Cluster. Includes the authentication type, as well as the parameters for that authentication mode.
properties:
aws:
$ref: "#/components/schemas/StreamsAWSConnectionConfig"
clientId:
description: OIDC client identifier for authentication to the Kafka cluster.
type: string
clientSecret:
description: OIDC client secret for authentication to the Kafka cluster.
format: password
type: string
writeOnly: true
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mechanism:
description: Style of authentication. Can be one of PLAIN, SCRAM-256, SCRAM-512, or OAUTHBEARER.
type: string
method:
description: SASL OAUTHBEARER authentication method. Currently, only OIDC is supported.
type: string
password:
description: Password of the account to connect to the Kafka cluster.
format: password
type: string
writeOnly: true
saslOauthbearerExtensions:
description: SASL OAUTHBEARER extensions parameter for additional OAuth2 configuration.
type: string
scope:
description: OIDC scope parameter defining the access permissions requested.
type: string
sslCertificate:
description: SSL certificate for client authentication to Kafka.
type: string
sslKey:
description: SSL key for client authentication to Kafka.
format: password
type: string
writeOnly: true
sslKeyPassword:
description: Password for the SSL key, if it is password protected.
format: password
type: string
writeOnly: true
tokenEndpointUrl:
description: OIDC token endpoint URL for obtaining access tokens.
type: string
username:
description: Username of the account to connect to the Kafka cluster.
type: string
type: object
StreamsKafkaNetworking:
description: Networking configuration for Streams connections.
properties:
access:
$ref: "#/components/schemas/StreamsKafkaNetworkingAccess"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
StreamsKafkaNetworkingAccess:
description: Information about networking access.
properties:
connectionId:
description: Reserved. Will be used by `PRIVATE_LINK` connection type. Setting this field with any other networking access type returns a validation error.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Reserved. Will be used by `PRIVATE_LINK` connection type.
type: string
tgwRouteId:
description: Reserved. Will be used by `TRANSIT_GATEWAY` connection type.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type:
description: Selected networking type. Either `PUBLIC`, `VPC`, `PRIVATE_LINK`, or `TRANSIT_GATEWAY`. Defaults to `PUBLIC`. For VPC, ensure that VPC peering exists and connectivity has been established between Atlas VPC and the VPC where Kafka cluster is hosted for the connection to function properly. `TRANSIT_GATEWAY` support is coming soon.
title: Networking Access Type
type: string
type: object
StreamsKafkaSecurity:
description: Properties for the secure transport connection to Kafka. For SSL, this can include the trusted certificate to use.
properties:
brokerPublicCertificate:
description: A trusted, public x509 certificate for connecting to Kafka over SSL.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
protocol:
description: Describes the transport type. Can be either `SASL_PLAINTEXT`, `SASL_SSL`, or `SSL`.
type: string
type: object
StreamsModifyStreamProcessor:
description: A request to modify an existing stream processor.
properties:
failoverEnabled:
description: Flag that enables or disables failover for the stream processor.
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: New name for the stream processor.
type: string
options:
$ref: "#/components/schemas/StreamsModifyStreamProcessorOptions"
pipeline:
description: New pipeline for the stream processor.
externalDocs:
description: Supported Aggregation Pipeline Stages
url: https://www.mongodb.com/docs/atlas/atlas-stream-processing/stream-aggregation/#std-label-stream-aggregation
items:
$ref: "#/components/schemas/Document"
type: array
tier:
description: Baseline processing tier requested by the user.
type: string
type: object
StreamsModifyStreamProcessorOptions:
description: Additional options for modifying a stream processor.
properties:
autoscaling:
$ref: "#/components/schemas/StreamsAutoscaling"
dlq:
$ref: "#/components/schemas/StreamsDLQ"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
resumeFromCheckpoint:
description: When true, the modified stream processor resumes from its last checkpoint.
type: boolean
type: object
StreamsOptions:
description: Optional configuration for the stream processor.
properties:
autoscaling:
$ref: "#/components/schemas/StreamsAutoscaling"
dlq:
$ref: "#/components/schemas/StreamsDLQ"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
StreamsPrivateLinkConnection:
description: Container for metadata needed to create a Private Link connection.
properties:
_id:
description: The ID of the Private Link connection.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
arn:
description: Amazon Resource Name (ARN). Required for AWS Provider and MSK vendor.
pattern: ^arn:aws:kafka
type: string
authenticationScheme:
description: Authentication mechanism to use with this private networking connection.
type: string
azureResourceIds:
description: Azure Resource IDs of each availability zone for the Azure Confluent cluster.
items:
type: string
type: array
dnsDomain:
description: |-
The domain hostname. Required for the following provider and vendor combinations:
- AWS provider with CONFLUENT vendor.
- AZURE provider with EVENTHUB or CONFLUENT vendor.
type: string
dnsSubDomain:
description: Sub-Domain name of Confluent cluster. These are typically your availability zones. Required for AWS Provider and CONFLUENT vendor, if your AWS CONFLUENT cluster doesn't use subdomains, you must set this to the empty array [].
items:
type: string
type: array
errorMessage:
description: Error message if the state is FAILED.
readOnly: true
type: string
gcpConnectionIds:
description: List of GCP Private Service Connect connection IDs.
items:
type: string
maxItems: 3
type: array
uniqueItems: true
gcpServiceAttachmentUris:
description: Service Attachment URIs of each availability zone for the GCP Confluent cluster.
items:
type: string
maxItems: 3
type: array
uniqueItems: true
interfaceEndpointId:
description: Interface endpoint ID that is created from the service endpoint ID provided.
readOnly: true
type: string
interfaceEndpointName:
description: Interface endpoint name that is created from the service endpoint ID provided.
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
provider:
description: Cloud provider where the private endpoint's target resource is deployed. Valid values are AWS, AZURE, and GCP.
type: string
providerAccountId:
description: Account ID from the cloud provider.
readOnly: true
type: string
region:
description: The region of the Provider’s cluster. See [AWS](https://www.mongodb.com/docs/atlas/reference/amazon-aws/#stream-processing-workspaces), [AZURE](https://www.mongodb.com/docs/atlas/reference/microsoft-azure/#stream-processing-workspaces), and [GCP](https://www.mongodb.com/docs/atlas/reference/google-gcp/#stream-processing-workspaces) supported regions.
type: string
serviceEndpointId:
description: For AZURE EVENTHUB, this is the [namespace endpoint ID](https://learn.microsoft.com/en-us/rest/api/eventhub/namespaces/get). For AWS CONFLUENT cluster, this is the [VPC Endpoint service name](https://docs.confluent.io/cloud/current/networking/private-links/aws-privatelink.html).
type: string
state:
description: State the connection is in.
readOnly: true
type: string
vendor:
description: |-
Vendor that manages the cloud service. The list of supported vendor values is:
- AWS
-- `MSK` for AWS MSK Kafka clusters
-- `CONFLUENT` for Confluent Kafka clusters on AWS
-- `KINESIS` for AWS Kinesis Data Streams
-- `S3` for AWS S3
-- `LAMBDA` for AWS Lambda
- Azure
-- `EVENTHUB` for Azure EventHub.
-- `CONFLUENT` for Confluent Kafka clusters on Azure
-- `AZURE_BLOB_STORAGE` for Azure Blob Storage
- GCP
-- `CONFLUENT` for Confluent Kafka clusters on GCP
-- `PUBSUB` for Google Cloud Pub/Sub
**NOTE** Omitting the vendor field will default to using the GENERIC vendor.
type: string
required:
- provider
type: object
StreamsPrivateLinkConnectionRequest:
description: Request body for updating a Private Link connection.
properties:
dnsDomain:
description: The domain hostname for the AWS Confluent Serverless Private Link connection. Allowed only when no domain is currently set, or when the connection is in `IDLE` state.
type: string
type: object
StreamsPrivateLinkEndpointEventTypeViewForNdsGroupAlertable:
description: Event type that triggers an alert.
example: STREAMS_PRIVATE_LINK_ENDPOINT_UNUSED_FIRST_WARNING
externalDocs:
description: Atlas Alert Event Types
url: https://www.mongodb.com/docs/atlas/reference/atlas-alert-event-types/
title: Stream Processing Private Link Endpoint Event Types
type: string
StreamsPrivateLinkEndpointMatcher:
description: Rules to apply when comparing a private link endpoint against this alert configuration.
properties:
fieldName:
$ref: "#/components/schemas/StreamsPrivateLinkEndpointMatcherField"
operator:
description: Comparison operator to apply when checking the current metric value against **matcher[n].value**. The `REGEX` operator only supports inclusive matches. Use the `NOT_CONTAINS` operator to exclude values.
type: string
value:
description: Value to match or exceed using the specified `matchers.operator`.
example: event-replica-set
type: string
required:
- fieldName
- operator
- value
title: Matchers
type: object
StreamsPrivateLinkEndpointMatcherField:
description: Name of the parameter in the target object that MongoDB Cloud checks. The parameter must match all rules for MongoDB Cloud to check for alert configurations.
example: ENDPOINT_ID
title: Streams Private Link Endpoint Matcher Fields
type: string
StreamsProcessor:
description: An atlas stream processor.
properties:
_id:
description: Unique 24-hexadecimal character string that identifies the stream processor.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
effectiveTier:
description: Tier the stream processor is currently running on. The server sets this value from `tier` on create and on every start or restart, may move it within [`minTier`, `maxTier`] while autoscaling is enabled, and restores it to `tier` when autoscaling is disabled. Patching `tier` does not change it directly; the new tier takes effect at the next start or restart.
readOnly: true
type: string
failoverEnabled:
description: Flag that enables or disables failover for the stream processor.
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable name of the stream processor.
type: string
options:
$ref: "#/components/schemas/StreamsOptions"
pipeline:
description: Stream aggregation pipeline you want to apply to your streaming data.
externalDocs:
description: Supported Aggregation Pipeline Stages
url: https://www.mongodb.com/docs/atlas/atlas-stream-processing/stream-aggregation/#std-label-stream-aggregation
items:
$ref: "#/components/schemas/Document"
type: array
tier:
description: Baseline tier of the stream processor. The processor starts or restarts on this tier; `effectiveTier` reports the tier it is currently running.
type: string
type: object
StreamsProcessorRequest:
description: Details to create a stream processor.
properties:
failoverEnabled:
description: Flag that enables or disables failover for the stream processor.
type: boolean
name:
description: Human-readable name of the stream processor.
type: string
options:
$ref: "#/components/schemas/StreamsOptions"
pipeline:
description: Stream aggregation pipeline you want to apply to your streaming data.
externalDocs:
description: Supported Aggregation Pipeline Stages
url: https://www.mongodb.com/docs/atlas/atlas-stream-processing/stream-aggregation/#std-label-stream-aggregation
items:
$ref: "#/components/schemas/Document"
minItems: 1
type: array
tier:
description: Baseline processing tier requested by the user.
type: string
required:
- name
- pipeline
type: object
StreamsProcessorStatus:
description: Desired status change to apply to a tenant's stream processors.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
mode:
description: "Strategy for the processor: GRACEFUL - attempt to stop the processor, error if processor cannot be stopped. if stop was successful, start the processor in the new region with the latest checkpoint. FORCED - attempt to stop the processor, proceed to starting the processor in the new region with checkpoints disabled regardless of whether or not the stop succeeds."
type: string
region:
description: Name of the region against which to apply the status change. Required when `status` is `FAILED_OVER`; optional otherwise.
type: string
status:
description: Represents the desired action to apply to stream processors within a workspace, such as starting all processors, stopping all processors, or performing a bulk regional failover.
type: string
required:
- status
type: object
StreamsProcessorWithStats:
description: An atlas stream processor with optional stats.
properties:
_id:
description: Unique 24-hexadecimal character string that identifies the stream processor.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
effectiveTier:
description: Tier the stream processor is currently running on. The server sets this value from `tier` on create and on every start or restart, may move it within [`minTier`, `maxTier`] while autoscaling is enabled, and restores it to `tier` when autoscaling is disabled. Patching `tier` does not change it directly; the new tier takes effect at the next start or restart.
readOnly: true
type: string
eligibleForFailover:
description: Flag that indicates whether the stream processor is eligible for failover.
readOnly: true
type: boolean
failoverEnabled:
description: Flag that enables or disables failover for the stream processor.
readOnly: true
type: boolean
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable name of the stream processor.
readOnly: true
type: string
options:
$ref: "#/components/schemas/StreamsOptions"
pipeline:
description: Stream aggregation pipeline you want to apply to your streaming data.
items:
readOnly: true
type: object
readOnly: true
type: array
state:
description: The state of the stream processor. Commonly occurring states are 'CREATED', 'STARTED', 'STOPPED' and 'FAILED'.
readOnly: true
type: string
stats:
description: The stats associated with the stream processor.
externalDocs:
url: https://www.mongodb.com/docs/atlas/atlas-stream-processing/manage-stream-processor/#view-statistics-of-a-stream-processor
readOnly: true
type: object
tier:
description: Baseline tier of the stream processor. The processor starts or restarts on this tier; `effectiveTier` reports the tier it is currently running.
type: string
required:
- _id
- effectiveTier
- name
- pipeline
- state
type: object
StreamsPublicPrivateLinkNetworking:
description: Networking configuration for connections that support `PUBLIC` and `PRIVATE_LINK` access types. For GCP connections, use `PRIVATE_LINK` for GCP Private Service Connect (PSC).
properties:
access:
$ref: "#/components/schemas/StreamsPublicPrivateLinkNetworkingAccess"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
StreamsPublicPrivateLinkNetworkingAccess:
description: Information about networking access.
properties:
connectionId:
description: The ID of the Private Link connection. Required for `PRIVATE_LINK` type. For GCP connections using Private Service Connect (PSC), this is the PSC connection ID.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type:
description: Selected networking type. Either `PUBLIC` or `PRIVATE_LINK`. Defaults to `PUBLIC`. For AWS, Azure, and GCP connections, use `PRIVATE_LINK` for AWS PrivateLink, Azure Private Link, or GCP Private Service Connect (PSC) respectively.
title: Networking Access Type
type: string
type: object
StreamsSampleConnections:
description: Sample connections to add to SPI.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
solar:
default: false
description: Flag that indicates whether to add a `sample_stream_solar` connection.
type: boolean
type: object
StreamsSnowflakeAuthentication:
description: Snowflake service user and key pair used to authenticate to Snowflake.
properties:
account:
description: Snowflake account identifier.
type: string
privateKey:
description: Private key of the service user's key pair. Never returned in responses; omit or leave blank on update to keep the stored key.
format: password
type: string
writeOnly: true
role:
description: Snowflake role the service user assumes.
type: string
user:
description: Snowflake service user.
type: string
required:
- account
- privateKey
- role
- user
type: object
StreamsSnowflakeConnectionConfig:
description: Snowflake settings for a connection.
properties:
authentication:
$ref: "#/components/schemas/StreamsSnowflakeAuthentication"
required:
- authentication
type: object
StreamsStartProcessorFailover:
description: Failover options for starting a stream processor.
properties:
clearCheckpoint:
description: If true, clears the checkpoint so the failover processor does not resume from it. Applies only to FORCED failover; clearing may cause duplicate or missing records in the output.
type: boolean
dryRun:
description: If true, simulates the operation without making any changes.
type: boolean
mode:
description: "Strategy for the processor: GRACEFUL - attempt to stop the processor, error if processor cannot be stopped. if stop was successful, start the processor in the new region with the latest checkpoint. FORCED - attempt to stop the processor, proceed to starting the processor in the new region with checkpoints disabled regardless of whether or not the stop succeeds."
type: string
region:
description: Cloud provider region where the stream processor should be started in failover mode. The region must be a valid region for the stream processor's cloud provider and must be included in the tenant's configured failover regions, or it may be the tenant's default (primary) region.
example: VIRGINIA_USA
type: string
required:
- region
type: object
StreamsStartStreamProcessorWith:
description: A request to start a stream processor.
properties:
autoscaling:
$ref: "#/components/schemas/StreamsAutoscaling"
failover:
$ref: "#/components/schemas/StreamsStartProcessorFailover"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
resumeFromCheckpoint:
description: When true or not specified, the stream processor resumes from its last checkpoint. When false, the stream processor starts fresh.
type: boolean
startAtOperationTime:
description: The operation time after which the change stream source should begin reporting. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
tier:
description: Baseline processing tier requested by the user.
type: string
type: object
StreamsTenant:
properties:
_id:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
connections:
description: List of connections configured in the stream workspace.
items:
$ref: "#/components/schemas/StreamsConnection"
readOnly: true
type: array
dataProcessRegion:
$ref: "#/components/schemas/StreamsDataProcessRegion"
failoverRegions:
description: List of failover regions configured for the stream workspace.
items:
$ref: "#/components/schemas/StreamsDataProcessRegion"
maxItems: 2
type: array
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
hostnames:
description: List that contains the hostnames assigned to the stream workspace.
items:
description: Unique hostname assigned to the stream workspace.
readOnly: true
type: string
readOnly: true
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Label that identifies the stream workspace.
type: string
sampleConnections:
$ref: "#/components/schemas/StreamsSampleConnections"
streamConfig:
$ref: "#/components/schemas/StreamConfig"
type: object
StreamsTenantUpdateRequest:
description: Details to update a stream tenant, optionally accompanied by a processor status change (for example, triggering bulk regional failover).
properties:
cloudProvider:
description: Human-readable label that identifies the cloud provider.
type: string
failoverRegions:
description: Failover regions for the stream workspace.
items:
$ref: "#/components/schemas/StreamsDataProcessRegion"
maxItems: 2
type: array
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
processorStatus:
$ref: "#/components/schemas/StreamsProcessorStatus"
region:
$ref: "#/components/schemas/BaseStreamsRegion"
streamConfig:
$ref: "#/components/schemas/StreamConfig"
type: object
StreamsWorkspacePrivateEndpointRequest:
description: VPC endpoint to register for inbound private connectivity to Atlas Stream Processing.
properties:
customerDnsName:
description: DNS name of your VPC endpoint.
example: vpce-0abc123def4567890-abc123.us-east-1.vpce.amazonaws.com
type: string
id:
description: Unique identifier of your VPC endpoint.
example: vpce-0abc123def4567890
type: string
region:
description: Human-readable label identifying the region of your VPC endpoint.
example: US_EAST_1
type: string
required:
- customerDnsName
- id
- region
type: object
StreamsWorkspacePrivateEndpointResponse:
description: VPC endpoint registered for inbound private connectivity to Atlas Stream Processing.
properties:
customerDnsName:
description: DNS name of your VPC endpoint.
example: vpce-0abc123def4567890-abc123.us-east-1.vpce.amazonaws.com
type: string
endpointServiceName:
description: Name of the Atlas endpoint service your VPC endpoint connects to. Absent when no endpoint service is configured for the endpoint's region.
example: com.amazonaws.vpce.us-east-1.vpce-svc-0123456789abcdef0
readOnly: true
type: string
id:
description: Unique identifier of your VPC endpoint.
example: vpce-0abc123def4567890
type: string
provider:
description: Cloud provider hosting the VPC endpoint.
example: AWS
readOnly: true
type: string
region:
description: Human-readable label identifying the region of your VPC endpoint.
example: US_EAST_1
type: string
status:
description: Status of the endpoint registration.
readOnly: true
type: string
type: object
SynonymMappingStatusDetail:
description: Contains the status of the index's synonym mappings on each search host. This field (and its subfields) only appear if the index has synonyms defined.
properties:
message:
description: Optional message describing an error.
type: string
queryable:
description: Flag that indicates whether the synonym mapping is queryable on a host.
type: boolean
status:
description: Status that describes this index's synonym mappings. This status appears only if the index has synonyms defined.
type: string
title: Synonym Mapping Status Detail
type: object
SynonymSource:
description: Data set that stores words and their applicable synonyms.
properties:
collection:
description: Label that identifies the MongoDB collection that stores words and their applicable synonyms.
type: string
required:
- collection
type: object
SystemStatus:
properties:
apiKey:
$ref: "#/components/schemas/ApiKey"
appName:
description: Human-readable label that identifies the service from which you requested this response.
readOnly: true
type: string
build:
description: Unique 40-hexadecimal digit hash that identifies the latest git commit merged for this application.
example: 83be55e140f493c88e7f578aae96548dd881587b
readOnly: true
type: string
ipAddress:
description: IPv4 or IPv6 address from which you requested this response. Use this value to confirm which address IP access lists evaluate for your requests.
example: 216.172.40.186
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
throttling:
description: Flag that indicates whether someone enabled throttling on this service.
readOnly: true
type: boolean
user:
$ref: "#/components/schemas/AuthenticatedUser"
required:
- appName
- build
- ipAddress
- throttling
type: object
TargetOrg:
properties:
linkToken:
description: Link token that contains all the information required to complete the link.
type: string
required:
- linkToken
type: object
TargetOrgRequest:
properties:
accessListIps:
description: IP address access list entries associated with the API key.
items:
description: One IP address access list entry associated with the API key.
type: string
type: array
type: object
Team:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies this team.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the team.
type: string
usernames:
description: List that contains the MongoDB Cloud users in this team.
items:
format: email
type: string
type: array
uniqueItems: true
required:
- name
- usernames
type: object
TeamResponse:
properties:
id:
description: Unique 24-hexadecimal digit string that identifies this team.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the team.
type: string
type: object
TeamRole:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
roleNames:
description: One or more project-level roles to assign to the team.
externalDocs:
description: MongoDB Cloud User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
teamId:
description: Unique 24-hexadecimal character string that identifies the team.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
required:
- roleNames
- teamId
type: object
TeamUpdate:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
name:
description: Human-readable label that identifies the team.
type: string
writeOnly: true
required:
- name
type: object
TenantWithSampleConnections:
type: object
ThirdPartyIntegration:
description: Collection of settings that describe third-party integrations.
properties:
id:
description: Integration id.
type: string
type:
description: Human-readable label that identifies the service to which you want to integrate with MongoDB Cloud. The value must match the third-party service integration type.
type: string
region:
default: US
description: Two-letter code that indicates which regional URL MongoDB uses to access the OpsGenie API.
type: string
serviceKey:
description: |-
Service key associated with your PagerDuty account.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "****************************7890"
type: string
apiToken:
description: |-
Key that allows MongoDB Cloud to access your Slack account.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
**IMPORTANT**: Slack integrations now use the OAuth2 verification method and must be initially configured, or updated from a legacy integration, through the Atlas third-party service integrations page. Legacy tokens will soon no longer be supported.
example: "**********************************************************************abcd"
type: string
channelName:
description: Name of the Slack channel to which MongoDB Cloud sends alert notifications.
example: alerts
maxLength: 80
minLength: 1
type: string
teamName:
description: Human-readable label that identifies your Slack team. Set this parameter when you configure a legacy Slack integration.
example: MongoDB
type: string
apiKey:
description: |-
Key that allows MongoDB Cloud to access your VictorOps account.
**NOTE**: After you create a notification which requires an API or integration key, the key appears partially redacted when you:
* View or edit the alert through the Atlas UI.
* Query the alert for the notification through the Atlas Administration API.
example: "********************************9abc"
type: string
sendCollectionLatencyMetrics:
default: false
description: Toggle sending collection latency metrics that includes database names and collection names and latency metrics on reads, writes, commands, and transactions.
type: boolean
sendDatabaseMetrics:
default: false
description: Toggle sending database metrics that includes database names and metrics on the number of collections, storage size, and index size.
type: boolean
sendQueryStatsMetrics:
default: false
description: Toggle sending query shape metrics that includes query hash and metrics on latency, execution frequency, documents returned, and timestamps.
type: boolean
sendShardingMetrics:
default: false
description: Toggle sending sharding metrics that includes sharding distribution and chunk metrics per cluster, shard, and collection.
type: boolean
sendUserProvidedResourceTags:
default: false
description: Toggle sending user provided group and cluster resource tags with the Datadog metrics.
type: boolean
accountId:
description: Unique 40-hexadecimal digit string that identifies your New Relic account.
example: bcc3c81b344a6030a3935c2527e2216535af7718
pattern: ^([0-9a-f]){40}$
type: string
licenseKey:
description: |-
Unique 40-hexadecimal digit string that identifies your New Relic license.
**IMPORTANT**: Effective Wednesday, June 16th, 2021, New Relic no longer supports the plugin-based integration with MongoDB. We do not recommend that you sign up for the plugin-based integration.
Consider configuring an alternative monitoring integration before June 16th to maintain visibility into your MongoDB deployments.
example: bc3768f44193c282b2688ab39e00f8e4fc8d75ea
externalDocs:
description: New Relic Plugin EOL Statement
url: https://discuss.newrelic.com/t/new-relic-plugin-eol-wednesday-june-16th-2021/127267
pattern: ^([0-9a-f]){40}$
type: string
readToken:
description: Query key used to access your New Relic account.
example: 193c96aee4a3ac640b98634562e2631f17ae0a69
type: string
writeToken:
description: Insert key associated with your New Relic account.
example: a67b10e5cd7f8fb6a34b501136c409f373edc218
type: string
routingKey:
description: Routing key associated with your Splunk On-Call account.
example: test routing
type: string
bodyTemplate:
description: "HTTP body template for a webhook-based alert. The rendered output MUST be valid JSON — MongoDB Cloud sends the rendered body with `Content-Type: application/json`. If the template fails to render, exceeds the 16 KB limit, or renders non-JSON output, MongoDB Cloud sends the webhook with its default JSON payload instead."
example: '{"alert":"${id}","severity":"${severity}"}'
format: password
type: string
headersTemplate:
description: 'HTTP headers template for a webhook-based alert. The rendered output MUST be a JSON object mapping header name to header value (e.g. `{"X-Custom-Header": "static-value", "X-Alert-Id": "${id}"}`). Placeholders may reference any alert-view field plus `${eventType}`; the webhook secret and the signature header are NOT exposed to templates. If the template fails to render, exceeds the 4 KB limit, or renders output that is not a valid JSON name→value object, MongoDB Cloud sends the webhook with its default set of headers instead.'
example: '{"X-Alert-Id":"${id}","X-Event-Type":"${eventType}"}'
format: password
type: string
secret:
description: |-
An optional field returned if your webhook is configured with a secret.
**NOTE**: When you view or edit the alert for a webhook notification, the secret appears completely redacted.
format: password
type: string
url:
description: |-
Endpoint web address to which MongoDB Cloud sends notifications.
**NOTE**: When you view or edit the alert for a webhook notification, the URL appears partially redacted.
example: https://webhook.com/****
type: string
enabled:
description: Flag that indicates whether someone has activated the Prometheus integration.
type: boolean
password:
description: Password needed to allow MongoDB Cloud to access your Prometheus account.
type: string
writeOnly: true
sendUserProvidedResourceTagsEnabled:
default: false
description: Toggle sending user provided group and cluster resource tags with the Prometheus metrics.
type: boolean
serviceDiscovery:
description: Desired method to discover the Prometheus service.
type: string
username:
description: Human-readable label that identifies your Prometheus incoming webhook.
example: prom_user_618d48e05277a606ed2496fe
type: string
microsoftTeamsWebhookUrl:
description: |-
Endpoint web address of the Microsoft Teams webhook to which MongoDB Cloud sends notifications.
**NOTE**: When you view or edit the alert for a Microsoft Teams notification, the URL appears partially redacted.
example: https://webhook.com/****
type: string
title: Third-Party Integration
type: object
x-xgen-discriminator:
propertyName: type
mapping:
DATADOG:
properties:
- apiKey
- region
- sendCollectionLatencyMetrics
- sendDatabaseMetrics
- sendQueryStatsMetrics
- sendShardingMetrics
- sendUserProvidedResourceTags
required:
- apiKey
MICROSOFT_TEAMS:
properties:
- microsoftTeamsWebhookUrl
required:
- microsoftTeamsWebhookUrl
NEW_RELIC:
properties:
- accountId
- licenseKey
- readToken
- writeToken
required:
- accountId
- licenseKey
- readToken
- writeToken
OPS_GENIE:
properties:
- apiKey
- region
required:
- apiKey
PAGER_DUTY:
properties:
- region
- serviceKey
required:
- serviceKey
PROMETHEUS:
properties:
- enabled
- password
- sendUserProvidedResourceTagsEnabled
- serviceDiscovery
- username
required:
- enabled
- serviceDiscovery
- username
SLACK:
properties:
- apiToken
- channelName
- teamName
required:
- apiToken
- channelName
VICTOR_OPS:
properties:
- apiKey
- routingKey
required:
- apiKey
WEBHOOK:
properties:
- bodyTemplate
- headersTemplate
- secret
- url
required:
- url
UpdateAtlasOrganizationApiKey:
properties:
desc:
description: Purpose or explanation provided when someone creates this organization API key.
maxLength: 250
minLength: 1
type: string
roles:
description: List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this organization.
items:
type: string
type: array
type: object
UpdateAtlasProjectApiKey:
properties:
desc:
description: Purpose or explanation provided when someone creates this project API key.
maxLength: 250
minLength: 1
type: string
roles:
description: List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.
externalDocs:
description: MongoDB Cloud API Key Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
type: object
UpdateCustomDBRole:
properties:
actions:
description: List of the individual privilege actions that the role grants.
items:
$ref: "#/components/schemas/DatabasePrivilegeAction"
type: array
inheritedRoles:
description: List of the built-in roles that this custom role inherits.
items:
$ref: "#/components/schemas/DatabaseInheritedRole"
type: array
uniqueItems: true
type: object
UpdateGroupRolesForUser:
properties:
groupRoles:
description: One or more project-level roles to assign to the MongoDB Cloud user.
externalDocs:
description: MongoDB Atlas User Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
uniqueItems: true
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
UpdateOrgRolesForUser:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
orgRoles:
description: One or more organization level roles to assign to the MongoDB Cloud user.
items:
type: string
type: array
uniqueItems: true
type: object
UsageDetailsFilterRequest:
description: Request body which contains various fields to filter line items as part of certain Invoice Usage Details queries.
properties:
billEndDate:
description: The inclusive billing start date for usage details filter.
format: date
type: string
billStartDate:
description: The inclusive billing start date for usage details filter.
format: date
type: string
clusterIds:
description: The list of unique cluster ids to be included in the Usage Details filter.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
uniqueItems: true
groupIds:
description: The list of groups to be included in the Usage Details filter.
items:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
type: array
uniqueItems: true
includeZeroCentLineItems:
description: Whether zero cent line items should be included.
type: boolean
skuServices:
description: The list of projects to be included in the Cost Explorer Query.
items:
type: string
type: array
uniqueItems: true
usageEndDate:
description: The inclusive billing start date for usage details filter.
format: date
type: string
usageStartDate:
description: The inclusive usage start date for usage details filter.
format: date
type: string
type: object
UserAccessListRequest:
properties:
cidrBlock:
description: Range of network addresses that you want to add to the access list for the API key. This parameter requires the range to be expressed in classless inter-domain routing (CIDR) notation of Internet Protocol version 4 or version 6 addresses. You can set a value for this parameter or `ipAddress` but not both in the same request.
example: 203.0.113.0/24
pattern: ^((([0-9]{1,3}\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$
type: string
ipAddress:
description: Network address that you want to add to the access list for the API key. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. You can set a value for this parameter or `cidrBlock` but not both in the same request.
example: 203.0.113.10
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
type: object
UserAccessListResponse:
properties:
cidrBlock:
description: Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation in the access list for the API key.
example: 203.0.113.0/24
pattern: ^((([0-9]{1,3}\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$
type: string
count:
description: Total number of requests that have originated from the Internet Protocol (IP) address given as the value of the `lastUsedAddress` parameter.
format: int32
minimum: 1
readOnly: true
type: integer
created:
description: Date and time when someone added the network addresses to the specified API access list. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
ipAddress:
description: Network address in the access list for the API key.
example: 203.0.113.10
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
lastUsed:
description: Date and time when MongoDB Cloud received the most recent request that originated from this Internet Protocol version 4 or version 6 address. The resource returns this parameter when at least one request has originated from this IP address. MongoDB Cloud updates this parameter each time a client accesses the permitted resource. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
lastUsedAddress:
description: Network address that issued the most recent request to the API. This parameter requires the address to be expressed as one Internet Protocol version 4 or version 6 address. The resource returns this parameter after this IP address made at least one request.
example: 203.0.113.10
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
UserAccessRoleAssignment:
properties:
roles:
description: List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this project.
externalDocs:
description: MongoDB Cloud API Key Roles
url: https://www.mongodb.com/docs/atlas/reference/user-roles/
items:
type: string
type: array
userId:
description: Unique 24-hexadecimal digit string that identifies the organization API key.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
type: object
UserCert:
properties:
_id:
description: Unique 24-hexadecimal character string that identifies this certificate.
format: int64
readOnly: true
type: integer
createdAt:
description: Date and time when MongoDB Cloud created this certificate. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
monthsUntilExpiration:
default: 3
description: Number of months that the certificate remains valid until it expires.
format: int32
maximum: 24
type: integer
writeOnly: true
notAfter:
description: Date and time when this certificate expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
subject:
description: Subject Alternative Name associated with this certificate. This parameter expresses its value as a distinguished name as defined in RFC 2253.
example: CN=BindUser,CN=Users,DC=myldapserver,DC=mycompany,DC=com
externalDocs:
description: RFC 2253
url: https://tools.ietf.org/html/2253
pattern: ^(?:(?CN=(?[^,]*)),)?(?:(?(?:(?:CN|OU)=[^,]+,?)+),)?(?(?:DC=[^,]+,?)+)$
readOnly: true
type: string
type: object
UserCustomDBRole:
properties:
actions:
description: List of the individual privilege actions that the role grants.
items:
$ref: "#/components/schemas/DatabasePrivilegeAction"
type: array
inheritedRoles:
description: List of the built-in roles that this custom role inherits.
items:
$ref: "#/components/schemas/DatabaseInheritedRole"
type: array
uniqueItems: true
roleName:
description: Human-readable label that identifies the role for the request. This name must be unique for this custom role in this project.
type: string
required:
- roleName
type: object
UserScope:
description: Range of resources available to this database user.
properties:
name:
description: Human-readable label that identifies the cluster or MongoDB Atlas Data Lake that this database user can access.
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
type:
description: Category of resource that this database user can access.
type: string
required:
- name
- type
title: Database User Scope
type: object
UserSecurity:
properties:
customerX509:
$ref: "#/components/schemas/DBUserTLSX509Settings"
ldap:
$ref: "#/components/schemas/LDAPSecuritySettings"
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
UserToDNMapping:
description: User-to-Distinguished Name (DN) map that MongoDB Cloud uses to transform a Lightweight Directory Access Protocol (LDAP) username into an LDAP DN.
properties:
ldapQuery:
description: Lightweight Directory Access Protocol (LDAP) query template that inserts the LDAP name that the regular expression matches into an LDAP query Uniform Resource Identifier (URI). The formatting for the query must conform to [RFC 4515](https://datatracker.ietf.org/doc/html/rfc4515) and [RFC 4516](https://datatracker.ietf.org/doc/html/rfc4516).
type: string
match:
description: Regular expression that MongoDB Cloud uses to match against the provided Lightweight Directory Access Protocol (LDAP) username. Each parenthesis-enclosed section represents a regular expression capture group that the substitution or `ldapQuery` template uses.
example: (.*)
type: string
substitution:
description: Lightweight Directory Access Protocol (LDAP) Distinguished Name (DN) template that converts the LDAP username that matches regular expression in the *match* parameter into an LDAP Distinguished Name (DN).
example: CN={0},CN=Users,DC=my-atlas-ldap-server,DC=example,DC=com
type: string
required:
- match
title: User to Distinguished Name Mapping
type: object
VPCPeeringActionChallenge:
description: Container for elements used to challenge the user before taking certain actions on VPC Peering connections.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
requesterAccountId:
description: The AWS requester account ID.
type: string
requesterVpcId:
description: The AWS requester VPC ID.
type: string
type: object
VPCPeeringConnection:
description: Represents a VPC Peering connection on AWS.
properties:
_id:
description: Internal VPC Peering Connection ID.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
accepterAccountId:
description: The account ID responsible for accepting the request.
type: string
accepterCidr:
description: The CIDR block for the accepter VPC.
type: string
accepterVpcId:
description: The VPC ID accepting the request.
type: string
cloudStatus:
description: The status in the cloud provider for this connection.
type: string
expirationTime:
description: The time when the VPC Peering Connection request expires. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
groupId:
description: The internal project ID.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
localStatus:
description: The local status of the VPC Peering Connection.
type: string
name:
description: Unique VPC Peering Connection name.
type: string
requesterAccountId:
description: The account ID requesting the VPC Peering connection.
type: string
requesterCidr:
description: The CIDR block for the requesting VPC.
type: string
requesterVpcId:
description: The VPC ID requesting the VPC Peering connection.
type: string
statusMessage:
description: A status message.
type: string
type: object
VectorSearchHostStatusDetail:
properties:
hostname:
description: Hostname that corresponds to the status detail.
type: string
mainIndex:
$ref: "#/components/schemas/VectorSearchIndexStatusDetail"
queryable:
description: Flag that indicates whether the index is queryable on the host.
type: boolean
stagedIndex:
$ref: "#/components/schemas/VectorSearchIndexStatusDetail"
status:
description: |-
Condition of the search index when you made this request.
- `DELETING`: The index is being deleted.
- `FAILED` The index build failed. Indexes can enter the FAILED state due to an invalid index definition.
- `STALE`: The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data.
- `PENDING`: Atlas has not yet started building the index.
- `BUILDING`: Atlas is building or re-building the index after an edit.
- `READY`: The index is ready and can support queries.
type: string
title: Vector Search Host Status Detail
type: object
VectorSearchIndexDefinition:
description: The vector search index definition set by the user.
properties:
fields:
description: Settings that configure the fields, one per object, to index. You must define at least one "vector" type field. You can optionally define "filter" type fields also.
externalDocs:
description: Vector Search Fields
url: https://dochub.mongodb.org/core/avs-vector-type
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
nestedRoot:
description: Top-level path to the array that contains vector fields. When provided, vector fields under this path are treated as nested.
example: sections
type: string
numPartitions:
default: 1
description: Number of index partitions. Allowed values are [1, 2, 4].
format: int32
type: integer
storedSource:
description: Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. Note that storing all fields (true) is not allowed for vector search indexes. To learn more, see Stored Source Fields.
example:
include | exclude:
- field1
- field2
externalDocs:
description: Stored Source Fields
url: https://dochub.mongodb.org/core/atlas-search-stored-source
type: object
required:
- fields
title: Vector Search Index Definition
type: object
VectorSearchIndexStatusDetail:
description: Contains status information about a vector search index.
properties:
definition:
$ref: "#/components/schemas/VectorSearchIndexDefinition"
definitionVersion:
$ref: "#/components/schemas/SearchIndexDefinitionVersion"
message:
description: Optional message describing an error.
type: string
queryable:
description: Flag that indicates whether the index generation is queryable on the host.
type: boolean
status:
description: |-
Condition of the search index when you made this request.
- `DELETING`: The index is being deleted.
- `FAILED` The index build failed. Indexes can enter the FAILED state due to an invalid index definition.
- `STALE`: The index is queryable but has stopped replicating data from the indexed collection. Searches on the index may return out-of-date data.
- `PENDING`: Atlas has not yet started building the index.
- `BUILDING`: Atlas is building or re-building the index after an edit.
- `READY`: The index is ready and can support queries.
type: string
title: Vector Search Index Status Detail
type: object
X509Certificate:
properties:
notAfter:
description: Latest date that the certificate is valid. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
notBefore:
description: Earliest date that the certificate is valid. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
type: object
X509CertificateUpdate:
properties:
content:
description: Certificate content.
type: string
notAfter:
description: Latest date that the certificate is valid. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
notBefore:
description: Earliest date that the certificate is valid. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
type: object
ZoneMapping:
description: Human-readable label that identifies the subset of a global cluster.
properties:
location:
description: Code that represents a location that maps to a zone in your global cluster. MongoDB Cloud represents this location with a ISO 3166-2 location and subdivision codes when possible.
type: string
zone:
description: Human-readable label that identifies the zone in your global cluster. This zone maps to a location code.
type: string
required:
- location
- zone
title: Global Cluster Zone
type: object
raw:
description: Additional meta information captured about this event. The response returns this parameter as a JSON object when the query parameter `includeRaw=true`. The list of fields in the raw document may change. Don't rely on raw values for formal monitoring.
properties:
_t:
description: Unique identifier of event type.
example: ALERT_AUDIT
type: string
alertConfigId:
description: Unique 24-hexadecimal digit string that identifies the alert configuration related to the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
cid:
description: Unique 24-hexadecimal digit string that identifies the project in which the event occurred.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
cre:
description: Date and time when this event occurred. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
readOnly: true
type: string
description:
description: Description of the event.
example: Alert Acknowledged
type: string
gn:
description: Human-readable label that identifies the project.
example: Test Project
maxLength: 64
minLength: 1
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the event.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgId:
description: Unique 24-hexadecimal digit string that identifies the organization to which these events apply.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
orgName:
description: Human-readable label that identifies the organization that contains the project.
example: Test Organization
maxLength: 64
minLength: 1
type: string
severity:
description: Severity of the event.
type: string
readOnly: true
type: object
BaseSearchIndexResponseLatestDefinition:
properties:
analyzer:
default: lucene.standard
description: |-
Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves making the following changes to the text in fields:
- extracting words
- removing punctuation
- removing accents
- changing to lowercase
- removing common words
- reducing words to their root form (stemming)
- changing words to their base form (lemmatization)
MongoDB Cloud uses the process you select to build the Atlas Search index.
externalDocs:
description: Atlas Search Analyzers
url: https://dochub.mongodb.org/core/analyzers--fts
type: string
analyzers:
description: List of user-defined methods to convert database field text into searchable words.
externalDocs:
description: Custom Atlas Search Analyzers
url: https://dochub.mongodb.org/core/custom-fts
items:
$ref: "#/components/schemas/AtlasSearchAnalyzer"
type: array
mappings:
$ref: "#/components/schemas/SearchMappings"
numPartitions:
default: 1
description: Number of index partitions. Allowed values are [1, 2, 4].
format: int32
type: integer
searchAnalyzer:
default: lucene.standard
description: Method applied to identify words when searching this index.
type: string
sort:
description: 'Sort definition for the index. When defined, the index will be pre-sorted on the specified fields, which improves query sort performance for those fields. Supports two formats: simple format with field name and direction, or complex format with additional options. The `order` field is required (1=ascending, -1=descending).The `noData` field is optional and controls how missing values are sorted(default: "lowest").'
example:
anotherField:
noData: highest
order: -1
fieldName: 1
type: object
storedSource:
description: Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. Note that storing all fields (true) is not allowed for vector search indexes. To learn more, see Stored Source Fields.
example:
include | exclude:
- field1
- field2
externalDocs:
description: Stored Source Fields
url: https://dochub.mongodb.org/core/atlas-search-stored-source
type: object
synonyms:
description: Rule sets that map words to their synonyms in this index.
externalDocs:
description: Synonym Mapping
url: https://dochub.mongodb.org/core/fts-synonym-mappings
items:
$ref: "#/components/schemas/SearchSynonymMappingDefinition"
type: array
typeSets:
description: Type sets for the index.
items:
$ref: "#/components/schemas/SearchTypeSets"
maxItems: 100
type: array
fields:
description: Settings that configure the fields, one per object, to index. You must define at least one "vector" type field. You can optionally define "filter" type fields also.
externalDocs:
description: Vector Search Fields
url: https://dochub.mongodb.org/core/avs-vector-type
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
nestedRoot:
description: Top-level path to the array that contains vector fields. When provided, vector fields under this path are treated as nested.
example: sections
type: string
BaseSearchIndexCreateRequestDefinition:
properties:
analyzer:
default: lucene.standard
description: |-
Specific pre-defined method chosen to convert database field text into searchable words. This conversion reduces the text of fields into the smallest units of text. These units are called a **term** or **token**. This process, known as tokenization, involves making the following changes to the text in fields:
- extracting words
- removing punctuation
- removing accents
- changing to lowercase
- removing common words
- reducing words to their root form (stemming)
- changing words to their base form (lemmatization)
MongoDB Cloud uses the process you select to build the Atlas Search index.
externalDocs:
description: Atlas Search Analyzers
url: https://dochub.mongodb.org/core/analyzers--fts
type: string
analyzers:
description: List of user-defined methods to convert database field text into searchable words.
externalDocs:
description: Custom Atlas Search Analyzers
url: https://dochub.mongodb.org/core/custom-fts
items:
$ref: "#/components/schemas/AtlasSearchAnalyzer"
type: array
mappings:
$ref: "#/components/schemas/SearchMappings"
numPartitions:
default: 1
description: Number of index partitions. Allowed values are [1, 2, 4].
format: int32
type: integer
searchAnalyzer:
default: lucene.standard
description: Method applied to identify words when searching this index.
type: string
sort:
description: 'Sort definition for the index. When defined, the index will be pre-sorted on the specified fields, which improves query sort performance for those fields. Supports two formats: simple format with field name and direction, or complex format with additional options. The `order` field is required (1=ascending, -1=descending).The `noData` field is optional and controls how missing values are sorted(default: "lowest").'
example:
anotherField:
noData: highest
order: -1
fieldName: 1
type: object
storedSource:
description: Flag that indicates whether to store all fields (true) on Atlas Search. By default, Atlas doesn't store (false) the fields on Atlas Search. Alternatively, you can specify an object that only contains the list of fields to store (include) or not store (exclude) on Atlas Search. Note that storing all fields (true) is not allowed for vector search indexes. To learn more, see Stored Source Fields.
example:
include | exclude:
- field1
- field2
externalDocs:
description: Stored Source Fields
url: https://dochub.mongodb.org/core/atlas-search-stored-source
type: object
synonyms:
description: Rule sets that map words to their synonyms in this index.
externalDocs:
description: Synonym Mapping
url: https://dochub.mongodb.org/core/fts-synonym-mappings
items:
$ref: "#/components/schemas/SearchSynonymMappingDefinition"
type: array
typeSets:
description: Type sets for the index.
items:
$ref: "#/components/schemas/SearchTypeSets"
maxItems: 100
type: array
fields:
description: Settings that configure the fields, one per object, to index. You must define at least one "vector" type field. You can optionally define "filter" type fields also.
externalDocs:
description: Vector Search Fields
url: https://dochub.mongodb.org/core/avs-vector-type
items:
$ref: "#/components/schemas/BasicDBObject"
type: array
nestedRoot:
description: Top-level path to the array that contains vector fields. When provided, vector fields under this path are treated as nested.
example: sections
type: string
AWSCustomDNSEnabled:
properties:
enabled:
description: |-
Flag that indicates whether the project's clusters deployed to Amazon Web Services (AWS) use a custom Domain Name System (DNS).
When `"enabled": true`, connect to your cluster using Private IP for Peering connection strings.
externalDocs:
description: "To learn more, see FAQ: Connection String Options in the MongoDB Atlas documentation."
url: https://www.mongodb.com/docs/atlas/reference/faq/connection-changes/#how-does-this-affect-aws-vpc-peering-when-i-use-custom-dns-
type: boolean
required:
- enabled
type: object
AccessListItem:
properties:
cidrBlock:
description: Range of IP addresses in Classless Inter-Domain Routing (CIDR) notation that found in this project's access list.
pattern: ^((([0-9]{1,3}\.){3}[0-9]{1,3})|(:{0,2}([0-9a-f]{1,4}:){0,7}[0-9a-f]{1,4}[:]{0,2}))((%2[fF]|/)[0-9]{1,3})+$
readOnly: true
type: string
ipAddress:
description: IP address included in the API access list.
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
readOnly: true
type: string
required:
- ipAddress
type: object
ApiAtlasCheckpoint:
properties:
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster that contains the checkpoint.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
completed:
description: Date and time when the checkpoint completed and the balancer restarted. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that owns the checkpoints.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies checkpoint.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
parts:
description: |-
Metadata that describes the complete snapshot.
- For a replica set, this array contains a single document.
- For a sharded cluster, this array contains one document for each shard plus one document for the config host.
items:
$ref: "#/components/schemas/ApiCheckpointPart"
readOnly: true
type: array
restorable:
description: Flag that indicates whether MongoDB Cloud can use the checkpoint for a restore.
readOnly: true
type: boolean
started:
description: Date and time when the balancer stopped and began the checkpoint. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
timestamp:
description: Date and time to which the checkpoint restores. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
type: object
ApiAtlasClusterAdvancedConfiguration:
description: Group of settings that configures a subset of the advanced configuration details.
properties:
customOpensslCipherConfigTls12:
description: The custom OpenSSL cipher suite list for TLS 1.2. Requires `tlsCipherConfigMode` = `CUSTOM`; when `tlsCipherConfigMode` is omitted, supplying a non-empty list infers `CUSTOM`.
externalDocs:
description: This option corresponds to the `opensslCipherConfig` `mongod` configuration file option.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.opensslCipherConfig
items:
type: string
type: array
customOpensslCipherConfigTls13:
description: The custom OpenSSL cipher suite list for TLS 1.3. Requires `tlsCipherConfigMode` = `CUSTOM`; when `tlsCipherConfigMode` is omitted, supplying a non-empty list infers `CUSTOM`.
externalDocs:
description: This option corresponds to the `opensslCipherSuiteConfig` `mongod` configuration file option.
url: https://www.mongodb.com/docs/manual/reference/parameters/#mongodb-parameter-param.opensslCipherSuiteConfig
items:
type: string
maxItems: 4
type: array
minimumEnabledTlsProtocol:
description: Minimum Transport Layer Security (TLS) version that the cluster accepts for incoming connections.
externalDocs:
description: This option corresponds to the `net.ssl.disabledProtocols` `mongod` configuration file option.
url: https://docs.mongodb.com/upcoming/reference/configuration-options/#mongodb-setting-net.ssl.disabledProtocols
type: string
tlsCipherConfigMode:
description: The TLS cipher suite configuration mode. The default mode uses the default cipher suites. The custom mode allows you to specify custom cipher suites for both TLS 1.2 and TLS 1.3.
type: string
type: object
ApiAtlasInvalidPolicyErrorDetail:
properties:
detail:
description: A string that provides a detailed description of a validation error.
readOnly: true
type: string
type: object
ApiAtlasInvalidPolicy:
properties:
body:
description: A string that defines the permissions for the policy. The syntax used is the Cedar Policy language.
example: |2
forbid (
principal,
action == cloud::Action::"cluster.createEdit",
resource
) when {
context.cluster.regions.contains(cloud::region::"aws:us-east-1")
};
readOnly: true
type: string
errors:
description: List of validation errors.
items:
$ref: "#/components/schemas/ApiAtlasInvalidPolicyErrorDetail"
readOnly: true
type: array
type: object
ApiAtlasInvalidResourcePolicyCreateError:
properties:
errorType:
description: Human-readable label that displays the type of an error.
type: string
invalidPolicies:
description: List of invalid policies containing details of their validation errors.
items:
$ref: "#/components/schemas/ApiAtlasInvalidPolicy"
readOnly: true
type: array
type: object
ApiAtlasModifyEndpointServiceRequest:
properties:
cloudProvider:
description: Human-readable label that identifies the cloud service provider for the private endpoint service which you want to update.
type: string
supportedRemoteRegions:
description: List of regions that the endpoint service supports. Native cross region support is implemented for AWS only.
items:
description: AWS region name
type: string
maxItems: 35
type: array
required:
- cloudProvider
type: object
ApiAtlasNonCompliantResource:
properties:
orgId:
description: Unique 24-hexadecimal character string that identifies the organization the resource belongs to.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resourceId:
description: Unique 24-hexadecimal character string that identifies the non-compliant resource.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resourceName:
description: Unique human readable string that identifies the non-compliant resource.
readOnly: true
type: string
resourcePoliciesCausingNonCompliance:
description: List of resource policies causing the resource to be considered non-compliant.
items:
$ref: "#/components/schemas/ApiAtlasResourcePolicyMetadata"
readOnly: true
type: array
resourceType:
description: Human-readable label that displays the type of a resource.
readOnly: true
type: string
type: object
ApiAtlasPolicyCreate:
properties:
body:
description: A string that defines the permissions for the policy. The syntax used is the Cedar Policy language.
example: |2
forbid (
principal,
action == cloud::Action::"cluster.createEdit",
resource
) when {
context.cluster.regions.contains(cloud::region::"aws:us-east-1")
};
minLength: 1
type: string
required:
- body
type: object
ApiAtlasPolicyMetadata:
properties:
policyId:
description: Unique 24-hexadecimal character string that identifies the policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
type: object
ApiAtlasPolicy:
properties:
body:
description: A string that defines the permissions for the policy. The syntax used is the Cedar Policy language.
example: |2
forbid (
principal,
action == cloud::Action::"cluster.createEdit",
resource
) when {
context.cluster.regions.contains(cloud::region::"aws:us-east-1")
};
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
type: object
ApiAtlasResourcePolicyCreate:
properties:
description:
description: Description of the atlas resource policy.
type: string
name:
description: Human-readable label that describes the atlas resource policy.
type: string
policies:
description: List of policies that make up the atlas resource policy.
items:
$ref: "#/components/schemas/ApiAtlasPolicyCreate"
type: array
required:
- name
- policies
type: object
ApiAtlasResourcePolicyEdit:
properties:
description:
description: Description of the atlas resource policy.
type: string
name:
description: Human-readable label that describes the atlas resource policy.
type: string
policies:
description: List of policies that make up the atlas resource policy.
items:
$ref: "#/components/schemas/ApiAtlasPolicyCreate"
type: array
type: object
ApiAtlasResourcePolicyMetadata:
properties:
policiesCausingNonCompliance:
description: List of policies that are in conflict with the current state of the resource.
items:
$ref: "#/components/schemas/ApiAtlasPolicyMetadata"
readOnly: true
type: array
resourcePolicyId:
description: Unique 24-hexadecimal character string that identifies the atlas resource policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
resourcePolicyName:
description: Human-readable label that describes the atlas resource policy.
readOnly: true
type: string
type: object
ApiAtlasResourcePolicy:
properties:
createdByUser:
$ref: "#/components/schemas/ApiAtlasUserMetadata"
createdDate:
description: Date and time in UTC when the atlas resource policy was created.
format: date-time
readOnly: true
type: string
description:
description: Description of the atlas resource policy.
readOnly: true
type: string
id:
description: Unique 24-hexadecimal character string that identifies the atlas resource policy.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
lastUpdatedByUser:
$ref: "#/components/schemas/ApiAtlasUserMetadata"
lastUpdatedDate:
description: Date and time in UTC when the atlas resource policy was last updated.
format: date-time
readOnly: true
type: string
name:
description: Human-readable label that describes the atlas resource policy.
readOnly: true
type: string
orgId:
description: Unique 24-hexadecimal character string that identifies the organization the atlas resource policy belongs to.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
policies:
description: List of policies that make up the atlas resource policy.
items:
$ref: "#/components/schemas/ApiAtlasPolicy"
readOnly: true
type: array
version:
description: A string that identifies the version of the atlas resource policy.
example: v1
readOnly: true
type: string
type: object
ApiAtlasRestoreCollectionNamespace:
description: Source and optional target collection for a restore.
properties:
sourceNamespace:
description: Collection requested to restore, as `database.collection`.
type: string
targetNamespace:
description: Requested target collection as `database.collection`; if empty, source namespace is used.
type: string
required:
- sourceNamespace
type: object
ApiAtlasRestoreDatabaseNamespace:
description: Source and optional target database for a restore.
properties:
sourceNamespace:
description: Database name requested to restore.
type: string
targetNamespace:
description: Requested target database name; if empty, source database name is used.
type: string
required:
- sourceNamespace
type: object
ApiAtlasSnapshotSchedule:
properties:
clusterCheckpointIntervalMin:
description: Quantity of time expressed in minutes between successive cluster checkpoints. This parameter applies only to sharded clusters. This number determines the granularity of continuous cloud backups for sharded clusters.
format: int32
type: integer
clusterId:
description: Unique 24-hexadecimal digit string that identifies the cluster with the snapshot you want to return.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
dailySnapshotRetentionDays:
description: Quantity of time to keep daily snapshots. MongoDB Cloud expresses this value in days. Set this value to `0` to disable daily snapshot retention.
format: int32
type: integer
groupId:
description: Unique 24-hexadecimal digit string that identifies the project that contains the cluster.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
monthlySnapshotRetentionMonths:
description: Number of months that MongoDB Cloud must keep monthly snapshots. Set this value to `0` to disable monthly snapshot retention.
format: int32
type: integer
pointInTimeWindowHours:
description: Number of hours before the current time from which MongoDB Cloud can create a Continuous Cloud Backup snapshot.
format: int32
type: integer
snapshotIntervalHours:
description: Number of hours that must elapse before taking another snapshot.
format: int32
type: integer
snapshotRetentionDays:
description: Number of days that MongoDB Cloud must keep recent snapshots.
format: int32
type: integer
weeklySnapshotRetentionWeeks:
description: Number of weeks that MongoDB Cloud must keep weekly snapshots. Set this value to `0` to disable weekly snapshot retention.
format: int32
type: integer
required:
- clusterCheckpointIntervalMin
- clusterId
- dailySnapshotRetentionDays
- groupId
- monthlySnapshotRetentionMonths
- pointInTimeWindowHours
- snapshotIntervalHours
- snapshotRetentionDays
- weeklySnapshotRetentionWeeks
type: object
ApiAtlasUserMetadata:
description: The user that last updated the atlas resource policy.
properties:
id:
description: Unique 24-hexadecimal character string that identifies a user.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
name:
description: Human-readable label that describes a user.
readOnly: true
type: string
readOnly: true
type: object
ApiBSONTimestamp:
description: BSON timestamp that indicates when the checkpoint token entry in the oplog occurred.
properties:
date:
description: Date and time when the oplog recorded this database operation. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
readOnly: true
type: string
increment:
description: Order of the database operation that the oplog recorded at specific date and time.
example: 1199145600
format: int32
minimum: 1199145600
readOnly: true
type: integer
readOnly: true
title: BSON Timestamp
type: object
ApiCheckpointPart:
description: Metadata contained in one document that describes the complete snapshot taken for this node.
properties:
replicaSetName:
description: Human-readable label that identifies the replica set to which this checkpoint applies.
readOnly: true
type: string
shardName:
description: Human-readable label that identifies the shard to which this checkpoint applies.
readOnly: true
type: string
tokenDiscovered:
description: Flag that indicates whether the token exists.
readOnly: true
type: boolean
tokenTimestamp:
$ref: "#/components/schemas/ApiBSONTimestamp"
typeName:
description: Human-readable label that identifies the type of host that the part represents.
readOnly: true
type: string
readOnly: true
type: object
ApiClusterScale:
description: Information on scaling the cluster to a tier that supports the requested feature. Present only when the feature is unavailable on the cluster's current tier.
properties:
docsUrl:
description: Documentation page describing feature availability by cluster tier.
readOnly: true
type: string
minimumTier:
description: Lowest cluster tier that supports the requested feature.
example: M10
readOnly: true
type: string
scaleUrl:
description: Link to the Atlas UI page that scales the cluster, with the minimum supported tier pre-selected.
readOnly: true
type: string
readOnly: true
type: object
ApiSearchAutoScaling:
description: Settings that let Atlas change the Search Node tier on its own. Bounds apply to the whole deployment, and Atlas scales each region and shard independently within them. Omit to keep autoscaling off.
properties:
compute:
$ref: "#/components/schemas/ApiSearchComputeAutoScaling"
type: object
ApiSearchComputeAutoScaling:
description: Settings that control Search Node tier scaling based on load.
properties:
enabled:
default: false
description: Flag that indicates whether Atlas raises the Search Node tier when the nodes are under sustained load. If set to `true`, you must also set `maxInstanceTier`.
type: boolean
maxInstanceTier:
description: Highest Search Node tier that Atlas can scale up to. Required when `enabled` is `true`.
type: string
minInstanceTier:
description: Lowest Search Node tier that Atlas can scale down to. Required when `scaleDownEnabled` is `true`. Scaling down is not supported yet, so setting this returns an error.
type: string
scaleDownEnabled:
default: false
description: Flag that indicates whether Atlas lowers the Search Node tier when load drops. Takes effect only when `enabled` is `true`. If set to `true`, you must also set `minInstanceTier`. Scaling down is not supported yet, so setting this to `true` returns an error.
type: boolean
type: object
ApiSearchDeploymentEffectiveSpec:
properties:
cloudProvider:
description: Cloud service provider on which Search Nodes are provisioned.
readOnly: true
type: string
instanceSize:
description: Hardware specification for the Search Node instance sizes.
readOnly: true
type: string
nodeCount:
description: Number of Search Nodes for this configuration.
example: 2
format: int32
maximum: 32
minimum: 2
readOnly: true
type: integer
regionName:
description: Cloud provider region where Search Nodes are provisioned.
example: US_EAST_1
readOnly: true
type: string
shardId:
description: Shard that owns this Search Node configuration.
readOnly: true
type: string
type: object
ApiSearchDeploymentRequestSpec:
properties:
cloudProvider:
description: Cloud service provider that hosts the Search Nodes in this region. Required when a region is specified.
type: string
instanceSize:
description: Hardware specification for the Search Node instance sizes.
type: string
nodeCount:
description: Number of Search Nodes in this region. Optional; falls back to the request-level default when omitted.
example: 2
format: int32
maximum: 32
minimum: 2
type: integer
regionName:
description: Cloud provider region where Search Nodes are provisioned. Required when the request configures more than one region; optional for single-region requests.
example: US_EAST_1
type: string
required:
- instanceSize
type: object
ApiSearchDeploymentRequest:
properties:
autoScaling:
allOf:
- $ref: "#/components/schemas/ApiSearchAutoScaling"
description: Settings that let Atlas change the Search Node tier on its own. Bounds apply to the whole deployment, and Atlas scales each region and shard independently within them. Omit to keep autoscaling off.
defaultNodeCount:
description: Default number of Search Nodes per region. Applied to a region without an explicit override.
example: 2
format: int32
maximum: 32
minimum: 2
type: integer
specs:
description: List of settings that configure the Search Nodes for your cluster. Provide one element per region when configuring asymmetric deployments; a single element applies to all regions.
items:
$ref: "#/components/schemas/ApiSearchDeploymentRequestSpec"
minItems: 1
type: array
required:
- specs
type: object
ApiSearchDeploymentResponse:
properties:
autoScaling:
allOf:
- $ref: "#/components/schemas/ApiSearchAutoScaling"
description: Autoscaling settings configured for this Search deployment.
readOnly: true
baselineSpecs:
description: List of starting settings for the Search Nodes in each cluster region.
items:
$ref: "#/components/schemas/ApiSearchDeploymentEffectiveSpec"
readOnly: true
type: array
effectiveSpecs:
description: List of settings that configure the Search Nodes for your cluster. Each entry describes one region or, when `shardId` is present, one shard in one region.
items:
$ref: "#/components/schemas/ApiSearchDeploymentEffectiveSpec"
readOnly: true
type: array
encryptionAtRestProvider:
description: Cloud service provider that manages your customer keys to provide an additional layer of Encryption At Rest for the cluster.
externalDocs:
description: Encryption at Rest using Customer Key Management
url: https://www.mongodb.com/docs/atlas/security-kms-encryption/
readOnly: true
type: string
groupId:
description: Unique 24-hexadecimal character string that identifies the project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
id:
description: Unique 24-hexadecimal digit string that identifies the search deployment.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
specs:
deprecated: true
description: Deprecated. `specs` will be removed in a future release. We strongly recommend that you use `effectiveSpecs` instead.
items:
$ref: "#/components/schemas/ApiSearchDeploymentSpec"
readOnly: true
type: array
stateName:
description: Human-readable label that indicates the current operating condition of this search deployment.
readOnly: true
type: string
type: object
ApiSearchDeploymentSpec:
description: Hardware specification for the Search Nodes that back a search deployment.
properties:
instanceSize:
description: Hardware specification for the Search Node instance sizes.
type: string
nodeCount:
description: Number of Search Nodes in the cluster.
example: 2
format: int32
maximum: 32
minimum: 2
type: integer
required:
- instanceSize
- nodeCount
type: object
AutoExportPolicy:
description: Policy for automatically exporting Cloud Backup Snapshots.
properties:
exportBucketId:
description: Unique 24-hexadecimal character string that identifies the Export Bucket.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
frequencyType:
description: Human-readable label that indicates the rate at which the export policy item occurs.
type: string
title: export
type: object
CollStatsRankedNamespaces:
properties:
groupId:
description: Unique 24-hexadecimal digit string that identifies the request project.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
readOnly: true
type: string
identifierId:
description: Unique 24-hexadecimal digit string that identifies the request process.
readOnly: true
type: string
rankedNamespaces:
description: Ordered list of the hottest namespaces, highest value first.
items:
description: A single namespace.
readOnly: true
type: string
readOnly: true
type: array
required:
- rankedNamespaces
type: object
CostExplorerFilterResponse:
description: Response object to give information about created query.
properties:
token:
description: The token used to identify the created Cost Explorer query.
example: d9ab638a801efe182f98ae3e18ea4bb47b9fda808a28a8c7de205bb0e94f7d71
maxLength: 64
minLength: 64
type: string
type: object
CreateDataProcessRegion:
description: Settings to configure the region where you wish to store your archived data.
properties:
cloudProvider:
description: Human-readable label that identifies the Cloud service provider where you wish to store your archived data. `AZURE` or `GCP` may be selected only if it is the Cloud service provider for the cluster and no archives for any other cloud provider have been created for the cluster.
type: string
region:
description: Human-readable label that identifies the geographic location of the region where you wish to store your archived data.
type: string
type: object
writeOnly: true
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- region
AZURE:
properties:
- region
GCP:
properties:
- region
Criteria:
description: |-
Rules by which MongoDB Cloud archives data.
Use the `criteria.type` field to choose how MongoDB Cloud selects data to archive. Choose data using the age of the data or a MongoDB query.
`"criteria.type": "DATE"` selects documents to archive based on a date.
`"criteria.type": "CUSTOM"` selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support `"criteria.type": "CUSTOM"` when `"collectionType": "TIMESERIES"`.
properties:
type:
description: |-
Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query.
`DATE` selects documents to archive based on a date.
`CUSTOM` selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support `CUSTOM` when `"collectionType": "TIMESERIES"`.
type: string
query:
description: "MongoDB find query that selects documents to archive. The specified query follows the syntax of the `db.collection.find(query)` command. This query can't use the empty document (`{}`) to return all documents. Set this parameter when `\"criteria.type\" : \"CUSTOM\"`."
type: string
dateField:
description: 'Indexed database parameter that stores the date that determines when data moves to the online archive. MongoDB Cloud archives the data when the current date exceeds the date in this database parameter plus the number of days specified through the `expireAfterDays` parameter. Set this parameter when you set `"criteria.type" : "DATE"`.'
type: string
dateFormat:
default: ISODATE
description: |-
Syntax used to write the date after which data moves to the online archive. Date can be expressed as ISO 8601, Epoch timestamps, or Object ID. The Epoch timestamp can be expressed as nanoseconds, milliseconds, or seconds. Set this parameter when `criteria.type` : `DATE`.
You must set `criteria.type` : `DATE` if `collectionType`: `TIMESERIES`.
type: string
expireAfterDays:
description: 'Number of days after the value in the `criteria.dateField` when MongoDB Cloud archives data in the specified cluster. Set this parameter when you set `"criteria.type" : "DATE"`.'
format: int32
type: integer
type: object
x-xgen-discriminator:
propertyName: type
mapping:
CUSTOM:
properties:
- query
required:
- query
DATE:
properties:
- dateField
- dateFormat
- expireAfterDays
DataExpirationRule:
description: Rule for specifying when data should be deleted from the archive.
properties:
expireAfterDays:
description: Number of days used in the date criteria for nominating documents for deletion.
format: int32
maximum: 9215
minimum: 7
type: integer
type: object
DataProcessRegion:
description: Settings to configure the region where you wish to store your archived data.
properties:
cloudProvider:
description: Human-readable label that identifies the Cloud service provider where you store your archived data.
readOnly: true
type: string
region:
description: Human-readable label that identifies the geographic location of the region where you store your archived data.
readOnly: true
type: string
readOnly: true
type: object
x-xgen-discriminator:
propertyName: cloudProvider
mapping:
AWS:
properties:
- region
AZURE:
properties:
- region
GCP:
properties:
- region
EmployeeAccessGrant:
description: MongoDB employee granted access level and expiration for a cluster.
properties:
expirationTime:
description: Expiration date for the employee access grant. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
grantType:
description: Level of access to grant to MongoDB Employees.
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
readOnly: true
required:
- expirationTime
- grantType
type: object
GroupPaginatedEvent:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/EventViewForNdsGroup"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
MatcherField:
type: string
NumberMetricValue:
description: Measurement of the `metricName` recorded at the time of the event.
properties:
number:
description: Amount of the `metricName` recorded at the time of the event. This value triggered the alert.
format: double
readOnly: true
type: number
units:
$ref: "#/components/schemas/NumberMetricUnits"
readOnly: true
title: Number Metric Value
type: object
OrgPaginatedEvent:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/EventViewForOrg"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAlertConfig:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/GroupAlertsConfig"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAlert:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/AlertViewForNdsGroup"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiApiUser:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ApiKeyUserDetails"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAppUser:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/CloudAppUser"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasCheckpoint:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ApiAtlasCheckpoint"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasCollectionRestoreCollectionState:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreCollectionStateResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasCollectionRestoreJob:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreJobResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasDatabaseUser:
description: List of MongoDB Database users granted access to databases in the specified project.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/CloudDatabaseUser"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasDiskBackupCollection:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupCollectionResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasDiskBackupDatabase:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupDatabaseResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasDiskBackupExportJob:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupExportJob"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasEARPrivateEndpoint:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/EARPrivateEndpoint"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasFlexBackupRestoreJob20241113:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/FlexBackupRestoreJob20241113"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasFlexBackupSnapshot20241113:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/FlexBackupSnapshot20241113"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasObjectStoragePrivateEndpointResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ObjectStoragePrivateEndpointResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiAtlasProviderRegions:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/CloudProviderRegions"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiInvoiceMetadata:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BillingInvoiceMetadata"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiInvoice:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BillingInvoice"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiSKU:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/SkuResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiSkuService:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/SkuServiceResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiStreamsConnection:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsConnection"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiStreamsPrivateLink:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsPrivateLinkConnection"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiStreamsStreamProcessorWithStats:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsProcessorWithStats"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiStreamsTenant:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/StreamsTenant"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiStreamsVPCPeeringConnection:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/VPCPeeringConnection"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedApiUserAccessListResponse:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/UserAccessListResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAtlasGroup:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/Group"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedAvailableVersion:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/MdbAvailableVersion"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedBackupSnapshotExportBuckets:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupSnapshotExportBucketResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedCloudBackupReplicaSet:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupReplicaSet"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedCloudBackupRestoreJob:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupSnapshotRestoreJob"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedCloudBackupShardedClusterSnapshot:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/DiskBackupShardedClusterSnapshot"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedCloudProviderContainer:
description: List of Network Peering Containers that Amazon Web Services serves.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/CloudProviderContainer"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
title: Network Peering
type: object
PaginatedConnectedOrgConfigs:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ConnectedOrgConfig"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedContainerPeer:
description: Group of Network Peering connection settings.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BaseNetworkPeeringConnectionSettings"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedDatabase:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/MesurementsDatabase"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedDiskPartition:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/MeasurementDiskPartition"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedGroupMcpConfig:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/GroupMcpConfigResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedGroupUser:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/GroupUserResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedIntegration:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ThirdPartyIntegration"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedInvoiceReport:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/InvoiceReportResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedMcpConfigSecret:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ServiceAccountSecret"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedNetworkAccess:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/NetworkPermissionEntry"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOnlineArchive:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BackupOnlineArchive"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrgGroup:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OrgGroup"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrgMcpConfig:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OrgMcpConfigResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrgUser:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/OrgUserResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedOrganization:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/AtlasOrganization"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedPrivateNetworkEndpointIdEntry:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/PrivateNetworkEndpointIdEntry"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedPublicApiUsageDetailsLineItem:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/PublicApiUsageDetailsLineItem"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedRestoreJob:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BackupRestoreJob"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedRoleMapping:
description: List role mappings from the specified organization in the specified federation.
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/AuthFederationRoleMapping"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedServerlessInstanceDescription:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ServerlessInstanceDescription"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedServiceAccountIPAccessEntry:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/ServiceAccountIPAccessListEntry"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedSnapshot:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/BackupSnapshot"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedTeamRole:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/TeamRole"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedTeam:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/TeamResponse"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PaginatedUserCert:
properties:
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
results:
description: List of returned documents that MongoDB Cloud provides when completing this request.
items:
$ref: "#/components/schemas/UserCert"
readOnly: true
type: array
totalCount:
description: Total number of documents available. When `includeCount` is set to `false`, MongoDB Cloud may omit this value or return it when the count is available without additional calculation. The total number is an estimate and may not be exact.
format: int32
minimum: 0
readOnly: true
type: integer
required:
- results
type: object
PartitionField:
description: Metadata to partition this online archive.
properties:
fieldName:
description: Human-readable label that identifies the parameter that MongoDB Cloud uses to partition data. To specify a nested parameter, use the dot notation.
maxLength: 700
type: string
fieldType:
description: Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type UUID must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.
externalDocs:
description: UUID
url: http://bsonspec.org/spec.html
readOnly: true
type: string
order:
default: 0
description: Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the `criteria.dateField` parameter defaults as the first item in the partition sequence.
format: int32
type: integer
required:
- fieldName
- order
title: Online Archive Partition
type: object
PerformanceAdvisorOperation:
properties:
predicates:
description: List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Observability Viewer** or **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.
items:
description: List that contains the search criteria that the query uses. To use the values in key-value pairs in these predicates requires **Project Observability Viewer** or **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud redacts these values.
readOnly: true
type: object
readOnly: true
type: array
raw:
description: Opaque serialized raw slow query log line or query shape for the query shape to be improved with index suggestions. The format isn't stable, so don't parse this value. Accessing this value requires **Project Observability Viewer** or **Project Data Access Read Only** permissions or greater. Otherwise, MongoDB Cloud returns `null`.
example: '{"t":{"$date":"2026-08-17T22:04:15.133+00:00"},"s":"I","c":"COMMAND","id":51803,"ctx":"conn0","msg":"Slow query","attr":{"type":"command","ns":".","command":{"find":"","filter":{"":""},"$db":""},"planSummary":"COLLSCAN","keysExamined":0,"docsExamined":10000,"nreturned":1,"remote":"","durationMillis":108}}'
readOnly: true
type: string
stats:
$ref: "#/components/schemas/PerformanceAdvisorOpStats"
type: object
PinFCV:
properties:
expirationDate:
description: Expiration date of the fixed FCV. If not specified, the expiration date will default to 4 weeks from the date FCV was originally pinned. Note that this field cannot exceed 4 weeks from the pinned date. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
links:
description: List of one or more Uniform Resource Locators (URLs) that point to API sub-resources, related API resources, or both. RFC 5988 outlines these relationships.
externalDocs:
description: Web Linking Specification (RFC 5988)
url: https://datatracker.ietf.org/doc/html/rfc5988
items:
$ref: "#/components/schemas/Link"
readOnly: true
type: array
type: object
PrivateIPMode:
properties:
enabled:
description: Flag that indicates whether someone enabled **Connect via Peering Only** mode for the specified project.
type: boolean
required:
- enabled
type: object
ProjectSettingItem:
properties:
enabled:
description: |-
Flag that indicates whether someone enabled the regionalized private endpoint setting for the specified project.
- Set this value to `true` to enable regionalized private endpoints. This allows you to create more than one private endpoint in a cloud provider region. You need to enable this setting to connect to multi-region and global MongoDB Cloud sharded clusters. Enabling regionalized private endpoints introduces the following limitations:
- Your applications must use the new connection strings for existing multi-region and global sharded clusters. This might cause downtime.
- Your MongoDB Cloud project can't contain replica sets nor can you create new replica sets in this project.
- You can't disable this setting if you have:
- more than one private endpoint in more than one region
- more than one private endpoint in one region and one private endpoint in one or more regions.
- Set this value to `false` to disable regionalized private endpoints.
type: boolean
required:
- enabled
type: object
PublicApiUsageDetailsLineItem:
properties:
additionalData:
$ref: "#/components/schemas/AdditionalData"
billDate:
description: Billing date of the line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
cloudProvider:
description: "Code identifying the cloud provider this line item's usage is attributed to. Values map as follows: AWS is Amazon Web Services, GCP is Google Cloud, AZURE is Microsoft Azure, and ATLAS is other Atlas usage not tied to a specific cloud provider."
readOnly: true
type: string
clusterName:
description: Cluster associated with the line item.
type: string
description:
description: Description of the line item, which can include SKU name and other identifying information.
type: string
groupId:
description: Group id associated with the line item.
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
quantity:
description: Quantity of line item in units associated with SKU.
format: double
readOnly: true
type: number
totalPriceCents:
description: Price * quantity in applicable units, expressed as an integral number of cents.
format: int64
type: integer
unitPriceDollars:
description: Price in units associated with the SKU for the line item.
format: double
type: number
usageDate:
description: Usage date of the line item. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
format: date-time
type: string
type: object
UpdateRequirePrivateNetworkingRequest:
description: Request body to toggle the private-networking requirement for an existing export bucket.
properties:
requirePrivateNetworking:
description: True to require private networking; false to disable it.
type: boolean
required:
- requirePrivateNetworking
type: object
ApiAtlasFTSAnalyzers:
description: Settings that describe one Atlas Search custom analyzer.
properties:
charFilters:
description: Filters that examine text one character at a time and perform filtering operations.
items: {}
type: array
name:
description: |-
Human-readable name that identifies the custom analyzer. Names must be unique within an index, and must not start with any of the following strings:
- `lucene.`
- `builtin.`
- `mongodb.`
type: string
tokenFilters:
description: |-
Filter that performs operations such as:
- Stemming, which reduces related words, such as "talking", "talked", and "talks" to their root word "talk".
- Redaction, the removal of sensitive information from public documents.
items: {}
type: array
tokenizer:
description: Tokenizer that you want to use to create tokens. Tokens determine how Atlas Search splits up text into discrete chunks for indexing.
type: object
properties:
maxGram:
description: Characters to include in the longest token that Atlas Search creates.
type: integer
minGram:
description: Characters to include in the shortest token that Atlas Search creates.
type: integer
type:
description: Human-readable label that identifies this tokenizer type.
type: string
group:
description: Index of the character group within the matching expression to extract into tokens. Use `0` to extract all character groups.
type: integer
pattern:
description: Regular expression to match against.
type: string
maxTokenLength:
default: 255
description: Maximum number of characters in a single token. Tokens greater than this length are split at this length into multiple tokens.
type: integer
x-xgen-discriminator:
propertyName: type
mapping:
edgeGram:
properties:
- maxGram
- minGram
- type
required:
- maxGram
- minGram
keyword:
properties:
- type
nGram:
properties:
- maxGram
- minGram
- type
required:
- maxGram
- minGram
regexCaptureGroup:
properties:
- group
- pattern
- type
required:
- group
- pattern
regexSplit:
properties:
- pattern
- type
required:
- pattern
standard:
properties:
- maxTokenLength
- type
uaxUrlEmail:
properties:
- maxTokenLength
- type
whitespace:
properties:
- maxTokenLength
- type
required:
- name
- tokenizer
title: analyzers
type: object
ApiAtlasFTSMappings:
description: Index specifications for the collection's fields.
properties:
dynamic:
default: false
description: Flag that indicates whether the index uses dynamic or static mappings. Required if `mappings.fields` is omitted.
externalDocs:
description: Dynamic or Static Mappings
url: https://dochub.mongodb.org/core/index-definitions-fts#field-mapping-examples
type: boolean
fields:
description: One or more field specifications for the Atlas Search index. Required if `mappings.dynamic` is omitted or set to `false`.
externalDocs:
description: Atlas Search Index
url: https://dochub.mongodb.org/core/index-definitions-fts
type: object
title: mappings
type: object
securitySchemes:
DigestAuth:
scheme: digest
type: http
ServiceAccounts:
description: Learn more about [Service Accounts](https://www.mongodb.com/docs/atlas/api/service-accounts-overview).
flows:
clientCredentials:
scopes: {}
tokenUrl: https://cloud.mongodb.com/api/oauth/token
type: oauth2
info:
description: |-
The MongoDB Atlas Administration API allows developers to manage all components in MongoDB Atlas.
The Atlas Administration API supports OAuth2 Service Accounts and HTTP Digest-based API keys. Service accounts are the recommended authentication method and API keys are considered a legacy option.
To authenticate with a Service Account, first exchange its client ID and secret for an access token using the OAuth 2.0 Client Credentials flow. Atlas provides a token endpoint at `POST https://cloud.mongodb.com/api/oauth/token`, which returns a Bearer token that is reusable and valid for 1 hour (3600 seconds).
For example, to [return a list of your organizations](https://www.mongodb.com/docs/api/doc/atlas-admin-api-v2/operation/operation-listorgs) with [cURL](https://en.wikipedia.org/wiki/CURL), first generate an access token and then use that token to call the same Atlas Administration API endpoint shown in the current example:
```
ACCESS_TOKEN=$(curl -fsS --request POST https://cloud.mongodb.com/api/oauth/token \
--header "Authorization: Basic $(printf '%s' "${CLIENT_ID}:${CLIENT_SECRET}" | base64 | tr -d '\n')" \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
--data "grant_type=client_credentials" | jq -r '.access_token')
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/orgs?pretty=true"
```
If your organization requires an IP access list for the Atlas Administration API, the token can be created from any IP address, but the API call that uses the token must originate from an allowed IP.
To learn more, see [Get Started with the Atlas Administration API](https://www.mongodb.com/docs/atlas/configure-api-access/). For support, see [MongoDB Support](https://www.mongodb.com/support/get-started).
You can also explore the various endpoints available through the Atlas Administration API in MongoDB's [Postman workspace](https://www.postman.com/mongodb-devrel/workspace/mongodb-atlas-administration-apis/) (requires a Postman account).
license:
name: CC BY-NC-SA 3.0 US
url: https://creativecommons.org/licenses/by-nc-sa/3.0/us/
termsOfService: https://www.mongodb.com/mongodb-management-service-terms-and-conditions
title: MongoDB Atlas Administration API
version: "2.0"
x-xgen-sha: 4ac90cbee72e06d01c4e6930dcf52b7fe368b215
openapi: 3.0.1
paths:
/api/atlas/v2:
get:
description: This resource returns information about the MongoDB application along with API key meta data.
operationId: getSystemStatus
parameters: []
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/SystemStatus"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return the Status of This MongoDB Application
tags:
- Root
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api root getSystemStatus --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetSystemStatusApiParams{}
sdkResp, httpResp, err := client.RootApi.
GetSystemStatusWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2?pretty=true"
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Root/operation/getSystemStatus
x-xgen-method-verb-override:
customMethod: false
verb: getSystemStatus
/api/atlas/v2/alertConfigs/matchers/fieldNames:
get:
description: Get all field names that the `matchers.fieldName` parameter accepts when you create or update an Alert Configuration. You can successfully call this endpoint with any assigned role.
operationId: listMatcherFieldNames
parameters: []
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/MatcherField"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Alert Configuration Matchers Field Names
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations listMatcherFieldNames --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListAlertConfigMatcherFieldNamesApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
ListAlertConfigMatcherFieldNamesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/alertConfigs/matchers/fieldNames?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/alertConfigs/matchers/fieldNames?pretty=true"
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/listAlertConfigMatcherFieldNames
/api/atlas/v2/clusters:
get:
description: Returns the details for all clusters in all projects to which you have access. Clusters contain a group of hosts that maintain the same data set. The response does not include multi-cloud clusters.
operationId: listClusterDetails
parameters:
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedOrgGroup"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Authorized Clusters in All Projects
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters listClusterDetails --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListClusterDetailsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
ListClusterDetailsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/clusters?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/clusters?pretty=true"
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/listClusterDetails
x-xgen-method-verb-override:
customMethod: false
verb: listDetails
/api/atlas/v2/eventTypes:
get:
description: Returns a list of all event types, along with a description and additional metadata about each event.
operationId: listEventTypes
parameters:
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedEventTypeDetailsResponse"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Event Types
tags:
- Events
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api events listEventTypes --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListEventTypesApiParams{}
sdkResp, httpResp, err := client.EventsApi.
ListEventTypesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/eventTypes?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/eventTypes?pretty=true"
x-rolesRequirements:
- Organization Member
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Events/operation/listEventTypes
/api/atlas/v2/federationSettings/{federationSettingsId}:
delete:
description: "Deletes the federation settings instance and all associated data, including identity providers and domains. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in the last remaining connected organization. **Note**: requests to this resource will fail if there is more than one connected organization in the federation."
operationId: deleteFederationSetting
parameters:
- $ref: "#/components/parameters/federationSettingsId"
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Federation Settings Instance
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication deleteFederationSetting --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteFederationSettingApiParams{}
httpResp, err := client.FederatedAuthenticationApi.
DeleteFederationSettingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/deleteFederationSetting
/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs:
get:
description: Returns all connected organization configurations in the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
operationId: listConnectedOrgConfigs
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedConnectedOrgConfigs"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Organization Configurations from One Federation
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication listConnectedOrgConfigs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListFederationSettingConnectedOrgConfigsApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
ListFederationSettingConnectedOrgConfigsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/listFederationSettingConnectedOrgConfigs
/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}:
delete:
description: "Removes one connected organization configuration from the specified federation. Note: This request fails if only one connected organization exists in the federation."
operationId: removeConnectedOrgConfig
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the connected organization configuration to remove.
in: path
name: orgId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Organization Configuration from One Federation
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication removeConnectedOrgConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RemoveFederationSettingConnectedOrgConfigApiParams{}
httpResp, err := client.FederatedAuthenticationApi.
RemoveFederationSettingConnectedOrgConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/removeFederationSettingConnectedOrgConfig
x-xgen-method-verb-override:
customMethod: "True"
verb: remove
get:
description: Returns the specified connected organization configuration from the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in the connected organization.
operationId: getConnectedOrgConfig
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the connected organization configuration to return.
in: path
name: orgId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ConnectedOrgConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Organization Configuration from One Federation
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication getConnectedOrgConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetFederationSettingConnectedOrgConfigApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
GetFederationSettingConnectedOrgConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/getFederationSettingConnectedOrgConfig
patch:
description: |-
Updates one connected organization configuration from the specified federation.
**Note** If the organization configuration has no associated identity provider, you can't use this resource to update role mappings or post authorization role grants.
**Note**: The `domainRestrictionEnabled` field defaults to false if not provided in the request.
**Note**: If the `identityProviderId` field is not provided, you will disconnect the organization and the identity provider.
**Note**: Currently connected data access identity providers missing from the `dataAccessIdentityProviderIds` field will be disconnected.
operationId: updateConnectedOrgConfig
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the connected organization configuration to update.
in: path
name: orgId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ConnectedOrgConfig"
description: The connected organization configuration that you want to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ConnectedOrgConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Organization Configuration in One Federation
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication updateConnectedOrgConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateFederationSettingConnectedOrgConfigApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
UpdateFederationSettingConnectedOrgConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/updateFederationSettingConnectedOrgConfig
/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings:
get:
description: Returns all role mappings from the specified organization in the specified federation.
operationId: listRoleMappings
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- $ref: "#/components/parameters/orgId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedRoleMapping"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Role Mappings from One Organization
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication listRoleMappings --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListFederationSettingConnectedOrgConfigRoleMappingsApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
ListFederationSettingConnectedOrgConfigRoleMappingsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/listFederationSettingConnectedOrgConfigRoleMappings
post:
description: Adds one role mapping to the specified organization in the specified federation.
operationId: createRoleMapping
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- $ref: "#/components/parameters/orgId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuthFederationRoleMapping"
description: The role mapping that you want to create.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuthFederationRoleMapping"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Role Mapping in One Organization Configuration
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication createRoleMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateFederationSettingConnectedOrgConfigRoleMappingApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
CreateFederationSettingConnectedOrgConfigRoleMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/createFederationSettingConnectedOrgConfigRoleMapping
/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}:
delete:
description: Removes one role mapping in the specified organization from the specified federation.
operationId: deleteRoleMapping
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the role mapping that you want to remove.
in: path
name: id
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
- $ref: "#/components/parameters/orgId"
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Role Mapping from One Organization
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication deleteRoleMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteFederationSettingConnectedOrgConfigRoleMappingApiParams{}
httpResp, err := client.FederatedAuthenticationApi.
DeleteFederationSettingConnectedOrgConfigRoleMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/deleteFederationSettingConnectedOrgConfigRoleMapping
get:
description: Returns one role mapping from the specified organization in the specified federation.
operationId: getRoleMapping
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the role mapping that you want to return.
in: path
name: id
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
- $ref: "#/components/parameters/orgId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuthFederationRoleMapping"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Role Mapping from One Organization
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication getRoleMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetFederationSettingConnectedOrgConfigRoleMappingApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
GetFederationSettingConnectedOrgConfigRoleMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/getFederationSettingConnectedOrgConfigRoleMapping
put:
description: Updates one role mapping in the specified organization in the specified federation.
operationId: updateRoleMapping
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the role mapping that you want to update.
in: path
name: id
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
- $ref: "#/components/parameters/orgId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuthFederationRoleMapping"
description: The role mapping that you want to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuthFederationRoleMapping"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Role Mapping in One Organization
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication updateRoleMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateFederationSettingConnectedOrgConfigRoleMappingApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
UpdateFederationSettingConnectedOrgConfigRoleMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/connectedOrgConfigs/{orgId}/roleMappings/{id}" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/updateFederationSettingConnectedOrgConfigRoleMapping
/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders:
get:
description: Returns all identity providers with the provided protocol and type in the specified federation. If no protocol is specified, only SAML identity providers will be returned. If no `idpType` is specified, only WORKFORCE identity providers will be returned. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
operationId: listIdentityProviders
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: The protocols of the target identity providers.
in: query
name: protocol
schema:
items:
default: SAML
type: string
type: array
- description: The types of the target identity providers.
in: query
name: idpType
schema:
items:
default: WORKFORCE
type: string
type: array
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedFederationIdentityProvider"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Identity Providers in One Federation
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication listIdentityProviders --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListFederationSettingIdentityProvidersApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
ListFederationSettingIdentityProvidersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/listFederationSettingIdentityProviders
post:
description: |-
Creates one identity provider within the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
**Note**: This resource only supports the creation of OIDC identity providers.
operationId: createIdentityProvider
parameters:
- $ref: "#/components/parameters/federationSettingsId"
requestBody:
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/FederationOidcIdentityProviderUpdate"
description: The identity provider that you want to create.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/FederationOidcIdentityProvider"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Identity Provider
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication createIdentityProvider --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateFederationSettingIdentityProviderApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
CreateFederationSettingIdentityProviderWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/createFederationSettingIdentityProvider
/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}:
delete:
description: |-
Deletes one identity provider in the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role for the connected organization.
**Note**: Requests to this resource will fail if the identity provider is connected to more than one organization or is connected to an organization unowned by the requesting Service Account or API key. Before deleting an identity provider, confirm that no organization in your federation uses this identity provider.
externalDocs:
description: Manage Organization Mapping for Federated Authentication
url: https://www.mongodb.com/docs/atlas/security/manage-org-mapping/
operationId: deleteIdentityProvider
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the identity provider to connect.
in: path
name: identityProviderId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
type: string
responses:
"204":
content:
application/vnd.atlas.2023-11-15+json:
x-xgen-version: 2023-11-15
description: No Response
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Identity Provider
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication deleteIdentityProvider --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteFederationSettingIdentityProviderApiParams{}
httpResp, err := client.FederatedAuthenticationApi.
DeleteFederationSettingIdentityProviderWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/deleteFederationSettingIdentityProvider
get:
description: "Returns one identity provider in the specified federation by the identity provider's id. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations. Deprecated versions: v2-{2023-01-01}"
operationId: getIdentityProvider
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique string that identifies the identity provider to connect. If using an API version before 11-15-2023, use the legacy 20-hexadecimal digit id. This id can be found within the Federation Management Console > Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider. For all other versions, use the 24-hexadecimal digit id.
in: path
name: identityProviderId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
type: string
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/FederationIdentityProvider"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Identity Provider by ID
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication getIdentityProvider --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetFederationSettingIdentityProviderApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
GetFederationSettingIdentityProviderWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/getFederationSettingIdentityProvider
patch:
description: |-
Updates one identity provider in the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
**Note**: Changing authorization types and/or updating authorization claims can prevent current users and/or groups from accessing the database.
**Note**: When deactivating a SAML identity provider connected to an organization, the requesting Service Account or API key must have the Organization Owner role for the organization. If the identity provider is connected to multiple organizations, the request will fail. Deprecated versions: v2-{2023-01-01}
operationId: updateIdentityProvider
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique string that identifies the identity provider to connect. If using an API version before 11-15-2023, use the legacy 20-hexadecimal digit id. This id can be found within the Federation Management Console > Identity Providers tab by clicking the info icon in the IdP ID row of a configured identity provider. For all other versions, use the 24-hexadecimal digit id.
in: path
name: identityProviderId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
type: string
requestBody:
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/FederationIdentityProviderUpdate"
description: The identity provider that you want to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/FederationIdentityProvider"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"405":
$ref: "#/components/responses/methodNotAllowed"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Identity Provider
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication updateIdentityProvider --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateFederationSettingIdentityProviderApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
UpdateFederationSettingIdentityProviderWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PATCH "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/updateFederationSettingIdentityProvider
/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/jwks:
delete:
description: |-
Revokes the JWKS tokens from the requested OIDC identity provider. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
**Note**: Revoking your JWKS tokens immediately refreshes your IdP public keys from all your Atlas clusters, invalidating previously signed access tokens and logging out all users. You may need to restart your MongoDB clients. All organizations connected to the identity provider will be affected.
externalDocs:
description: Configure OIDC Authorization
url: https://www.mongodb.com/docs/atlas/security-oidc/#revoke-jwks
operationId: revokeIdentityProviderJwks
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- description: Unique 24-hexadecimal digit string that identifies the identity provider to connect.
in: path
name: identityProviderId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
type: string
responses:
"204":
content:
application/vnd.atlas.2023-11-15+json:
x-xgen-version: 2023-11-15
description: No Response
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Revoke JWKS from One OIDC Identity Provider
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication revokeIdentityProviderJwks --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RevokeFederationSettingIdentityProviderJwksApiParams{}
httpResp, err := client.FederatedAuthenticationApi.
RevokeFederationSettingIdentityProviderJwksWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/jwks"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/jwks"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/revokeFederationSettingIdentityProviderJwks
x-xgen-method-verb-override:
customMethod: "True"
verb: revoke
/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/metadata.xml:
get:
description: Returns the metadata of one identity provider in the specified federation. To use this resource, the requesting Service Account or API Key must have the Organization Owner role in one of the connected organizations.
operationId: getIdentityProviderMetadata
parameters:
- $ref: "#/components/parameters/federationSettingsId"
- $ref: "#/components/parameters/identityProviderId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
type: string
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"405":
$ref: "#/components/responses/methodNotAllowed"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Metadata of One Identity Provider
tags:
- Federated Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api federatedAuthentication getIdentityProviderMetadata --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetFederationSettingIdentityProviderMetadataApiParams{}
sdkResp, httpResp, err := client.FederatedAuthenticationApi.
GetFederationSettingIdentityProviderMetadataWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/metadata.xml?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/federationSettings/{federationSettingsId}/identityProviders/{identityProviderId}/metadata.xml?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Federated-Authentication/operation/getFederationSettingIdentityProviderMetadata
x-xgen-method-verb-override:
customMethod: false
verb: get
/api/atlas/v2/groups:
get:
description: Returns details about all projects. Projects group clusters into logical collections that support an application environment, workload, or both. Each project can have its own users, teams, security, tags, and alert settings.
operationId: listGroups
parameters:
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedAtlasGroup"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Projects
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects listGroups --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupsApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
ListGroupsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups?pretty=true"
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/listGroups
post:
description: Creates one project. Projects group clusters into logical collections that support an application environment, workload, or both. Each project can have its own users, teams, security, tags, and alert settings.
operationId: createGroup
parameters:
- description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud user to whom to grant the Project Owner role on the specified project. If you set this parameter, it overrides the default value of the oldest Organization Owner.
in: query
name: projectOwnerId
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/Group"
description: Creates one project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/Group"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects createGroup --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
CreateGroupWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups" \
-d '{ }'
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/createGroup
/api/atlas/v2/groups/{groupId}:
delete:
description: Removes the specified project. Projects group clusters into logical collections that support an application environment, workload, or both. Each project can have its own users, teams, security, tags, and alert settings. You can delete a project only if there are no Online Archives for the clusters in the project.
operationId: deleteGroup
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects deleteGroup --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupApiParams{}
httpResp, err := client.ProjectsApi.
DeleteGroupWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/deleteGroup
get:
description: Returns details about the specified project. Projects group clusters into logical collections that support an application environment, workload, or both. Each project can have its own users, teams, security, tags, and alert settings.
operationId: getGroup
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/Group"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects getGroup --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
GetGroupWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/getGroup
patch:
description: Updates the human-readable label that identifies the specified project, or the tags associated with the project.
operationId: updateGroup
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupUpdate"
description: Project to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/Group"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects updateGroup --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
UpdateGroupWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/updateGroup
/api/atlas/v2/groups/{groupId}/access:
post:
deprecated: true
description: Adds one MongoDB Cloud user to the specified project. If the MongoDB Cloud user is not a member of the project's organization, then the user must accept their invitation to the organization to access information within the specified project. If the MongoDB Cloud User is already a member of the project's organization, then they will be added to the project immediately and an invitation will not be returned by this resource.
operationId: addGroupUser
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-02-01+json:
schema:
$ref: "#/components/schemas/GroupInvitationRequest"
description: Adds one MongoDB Cloud user to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-02-01+json:
schema:
$ref: "#/components/schemas/OrganizationInvitation"
x-xgen-version: 2023-02-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"204":
content:
application/vnd.atlas.2023-02-01+json:
x-xgen-version: 2023-02-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Add One MongoDB Cloud User to One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects addGroupUser --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.AddGroupAccessUserApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
AddGroupAccessUserWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/access" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/access" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/addGroupAccessUser
x-xgen-method-verb-override:
customMethod: "True"
verb: addUser
/api/atlas/v2/groups/{groupId}/accessList:
get:
description: Returns all access list entries from the specified project's IP access list. Each entry in the project's IP access list contains either one IP address or one CIDR-notated block of IP addresses. MongoDB Cloud only allows client connections to the cluster from entries in the project's IP access list. This resource replaces the whitelist resource. MongoDB Cloud removed whitelists in July 2021. Update your applications to use this new resource. The `/groups/{GROUP-ID}/accessList` endpoint manages the database IP access list. This endpoint is distinct from the `orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accesslist` endpoint, which manages the access list for MongoDB Cloud organizations.
externalDocs:
description: IP access list
url: https://docs.atlas.mongodb.com/security/ip-access-list/#std-label-access-list
operationId: listAccessListEntries
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedNetworkAccess"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Project IP Access List Entries
tags:
- Project IP Access List
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projectIpAccessList listAccessListEntries --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupAccessListEntriesApiParams{}
sdkResp, httpResp, err := client.ProjectIPAccessListApi.
ListGroupAccessListEntriesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-changelog:
2025-05-08: Corrects an issue where the endpoint would include Atlas internal entries.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Project-IP-Access-List/operation/listGroupAccessListEntries
x-xgen-method-verb-override:
customMethod: false
verb: listEntries
post:
description: Adds one or more access list entries to the specified project. MongoDB Cloud only allows client connections to the cluster from entries in the project's IP access list. Write each entry as either one IP address or one CIDR-notated block of IP addresses. This resource replaces the whitelist resource. MongoDB Cloud removed whitelists in July 2021. Update your applications to use this new resource. The `/groups/{GROUP-ID}/accessList` endpoint manages the database IP access list. This endpoint is distinct from the `orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accesslist` endpoint, which manages the access list for MongoDB Cloud organizations. This endpoint doesn't support concurrent `POST` requests. You must submit multiple `POST` requests synchronously.
externalDocs:
description: IP access list
url: https://docs.atlas.mongodb.com/security/ip-access-list/#std-label-access-list
operationId: createAccessListEntry
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/NetworkPermissionEntry"
type: array
description: One or more access list entries to add to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedNetworkAccess"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Add Entries to Project IP Access List
tags:
- Project IP Access List
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projectIpAccessList createAccessListEntry --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupAccessListEntryApiParams{}
sdkResp, httpResp, err := client.ProjectIPAccessListApi.
CreateGroupAccessListEntryWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList" \
-d '{ }'
x-rolesRequirements:
- Project Network Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Project-IP-Access-List/operation/createGroupAccessListEntry
x-xgen-method-verb-override:
customMethod: false
verb: createEntry
/api/atlas/v2/groups/{groupId}/accessList/{entryValue}:
delete:
description: Removes one access list entry from the specified project's IP access list. Each entry in the project's IP access list contains one IP address, one CIDR-notated block of IP addresses, or one AWS Security Group ID. MongoDB Cloud only allows client connections to the cluster from entries in the project's IP access list. This resource replaces the whitelist resource. MongoDB Cloud removed whitelists in July 2021. Update your applications to use this new resource. The `/groups/{GROUP-ID}/accessList` endpoint manages the database IP access list. This endpoint is distinct from the `orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accesslist` endpoint, which manages the access list for MongoDB Cloud organizations.
externalDocs:
description: IP access list
url: https://docs.atlas.mongodb.com/security/ip-access-list/#std-label-access-list
operationId: deleteAccessListEntry
parameters:
- $ref: "#/components/parameters/groupId"
- description: |-
Access list entry that you want to remove from the project's IP access list. This value can use one of the following: one AWS security group ID, one IP address, or one CIDR block of addresses. For CIDR blocks that use a subnet mask, replace the forward slash (`/`) with its URL-encoded value (`%2F`). When you remove an entry from the IP access list, existing connections from the removed address or addresses may remain open for a variable amount of time. The amount of time it takes MongoDB Cloud to close the connection depends upon several factors, including:
- how your application established the connection,
- how MongoDB Cloud or the driver using the address behaves, and
- which protocol (like TCP or UDP) the connection uses.
in: path
name: entryValue
required: true
schema:
example: "IPv4: 192.0.2.0%2F24 or IPv6: 2001:db8:85a3:8d3:1319:8a2e:370:7348 or IPv4 CIDR: 198.51.100.0%2f24 or IPv6 CIDR: 2001:db8::%2f58 or AWS SG: sg-903004f8"
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})|(sg\-[a-f0-9]{8})?$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Entry from One Project IP Access List
tags:
- Project IP Access List
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projectIpAccessList deleteAccessListEntry --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupAccessListEntryApiParams{}
httpResp, err := client.ProjectIPAccessListApi.
DeleteGroupAccessListEntryWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}"
x-rolesRequirements:
- Project Network Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Project-IP-Access-List/operation/deleteGroupAccessListEntry
x-xgen-method-verb-override:
customMethod: false
verb: deleteEntry
get:
description: Returns one access list entry from the specified project's IP access list. Each entry in the project's IP access list contains either one IP address or one CIDR-notated block of IP addresses. MongoDB Cloud only allows client connections to the cluster from entries in the project's IP access list. This resource replaces the whitelist resource. MongoDB Cloud removed whitelists in July 2021. Update your applications to use this new resource. This endpoint (`/groups/{GROUP-ID}/accessList`) manages the Project IP Access List. It doesn't manage the access list for MongoDB Cloud organizations. The Programmatic API Keys endpoint (`/orgs/{ORG-ID}/apiKeys/{API-KEY-ID}/accesslist`) manages those access lists.
externalDocs:
description: IP access list
url: https://docs.atlas.mongodb.com/security/ip-access-list/#std-label-access-list
operationId: getAccessListEntry
parameters:
- $ref: "#/components/parameters/groupId"
- description: "Access list entry that you want to return from the project's IP access list. This value can use one of the following: one AWS security group ID, one IP address, or one CIDR block of addresses. For CIDR blocks that use a subnet mask, replace the forward slash (`/`) with its URL-encoded value (`%2F`)."
in: path
name: entryValue
required: true
schema:
example: "IPv4: 192.0.2.0%2F24 or IPv6: 2001:db8:85a3:8d3:1319:8a2e:370:7348 or IPv4 CIDR: 198.51.100.0%2f24 or IPv6 CIDR: 2001:db8::%2f58 or AWS SG: sg-903004f8"
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})|(sg\-[a-f0-9]{8})?$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/NetworkPermissionEntry"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Project IP Access List Entry
tags:
- Project IP Access List
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projectIpAccessList getAccessListEntry --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAccessListEntryApiParams{}
sdkResp, httpResp, err := client.ProjectIPAccessListApi.
GetGroupAccessListEntryWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Project-IP-Access-List/operation/getGroupAccessListEntry
x-xgen-method-verb-override:
customMethod: false
verb: getEntry
/api/atlas/v2/groups/{groupId}/accessList/{entryValue}/status:
get:
description: Returns the status of one project IP access list entry. This resource checks if the provided project IP access list entry applies to all cloud providers serving clusters from the specified project.
operationId: getAccessListStatus
parameters:
- $ref: "#/components/parameters/groupId"
- description: Network address or cloud provider security construct that identifies which project access list entry to be verified.
in: path
name: entryValue
required: true
schema:
example: "IPv4: 192.0.2.0%2F24 or IPv6: 2001:db8:85a3:8d3:1319:8a2e:370:7348 or IPv4 CIDR: 198.51.100.0%2f24 or IPv6 CIDR: 2001:db8::%2f58 or AWS SG: sg-903004f8"
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){7}[0-9a-f]{1,4}(%2[fF][0-9]{1,3})?|([0-9a-f]{1,4}\:){1,6}\:(%2[fF][0-9]{1,3})|(sg\-[a-f0-9]{8})?$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/NetworkPermissionEntryStatus"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Status of One Project IP Access List Entry
tags:
- Project IP Access List
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projectIpAccessList getAccessListStatus --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAccessListStatusApiParams{}
sdkResp, httpResp, err := client.ProjectIPAccessListApi.
GetGroupAccessListStatusWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}/status?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/accessList/{entryValue}/status?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Project-IP-Access-List/operation/getGroupAccessListStatus
/api/atlas/v2/groups/{groupId}/activityFeed:
get:
description: Returns a pre-filtered activity feed link for the specified project based on the provided date range and event types. The returned link can be shared and opened to view the activity feed with the same filters applied.
operationId: getGroupActivityFeed
parameters:
- $ref: "#/components/parameters/groupId"
- description: |-
Category of incident recorded at this moment in time.
**IMPORTANT**: The complete list of event type values changes frequently.
in: query
name: eventType
schema:
description: List of event types to filter the activity feed.
externalDocs:
description: Event Types
url: https://www.mongodb.com/docs/atlas/reference/atlas-alert-event-types/
items:
$ref: "#/components/schemas/EventTypeForNdsGroup"
maxItems: 20
type: array
- description: End date and time for events to include in the activity feed link. ISO 8601 timestamp format in UTC.
in: query
name: maxDate
schema:
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
- description: Start date and time for events to include in the activity feed link. ISO 8601 timestamp format in UTC.
in: query
name: minDate
schema:
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
- description: Human-readable label that identifies the cluster.
in: query
name: clusterName
schema:
description: List of cluster names to filter the activity feed.
items:
type: string
maxItems: 20
type: array
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ActivityFeedLinkResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Pre-Filtered Activity Feed Link for One Project
tags:
- Activity Feed
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api activityFeed getGroupActivityFeed --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupActivityFeedApiParams{}
sdkResp, httpResp, err := client.ActivityFeedApi.
GetGroupActivityFeedWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/activityFeed?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/activityFeed?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Activity-Feed/operation/getGroupActivityFeed
/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits:
get:
description: Retrieve a single scoped AI model rate limit for the given group.
operationId: getGroupRateLimits
parameters:
- $ref: "#/components/parameters/groupId"
- description: Cloud provider scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: cloud
required: true
schema:
type: string
- description: Geography scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: geography
required: true
schema:
type: string
- description: The name of the model group to be retrieved.
in: path
name: modelGroupName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelRateLimitResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Single AI Model Rate Limit for One Group
tags:
- AI Model Rate Limits
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelRateLimits getGroupRateLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAiModelApiCloudGeographyModelGroupNameRateLimitsApiParams{}
sdkResp, httpResp, err := client.AIModelRateLimitsApi.
GetGroupAiModelApiCloudGeographyModelGroupNameRateLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/getGroupAiModelApiCloudGeographyModelGroupNameRateLimits
patch:
description: Update a scoped AI model rate limit for the given model group.
operationId: updateGroupRateLimits
parameters:
- $ref: "#/components/parameters/groupId"
- description: Cloud provider scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: cloud
required: true
schema:
type: string
- description: Geography scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: geography
required: true
schema:
type: string
- description: The name of the model group to be updated.
in: path
name: modelGroupName
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelsRateLimitUpdateRequest"
x-xgen-version: 2025-03-12
description: A request containing the new rate limits for the given model group.
required: true
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelRateLimitResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update AI Model Rate Limit
tags:
- AI Model Rate Limits
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelRateLimits updateGroupRateLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupAiModelApiCloudGeographyModelGroupNameRateLimitsApiParams{}
sdkResp, httpResp, err := client.AIModelRateLimitsApi.
UpdateGroupAiModelApiCloudGeographyModelGroupNameRateLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits" \
-d '{ }'
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/updateGroupAiModelApiCloudGeographyModelGroupNameRateLimits
/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits:reset:
post:
description: Reset the scoped AI model rate limit for the given model group to default values.
operationId: resetGroupModelLimits
parameters:
- $ref: "#/components/parameters/groupId"
- description: Cloud provider scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: cloud
required: true
schema:
type: string
- description: Geography scope. Must be "ANY". Additional values will be supported in future API versions.
in: path
name: geography
required: true
schema:
type: string
- description: The name of the model group to be reset to default rate limits.
in: path
name: modelGroupName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelRateLimitResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Reset AI Model Rate Limit for One Model Group
tags:
- AI Model Rate Limits
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelRateLimits resetGroupModelLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ResetGroupAiModelApiCloudGeographyModelGroupNameRateLimitsApiParams{}
sdkResp, httpResp, err := client.AIModelRateLimitsApi.
ResetGroupAiModelApiCloudGeographyModelGroupNameRateLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits:reset" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiClouds/{cloud}/geographies/{geography}/modelGroupNames/{modelGroupName}/rateLimits:reset" \
-d '{ }'
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/resetGroupAiModelApiCloudGeographyModelGroupNameRateLimits
/api/atlas/v2/groups/{groupId}/aiModelApiKeys:
get:
description: Retrieve AI model API keys for the given group.
operationId: listGroupModelKeys
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedAtlasAiModelApiKeysResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return AI Model API Keys for One Group
tags:
- AI Model API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelApiKeys listGroupModelKeys --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupAiModelApiKeysApiParams{}
sdkResp, httpResp, err := client.AIModelAPIKeysApi.
ListGroupAiModelApiKeysWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/listGroupAiModelApiKeys
post:
description: Create a new AI model API key for the given group.
operationId: createGroupModelKey
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelApiKeyCreateRequest"
x-xgen-version: 2025-03-12
description: A request containing the name, cloud, and geography of the new API key.
required: true
responses:
"201":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelApiKeyResponse"
x-xgen-version: 2025-03-12
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create New AI Model API Key
tags:
- AI Model API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelApiKeys createGroupModelKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupAiModelApiKeyApiParams{}
sdkResp, httpResp, err := client.AIModelAPIKeysApi.
CreateGroupAiModelApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys" \
-d '{ }'
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/createGroupAiModelApiKey
/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}:
delete:
description: Delete an existing AI model API key in the given group.
operationId: deleteGroupModelKey
parameters:
- $ref: "#/components/parameters/groupId"
- description: The id of the API key to be deleted.
in: path
name: apiKeyId
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2025-03-12+json:
x-xgen-version: 2025-03-12
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete Existing AI Model API Key
tags:
- AI Model API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelApiKeys deleteGroupModelKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupAiModelApiKeyApiParams{}
httpResp, err := client.AIModelAPIKeysApi.
DeleteGroupAiModelApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}"
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/deleteGroupAiModelApiKey
get:
description: Retrieve a single AI model API key for the given group.
operationId: getGroupModelKey
parameters:
- $ref: "#/components/parameters/groupId"
- description: The id of the API key to be retrieved.
in: path
name: apiKeyId
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelApiKeyResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Single AI Model API Key for One Group
tags:
- AI Model API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelApiKeys getGroupModelKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAiModelApiKeyApiParams{}
sdkResp, httpResp, err := client.AIModelAPIKeysApi.
GetGroupAiModelApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiKeys/{apiKeyId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/getGroupAiModelApiKey
patch:
description: Update an existing AI model API key in the given group. Only the name can be updated; scope is immutable after creation.
operationId: updateGroupModelKey
parameters:
- $ref: "#/components/parameters/groupId"
- description: The id of the API key to be updated.
in: path
name: apiKeyId
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelApiKeyUpdateRequest"
x-xgen-version: 2025-03-12
description: A request containing the new name for the API key.
required: true
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AiModelApiKeyResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Existing AI Model API Key
tags:
- AI Model API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelApiKeys updateGroupModelKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupAiModelApiKeyApiParams{}
sdkResp, httpResp, err := client.AIModelAPIKeysApi.
UpdateGroupAiModelApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/aiModelApiKeys/{apiKeyId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/aiModelApiKeys/{apiKeyId}" \
-d '{ }'
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-API-Keys/operation/updateGroupAiModelApiKey
/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits:
get:
description: Retrieve AI model rate limits for the given group.
operationId: getGroupModelLimits
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedAtlasAiModelRateLimitsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return AI Model Rate Limits for One Group
tags:
- AI Model Rate Limits
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelRateLimits getGroupModelLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAiModelApiRateLimitsApiParams{}
sdkResp, httpResp, err := client.AIModelRateLimitsApi.
GetGroupAiModelApiRateLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/getGroupAiModelApiRateLimits
/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits:reset:
post:
description: Reset the AI Model rate limits for the given group to default values.
operationId: resetGroupRateLimits
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedAtlasAiModelRateLimitsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Reset AI Model Rate Limits for Group
tags:
- AI Model Rate Limits
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api aiModelRateLimits resetGroupRateLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ResetGroupAiModelApiRateLimitsApiParams{}
sdkResp, httpResp, err := client.AIModelRateLimitsApi.
ResetGroupAiModelApiRateLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits:reset" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/aiModelApiRateLimits:reset" \
-d '{ }'
x-rolesRequirements:
- Project Model Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AI-Model-Rate-Limits/operation/resetGroupAiModelApiRateLimits
x-xgen-method-verb-override:
customMethod: "True"
verb: reset
/api/atlas/v2/groups/{groupId}/alertConfigs:
get:
description: |-
Returns all alert configurations for one project. These alert configurations apply to any component in the project. Alert configurations define the triggers and notification methods for alerts.
This resource remains under revision and may change.
operationId: listAlertConfigs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedAlertConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Alert Configurations in One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations listAlertConfigs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupAlertConfigsApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
ListGroupAlertConfigsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/listGroupAlertConfigs
post:
description: |-
Creates one alert configuration for the specified project. Alert configurations define the triggers and notification methods for alerts.
This resource remains under revision and may change.
operationId: createAlertConfig
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
description: Creates one alert configuration for the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Alert Configuration in One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations createAlertConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupAlertConfigApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
CreateGroupAlertConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs" \
-d '{ }'
x-rolesRequirements:
- Project Alerts Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/createGroupAlertConfig
/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}:
delete:
description: |-
Removes one alert configuration from the specified project. Use the Return All Alert Configurations for One Project endpoint to retrieve all alert configurations to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return All Alert Configurations for One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/listAlertConfigurations
operationId: deleteAlertConfig
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert configuration.
in: path
name: alertConfigId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Alert Configuration from One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations deleteAlertConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupAlertConfigApiParams{}
httpResp, err := client.AlertConfigurationsApi.
DeleteGroupAlertConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}"
x-rolesRequirements:
- Project Alerts Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/deleteGroupAlertConfig
get:
description: |-
Returns the specified alert configuration from the specified project. Use the Return All Alert Configurations for One Project endpoint to retrieve all alert configurations to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return All Alert Configurations for One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/listAlertConfigurations
operationId: getAlertConfig
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert configuration.
in: path
name: alertConfigId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Alert Configuration from One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations getAlertConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAlertConfigApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
GetGroupAlertConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/getGroupAlertConfig
patch:
description: |-
Enables or disables the specified alert configuration in the specified project. The resource enables the specified alert configuration if currently enabled. The resource disables the specified alert configuration if currently disabled.
**NOTE**: This endpoint updates only the enabled/disabled state for the alert configuration. To update more than just this configuration, see Update One Alert Configuration.
This resource remains under revision and may change.
externalDocs:
description: Update One Alert Configuration
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/updateAlertConfiguration
operationId: toggleAlertConfig
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert configuration that triggered this alert.
in: path
name: alertConfigId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AlertsToggle"
description: Enables or disables the specified alert configuration in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Toggle State of One Alert Configuration in One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations toggleAlertConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ToggleGroupAlertConfigApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
ToggleGroupAlertConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/alertConfigs/{alertConfigId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/alertConfigs/{alertConfigId}" \
-d '{ }'
x-rolesRequirements:
- Project Alerts Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/toggleGroupAlertConfig
x-xgen-method-verb-override:
customMethod: true
verb: toggle
put:
description: |-
Updates one alert configuration in the specified project. Alert configurations define the triggers and notification methods for alerts.
**NOTE**: To enable or disable the alert configuration, see Toggle One State of One Alert Configuration in One Project.
This resource remains under revision and may change.
externalDocs:
description: Toggle One State of One Alert Configuration in One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/toggleAlertConfiguration
operationId: updateAlertConfig
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert configuration.
in: path
name: alertConfigId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
description: Updates one alert configuration in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupAlertsConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Alert Configuration in One Project
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations updateAlertConfig --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupAlertConfigApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
UpdateGroupAlertConfigWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}" \
-d '{ }'
x-rolesRequirements:
- Project Alerts Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/updateGroupAlertConfig
/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}/alerts:
get:
description: |-
Returns all open alerts that the specified alert configuration triggers. These alert configurations apply to the specified project only. Alert configurations define the triggers and notification methods for alerts. Open alerts have been triggered but remain unacknowledged. Use the Return All Alert Configurations for One Project endpoint to retrieve all alert configurations to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return All Alert Configurations for One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/listAlertConfigurations
operationId: getAlertConfigAlerts
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Unique 24-hexadecimal digit string that identifies the alert configuration.
in: path
name: alertConfigId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedAlert"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Open Alerts for One Alert Configuration
tags:
- Alerts
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alerts getAlertConfigAlerts --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAlertConfigAlertsApiParams{}
sdkResp, httpResp, err := client.AlertsApi.
GetGroupAlertConfigAlertsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}/alerts?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alertConfigs/{alertConfigId}/alerts?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/getGroupAlertConfigAlerts
/api/atlas/v2/groups/{groupId}/alerts:
get:
description: |-
Returns all alerts. These alerts apply to all components in one project. You receive an alert when a monitored component meets or exceeds a value you set.
This resource remains under revision and may change.
operationId: listAlerts
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Status of the alerts to return. Omit this parameter to return all alerts in all statuses. TRACKING indicates the alert condition exists but has not persisted for the minimum notification delay. OPEN indicates the alert condition currently exists. CLOSED indicates the alert condition has been resolved.
in: query
name: status
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedAlert"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Alerts from One Project
tags:
- Alerts
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alerts listAlerts --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupAlertsApiParams{}
sdkResp, httpResp, err := client.AlertsApi.
ListGroupAlertsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/listGroupAlerts
/api/atlas/v2/groups/{groupId}/alerts/{alertId}:
get:
description: |-
Returns one alert. This alert applies to any component in one project. You receive an alert when a monitored component meets or exceeds a value you set. Use the Return All Alerts from One Project endpoint to retrieve all alerts to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return All Alerts from One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/listAlerts
operationId: getAlert
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert.
in: path
name: alertId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AlertViewForNdsGroup"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Alert from One Project
tags:
- Alerts
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alerts getAlert --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAlertApiParams{}
sdkResp, httpResp, err := client.AlertsApi.
GetGroupAlertWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts/{alertId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts/{alertId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/getGroupAlert
patch:
description: |-
Confirms receipt of one existing alert. This alert applies to any component in one project. Acknowledging an alert prevents successive notifications. You receive an alert when a monitored component meets or exceeds a value you set until you acknowledge the alert. Use the Return All Alerts from One Project endpoint to retrieve all alerts to which the authenticated user has access.
This resource remains under revision and may change. Deprecated versions: v2-{2023-01-01}
externalDocs:
description: Return All Alerts from One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/listAlerts
operationId: acknowledgeAlert
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the alert.
in: path
name: alertId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/AcknowledgeAlert"
description: Acknowledges or unacknowledges one alert.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/AlertViewForNdsGroup"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Acknowledge One Alert from One Project
tags:
- Alerts
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alerts acknowledgeAlert --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.AcknowledgeGroupAlertApiParams{}
sdkResp, httpResp, err := client.AlertsApi.
AcknowledgeGroupAlertWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/alerts/{alertId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/alerts/{alertId}" \
-d '{ }'
x-rolesRequirements:
- Project Alerts Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/acknowledgeGroupAlert
x-xgen-method-verb-override:
customMethod: true
verb: acknowledge
/api/atlas/v2/groups/{groupId}/alerts/{alertId}/alertConfigs:
get:
description: |-
Returns all alert configurations set for the specified alert. Use the Return All Alerts from One Project endpoint to retrieve all alerts to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return All Alerts from One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alerts/operation/listAlerts
operationId: getAlertConfigs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Unique 24-hexadecimal digit string that identifies the alert.
in: path
name: alertId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedAlertConfig"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Alert Configurations Set for One Alert
tags:
- Alert Configurations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api alertConfigurations getAlertConfigs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAlertAlertConfigsApiParams{}
sdkResp, httpResp, err := client.AlertConfigurationsApi.
GetGroupAlertAlertConfigsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts/{alertId}/alertConfigs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/alerts/{alertId}/alertConfigs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Alert-Configurations/operation/getGroupAlertAlertConfigs
/api/atlas/v2/groups/{groupId}/apiKeys:
get:
description: Returns all organization API keys that you assigned to the specified project. Users with the Project Owner role in the project associated with the API key can use the organization API key to access the resources.
externalDocs:
description: Programmatic API Keys
url: https://docs.atlas.mongodb.com/configure-api-access/#std-label-atlas-prog-api-key
operationId: listGroupApiKeys
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiApiUser"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Organization API Keys Assigned to One Project
tags:
- Programmatic API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api programmaticApiKeys listGroupApiKeys --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupApiKeysApiParams{}
sdkResp, httpResp, err := client.ProgrammaticAPIKeysApi.
ListGroupApiKeysWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Programmatic-API-Keys/operation/listGroupApiKeys
post:
description: Creates and assigns the specified organization API key to the specified project. Users with the Project Owner role in the project associated with the API key can use the organization API key to access the resources.
operationId: createGroupApiKey
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CreateAtlasProjectApiKey"
description: Organization API key to be created and assigned to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiKeyUserDetails"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create and Assign One Organization API Key to One Project
tags:
- Programmatic API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api programmaticApiKeys createGroupApiKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupApiKeyApiParams{}
sdkResp, httpResp, err := client.ProgrammaticAPIKeysApi.
CreateGroupApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys" \
-d '{ }'
x-rolesRequirements:
- Project Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Programmatic-API-Keys/operation/createGroupApiKey
/api/atlas/v2/groups/{groupId}/apiKeys/{apiUserId}:
delete:
description: Removes one organization API key from the specified project.
externalDocs:
description: Programmatic API Keys
url: https://docs.atlas.mongodb.com/configure-api-access/#std-label-atlas-prog-api-key
operationId: removeGroupApiKey
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies this organization API key that you want to unassign from one project.
in: path
name: apiUserId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Unassign One Organization API Key from One Project
tags:
- Programmatic API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api programmaticApiKeys removeGroupApiKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RemoveGroupApiKeyApiParams{}
httpResp, err := client.ProgrammaticAPIKeysApi.
RemoveGroupApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys/{apiUserId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys/{apiUserId}"
x-rolesRequirements:
- Project Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Programmatic-API-Keys/operation/removeGroupApiKey
x-xgen-method-verb-override:
customMethod: "True"
verb: remove
patch:
description: Updates the roles of the organization API key that you specify for the project that you specify. You must specify at least one valid role for the project. The application removes any roles that you do not include in this request if they were previously set in the organization API key that you specify for the project.
operationId: updateApiKeyRoles
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/pageNum"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/includeCount"
- description: Unique 24-hexadecimal digit string that identifies this organization API key that you want to unassign from one project.
in: path
name: apiUserId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UpdateAtlasProjectApiKey"
description: Organization API Key to be updated. This request requires a minimum of one of the two body parameters.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiKeyUserDetails"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Organization API Key Roles for One Project
tags:
- Programmatic API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api programmaticApiKeys updateApiKeyRoles --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupApiKeyRolesApiParams{}
sdkResp, httpResp, err := client.ProgrammaticAPIKeysApi.
UpdateGroupApiKeyRolesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/apiKeys/{apiUserId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/apiKeys/{apiUserId}" \
-d '{ }'
x-rolesRequirements:
- Project Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Programmatic-API-Keys/operation/updateGroupApiKeyRoles
x-xgen-method-verb-override:
customMethod: "True"
verb: updateRoles
post:
description: Assigns the specified organization API key to the specified project. Users with the Project Owner role in the project associated with the API key can then use the organization API key to access the resources.
operationId: addGroupApiKey
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies this organization API key that you want to assign to one project.
in: path
name: apiUserId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
description: Explanatory text that describes this API key, the list of roles to grant this API key, or both.
items:
$ref: "#/components/schemas/UserAccessRoleAssignment"
type: array
description: Organization API key to be assigned to the specified project.
required: true
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Assign One Organization API Key to One Project
tags:
- Programmatic API Keys
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api programmaticApiKeys addGroupApiKey --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.AddGroupApiKeyApiParams{}
sdkResp, httpResp, err := client.ProgrammaticAPIKeysApi.
AddGroupApiKeyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys/{apiUserId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/apiKeys/{apiUserId}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Programmatic-API-Keys/operation/addGroupApiKey
x-xgen-method-verb-override:
customMethod: "True"
verb: add
/api/atlas/v2/groups/{groupId}/auditLog:
get:
description: Returns the auditing configuration for the specified project. The auditing configuration defines the events that MongoDB Cloud records in the audit log. This feature isn't available for `M0`, `M2`, `M5`, or serverless clusters.
operationId: getGroupAuditLog
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuditLog"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Auditing Configuration for One Project
tags:
- Auditing
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api auditing getGroupAuditLog --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAuditLogApiParams{}
sdkResp, httpResp, err := client.AuditingApi.
GetGroupAuditLogWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/auditLog?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/auditLog?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Auditing/operation/getGroupAuditLog
patch:
description: Updates the auditing configuration for the specified project. The auditing configuration defines the events that MongoDB Cloud records in the audit log. This feature isn't available for `M0`, `M2`, `M5`, or serverless clusters.
operationId: updateAuditLog
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuditLog"
description: Updated auditing configuration for the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AuditLog"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Auditing Configuration for One Project
tags:
- Auditing
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api auditing updateAuditLog --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupAuditLogApiParams{}
sdkResp, httpResp, err := client.AuditingApi.
UpdateGroupAuditLogWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/auditLog" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/auditLog" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Auditing/operation/updateGroupAuditLog
/api/atlas/v2/groups/{groupId}/awsCustomDNS:
get:
description: Returns the custom DNS configuration for AWS clusters in the specified project.
operationId: getAwsCustomDns
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AWSCustomDNSEnabled"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Custom DNS Configuration for Atlas Clusters on AWS
tags:
- AWS Clusters DNS
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api awsClustersDns getAwsCustomDns --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupAwsCustomDnsApiParams{}
sdkResp, httpResp, err := client.AWSClustersDNSApi.
GetGroupAwsCustomDnsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/awsCustomDNS?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/awsCustomDNS?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AWS-Clusters-DNS/operation/getGroupAwsCustomDns
patch:
description: Enables or disables the custom DNS configuration for AWS clusters in the specified project. Enable custom DNS if you use AWS VPC peering and use your own DNS servers.
operationId: toggleAwsCustomDns
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AWSCustomDNSEnabled"
description: Enables or disables the custom DNS configuration for AWS clusters in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/AWSCustomDNSEnabled"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update State of One Custom DNS Configuration for Atlas Clusters on AWS
tags:
- AWS Clusters DNS
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api awsClustersDns toggleAwsCustomDns --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ToggleGroupAwsCustomDnsApiParams{}
sdkResp, httpResp, err := client.AWSClustersDNSApi.
ToggleGroupAwsCustomDnsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/awsCustomDNS" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/awsCustomDNS" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/AWS-Clusters-DNS/operation/toggleGroupAwsCustomDns
x-xgen-method-verb-override:
customMethod: "True"
verb: toggle
/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints:
get:
description: Returns the private endpoints of the specified cloud provider for object storage backup operations.
operationId: listBackupPrivateEndpoints
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cloud provider for the private endpoints to return.
in: path
name: cloudProvider
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasObjectStoragePrivateEndpointResponse"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Object Storage Private Endpoints for Cloud Backups for One Cloud Provider in One Project
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupPrivateEndpoints --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupBackupPrivateEndpointsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupBackupPrivateEndpointsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupBackupPrivateEndpoints
post:
description: Creates a private endpoint in the specified region for secure, private connectivity between Atlas and cloud provider object storage services for backup operations.
operationId: createBackupPrivateEndpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider for the private endpoint to create.
in: path
name: cloudProvider
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/ObjectStoragePrivateEndpointRequest"
description: Creates a private endpoint in the specified region for object storage backup operations.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/ObjectStoragePrivateEndpointResponse"
x-xgen-version: 2024-11-13
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Object Storage Private Endpoint for Cloud Backups for One Cloud Provider in One Project
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups createBackupPrivateEndpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupBackupPrivateEndpointApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupBackupPrivateEndpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/createGroupBackupPrivateEndpoint
/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints/{endpointId}:
delete:
description: Deletes one private endpoint, identified by its ID, for object storage backup operations.
operationId: deleteBackupPrivateEndpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider of the private endpoint to delete.
in: path
name: cloudProvider
required: true
schema:
type: string
- description: Unique 24-hexadecimal digit string that identifies the private endpoint to delete.
in: path
name: endpointId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-11-13+json:
x-xgen-version: 2024-11-13
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Object Storage Private Endpoint for Cloud Backups for One Cloud Provider from One Project
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups deleteBackupPrivateEndpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupBackupPrivateEndpointApiParams{}
httpResp, err := client.CloudBackupsApi.
DeleteGroupBackupPrivateEndpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints/{endpointId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints/{endpointId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/deleteGroupBackupPrivateEndpoint
get:
description: Returns one private endpoint, identified by its ID, for object storage backup operations.
operationId: getBackupPrivateEndpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider of the private endpoint.
in: path
name: cloudProvider
required: true
schema:
type: string
- description: Unique 24-hexadecimal digit string that identifies the private endpoint.
in: path
name: endpointId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/ObjectStoragePrivateEndpointResponse"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Object Storage Private Endpoint for Cloud Backups for One Cloud Provider in One Project
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupPrivateEndpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupBackupPrivateEndpointApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupBackupPrivateEndpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints/{endpointId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/{cloudProvider}/privateEndpoints/{endpointId}?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupBackupPrivateEndpoint
/api/atlas/v2/groups/{groupId}/backup/exportBuckets:
get:
description: "Returns all Export Buckets associated with the specified Project. Deprecated versions: v2-{2023-01-01}"
operationId: listExportBuckets
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/PaginatedBackupSnapshotExportBuckets"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Snapshot Export Buckets
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listExportBuckets --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupBackupExportBucketsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupBackupExportBucketsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupBackupExportBuckets
post:
description: "Creates a Snapshot Export Bucket for an AWS S3 Bucket, Azure Blob Storage Container, or Google Cloud Storage Bucket. Once created, an snapshots can be exported to the Export Bucket and its referenced AWS S3 Bucket, Azure Blob Storage Container, or Google Cloud Storage Bucket. Deprecated versions: v2-{2023-01-01}"
operationId: createExportBucket
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
examples:
AWS:
description: AWS
value:
bucketName: export-bucket
cloudProvider: AWS
iamRoleId: 668c5f0ed436263134491592
requirePrivateNetworking: false
Azure:
description: Azure
value:
bucketName: examplecontainer
cloudProvider: AZURE
roleId: 668c5f0ed436263134491592
serviceUrl: https://examplestorageaccount.blob.core.windows.net/examplecontainer
GCP:
description: GCP
value:
bucketName: export-bucket
cloudProvider: GCP
roleId: 668c5f0ed436263134491592
schema:
$ref: "#/components/schemas/DiskBackupSnapshotExportBucketRequest"
x-xgen-version: 2024-05-30
description: Specifies the role and AWS S3 Bucket, Azure Blob Storage Container, or Google Cloud Storage Bucket that the Export Bucket should reference.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
examples:
AWS:
description: AWS
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: export-bucket
cloudProvider: AWS
iamRoleId: 668c5f0ed436263134491592
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
region: us-east-1
requirePrivateNetworking: true
Azure:
description: Azure
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: examplecontainer
cloudProvider: AZURE
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
roleId: 668c5f0ed436263134491592
serviceUrl: https://examplestorageaccount.blob.core.windows.net/examplecontainer
tenantId: 4297fc77-1592-4de8-a6d5-a8c32401df87
GCP:
description: GCP
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: export-bucket
cloudProvider: GCP
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
roleId: 668c5f0ed436263134491592
schema:
$ref: "#/components/schemas/DiskBackupSnapshotExportBucketResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Snapshot Export Bucket
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups createExportBucket --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupBackupExportBucketApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupBackupExportBucketWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets" \
-d '{ }'
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/createGroupBackupExportBucket
/api/atlas/v2/groups/{groupId}/backup/exportBuckets/{exportBucketId}:
delete:
description: Deletes an Export Bucket. Auto export must be disabled on all clusters in this Project exporting to this Export Bucket before revoking access.
operationId: deleteExportBucket
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal character string that identifies the Export Bucket.
in: path
name: exportBucketId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Snapshot Export Bucket
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups deleteExportBucket --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupBackupExportBucketApiParams{}
httpResp, err := client.CloudBackupsApi.
DeleteGroupBackupExportBucketWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets/{exportBucketId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets/{exportBucketId}"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/deleteGroupBackupExportBucket
get:
description: "Returns one Export Bucket associated with the specified Project. Deprecated versions: v2-{2023-01-01}"
operationId: getExportBucket
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal character string that identifies the Export Bucket.
in: path
name: exportBucketId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
examples:
AWS:
description: AWS
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: export-bucket
cloudProvider: AWS
iamRoleId: 668c5f0ed436263134491592
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
region: us-east-1
requirePrivateNetworking: true
Azure:
description: Azure
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: examplecontainer
cloudProvider: AZURE
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
roleId: 668c5f0ed436263134491592
serviceUrl: https://examplestorageaccount.blob.core.windows.net/examplecontainer
tenantId: 4297fc77-1592-4de8-a6d5-a8c32401df87
GCP:
description: GCP
value:
_id: 32b6e34b3d91647abb20e7b8
bucketName: export-bucket
cloudProvider: GCP
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
roleId: 668c5f0ed436263134491592
schema:
$ref: "#/components/schemas/DiskBackupSnapshotExportBucketResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Snapshot Export Bucket
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getExportBucket --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupBackupExportBucketApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupBackupExportBucketWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets/{exportBucketId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backup/exportBuckets/{exportBucketId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupBackupExportBucket
patch:
description: Updates the private networking settings for one snapshot export bucket in the specified project.
operationId: updateBackupExportBucket
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal character string that identifies the snapshot export bucket.
in: path
name: exportBucketId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/UpdateRequirePrivateNetworkingRequest"
x-xgen-version: 2024-05-30
description: Updates the private networking requirement for the snapshot export bucket.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotAWSExportBucketResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Export Bucket Private Networking Settings
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups updateBackupExportBucket --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupBackupExportBucketApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
UpdateGroupBackupExportBucketWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/backup/exportBuckets/{exportBucketId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/backup/exportBuckets/{exportBucketId}" \
-d '{ }'
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/updateGroupBackupExportBucket
/api/atlas/v2/groups/{groupId}/backupCompliancePolicy:
delete:
description: Disables the Backup Compliance Policy settings with the specified project. As a prerequisite, a support ticket needs to be file first, instructions in https://www.mongodb.com/docs/atlas/backup/cloud-backup/backup-compliance-policy/.
operationId: disableCompliancePolicy
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"204":
content:
application/vnd.atlas.2024-11-13+json:
x-xgen-version: 2024-11-13
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Disable Backup Compliance Policy Settings
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups disableCompliancePolicy --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DisableGroupBackupCompliancePolicyApiParams{}
httpResp, err := client.CloudBackupsApi.
DisableGroupBackupCompliancePolicyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/disableGroupBackupCompliancePolicy
x-xgen-method-verb-override:
customMethod: "True"
verb: disable
get:
description: "Returns the Backup Compliance Policy settings with the specified project. Deprecated versions: v2-{2023-01-01}"
operationId: getCompliancePolicy
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-10-01+json:
schema:
$ref: "#/components/schemas/DataProtectionSettings20231001"
x-xgen-version: 2023-10-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Backup Compliance Policy Settings
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getCompliancePolicy --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupBackupCompliancePolicyApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupBackupCompliancePolicyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupBackupCompliancePolicy
put:
description: "Updates the Backup Compliance Policy settings for the specified project. Deprecated versions: v2-{2023-01-01}"
operationId: updateCompliancePolicy
parameters:
- $ref: "#/components/parameters/groupId"
- description: Flag that indicates whether to overwrite non complying backup policies with the new data protection settings or not.
in: query
name: overwriteBackupPolicies
schema:
default: true
type: boolean
requestBody:
content:
application/vnd.atlas.2023-10-01+json:
schema:
$ref: "#/components/schemas/DataProtectionSettings20231001"
x-xgen-version: 2023-10-01
description: The new Backup Compliance Policy settings.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-10-01+json:
schema:
$ref: "#/components/schemas/DataProtectionSettings20231001"
x-xgen-version: 2023-10-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Backup Compliance Policy Settings
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups updateCompliancePolicy --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupBackupCompliancePolicyApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
UpdateGroupBackupCompliancePolicyWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/backupCompliancePolicy" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/updateGroupBackupCompliancePolicy
/api/atlas/v2/groups/{groupId}/cloudProviderAccess:
get:
description: Returns all cloud provider access roles with access to the specified project.
operationId: listCloudProviderAccess
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderAccessRoles"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Cloud Provider Access Roles
tags:
- Cloud Provider Access
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudProviderAccess listCloudProviderAccess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupCloudProviderAccessApiParams{}
sdkResp, httpResp, err := client.CloudProviderAccessApi.
ListGroupCloudProviderAccessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Provider-Access/operation/listGroupCloudProviderAccess
post:
description: Creates one access role for the specified cloud provider. Some MongoDB Cloud features use these cloud provider access roles for authentication. For the GCP provider, if the project folder is not yet provisioned, Atlas will now create the role asynchronously. An intermediate role with status `IN_PROGRESS` will be returned, and the final service account will be provisioned. Once the GCP project is set up, subsequent requests will create the service account synchronously.
externalDocs:
description: Set Up Access to Cloud Providers
url: https://www.mongodb.com/docs/atlas/security/cloud-provider-access/
operationId: createCloudProviderAccess
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderAccessRoleRequest"
description: Creates one role for the specified cloud provider.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
examples:
AWS:
description: AWS
value:
atlasAWSAccountArn: arn:aws:iam::772401394250:role/my-test-aws-role
atlasAssumedRoleExternalId: feb2dfc7-f760-4288-a403-01c7c2345005
authorizedDate: 2024-05-30T14:12:00Z
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
iamAssumedRoleArn: arn:aws:iam::123456789012:root
providerName: AWS
roleId: 32b6e34b3d91647abb20e7b8
Azure:
description: Azure
value:
_id: 32b6e34b3d91647abb20e7b8
atlasAzureAppId: da5dd062-f3ca-4cb5-b86a-05f82203ab67
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
lastUpdatedDate: 2024-05-30T14:12:00Z
providerName: AZURE
servicePrincipalId: ec8e7844-912d-4869-86e9-6d0dfca4b8af
tenantId: 4297fc77-1592-4de8-a6d5-a8c32401df87
GCP:
description: GCP
value:
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
gcpServiceAccountForAtlas: mongodb-atlas-1234567890123456@p-111111111111111111111111.iam.gserviceaccount.com
providerName: GCP
roleId: 32b6e34b3d91647abb20e7b8
status: COMPLETE
schema:
$ref: "#/components/schemas/CloudProviderAccessRole"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Cloud Provider Access Role
tags:
- Cloud Provider Access
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudProviderAccess createCloudProviderAccess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupCloudProviderAccessApiParams{}
sdkResp, httpResp, err := client.CloudProviderAccessApi.
CreateGroupCloudProviderAccessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Provider-Access/operation/createGroupCloudProviderAccess
/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{cloudProvider}/{roleId}:
delete:
description: Revokes access to the specified project for the specified access role.
operationId: deauthorizeProviderAccessRole
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider of the role to deauthorize.
in: path
name: cloudProvider
required: true
schema:
type: string
- description: Unique 24-hexadecimal digit string that identifies the role. Amazon Web Services (AWS) IAM roles and Google Service Accounts return this value as `roleId`. Azure Service Principals return it as `_id`.
in: path
name: roleId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Deauthorize One Cloud Provider Access Role
tags:
- Cloud Provider Access
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudProviderAccess deauthorizeProviderAccessRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeauthorizeGroupCloudProviderAccessRoleApiParams{}
httpResp, err := client.CloudProviderAccessApi.
DeauthorizeGroupCloudProviderAccessRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{cloudProvider}/{roleId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{cloudProvider}/{roleId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Provider-Access/operation/deauthorizeGroupCloudProviderAccessRole
x-xgen-method-verb-override:
customMethod: "True"
verb: deauthorizeRole
/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{roleId}:
get:
description: Returns the access role with the specified id and with access to the specified project.
operationId: getCloudProviderAccess
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the role. Amazon Web Services (AWS) IAM roles and Google Service Accounts return this value as `roleId`. Azure Service Principals return it as `_id`.
in: path
name: roleId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
examples:
AWS:
description: AWS
value:
atlasAWSAccountArn: arn:aws:iam::772401394250:role/my-test-aws-role
atlasAssumedRoleExternalId: feb2dfc7-f760-4288-a403-01c7c2345005
authorizedDate: 2024-05-30T14:12:00Z
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
iamAssumedRoleArn: arn:aws:iam::123456789012:root
providerName: AWS
roleId: 32b6e34b3d91647abb20e7b8
Azure:
description: Azure
value:
_id: 32b6e34b3d91647abb20e7b8
atlasAzureAppId: da5dd062-f3ca-4cb5-b86a-05f82203ab67
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
lastUpdatedDate: 2024-05-30T14:12:00Z
providerName: AZURE
servicePrincipalId: ec8e7844-912d-4869-86e9-6d0dfca4b8af
tenantId: 4297fc77-1592-4de8-a6d5-a8c32401df87
GCP:
description: GCP
value:
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
gcpServiceAccountForAtlas: mongodb-atlas-1234567890123456@p-111111111111111111111111.iam.gserviceaccount.com
providerName: GCP
roleId: 32b6e34b3d91647abb20e7b8
status: COMPLETE
schema:
$ref: "#/components/schemas/CloudProviderAccessRole"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Cloud Provider Access Role
tags:
- Cloud Provider Access
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudProviderAccess getCloudProviderAccess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupCloudProviderAccessApiParams{}
sdkResp, httpResp, err := client.CloudProviderAccessApi.
GetGroupCloudProviderAccessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{roleId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/cloudProviderAccess/{roleId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Provider-Access/operation/getGroupCloudProviderAccess
patch:
description: Grants access to the specified project for the specified access role. This API endpoint is one step in a procedure to create unified access for MongoDB Cloud services. This is not required for GCP service account access.
externalDocs:
description: Set Up Access to Cloud Providers
url: https://www.mongodb.com/docs/atlas/security/cloud-provider-access/
operationId: authorizeProviderAccessRole
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the role. Amazon Web Services (AWS) IAM roles and Google Service Accounts return this value as `roleId`. Azure Service Principals return it as `_id`.
in: path
name: roleId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderAccessRoleRequestUpdate"
description: Grants access to the specified project for the specified access role.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
examples:
AWS:
description: AWS
value:
atlasAWSAccountArn: arn:aws:iam::772401394250:role/my-test-aws-role
atlasAssumedRoleExternalId: feb2dfc7-f760-4288-a403-01c7c2345005
authorizedDate: 2024-05-30T14:12:00Z
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
iamAssumedRoleArn: arn:aws:iam::123456789012:root
providerName: AWS
roleId: 32b6e34b3d91647abb20e7b8
Azure:
description: Azure
value:
_id: 32b6e34b3d91647abb20e7b8
atlasAzureAppId: da5dd062-f3ca-4cb5-b86a-05f82203ab67
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
lastUpdatedDate: 2024-05-30T14:12:00Z
providerName: AZURE
servicePrincipalId: ec8e7844-912d-4869-86e9-6d0dfca4b8af
tenantId: 4297fc77-1592-4de8-a6d5-a8c32401df87
GCP:
description: GCP
value:
createdDate: 2024-05-30T14:11:00Z
featureUsages: []
gcpServiceAccountForAtlas: mongodb-atlas-1234567890123456@p-111111111111111111111111.iam.gserviceaccount.com
providerName: GCP
roleId: 32b6e34b3d91647abb20e7b8
status: COMPLETE
schema:
$ref: "#/components/schemas/CloudProviderAccessRole"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Authorize One Cloud Provider Access Role
tags:
- Cloud Provider Access
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudProviderAccess authorizeProviderAccessRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.AuthorizeGroupCloudProviderAccessRoleApiParams{}
sdkResp, httpResp, err := client.CloudProviderAccessApi.
AuthorizeGroupCloudProviderAccessRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/cloudProviderAccess/{roleId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/cloudProviderAccess/{roleId}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Provider-Access/operation/authorizeGroupCloudProviderAccessRole
x-xgen-method-verb-override:
customMethod: "True"
verb: authorizeRole
/api/atlas/v2/groups/{groupId}/clusters:
get:
description: |-
Returns the details for all clusters in the specific project to which you have access. Clusters contain a group of hosts that maintain the same data set. The response includes clusters with asymmetrically-sized shards. This feature is not available for serverless clusters.
This endpoint can also be used on Flex clusters that were created using the [Create Cluster](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/createCluster) endpoint or former M2/M5 clusters that have been migrated to Flex clusters until January 2026. Please use the List Flex Clusters endpoint for Flex clusters instead. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}
externalDocs:
description: List Flex Clusters
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/listFlexClusters
operationId: listClusters
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Flag that indicates whether to return Clusters with retain backups.
in: query
name: includeDeletedWithRetainedBackups
schema:
default: false
type: boolean
- description: Controls how hardware specification fields are returned in the response. When set to true, returns the original client-specified values and provides separate effective fields showing current operational values. When false (default), hardware specification fields show current operational values directly. Primarily used for autoscaling compatibility.
in: header
name: Use-Effective-Instance-Fields
schema:
default: false
type: boolean
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/PaginatedClusterDescription20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Clusters in One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters listClusters --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClustersApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
ListGroupClustersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/listGroupClusters
post:
description: |-
Creates one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. This resource can create clusters with asymmetrically-sized shards. Each project supports up to 25 database deployments. This feature is not available for serverless clusters.
Please note that using an `instanceSize` of M2 or M5 will create a Flex cluster instead. Support for the `instanceSize` of M2 or M5 will be discontinued in January 2026. We recommend using the Create Flex Cluster API for such configurations moving forward. Deprecated versions: v2-{2024-08-05}, v2-{2023-02-01}, v2-{2023-01-01}
externalDocs:
description: Create Flex Cluster
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/createFlexCluster
operationId: createCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Controls how hardware specification fields are returned in the response after cluster creation. When set to true, returns the original client-specified values and provides separate effective fields showing current operational values. When false (default), hardware specification fields show current operational values directly. Primarily used for autoscaling compatibility.
in: header
name: Use-Effective-Instance-Fields
schema:
default: false
type: boolean
- description: Controls how `replicationSpecs` fields are returned in the response. When set to `true`, stores the client's view of `replicationSpecs` and returns it in `replicationSpecs`, while the actual cluster state (including auto-scaled hardware and auto-added shards) is returned in `effectiveReplicationSpecs`. When `false` (default), `replicationSpecs` contains the actual cluster state.
in: header
name: Use-Effective-Fields-Replication-Specs
schema:
default: false
type: boolean
requestBody:
content:
application/vnd.atlas.2024-10-23+json:
examples:
Cluster:
description: Cluster
value:
clusterType: SHARDED
name: myCluster
replicationSpecs:
- regionConfigs:
- analyticsAutoScaling:
autoIndexing:
enabled: false
compute:
enabled: true
maxInstanceSize: M40
minInstanceSize: M30
scaleDownEnabled: true
diskGB:
enabled: true
analyticsSpecs:
diskSizeGB: 10
instanceSize: M40
nodeCount: 0
autoScaling:
autoIndexing:
enabled: false
compute:
enabled: true
maxInstanceSize: M60
minInstanceSize: M30
scaleDownEnabled: true
diskGB:
enabled: true
electableSpecs:
diskSizeGB: 10
instanceSize: M60
nodeCount: 3
priority: 7
providerName: AWS
readOnlySpecs:
diskSizeGB: 10
instanceSize: M60
nodeCount: 0
regionName: US_EAST_1
zoneName: Zone 1
- regionConfigs:
- analyticsAutoScaling:
autoIndexing:
enabled: false
compute:
enabled: true
maxInstanceSize: M40
minInstanceSize: M30
scaleDownEnabled: true
diskGB:
enabled: true
analyticsSpecs:
diskSizeGB: 10
instanceSize: M30
nodeCount: 0
autoScaling:
autoIndexing:
enabled: false
compute:
enabled: true
maxInstanceSize: M60
minInstanceSize: M30
scaleDownEnabled: true
diskGB:
enabled: true
electableSpecs:
diskSizeGB: 10
instanceSize: M40
nodeCount: 3
priority: 7
providerName: AWS
readOnlySpecs:
diskSizeGB: 10
instanceSize: M40
nodeCount: 0
regionName: US_EAST_1
zoneName: Zone 1
schema:
$ref: "#/components/schemas/ClusterDescription20240805"
x-xgen-version: 2024-10-23
description: Cluster to create in this project.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-10-23+json:
schema:
$ref: "#/components/schemas/ClusterDescription20240805"
x-xgen-version: 2024-10-23
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Cluster in One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters createCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
CreateGroupClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Creator
x-xgen-changelog:
2025-06-05: Fixed a bug that previously permitted users to configure multiple regionConfigs for the same region and cloud provider within a replicationSpec
2026-05-07: Updated NO_PAYMENT_INFORMATION_FOUND error message to include a link for users to add a payment method when no payment info is found.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/createGroupCluster
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:
delete:
description: |-
Removes one cluster from the specified project. The cluster must have termination protection disabled in order to be deleted. This feature is not available for serverless clusters.
This endpoint can also be used on Flex clusters that were created using the [Create Cluster](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/createCluster) endpoint or former M2/M5 clusters that have been migrated to Flex clusters until January 2026. Please use the Delete Flex Cluster endpoint for Flex clusters instead. Deprecated versions: v2-{2023-01-01}
externalDocs:
description: Delete Flex Cluster
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/deleteFlexCluster
operationId: deleteCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Flag that indicates whether to retain backup snapshots for the deleted dedicated cluster.
in: query
name: retainBackups
schema:
type: boolean
responses:
"202":
content:
application/vnd.atlas.2023-02-01+json:
x-xgen-version: 2023-02-01
description: Accepted
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Cluster from One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters deleteCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterApiParams{}
httpResp, err := client.ClustersApi.
DeleteGroupClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/deleteGroupCluster
x-xgen-long-running-operation:
legacy: true
get:
description: |-
Returns the details for one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. The response includes clusters with asymmetrically-sized shards. This feature is not available for serverless clusters.
This endpoint can also be used on Flex clusters that were created using the [Create Cluster](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/createCluster) endpoint or former M2/M5 clusters that have been migrated to Flex clusters until January 2026. Please use the Get Flex Cluster endpoint for Flex clusters instead. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}
externalDocs:
description: Get Flex Cluster
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/getFlexCluster
operationId: getCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Controls how hardware specification fields are returned in the response. When set to true, returns the original client-specified values and provides separate effective fields showing current operational values. When false (default), hardware specification fields show current operational values directly. Primarily used for autoscaling compatibility.
in: header
name: Use-Effective-Instance-Fields
schema:
default: false
type: boolean
- description: Controls how `replicationSpecs` are returned in the response. When set to `true`, returns the client-specified view in `replicationSpecs` and the actual cluster state in `effectiveReplicationSpecs`. When `false` (default), `replicationSpecs` contains the actual cluster state.
in: header
name: Use-Effective-Fields-Replication-Specs
schema:
default: false
type: boolean
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ClusterDescription20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Cluster from One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters getCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
GetGroupClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getGroupCluster
patch:
description: "Updates the details for one cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. This resource can update clusters with asymmetrically-sized shards. To update a cluster's termination protection, the requesting Service Account or API Key must have the Project Owner role. For all other updates, the requesting Service Account or API Key must have the Project Cluster Manager role, the Project Cluster Resilience Tester role, or the Project Replica Set Manager role. You can't modify a paused cluster (`paused : true`). You must call this endpoint to set `paused : false`. After this endpoint responds with `paused : false`, you can call it again with the changes you want to make to the cluster. This feature is not available for serverless clusters. Deprecated versions: v2-{2024-08-05}, v2-{2023-02-01}, v2-{2023-01-01}"
operationId: updateCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: "Controls how hardware specification fields are returned in the response after cluster updates. When set to true, returns the original client-specified values and provides separate effective fields showing current operational values. When false (default), hardware specification fields show current operational values directly. Note: When using this header with autoscaling enabled, MongoDB ignores `replicationSpecs` changes during updates. To intentionally override the `replicationSpecs`, disable this header."
in: header
name: Use-Effective-Instance-Fields
schema:
default: false
type: boolean
- description: Controls how `replicationSpecs` fields are returned in the response. When set to `true`, stores the client's view of `replicationSpecs` and returns it in `replicationSpecs`, while the actual cluster state (including auto-scaled hardware and auto-added shards) is returned in `effectiveReplicationSpecs`. When `false` (default), `replicationSpecs` contains the actual cluster state.
in: header
name: Use-Effective-Fields-Replication-Specs
schema:
default: false
type: boolean
requestBody:
content:
application/vnd.atlas.2024-10-23+json:
schema:
$ref: "#/components/schemas/ClusterDescription20240805"
x-xgen-version: 2024-10-23
description: Cluster to update in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-10-23+json:
schema:
$ref: "#/components/schemas/ClusterDescription20240805"
x-xgen-version: 2024-10-23
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Cluster in One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters updateCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpdateGroupClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
- Project Cluster Resilience Tester
- Project Replica Set Manager
x-xgen-changelog:
2025-06-05: Fixed a bug that previously permitted users to configure multiple regionConfigs for the same region and cloud provider within a replicationSpec
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/updateGroupCluster
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/{databaseName}/{collectionName}/collStats/measurements:
get:
description: Get a list of the Coll Stats Latency cluster-level measurements for the given namespace.
operationId: listCollStatMeasurements
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to retrieve metrics for.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that identifies the cluster topology to retrieve metrics for.
in: path
name: clusterView
required: true
schema:
type: string
- $ref: "#/components/parameters/databaseName"
- $ref: "#/components/parameters/collectionName"
- description: List that contains the metrics that you want to retrieve for the associated data series. If you don't set this parameter, this resource returns data series for all Coll Stats Latency metrics.
explode: true
in: query
name: metrics
schema:
items:
description: Metric requested for the given cluster
type: string
type: array
uniqueItems: true
style: form
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- $ref: "#/components/parameters/period"
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/MeasurementsCollStatsLatencyCluster"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Cluster-Level Query Latency
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics listCollStatMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterCollStatMeasurementsApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
ListGroupClusterCollStatMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/{databaseName}/{collectionName}/collStats/measurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/{databaseName}/{collectionName}/collStats/measurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/listGroupClusterCollStatMeasurements
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/collStats/namespaces:
get:
description: Return the subset of namespaces from the given cluster sorted by highest total execution time (descending) within the given time window.
operationId: getClusterNamespaces
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to pin namespaces to.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that identifies the cluster topology to retrieve metrics for.
in: path
name: clusterView
required: true
schema:
type: string
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- $ref: "#/components/parameters/period"
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/CollStatsRankedNamespaces"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Ranked Namespaces from One Cluster
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics getClusterNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterCollStatNamespacesApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
GetGroupClusterCollStatNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/collStats/namespaces?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/{clusterView}/collStats/namespaces?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/getGroupClusterCollStatNamespaces
x-xgen-method-verb-override:
customMethod: false
verb: get
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/adaptiveSettings:
get:
description: Returns the Adaptive Settings for the specified cluster, including client-provided overrides and the effective settings derived from those overrides and Atlas-managed defaults. To use this resource, the requesting Service Account or API Key must have the Project Read Only role.
operationId: getClusterAdaptiveSettings
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AdaptiveSettingsResponse"
x-xgen-version: 2025-03-12
description: OK.
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
summary: Return Adaptive Settings for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters getClusterAdaptiveSettings --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterAdaptiveSettingsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
GetGroupClusterAdaptiveSettingsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/adaptiveSettings?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/adaptiveSettings?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getGroupClusterAdaptiveSettings
patch:
description: Updates the client-provided Adaptive Settings overrides for the specified cluster and returns the resulting Adaptive Settings, including the effective settings derived from those overrides and Atlas-managed defaults. To use this resource, the requesting Service Account or API Key must have the Project Owner role.
operationId: updateClusterAdaptiveSettings
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AdaptiveSettingsUpdateRequest"
description: "Adaptive Settings overrides to apply to the specified cluster. The supplied `adaptiveSettingsOverrides` map fully replaces the existing overrides: any override omitted from the map returns to its Atlas-managed default. Omitting the `adaptiveSettingsOverrides` field entirely preserves the existing overrides, an empty map clears all overrides, and `null` resets the field and omits it from responses until it is set again."
required: true
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/AdaptiveSettingsResponse"
x-xgen-version: 2025-03-12
description: OK.
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
summary: Update Adaptive Settings for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters updateClusterAdaptiveSettings --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterAdaptiveSettingsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpdateGroupClusterAdaptiveSettingsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/adaptiveSettings" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/adaptiveSettings" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/updateGroupClusterAdaptiveSettings
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/autoScalingConfiguration:
get:
deprecated: true
description: Returns the internal configuration of AutoScaling for sharded clusters. This endpoint can be used for diagnostic purposes to ensure that sharded clusters updated from older APIs have gained support for AutoScaling each shard independently.
operationId: autoScalingConfiguration
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ClusterDescriptionAutoScalingModeConfiguration"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Auto Scaling Configuration for One Sharded Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters autoScalingConfiguration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.AutoGroupClusterScalingConfigurationApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
AutoGroupClusterScalingConfigurationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/autoScalingConfiguration?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/autoScalingConfiguration?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/autoGroupClusterScalingConfiguration
x-xgen-method-verb-override:
customMethod: "True"
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports:
get:
description: Returns all Cloud Backup Snapshot Export Jobs associated with the specified Atlas cluster.
operationId: listBackupExports
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasDiskBackupExportJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Snapshot Export Jobs
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupExports --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupExportsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupExportsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupExports
post:
description: Exports one backup Snapshot for dedicated Atlas cluster using Cloud Backups to an Export Bucket.
operationId: createBackupExport
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupExportJobRequest"
description: Information about the Cloud Backup Snapshot Export Job to create.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupExportJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Snapshot Export Job
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups createBackupExport --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterBackupExportApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupClusterBackupExportWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports" \
-d '{ }'
x-rolesRequirements:
- Project Backup Export Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/createGroupClusterBackupExport
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports/{exportId}:
get:
description: Returns one Cloud Backup Snapshot Export Job associated with the specified Atlas cluster.
operationId: getBackupExport
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal character string that identifies the Export Job.
in: path
name: exportId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupExportJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Snapshot Export Job
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupExport --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupExportApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupExportWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports/{exportId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/exports/{exportId}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupExport
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs:
get:
description: Returns all cloud backup restore jobs for one cluster from the specified project.
operationId: listBackupRestoreJobs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster with the restore jobs you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedCloudBackupRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Restore Jobs for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupRestoreJobs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupRestoreJobsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupRestoreJobsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupRestoreJobs
post:
description: Restores one snapshot of one cluster from the specified project. Atlas takes on-demand snapshots immediately and scheduled snapshots at regular intervals. If an on-demand snapshot with a status of `queued` or `inProgress` exists, before taking another snapshot, wait until Atlas completes processing the previously taken on-demand snapshot.
operationId: createBackupRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotRestoreJob"
description: Restores one snapshot of one cluster from the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Restore Job of One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups createBackupRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterBackupRestoreJobApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs" \
-d '{ }'
x-rolesRequirements:
- Project Backup Export Operator
- Project Backup Recovery Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/createGroupClusterBackupRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs/{restoreJobId}:
delete:
description: Cancels one cloud backup restore job of one cluster from the specified project.
operationId: cancelBackupRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the restore job to remove.
in: path
name: restoreJobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"405":
$ref: "#/components/responses/methodNotAllowed"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Cancel One Restore Job for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups cancelBackupRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CancelGroupClusterBackupRestoreJobApiParams{}
httpResp, err := client.CloudBackupsApi.
CancelGroupClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs/{restoreJobId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs/{restoreJobId}"
x-rolesRequirements:
- Project Backup Export Operator
- Project Backup Recovery Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/cancelGroupClusterBackupRestoreJob
x-xgen-method-verb-override:
customMethod: "True"
verb: cancel
get:
description: Returns one cloud backup restore job for one cluster from the specified project.
operationId: getBackupRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the restore jobs you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the restore job to return.
in: path
name: restoreJobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Restore Job for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupRestoreJobApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs/{restoreJobId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/restoreJobs/{restoreJobId}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/schedule:
delete:
description: "Removes all cloud backup schedules for the specified cluster. This schedule defines when MongoDB Cloud takes scheduled snapshots and how long it stores those snapshots. Deprecated versions: v2-{2023-01-01}"
operationId: deleteClusterBackupSchedule
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotSchedule20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove All Cloud Backup Schedules
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups deleteClusterBackupSchedule --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterBackupScheduleApiParams{}
httpResp, err := client.CloudBackupsApi.
DeleteGroupClusterBackupScheduleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/schedule"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/schedule"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/deleteGroupClusterBackupSchedule
get:
description: "Returns the cloud backup schedule for the specified cluster within the specified project. This schedule defines when MongoDB Cloud takes scheduled snapshots and how long it stores those snapshots. Deprecated versions: v2-{2023-01-01}"
operationId: getBackupSchedule
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotSchedule20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Cloud Backup Schedule
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupSchedule --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupScheduleApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupScheduleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/schedule?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/schedule?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupSchedule
x-xgen-method-verb-override:
customMethod: "False"
verb: get
patch:
description: "Updates the cloud backup schedule for one cluster within the specified project. This schedule defines when MongoDB Cloud takes scheduled snapshots and how long it stores those snapshots. Deprecated versions: v2-{2023-01-01}"
operationId: updateBackupSchedule
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotSchedule20240805"
description: |-
Updates the cloud backup schedule for one cluster within the specified project.
**Note**: In the request body, provide only the fields that you want to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshotSchedule20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Cloud Backup Schedule for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups updateBackupSchedule --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterBackupScheduleApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
UpdateGroupClusterBackupScheduleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/backup/schedule" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/backup/schedule" \
-d '{ }'
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/updateGroupClusterBackupSchedule
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots:
get:
description: Returns all snapshots of one cluster from the specified project.
operationId: listBackupSnapshots
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Desired point in time, expressed as the number of seconds that have elapsed since the UNIX epoch. If specified, returns the closest snapshot created before that point in time. Mutually exclusive with `oplogTs` and `oplogInc`.
in: query
name: pointInTimeUtcSeconds
schema:
format: int64
type: integer
- description: Oplog timestamp that represents the desired point in time. This is the first part of an Oplog timestamp. Must be used with `oplogInc`. Mutually exclusive with `pointInTimeUtcSeconds`.
in: query
name: oplogTs
schema:
format: int64
type: integer
- description: Oplog operation number that represents the desired point in time. This is the second part of an Oplog timestamp. Must be used with `oplogTs`. Mutually exclusive with `pointInTimeUtcSeconds`.
in: query
name: oplogInc
schema:
format: int64
type: integer
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedCloudBackupReplicaSet"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Replica Set Cloud Backups
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupSnapshots --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupSnapshotsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupSnapshotsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupSnapshots
post:
description: Takes one on-demand snapshot for the specified cluster. Atlas takes on-demand snapshots immediately and scheduled snapshots at regular intervals. If an on-demand snapshot with a status of `queued` or `inProgress` exists, before taking another snapshot, wait until Atlas completes processing the previously taken on-demand snapshot.
operationId: takeSnapshots
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupOnDemandSnapshotRequest"
description: Takes one on-demand snapshot.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Take One On-Demand Snapshot
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups takeSnapshots --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.TakeGroupClusterBackupSnapshotsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
TakeGroupClusterBackupSnapshotsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots" \
-d '{ }'
x-rolesRequirements:
- Project Backup Creator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/takeGroupClusterBackupSnapshots
x-xgen-method-verb-override:
customMethod: "True"
verb: take
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}:
delete:
description: Removes the specified snapshot.
operationId: deleteClusterBackupSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Replica Set Cloud Backup
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups deleteClusterBackupSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterBackupSnapshotApiParams{}
httpResp, err := client.CloudBackupsApi.
DeleteGroupClusterBackupSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/deleteGroupClusterBackupSnapshot
get:
description: Returns one snapshot from the specified cluster.
operationId: getClusterBackupSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupReplicaSet"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Replica Set Cloud Backup
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getClusterBackupSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupSnapshotApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupSnapshot
patch:
description: Changes the expiration date for one cloud backup snapshot for one cluster in the specified project, the requesting Service Account or API Key must have the Project Backup Manager role.
operationId: updateBackupSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupSnapshotRetention"
description: Changes the expiration date for one cloud backup snapshot for one cluster in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupReplicaSet"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Expiration Date for One Cloud Backup
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups updateBackupSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterBackupSnapshotApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
UpdateGroupClusterBackupSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/backup/snapshots/{snapshotId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/backup/snapshots/{snapshotId}" \
-d '{ }'
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/updateGroupClusterBackupSnapshot
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases:
get:
description: Returns the list of databases that exist in the specified snapshot. Use this to discover namespaces before creating a collection restore job.
operationId: listBackupSnapshotDatabases
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasDiskBackupDatabase"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Databases in One Snapshot
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupSnapshotDatabases --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupSnapshotDatabasesApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupSnapshotDatabasesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupSnapshotDatabases
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}:
get:
description: Returns one database that exists in the specified snapshot. Use this to confirm a known database exists before referencing it in a collection restore job.
operationId: getBackupSnapshotDatabase
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the database.
in: path
name: databaseName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/DiskBackupDatabaseResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Database in One Snapshot
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupSnapshotDatabase --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupSnapshotDatabaseApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupSnapshotDatabaseWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupSnapshotDatabase
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections:
get:
description: Returns the list of collections in the specified database that exist in the snapshot. Use this to discover namespaces before creating a collection restore job.
operationId: listSnapshotDatabaseCollections
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the database.
in: path
name: databaseName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasDiskBackupCollection"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Collections in One Database in One Snapshot
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listSnapshotDatabaseCollections --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupSnapshotDatabaseCollectionsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupSnapshotDatabaseCollectionsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupSnapshotDatabaseCollections
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections/{collectionName}:
get:
description: Returns one collection that exists in the specified database in the snapshot. Use this to confirm a known collection exists before referencing it in a collection restore job.
operationId: getSnapshotDatabaseCollection
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the database.
in: path
name: databaseName
required: true
schema:
type: string
- description: Human-readable label that identifies the collection.
in: path
name: collectionName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/DiskBackupCollectionResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Collection in One Database in One Snapshot
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getSnapshotDatabaseCollection --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupSnapshotDatabaseCollectionApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupSnapshotDatabaseCollectionWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections/{collectionName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/{snapshotId}/databases/{databaseName}/collections/{collectionName}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupSnapshotDatabaseCollection
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId}:
delete:
description: Removes one snapshot of one sharded cluster from the specified project.
operationId: deleteBackupShardedCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Sharded Cluster Cloud Backup
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups deleteBackupShardedCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterBackupSnapshotShardedClusterApiParams{}
httpResp, err := client.CloudBackupsApi.
DeleteGroupClusterBackupSnapshotShardedClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId}"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/deleteGroupClusterBackupSnapshotShardedCluster
get:
description: Returns one snapshot of one sharded cluster from the specified project.
operationId: getBackupShardedCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DiskBackupShardedClusterSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Sharded Cluster Cloud Backup
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getBackupShardedCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupSnapshotShardedClusterApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterBackupSnapshotShardedClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedCluster/{snapshotId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterBackupSnapshotShardedCluster
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedClusters:
get:
description: Returns all snapshots of one sharded cluster from the specified project.
operationId: listBackupShardedClusters
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedCloudBackupShardedClusterSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Sharded Cluster Cloud Backups
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listBackupShardedClusters --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupSnapshotShardedClustersApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterBackupSnapshotShardedClustersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedClusters?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backup/snapshots/shardedClusters?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterBackupSnapshotShardedClusters
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints:
get:
deprecated: true
description: Returns all legacy backup checkpoints for one cluster in the specified project.
operationId: listClusterBackupCheckpoints
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster that contains the checkpoints that you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasCheckpoint"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Legacy Backup Checkpoints
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup listClusterBackupCheckpoints --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterBackupCheckpointsApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
ListGroupClusterBackupCheckpointsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/listGroupClusterBackupCheckpoints
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints/{checkpointId}:
get:
deprecated: true
description: Returns one legacy backup checkpoint for one cluster in the specified project.
operationId: getClusterBackupCheckpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the checkpoint.
in: path
name: checkpointId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the cluster that contains the checkpoints that you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiAtlasCheckpoint"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Legacy Backup Checkpoint
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup getClusterBackupCheckpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterBackupCheckpointApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
GetGroupClusterBackupCheckpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints/{checkpointId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/backupCheckpoints/{checkpointId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/getGroupClusterBackupCheckpoint
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/pinned:
get:
description: Returns a list of given cluster's pinned namespaces, a set of namespaces manually selected by users to collect query latency metrics on.
operationId: listPinnedNamespaces
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to retrieve pinned namespaces for.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Pinned Namespaces
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics listPinnedNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterCollStatPinnedNamespacesApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
ListGroupClusterCollStatPinnedNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/pinned?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/pinned?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/listGroupClusterCollStatPinnedNamespaces
x-xgen-method-verb-override:
customMethod: true
verb: listNamespaces
patch:
description: Add provided list of namespaces to existing pinned namespaces list for collection-level latency metrics collection for the given Group and Cluster.
operationId: updatePinnedNamespaces
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to pin namespaces to.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/NamespacesRequest"
description: List of namespace strings (combination of database and collection name) to pin for query latency metric collection.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"201":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Add Pinned Namespaces
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics updatePinnedNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterCollStatPinnedNamespacesApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
UpdateGroupClusterCollStatPinnedNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/collStats/pinned" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/collStats/pinned" \
-d '{ }'
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/updateGroupClusterCollStatPinnedNamespaces
x-xgen-method-verb-override:
customMethod: "True"
verb: updateNamespaces
put:
description: Pin provided list of namespaces for collection-level latency metrics collection for the given Group and Cluster. This initializes a pinned namespaces list or replaces any existing pinned namespaces list for the Group and Cluster.
operationId: pinNamespaces
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to pin namespaces to.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/NamespacesRequest"
description: List of namespace strings (combination of database and collection name) to pin for query latency metric collection.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"201":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Pin Namespaces
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics pinNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.PinGroupClusterCollStatPinnedNamespacesApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
PinGroupClusterCollStatPinnedNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/pinned" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/pinned" \
-d '{ }'
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/pinGroupClusterCollStatPinnedNamespaces
x-xgen-method-verb-override:
customMethod: "True"
verb: pinNamespaces
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collStats/unpin:
patch:
description: Unpin provided list of namespaces for collection-level latency metrics collection for the given Group and Cluster.
operationId: unpinNamespaces
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to unpin namespaces from.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/NamespacesRequest"
description: List of namespace strings (combination of database and collection name) to pin for query latency metric collection.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/PinnedNamespaces"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Unpin Namespaces
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics unpinNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UnpinGroupClusterCollStatUnpinNamespacesApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
UnpinGroupClusterCollStatUnpinNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/collStats/unpin" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/collStats/unpin" \
-d '{ }'
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/unpinGroupClusterCollStatUnpinNamespaces
x-xgen-method-verb-override:
customMethod: "True"
verb: unpinNamespaces
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs:
get:
description: Returns all collection restore jobs for one cluster from the specified project.
operationId: listCollectionRestoreJobs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster with the collection restore jobs you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasCollectionRestoreJob"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Collection Restore Jobs for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listCollectionRestoreJobs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterCollectionRestoreJobsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterCollectionRestoreJobsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterCollectionRestoreJobs
post:
description: Creates one collection-level restore job for one cluster from the specified project. Collection-level restores allow restoring specific databases or collections from a snapshot or point-in-time.
operationId: createCollectionRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the source cluster for the restore.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreJobRequest"
x-xgen-version: 2025-03-12
description: Creates one collection-level restore job for one cluster from the specified project.
required: true
responses:
"201":
content:
application/vnd.atlas.2025-03-12+json:
examples:
Multiple collections:
description: Multiple collections
value:
collectionSuffix: ""
collections:
- sourceNamespace: sales.orders
targetNamespace: sales.orders
- sourceNamespace: sales.customers
targetNamespace: sales.customers
createdAt: 2026-07-07T12:00:00Z
databaseSuffix: ""
databases: []
id: 32b6e34b3d91647abb20e7b8
indexStatus:
failedCollectionCount: 0
state: IN_PROGRESS
indexStrategy: ALL
restoredDocuments: 15500
snapshotId: 6c5e8a2f9b1d4e3a7f0c1b2d
state: IN_PROGRESS
targetClusterName: targetCluster
targetGroupId: 5f3a1b2c4d5e6f7a8b9c0d1e
totalDocuments: 20000
writeStrategy: CREATE_NEW
schema:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreJobResponse"
x-xgen-version: 2025-03-12
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Collection Restore Job
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups createCollectionRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterCollectionRestoreJobApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
CreateGroupClusterCollectionRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs" \
-d '{ }'
x-rolesRequirements:
- Project Backup Recovery Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/createGroupClusterCollectionRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}:
get:
description: Returns one collection restore job for one cluster from the specified project.
operationId: getCollectionRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the collection restore jobs you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the collection restore job to return.
in: path
name: jobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
examples:
Multiple collections:
description: Multiple collections
value:
collectionSuffix: ""
collections:
- sourceNamespace: sales.orders
targetNamespace: sales.orders
- sourceNamespace: sales.customers
targetNamespace: sales.customers
createdAt: 2026-07-07T12:00:00Z
databaseSuffix: ""
databases: []
id: 32b6e34b3d91647abb20e7b8
indexStatus:
failedCollectionCount: 0
state: IN_PROGRESS
indexStrategy: ALL
restoredDocuments: 15500
snapshotId: 6c5e8a2f9b1d4e3a7f0c1b2d
state: IN_PROGRESS
targetClusterName: targetCluster
targetGroupId: 5f3a1b2c4d5e6f7a8b9c0d1e
totalDocuments: 20000
writeStrategy: CREATE_NEW
schema:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreJobResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Collection Restore Job for One Cluster
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getCollectionRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterCollectionRestoreJobApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterCollectionRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterCollectionRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections:
get:
description: "Returns all collection-level restore states for one collection restore job from the specified project. Note: If the restore job is in the INITIALIZING state, this endpoint returns an empty list because collection-level states have not yet been created."
operationId: listRestoreJobCollections
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster with the collection restore job you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the collection restore job.
in: path
name: jobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Collection-level state to filter by.
in: query
name: state
schema:
description: Current state of this collection within the restore job.
type: string
- description: Source namespace to filter by (e.g. `db.collection`).
in: query
name: sourceNamespace
schema:
type: string
- description: Target namespace to filter by (e.g. `db.collection`).
in: query
name: targetNamespace
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
examples:
Two collection states:
description: Two collection states
value:
links:
- href: https://cloud.mongodb.com/api/atlas
rel: self
results:
- effectiveTargetNamespace: sales.orders
indexStatus:
state: SUCCESSFUL
restoredDocuments: 12000
sourceNamespace: sales.orders
state: SUCCESSFUL
targetNamespace: sales.orders
totalDocuments: 12000
- effectiveTargetNamespace: sales.customers
indexStatus:
state: IN_PROGRESS
restoredDocuments: 3500
sourceNamespace: sales.customers
state: IN_PROGRESS
targetNamespace: sales.customers
totalDocuments: 8000
totalCount: 2
schema:
$ref: "#/components/schemas/PaginatedApiAtlasCollectionRestoreCollectionState"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Collection States for One Collection Restore Job
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups listRestoreJobCollections --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterCollectionRestoreJobCollectionsApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
ListGroupClusterCollectionRestoreJobCollectionsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/listGroupClusterCollectionRestoreJobCollections
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections/{sourceNamespace}:
get:
description: Returns one collection-level restore state for one collection restore job from the specified project.
operationId: getRestoreJobCollection
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the collection restore job you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the collection restore job.
in: path
name: jobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Source namespace that identifies the collection to return (e.g. `db.collection`).
in: path
name: sourceNamespace
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
examples:
Single collection state:
description: Single collection state
value:
effectiveTargetNamespace: sales.orders
indexStatus:
state: SUCCESSFUL
restoredDocuments: 12000
sourceNamespace: sales.orders
state: SUCCESSFUL
targetNamespace: sales.orders
totalDocuments: 12000
schema:
$ref: "#/components/schemas/ApiAtlasCollectionRestoreCollectionStateResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Collection State for One Collection Restore Job
tags:
- Cloud Backups
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudBackups getRestoreJobCollection --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterCollectionRestoreJobCollectionApiParams{}
sdkResp, httpResp, err := client.CloudBackupsApi.
GetGroupClusterCollectionRestoreJobCollectionWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections/{sourceNamespace}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/collectionRestoreJobs/{jobId}/collections/{sourceNamespace}?pretty=true"
x-rolesRequirements:
- Project Backup Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Backups/operation/getGroupClusterCollectionRestoreJobCollection
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes:
post:
deprecated: true
description: Creates one Atlas Search index on the specified collection. Atlas Search indexes define the fields on which to create the index and the analyzers to use when creating the index. Only clusters running MongoDB v4.2 or later can use Atlas Search.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: createClusterFtsIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection on which to create an Atlas Search index.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterSearchIndex"
description: Creates one Atlas Search index on the specified collection.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterSearchIndex"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Atlas Search Index
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch createClusterFtsIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterFtsIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
CreateGroupClusterFtsIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes" \
-d '{ }'
x-rolesRequirements:
- Project Search Index Editor
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/createGroupClusterFtsIndex
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{databaseName}/{collectionName}:
get:
deprecated: true
description: Returns all Atlas Search indexes on the specified collection. Atlas Search indexes contain the indexed fields and the analyzers used to create the indexes.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: listClusterFtsIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the collection that contains one or more Atlas Search indexes.
in: path
name: collectionName
required: true
schema:
type: string
- description: Human-readable label that identifies the database that contains the collection with one or more Atlas Search indexes.
in: path
name: databaseName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
description: List of Atlas Search indexes that MongoDB Cloud returns for this request.
items:
$ref: "#/components/schemas/ClusterSearchIndex"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Atlas Search Indexes for One Collection
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch listClusterFtsIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterFtsIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
ListGroupClusterFtsIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{databaseName}/{collectionName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{databaseName}/{collectionName}?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/listGroupClusterFtsIndex
x-xgen-method-verb-override:
customMethod: false
verb: list
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{indexId}:
delete:
deprecated: true
description: Removes one Atlas Search index that you identified with its unique ID.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: deleteClusterFtsIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the database and collection with one or more Application Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Atlas Search index. Use the [Get All Atlas Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Atlas Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Atlas Search Index
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch deleteClusterFtsIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterFtsIndexApiParams{}
httpResp, err := client.AtlasSearchApi.
DeleteGroupClusterFtsIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{indexId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{indexId}"
x-rolesRequirements:
- Project Search Index Editor
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/deleteGroupClusterFtsIndex
get:
deprecated: true
description: Returns one Atlas Search index in the specified project. You identify this index using its unique ID. Atlas Search index contains the indexed fields and the analyzers used to create the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: getClusterFtsIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Application Search [index](https://dochub.mongodb.org/core/index-definitions-fts). Use the [Get All Application Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Application Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterSearchIndex"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Atlas Search Index
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch getClusterFtsIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterFtsIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
GetGroupClusterFtsIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{indexId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/fts/indexes/{indexId}?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/getGroupClusterFtsIndex
patch:
deprecated: true
description: Updates one Atlas Search index that you identified with its unique ID. Atlas Search indexes define the fields on which to create the index and the analyzers to use when creating the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: updateClusterFtsIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection whose Atlas Search index to update.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Atlas Search [index](https://dochub.mongodb.org/core/index-definitions-fts). Use the [Get All Atlas Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Atlas Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterSearchIndex"
description: Details to update on the Atlas Search index.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterSearchIndex"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Atlas Search Index
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch updateClusterFtsIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterFtsIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
UpdateGroupClusterFtsIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/fts/indexes/{indexId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/fts/indexes/{indexId}" \
-d '{ }'
x-rolesRequirements:
- Project Search Index Editor
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/updateGroupClusterFtsIndex
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites:
get:
description: "Returns one managed namespace within the specified global cluster. A managed namespace identifies a collection using the database name, the dot separator, and the collection name. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: getClusterGlobalWrites
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
examples:
200 Example:
description: 200 Example
value:
customZoneMapping:
DE: 32b6e34b3d91647abb20e7b8
US-VA: 32b6e34b3d91647abb20e7b8
managedNamespaces:
- collection: collectionNameExample
customShardKey: myShardKey
db: DatabaseExample
isCustomShardKeyHashed: false
isShardKeyUnique: false
numInitialChunks: 42
presplitHashedZones: false
selfManagedSharding: true
schema:
$ref: "#/components/schemas/GeoSharding20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Managed Namespace in One Global Cluster
tags:
- Global Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api globalClusters getClusterGlobalWrites --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterGlobalWritesApiParams{}
sdkResp, httpResp, err := client.GlobalClustersApi.
GetGroupClusterGlobalWritesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Global-Clusters/operation/getGroupClusterGlobalWrites
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping:
delete:
description: "Removes all custom zone mappings for the specified global cluster. A custom zone mapping matches one ISO 3166-2 location code to a zone in your global cluster. Removing the custom zone mappings restores the default mapping. By default, MongoDB Cloud maps each location code to the closest geographical zone. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: deleteCustomZoneMapping
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
examples:
200 Example:
description: 200 Example
value:
customZoneMapping:
DE: 32b6e34b3d91647abb20e7b8
US-VA: 32b6e34b3d91647abb20e7b8
managedNamespaces:
- collection: collectionNameExample
customShardKey: myShardKey
db: DatabaseExample
isCustomShardKeyHashed: false
isShardKeyUnique: false
numInitialChunks: 42
presplitHashedZones: false
selfManagedSharding: true
schema:
$ref: "#/components/schemas/GeoSharding20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove All Custom Zone Mappings from One Global Cluster
tags:
- Global Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api globalClusters deleteCustomZoneMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterGlobalWriteCustomZoneMappingApiParams{}
httpResp, err := client.GlobalClustersApi.
DeleteGroupClusterGlobalWriteCustomZoneMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Global-Clusters/operation/deleteGroupClusterGlobalWriteCustomZoneMapping
post:
description: "Creates one custom zone mapping for the specified global cluster. A custom zone mapping matches one ISO 3166-2 location code to a zone in your global cluster. By default, MongoDB Cloud maps each location code to the closest geographical zone. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: createCustomZoneMapping
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/CustomZoneMappings"
x-xgen-version: 2024-08-05
description: Custom zone mapping to add to the specified global cluster.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
examples:
200 Example:
description: 200 Example
value:
customZoneMapping:
DE: 32b6e34b3d91647abb20e7b8
US-VA: 32b6e34b3d91647abb20e7b8
managedNamespaces:
- collection: collectionNameExample
customShardKey: myShardKey
db: DatabaseExample
isCustomShardKeyHashed: false
isShardKeyUnique: false
numInitialChunks: 42
presplitHashedZones: false
selfManagedSharding: true
schema:
$ref: "#/components/schemas/GeoSharding20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Add One Custom Zone Mapping to One Global Cluster
tags:
- Global Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api globalClusters createCustomZoneMapping --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterGlobalWriteCustomZoneMappingApiParams{}
sdkResp, httpResp, err := client.GlobalClustersApi.
CreateGroupClusterGlobalWriteCustomZoneMappingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/customZoneMapping" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Global-Clusters/operation/createGroupClusterGlobalWriteCustomZoneMapping
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces:
delete:
description: "Removes one managed namespace within the specified global cluster. A managed namespace identifies a collection using the database name, the dot separator, and the collection name. Deleting a managed namespace does not remove the associated collection or data. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: deleteManagedNamespaces
parameters:
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the database that contains the collection.
in: query
name: db
schema:
type: string
- description: Human-readable label that identifies the collection associated with the managed namespace.
in: query
name: collection
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
examples:
200 Example:
description: 200 Example
value:
customZoneMapping:
DE: 32b6e34b3d91647abb20e7b8
US-VA: 32b6e34b3d91647abb20e7b8
managedNamespaces:
- collection: collectionNameExample
customShardKey: myShardKey
db: DatabaseExample
isCustomShardKeyHashed: false
isShardKeyUnique: false
numInitialChunks: 42
presplitHashedZones: false
selfManagedSharding: true
schema:
$ref: "#/components/schemas/GeoSharding20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Managed Namespace from One Global Cluster
tags:
- Global Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api globalClusters deleteManagedNamespaces --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterGlobalWriteManagedNamespacesApiParams{}
httpResp, err := client.GlobalClustersApi.
DeleteGroupClusterGlobalWriteManagedNamespacesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces"
x-rolesRequirements:
- Project Data Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Global-Clusters/operation/deleteGroupClusterGlobalWriteManagedNamespaces
post:
description: "Creates one managed namespace within the specified global cluster. A managed namespace identifies a collection using the database name, the dot separator, and the collection name. Deprecated versions: v2-{2023-02-01}, v2-{2023-01-01}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: createManagedNamespace
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ManagedNamespaces"
x-xgen-version: 2024-08-05
description: Managed namespace to create within the specified global cluster.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
examples:
200 Example:
description: 200 Example
value:
customZoneMapping:
DE: 32b6e34b3d91647abb20e7b8
US-VA: 32b6e34b3d91647abb20e7b8
managedNamespaces:
- collection: collectionNameExample
customShardKey: myShardKey
db: DatabaseExample
isCustomShardKeyHashed: false
isShardKeyUnique: false
numInitialChunks: 42
presplitHashedZones: false
selfManagedSharding: true
schema:
$ref: "#/components/schemas/GeoSharding20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"405":
$ref: "#/components/responses/methodNotAllowed"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Managed Namespace in One Global Cluster
tags:
- Global Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api globalClusters createManagedNamespace --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterGlobalWriteManagedNamespaceApiParams{}
sdkResp, httpResp, err := client.GlobalClustersApi.
CreateGroupClusterGlobalWriteManagedNamespaceWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/globalWrites/managedNamespaces" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Global-Clusters/operation/createGroupClusterGlobalWriteManagedNamespace
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/index:
post:
description: Creates an index on the cluster identified by its name in a rolling manner. Creating the index in this way allows index builds on one replica set member as a standalone at a time, starting with the secondary members. Creating indexes in this way requires at least one replica set election.
externalDocs:
description: Rolling Index Builds on Replica Sets
url: https://docs.mongodb.com/manual/tutorial/build-indexes-on-replica-sets/
operationId: createRollingIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster on which MongoDB Cloud creates an index.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
examples:
2dspere Index:
description: 2dspere Index
value:
collation:
alternate: non-ignorable
backwards: false
caseFirst: lower
caseLevel: false
locale: af
maxVariable: punct
normalization: false
numericOrdering: false
strength: 3
collection: accounts
db: sample_airbnb
keys:
- property_type: "1"
options:
name: PartialIndexTest
partialFilterExpression:
limit:
$gt: 900
Partial Index:
description: Partial Index
value:
collation:
alternate: non-ignorable
backwards: false
caseFirst: lower
caseLevel: false
locale: af
maxVariable: punct
normalization: false
numericOrdering: false
strength: 3
collection: accounts
db: sample_airbnb
keys:
- property_type: "1"
options:
name: PartialIndexTest
partialFilterExpression:
limit:
$gt: 900
Sparse Index:
description: Sparse Index
value:
collation:
alternate: non-ignorable
backwards: false
caseFirst: lower
caseLevel: false
locale: af
maxVariable: punct
normalization: false
numericOrdering: false
strength: 3
collection: accounts
db: sample_airbnb
keys:
- test_field: "1"
options:
name: SparseIndexTest
sparse: true
schema:
$ref: "#/components/schemas/DatabaseRollingIndexRequest"
description: Rolling index to create on the specified cluster.
required: true
responses:
"202":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: Accepted
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Rolling Index
tags:
- Rolling Index
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api rollingIndex createRollingIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterIndexRollingIndexApiParams{}
sdkResp, httpResp, err := client.RollingIndexApi.
CreateGroupClusterIndexRollingIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/index" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/index" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
- Project Index Manager
x-xgen-changelog:
2025-05-08: Corrects an issue where the endpoint would allow a rolling index build to be initiated while there was already an index build in progress. The endpoint now returns 400 if an index build is already in progress.
2026-04-06: Corrects an issue where index creation was throwing a 500 error instead of a 409 error when there was an existing index with the same name.
2026-09-29: Indexes created with a collation and no explicit name now receive a default name with a collation-derived suffix, so that indexes over the same keys with different collations do not conflict.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Rolling-Index/operation/createGroupClusterIndexRollingIndex
x-xgen-long-running-operation:
legacy: true
x-xgen-method-verb-override:
customMethod: false
verb: createRollingIndex
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives:
get:
description: Returns details of all online archives. This archive stores data from one cluster within one project.
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: listOnlineArchives
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster that contains the collection for which you want to return the online archives.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedOnlineArchive"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Online Archives for One Cluster
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive listOnlineArchives --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterOnlineArchivesApiParams{}
sdkResp, httpResp, err := client.OnlineArchiveApi.
ListGroupClusterOnlineArchivesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/listGroupClusterOnlineArchives
post:
description: Creates one online archive. This archive stores data from one cluster within one project.
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: createOnlineArchive
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster that contains the collection for which you want to create one online archive.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupOnlineArchiveCreate"
description: Creates one online archive.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupOnlineArchive"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Online Archive
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive createOnlineArchive --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterOnlineArchiveApiParams{}
sdkResp, httpResp, err := client.OnlineArchiveApi.
CreateGroupClusterOnlineArchiveWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
x-xgen-changelog:
2023-08-02: If 'criteria':'DATE' is specified, then you must specify 'DATE' values in partition fields
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/createGroupClusterOnlineArchive
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/{archiveId}:
delete:
description: Removes one online archive. This archive stores data from one cluster within one project.
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: deleteOnlineArchive
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the online archive to delete.
in: path
name: archiveId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the cluster that contains the collection from which you want to remove an online archive.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Online Archive
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive deleteOnlineArchive --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterOnlineArchiveApiParams{}
httpResp, err := client.OnlineArchiveApi.
DeleteGroupClusterOnlineArchiveWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/{archiveId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/{archiveId}"
x-rolesRequirements:
- Project Data Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/deleteGroupClusterOnlineArchive
get:
description: Returns one online archive for one cluster. This archive stores data from one cluster within one project.
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: getOnlineArchive
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the online archive to return.
in: path
name: archiveId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the cluster that contains the specified collection from which Application created the online archive.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupOnlineArchive"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Online Archive
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive getOnlineArchive --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterOnlineArchiveApiParams{}
sdkResp, httpResp, err := client.OnlineArchiveApi.
GetGroupClusterOnlineArchiveWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/{archiveId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/{archiveId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/getGroupClusterOnlineArchive
patch:
description: Updates, pauses, or resumes one online archive. This archive stores data from one cluster within one project.
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: updateOnlineArchive
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the online archive to update.
in: path
name: archiveId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the cluster that contains the specified collection from which Application created the online archive.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupOnlineArchive"
description: Updates, pauses, or resumes one online archive.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupOnlineArchive"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Online Archive
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive updateOnlineArchive --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterOnlineArchiveApiParams{}
sdkResp, httpResp, err := client.OnlineArchiveApi.
UpdateGroupClusterOnlineArchiveWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/onlineArchives/{archiveId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/onlineArchives/{archiveId}" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/updateGroupClusterOnlineArchive
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/queryLogs.gz:
get:
description: "Downloads query logs for the specified online archive. The API does not support direct calls with the json response schema. You must request a gzip response schema using an accept header of the format: `Accept: application/vnd.atlas.YYYY-MM-DD+gzip`."
externalDocs:
description: Online Archive
url: https://docs.atlas.mongodb.com/online-archive/manage-online-archive/#std-label-manage-online-archive
operationId: downloadQueryLogs
parameters:
- $ref: "#/components/parameters/groupId"
- description: Date and time that specifies the starting point for the range of log messages to return. This resource expresses this value in the number of seconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: startDate
schema:
example: 1636481348
format: int64
minimum: 1199145600
type: integer
- description: Date and time that specifies the end point for the range of log messages to return. This resource expresses this value in the number of seconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: endDate
schema:
example: 1636481348
format: int64
minimum: 1199145600
type: integer
- description: Human-readable label that identifies the cluster that contains the collection for which you want to return the query logs from one online archive.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Flag that indicates whether to download logs for queries against your online archive only or both your online archive and cluster.
in: query
name: archiveOnly
schema:
default: false
type: boolean
responses:
"200":
content:
application/vnd.atlas.2023-01-01+gzip:
schema:
description: This resource downloads a compressed log file to your current working directory. You can specify its name using the `--output` option or use the default filename using the `-OJ` option. The default filename varies based on whether you download logs for queries of your online archive only or both your online archive and cluster.
format: binary
type: string
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Download Online Archive Query Logs
tags:
- Online Archive
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api onlineArchive downloadQueryLogs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DownloadGroupClusterOnlineArchiveQueryLogsApiParams{}
sdkResp, httpResp, err := client.OnlineArchiveApi.
DownloadGroupClusterOnlineArchiveQueryLogsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/queryLogs.gz" \
--output "file_name.gz"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/onlineArchives/queryLogs.gz" \
--output "file_name.gz"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Online-Archive/operation/downloadGroupClusterOnlineArchiveQueryLogs
x-xgen-method-verb-override:
customMethod: "True"
verb: download
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation:
delete:
description: Ends a cluster outage simulation.
externalDocs:
description: Cluster Outage Simulation
url: https://dochub.mongodb.org/core/test-regional-outage
operationId: endOutageSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster that is undergoing outage simulation.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterOutageSimulation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: End One Outage Simulation
tags:
- Cluster Outage Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusterOutageSimulation endOutageSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.EndGroupClusterOutageSimulationApiParams{}
httpResp, err := client.ClusterOutageSimulationApi.
EndGroupClusterOutageSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation"
x-rolesRequirements:
- Project Cluster Manager
- Project Cluster Resilience Tester
- Project Replica Set Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cluster-Outage-Simulation/operation/endGroupClusterOutageSimulation
x-xgen-method-verb-override:
customMethod: "True"
verb: end
get:
description: Returns one outage simulation for one cluster.
externalDocs:
description: Cluster Outage Simulation
url: https://dochub.mongodb.org/core/test-regional-outage
operationId: getOutageSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster that is undergoing outage simulation.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterOutageSimulation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Outage Simulation
tags:
- Cluster Outage Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusterOutageSimulation getOutageSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterOutageSimulationApiParams{}
sdkResp, httpResp, err := client.ClusterOutageSimulationApi.
GetGroupClusterOutageSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation?pretty=true"
x-rolesRequirements:
- Project Cluster Manager
- Project Cluster Resilience Tester
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cluster-Outage-Simulation/operation/getGroupClusterOutageSimulation
x-xgen-method-verb-override:
customMethod: false
verb: get
post:
description: Starts a cluster outage simulation.
externalDocs:
description: Cluster Outage Simulation
url: https://dochub.mongodb.org/core/test-regional-outage
operationId: startOutageSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster to undergo an outage simulation.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterOutageSimulation"
description: Describes the outage simulation.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterOutageSimulation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Start One Outage Simulation
tags:
- Cluster Outage Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusterOutageSimulation startOutageSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.StartGroupClusterOutageSimulationApiParams{}
sdkResp, httpResp, err := client.ClusterOutageSimulationApi.
StartGroupClusterOutageSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/outageSimulation" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
- Project Cluster Resilience Tester
- Project Replica Set Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cluster-Outage-Simulation/operation/startGroupClusterOutageSimulation
x-xgen-method-verb-override:
customMethod: "True"
verb: start
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations:
get:
description: Returns all overload protection simulations for one cluster.
operationId: listClusterOverloadSimulations
parameters:
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster on which the overload protection simulations are running.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedOverloadProtectionSimulationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Overload Protection Simulations
tags:
- Overload Protection Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api overloadProtectionSimulation listClusterOverloadSimulations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterOverloadSimulationsApiParams{}
sdkResp, httpResp, err := client.OverloadProtectionSimulationApi.
ListGroupClusterOverloadSimulationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Overload-Protection-Simulation/operation/listGroupClusterOverloadSimulations
post:
description: Starts an overload protection simulation for one cluster. Returns a 409 if a simulation is already in progress or completed; DELETE the existing simulation before starting a new one.
operationId: createClusterOverloadSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster on which to start the overload protection simulation.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/OverloadProtectionSimulationRequest"
x-xgen-version: 2025-03-12
description: "Details of the overload protection simulation to start. Valid durations (in seconds): 900, 3600, 28800, 86400."
required: true
responses:
"201":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/OverloadProtectionSimulationResponse"
x-xgen-version: 2025-03-12
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Overload Protection Simulation
tags:
- Overload Protection Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api overloadProtectionSimulation createClusterOverloadSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterOverloadSimulationApiParams{}
sdkResp, httpResp, err := client.OverloadProtectionSimulationApi.
CreateGroupClusterOverloadSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Overload-Protection-Simulation/operation/createGroupClusterOverloadSimulation
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations/{simulationId}:
delete:
description: Deletes the overload protection simulation for one cluster.
operationId: deleteClusterOverloadSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster on which the overload protection simulation is running.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the overload protection simulation.
in: path
name: simulationId
required: true
schema:
type: string
responses:
"202":
content:
application/vnd.atlas.2025-03-12+json:
x-xgen-version: 2025-03-12
description: Accepted
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Overload Protection Simulation
tags:
- Overload Protection Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api overloadProtectionSimulation deleteClusterOverloadSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterOverloadSimulationApiParams{}
httpResp, err := client.OverloadProtectionSimulationApi.
DeleteGroupClusterOverloadSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations/{simulationId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations/{simulationId}"
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Overload-Protection-Simulation/operation/deleteGroupClusterOverloadSimulation
x-xgen-long-running-operation:
legacy: true
get:
description: Returns the overload protection simulation for one cluster.
operationId: getClusterOverloadSimulation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster on which the overload protection simulation is running.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the overload protection simulation.
in: path
name: simulationId
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/OverloadProtectionSimulationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Overload Protection Simulation
tags:
- Overload Protection Simulation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api overloadProtectionSimulation getClusterOverloadSimulation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterOverloadSimulationApiParams{}
sdkResp, httpResp, err := client.OverloadProtectionSimulationApi.
GetGroupClusterOverloadSimulationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations/{simulationId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/overloadSimulations/{simulationId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Overload-Protection-Simulation/operation/getGroupClusterOverloadSimulation
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/dropIndexSuggestions:
get:
description: Returns the indexes that the Performance Advisor suggests to drop. The Performance Advisor suggests dropping unused, redundant, and hidden indexes to improve write performance and increase storage space.
operationId: listDropIndexSuggestions
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: 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.
in: query
name: envelope
schema:
default: true
type: boolean
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/EnvelopedDropIndexSuggestionsResponse"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Suggested Indexes to Drop
tags:
- Performance Advisor
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api performanceAdvisor listDropIndexSuggestions --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterPerformanceAdvisorDropIndexSuggestionsApiParams{}
sdkResp, httpResp, err := client.PerformanceAdvisorApi.
ListGroupClusterPerformanceAdvisorDropIndexSuggestionsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/dropIndexSuggestions?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/dropIndexSuggestions?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Performance-Advisor/operation/listGroupClusterPerformanceAdvisorDropIndexSuggestions
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/schemaAdvice:
get:
description: Returns the schema suggestions that the Performance Advisor detects. The Performance Advisor provides holistic schema recommendations for your cluster by sampling documents in your most active collections and collections with slow-running queries.
operationId: listSchemaAdvice
parameters:
- $ref: "#/components/parameters/groupId"
- description: 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.
in: query
name: envelope
schema:
default: true
type: boolean
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/EnvelopedSchemaAdvisorResponse"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Schema Advice
tags:
- Performance Advisor
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api performanceAdvisor listSchemaAdvice --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterPerformanceAdvisorSchemaAdviceApiParams{}
sdkResp, httpResp, err := client.PerformanceAdvisorApi.
ListGroupClusterPerformanceAdvisorSchemaAdviceWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/schemaAdvice?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/schemaAdvice?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Performance-Advisor/operation/listGroupClusterPerformanceAdvisorSchemaAdvice
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/suggestedIndexes:
get:
description: Returns the indexes that the Performance Advisor suggests. The Performance Advisor monitors queries that MongoDB considers slow and suggests new indexes to improve query performance.
operationId: listClusterSuggestedIndexes
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: 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.
in: query
name: envelope
schema:
default: true
type: boolean
- description: Process IDs from which to retrieve suggested indexes. A `processId` is a combination of host and port that serves the MongoDB process. The host must be the hostname, FQDN, IPv4 address, or IPv6 address of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests. To include multiple `processIds`, pass the parameter multiple times delimited with an ampersand (`&`) between each `processId`.
in: query
name: processIds
schema:
items:
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
type: string
type: array
style: form
- description: "Namespaces from which to retrieve suggested indexes. A namespace consists of one database and one collection resource written as `.`: `.`. To include multiple namespaces, pass the parameter multiple times delimited with an ampersand (`&`) between each namespace. Omit this parameter to return results for all namespaces."
in: query
name: namespaces
schema:
items:
type: string
type: array
style: form
- description: |-
Date and time from which the query retrieves the suggested indexes. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you don't specify the **until** parameter, the endpoint returns data covering from the **since** value and the current time.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: since
schema:
format: int64
minimum: 1199145600000
type: integer
- description: |-
Date and time up until which the query retrieves the suggested indexes. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you specify the **until** parameter, you must specify the **since** parameter.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: until
schema:
format: int64
minimum: 1199145600000
type: integer
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/EnvelopedPerformanceAdvisorResponse"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Suggested Indexes
tags:
- Performance Advisor
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api performanceAdvisor listClusterSuggestedIndexes --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterPerformanceAdvisorSuggestedIndexesApiParams{}
sdkResp, httpResp, err := client.PerformanceAdvisorApi.
ListGroupClusterPerformanceAdvisorSuggestedIndexesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/suggestedIndexes?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/performanceAdvisor/suggestedIndexes?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Performance-Advisor/operation/listGroupClusterPerformanceAdvisorSuggestedIndexes
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs:
get:
description: "Returns 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. 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}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: getProcessArgs
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ClusterDescriptionProcessArgs20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Advanced Configuration Options for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters getProcessArgs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterProcessArgsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
GetGroupClusterProcessArgsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/processArgs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getGroupClusterProcessArgs
patch:
description: "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. 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}"
externalDocs:
description: Global Clusters
url: https://www.mongodb.com/docs/atlas/global-clusters/
operationId: updateProcessArgs
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ClusterDescriptionProcessArgs20240805"
x-xgen-version: 2024-08-05
description: Advanced configuration details to add for one cluster in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/ClusterDescriptionProcessArgs20240805"
x-xgen-version: 2024-08-05
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Advanced Configuration Options for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters updateProcessArgs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterProcessArgsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpdateGroupClusterProcessArgsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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 '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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 '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/updateGroupClusterProcessArgs
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling:
post:
description: "Starts query sampling on one namespace of the specified cluster. Sampled queries feed the shard key analysis for the namespace. The response reports the observed sampling state, in which `active` may still be false: the cluster applies the sampling configuration asynchronously."
operationId: createClusterQuerySampling
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QuerySamplingCreateRequest"
x-xgen-version: 2025-03-12
description: Namespace on which to start query sampling.
required: true
responses:
"201":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QuerySamplingResponse"
x-xgen-version: 2025-03-12
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create Query Sampling for One Namespace
tags:
- Query Sampling
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api querySampling createClusterQuerySampling --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterQuerySamplingApiParams{}
sdkResp, httpResp, err := client.QuerySamplingApi.
CreateGroupClusterQuerySamplingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Sampling/operation/createGroupClusterQuerySampling
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling/{namespace}:
delete:
description: Stops query sampling on one namespace of the specified cluster.
operationId: deleteClusterQuerySampling
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that identifies the namespace (`.`) on which queries are sampled.
in: path
name: namespace
required: true
schema:
example: sales.orders
type: string
responses:
"204":
content:
application/vnd.atlas.2025-03-12+json:
x-xgen-version: 2025-03-12
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove Query Sampling from One Namespace
tags:
- Query Sampling
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api querySampling deleteClusterQuerySampling --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterQuerySamplingApiParams{}
httpResp, err := client.QuerySamplingApi.
DeleteGroupClusterQuerySamplingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling/{namespace}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling/{namespace}"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Sampling/operation/deleteGroupClusterQuerySampling
get:
description: Returns the query sampling state of one namespace of the specified cluster, including counters for the operations sampled so far. Returns 404 if query sampling is not configured on the namespace. `active` becomes true asynchronously after query sampling starts.
operationId: getClusterQuerySampling
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that identifies the namespace (`.`) on which queries are sampled.
in: path
name: namespace
required: true
schema:
example: sales.orders
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QuerySamplingResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Query Sampling State for One Namespace
tags:
- Query Sampling
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api querySampling getClusterQuerySampling --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterQuerySamplingApiParams{}
sdkResp, httpResp, err := client.QuerySamplingApi.
GetGroupClusterQuerySamplingWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling/{namespace}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/querySampling/{namespace}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Sampling/operation/getGroupClusterQuerySampling
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/{queryShapeHash}/details:
get:
description: Returns the metadata and statistics summary for a given query shape hash.
operationId: getQueryShapeDetails
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: |-
Date and time from which to retrieve query shape statistics. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you don't specify the **until** parameter, the endpoint returns data covering from the **since** value and the current time.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: since
schema:
format: int64
minimum: 1199145600000
type: integer
- description: |-
Date and time up until which to retrieve query shape statistics. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you specify the **until** parameter, you must specify the **since** parameter.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: until
schema:
format: int64
minimum: 1199145600000
type: integer
- description: Process IDs from which to retrieve query shape statistics. A `processId` is a combination of host and port that serves the MongoDB process. The host must be the hostname, FQDN, IPv4 address, or IPv6 address of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests. To include multiple `processIds`, pass the parameter multiple times delimited with an ampersand (`&`) between each `processId`.
in: query
name: processIds
schema:
items:
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
type: string
maxItems: 10
type: array
style: form
- description: A SHA256 hash of a query shape, output by MongoDB commands like `$queryStats` and `$explain` or slow query logs.
in: path
name: queryShapeHash
required: true
schema:
pattern: ^([a-fA-F0-9]{64})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QueryStatsDetailsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Query Shape Details
tags:
- Query Shape Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api queryShapeInsights getQueryShapeDetails --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterQueryShapeInsightDetailsApiParams{}
sdkResp, httpResp, err := client.QueryShapeInsightsApi.
GetGroupClusterQueryShapeInsightDetailsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/{queryShapeHash}/details?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/{queryShapeHash}/details?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Shape-Insights/operation/getGroupClusterQueryShapeInsightDetails
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/summaries:
get:
description: Returns a list of query shape statistics summaries for a given cluster. Query shape statistics provide performance insights about MongoDB queries, helping users identify problematic query patterns and potential optimizations.
operationId: listQueryShapeSummaries
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: |-
Date and time from which to retrieve query shape statistics. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you don't specify the **until** parameter, the endpoint returns data covering from the **since** value and the current time.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: since
schema:
format: int64
minimum: 1199145600000
type: integer
- description: |-
Date and time up until which to retrieve query shape statistics. This parameter expresses its value in the number of milliseconds that have elapsed since the [UNIX epoch](https://en.wikipedia.org/wiki/Unix_time).
- If you specify the **until** parameter, you must specify the **since** parameter.
- If you specify neither the **since** nor the **until** parameters, the endpoint returns data from the previous 24 hours.
in: query
name: until
schema:
format: int64
minimum: 1199145600000
type: integer
- description: Process IDs from which to retrieve query shape statistics. A `processId` is a combination of host and port that serves the MongoDB process. The host must be the hostname, FQDN, IPv4 address, or IPv6 address of the host that runs the MongoDB process (`mongod` or `mongos`). The port must be the IANA port on which the MongoDB process listens for requests. To include multiple `processId`, pass the parameter multiple times delimited with an ampersand (`&`) between each `processId`.
in: query
name: processIds
schema:
items:
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$
type: string
maxItems: 10
type: array
style: form
- description: "Namespaces from which to retrieve query shape statistics. A namespace consists of one database and one collection resource written as `.`: `.`. To include multiple namespaces, pass the parameter multiple times delimited with an ampersand (`&`) between each namespace. Omit this parameter to return results for all namespaces."
in: query
name: namespaces
schema:
items:
type: string
maxItems: 10
type: array
style: form
- description: "Retrieve query shape statistics matching specified MongoDB commands. To include multiple commands, pass the parameter multiple times delimited with an ampersand (`&`) between each command. The currently supported parameters are: find, distinct, aggregate, count, insert, update, and delete. The insert, update, and delete commands return results only for clusters running MongoDB 9.0 or later with write query shape statistics enabled for the project. Omit this parameter to return results for all supported commands."
in: query
name: commands
schema:
description: MongoDB commands from which to retrieve query statistics. To include multiple commands, pass the parameter multiple times delimited with an ampersand (`&`) between each command. Omit this parameter to return results for all supported commands.
items:
type: string
maxItems: 7
type: array
uniqueItems: true
style: form
- description: Maximum number of query statistic summaries to return.
in: query
name: nSummaries
schema:
default: 100
format: int64
maximum: 100
minimum: 1
type: integer
- description: Query shape statistics data series to retrieve. A series represents a specific metric about query execution. To include multiple series, pass the parameter multiple times delimited with an ampersand (`&`) between each series. Omit this parameter to return results for all available series. The `P50_EXECUTION_TIME`, `P90_EXECUTION_TIME`, and `P99_EXECUTION_TIME` series are deprecated as the values they report may be inaccurate. They will be removed in a future release.
in: query
name: series
schema:
description: Query shape statistics data series to retrieve. A series represents a specific metric about query execution. To include multiple series, pass the parameter multiple times delimited with an ampersand (`&`) between each series. Omit this parameter to return results for all available series. The `P50_EXECUTION_TIME`, `P90_EXECUTION_TIME`, and `P99_EXECUTION_TIME` series are deprecated as the values they report may be inaccurate. They will be removed in a future release. The write command series (`DOCS_MATCHED`, `DOCS_MODIFIED`, `DOCS_UPSERTED`, `DOCS_DELETED`, `DOCS_INSERTED`, `KEYS_INSERTED`, `KEYS_DELETED`) return data only for clusters running MongoDB 9.0 or later with write query shape statistics enabled for the project.
items:
type: string
maxItems: 23
type: array
uniqueItems: true
style: form
- description: A list of SHA256 hashes of desired query shapes, output by MongoDB commands like `$queryStats` and $explain or slow query logs. To include multiple series, pass the parameter multiple times delimited with an ampersand (`&`) between each series. Omit this parameter to return results for all available series.
in: query
name: queryShapeHashes
schema:
description: A list of SHA256 hashes of desired query shapes, output by MongoDB commands like `$queryStats` and `$explain` or slow query logs. To include multiple series, pass the parameter multiple times delimited with an ampersand (`&`) between each series. Omit this parameter to return results for all available series.
items:
pattern: ^([a-fA-F0-9]{64})$
type: string
maxItems: 10
type: array
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QueryStatsSummaryListResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Query Statistic Summaries
tags:
- Query Shape Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api queryShapeInsights listQueryShapeSummaries --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterQueryShapeInsightSummariesApiParams{}
sdkResp, httpResp, err := client.QueryShapeInsightsApi.
ListGroupClusterQueryShapeInsightSummariesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/summaries?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapeInsights/summaries?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Shape-Insights/operation/listGroupClusterQueryShapeInsightSummaries
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes:
get:
description: Returns a list of query shapes for one cluster. Query shapes may be filtered by their status; at present, this endpoint supports only the REJECTED status.
operationId: listClusterQueryShapes
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: The status of query shapes to retrieve. Only REJECTED status is supported. If omitted, defaults to REJECTED.
in: query
name: status
schema:
default: REJECTED
type: string
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedQueryShapes"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Query Shapes
tags:
- Query Shape Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api queryShapeInsights listClusterQueryShapes --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterQueryShapesApiParams{}
sdkResp, httpResp, err := client.QueryShapeInsightsApi.
ListGroupClusterQueryShapesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Shape-Insights/operation/listGroupClusterQueryShapes
x-xgen-version: 2025-03-12
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes/{queryShapeHash}:
get:
description: Returns the details for a single query shape. This endpoint only returns query shapes with REJECTED status. If the specified query shape hash does not correspond to a rejected query shape, a 404 Not Found error is returned.
operationId: getClusterQueryShape
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: A SHA256 hash of a query shape, output by MongoDB commands like `$queryStats` and `$explain` or slow query logs.
in: path
name: queryShapeHash
required: true
schema:
pattern: ^([a-fA-F0-9]{64})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QueryShapeResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Query Shape
tags:
- Query Shape Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api queryShapeInsights getClusterQueryShape --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterQueryShapeApiParams{}
sdkResp, httpResp, err := client.QueryShapeInsightsApi.
GetGroupClusterQueryShapeWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes/{queryShapeHash}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/queryShapes/{queryShapeHash}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Shape-Insights/operation/getGroupClusterQueryShape
x-xgen-version: 2025-03-12
patch:
description: "Updates the rejection status of a query shape. Use this endpoint to reject a query shape (preventing it from executing on the cluster) or to unreject a previously rejected query shape (allowing it to execute again). This operation is idempotent: rejecting an already rejected query shape or unrejecting an already unrejected query shape will return 200 OK."
operationId: updateClusterQueryShape
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: A SHA256 hash of a query shape, output by MongoDB commands like `$queryStats` and `$explain` or slow query logs.
in: path
name: queryShapeHash
required: true
schema:
pattern: ^([a-fA-F0-9]{64})$
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QueryShapeUpdateRequest"
description: The desired rejection status for the query shape. Provide REJECTED to block the query shape from executing, or UNREJECTED to allow it to execute.
required: true
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/QueryShapeResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Query Shape Rejection Status
tags:
- Query Shape Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api queryShapeInsights updateClusterQueryShape --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterQueryShapeApiParams{}
sdkResp, httpResp, err := client.QueryShapeInsightsApi.
UpdateGroupClusterQueryShapeWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/queryShapes/{queryShapeHash}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/queryShapes/{queryShapeHash}" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
- Project Real Time Performance Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Query-Shape-Insights/operation/updateGroupClusterQueryShape
x-xgen-version: 2025-03-12
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restartPrimaries:
post:
description: "Starts a failover test for the specified cluster in the specified project. Clusters contain a group of hosts that maintain the same data set. A failover test checks how MongoDB Cloud handles the failure of the cluster's primary node. During the test, MongoDB Cloud shuts down the primary node and elects a new primary. Deprecated versions: v2-{2023-01-01}"
operationId: restartPrimaries
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-02-01+json:
x-xgen-version: 2023-02-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Test Failover for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters restartPrimaries --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RestartGroupClusterPrimariesApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
RestartGroupClusterPrimariesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restartPrimaries" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restartPrimaries" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/restartGroupClusterPrimaries
x-xgen-method-verb-override:
customMethod: "True"
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs:
get:
deprecated: true
description: |-
Returns all legacy backup restore jobs for one cluster in the specified project.
Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation. If you use the `BATCH-ID` query parameter, you can retrieve all restore jobs in the specified batch. When creating a restore job for a sharded cluster, MongoDB Cloud creates a separate job for each shard, plus another for the config server. Each of those jobs are part of a batch. However, a batch can't include a restore job for a replica set.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: listClusterRestoreJobs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Unique 24-hexadecimal digit string that identifies the batch of restore jobs to return. Timestamp in ISO 8601 date and time format in UTC when creating a restore job for a sharded cluster, Application creates a separate job for each shard, plus another for the config host. Each of these jobs comprise one batch. A restore job for a replica set can't be part of a batch.
in: query
name: batchId
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Human-readable label that identifies the cluster with the snapshot you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Legacy Backup Restore Jobs
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup listClusterRestoreJobs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterRestoreJobsApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
ListGroupClusterRestoreJobsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/listGroupClusterRestoreJobs
post:
deprecated: true
description: Restores one legacy backup for one cluster in the specified project. Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation. This endpoint doesn't support creating checkpoint restore jobs for sharded clusters, or creating restore jobs for queryable backup snapshots. If you create an automated restore job by specifying `delivery.methodName` of `AUTOMATED_RESTORE` in your request body, MongoDB Cloud removes all existing data on the target cluster prior to the restore.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: createClusterRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the snapshot you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupRestoreJob"
description: Legacy backup to restore to one cluster in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Legacy Backup Restore Job
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup createClusterRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterRestoreJobApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
CreateGroupClusterRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/createGroupClusterRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs/{jobId}:
get:
deprecated: true
description: |-
Returns one legacy backup restore job for one cluster in the specified project.
Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: getClusterRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the snapshot you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the restore job.
in: path
name: jobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupRestoreJob"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Legacy Backup Restore Job
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup getClusterRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterRestoreJobApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
GetGroupClusterRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs/{jobId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/restoreJobs/{jobId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/getGroupClusterRestoreJob
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment:
delete:
description: Deletes the Search Nodes for the specified cluster.
operationId: deleteClusterSearchDeployment
parameters:
- $ref: "#/components/parameters/groupId"
- description: Label that identifies the cluster to delete.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-05-30+json:
x-xgen-version: 2024-05-30
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete Search Nodes
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch deleteClusterSearchDeployment --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterSearchDeploymentApiParams{}
httpResp, err := client.AtlasSearchApi.
DeleteGroupClusterSearchDeploymentWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment"
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/deleteGroupClusterSearchDeployment
get:
description: "Returns the Search Nodes for the specified cluster. Deprecated versions: v2-{2024-05-30}, v2-{2023-01-01}"
operationId: getClusterSearchDeployment
parameters:
- $ref: "#/components/parameters/groupId"
- description: Label that identifies the cluster to return the Search Nodes for.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ApiSearchDeploymentResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Search Nodes
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch getClusterSearchDeployment --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterSearchDeploymentApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
GetGroupClusterSearchDeploymentWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-changelog:
2025-03-12: Updates the return of the API when no nodes exist, the endpoint returns 200 with an empty JSON ({}) instead of 400.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/getGroupClusterSearchDeployment
x-xgen-method-verb-override:
customMethod: false
verb: get
patch:
description: "Updates the Search Nodes for the specified cluster. Deprecated versions: v2-{2023-01-01}"
operationId: updateClusterSearchDeployment
parameters:
- $ref: "#/components/parameters/groupId"
- description: Label that identifies the cluster to update the Search Nodes for.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/ApiSearchDeploymentRequest"
description: Updates the Search Nodes for the specified cluster.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/ApiSearchDeploymentResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Search Nodes
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch updateClusterSearchDeployment --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterSearchDeploymentApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
UpdateGroupClusterSearchDeploymentWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/search/deployment" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/search/deployment" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/updateGroupClusterSearchDeployment
post:
description: Creates Search Nodes for the specified cluster.
operationId: createClusterSearchDeployment
parameters:
- $ref: "#/components/parameters/groupId"
- description: Label that identifies the cluster to create Search Nodes for.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/ApiSearchDeploymentRequest"
description: Creates Search Nodes for the specified cluster.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/ApiSearchDeploymentResponse"
x-xgen-version: 2024-05-30
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create Search Nodes
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch createClusterSearchDeployment --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterSearchDeploymentApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
CreateGroupClusterSearchDeploymentWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/deployment" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/createGroupClusterSearchDeployment
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes:
get:
description: Returns all Atlas Search indexes on the specified cluster. Atlas Search indexes contain the indexed fields and the analyzers used to create the indexes.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: listClusterSearchIndexes
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
description: List of Atlas Search indexes that MongoDB Cloud returns for this request.
items:
$ref: "#/components/schemas/SearchIndexResponse"
type: array
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
"503":
$ref: "#/components/responses/serviceUnavailable"
summary: Return All Atlas Search Indexes for One Cluster
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch listClusterSearchIndexes --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterSearchIndexesApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
ListGroupClusterSearchIndexesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/listGroupClusterSearchIndexes
post:
description: Creates one Atlas Search index on the specified collection. Atlas Search indexes define the fields on which to create the index and the analyzers to use when creating the index. Only clusters running MongoDB v4.2 or later can use Atlas Search.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: createClusterSearchIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection on which to create an Atlas Search index.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexCreateRequest"
description: Creates one Atlas Search index on the specified collection.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexResponse"
x-xgen-version: 2024-05-30
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Atlas Search Index
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch createClusterSearchIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterSearchIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
CreateGroupClusterSearchIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes" \
-d '{ }'
x-rolesRequirements:
- Project Search Index Editor
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/createGroupClusterSearchIndex
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}:
get:
description: Returns all Atlas Search indexes on the specified collection. Atlas Search indexes contain the indexed fields and the analyzers used to create the indexes.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: listSearchIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the collection that contains one or more Atlas Search indexes.
in: path
name: collectionName
required: true
schema:
type: string
- description: Label that identifies the database that contains the collection with one or more Atlas Search indexes.
in: path
name: databaseName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
description: List of Atlas Search indexes that MongoDB Cloud returns for this request.
items:
$ref: "#/components/schemas/SearchIndexResponse"
type: array
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
"503":
$ref: "#/components/responses/serviceUnavailable"
summary: Return All Atlas Search Indexes for One Collection
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch listSearchIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterSearchIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
ListGroupClusterSearchIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/listGroupClusterSearchIndex
x-xgen-method-verb-override:
customMethod: false
verb: list
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}/{indexName}:
delete:
description: Removes one Atlas Search index that you identified with its database, collection, and name. This deletion is eventually consistent.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: deleteIndexByName
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the database and collection with one or more Application Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the collection that contains one or more Atlas Search indexes.
in: path
name: collectionName
required: true
schema:
type: string
- description: Label that identifies the database that contains the collection with one or more Atlas Search indexes.
in: path
name: databaseName
required: true
schema:
type: string
- description: Name of the Atlas Search index to delete.
in: path
name: indexName
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2024-05-30+json:
x-xgen-version: 2024-05-30
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Atlas Search Index by Name
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch deleteIndexByName --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterSearchIndexByNameApiParams{}
httpResp, err := client.AtlasSearchApi.
DeleteGroupClusterSearchIndexByNameWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}/{indexName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}/{indexName}"
x-rolesRequirements:
- Project Search Index Editor
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/deleteGroupClusterSearchIndexByName
x-xgen-method-verb-override:
customMethod: true
verb: deleteByName
get:
description: Returns one Atlas Search index in the specified project. You identify this index using its database, collection and name. Atlas Search index contains the indexed fields and the analyzers used to create the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: getIndexByName
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the collection that contains one or more Atlas Search indexes.
in: path
name: collectionName
required: true
schema:
type: string
- description: Label that identifies the database that contains the collection with one or more Atlas Search indexes.
in: path
name: databaseName
required: true
schema:
type: string
- description: Name of the Atlas Search index to return.
in: path
name: indexName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Atlas Search Index by Name
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch getIndexByName --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterSearchIndexByNameApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
GetGroupClusterSearchIndexByNameWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}/{indexName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}/{indexName}?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/getGroupClusterSearchIndexByName
x-xgen-method-verb-override:
customMethod: true
verb: getByName
patch:
description: Updates one Atlas Search index that you identified with its database, collection name, and index name. Atlas Search indexes define the fields on which to create the index and the analyzers to use when creating the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: updateIndexByName
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection whose Atlas Search index you want to update.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the collection that contains one or more Atlas Search indexes.
in: path
name: collectionName
required: true
schema:
type: string
- description: Label that identifies the database that contains the collection with one or more Atlas Search indexes.
in: path
name: databaseName
required: true
schema:
type: string
- description: Name of the Atlas Search index to update.
in: path
name: indexName
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexUpdateRequest"
description: Details to update the Atlas Search index with.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Atlas Search Index by Name
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch updateIndexByName --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterSearchIndexByNameApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
UpdateGroupClusterSearchIndexByNameWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/search/indexes/{databaseName}/{collectionName}/{indexName}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/search/indexes/{databaseName}/{collectionName}/{indexName}" \
-d '{ }'
x-rolesRequirements:
- Project Search Index Editor
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/updateGroupClusterSearchIndexByName
x-xgen-method-verb-override:
customMethod: true
verb: updateByName
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}:
delete:
description: Removes one Atlas Search index that you identified with its unique ID. This deletion is eventually consistent.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: deleteClusterSearchIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the database and collection with one or more Application Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Atlas Search index. Use the [Get All Atlas Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Atlas Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-05-30+json:
x-xgen-version: 2024-05-30
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Atlas Search Index by ID
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch deleteClusterSearchIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterSearchIndexApiParams{}
httpResp, err := client.AtlasSearchApi.
DeleteGroupClusterSearchIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}"
x-rolesRequirements:
- Project Search Index Editor
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/deleteGroupClusterSearchIndex
get:
description: Returns one Atlas Search index in the specified project. You identify this index using its unique ID. Atlas Search index contains the indexed fields and the analyzers used to create the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: getClusterSearchIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection with one or more Atlas Search indexes.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Application Search [index](https://dochub.mongodb.org/core/index-definitions-fts). Use the [Get All Application Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Application Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
"503":
$ref: "#/components/responses/serviceUnavailable"
summary: Return One Atlas Search Index by ID
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch getClusterSearchIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterSearchIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
GetGroupClusterSearchIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}?pretty=true"
x-rolesRequirements:
- Project Data Access Read Only
- Project Data Access Read Write
- Project Search Index Editor
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/getGroupClusterSearchIndex
patch:
description: Updates one Atlas Search index that you identified with its unique ID. Atlas Search indexes define the fields on which to create the index and the analyzers to use when creating the index.
externalDocs:
description: Atlas Search Indexes
url: https://dochub.mongodb.org/core/index-definitions-fts
operationId: updateClusterSearchIndex
parameters:
- $ref: "#/components/parameters/groupId"
- description: Name of the cluster that contains the collection whose Atlas Search index you want to update.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the Atlas Search [index](https://dochub.mongodb.org/core/index-definitions-fts). Use the [Get All Atlas Search Indexes for a Collection API](https://docs.atlas.mongodb.com/reference/api/fts-indexes-get-all/) endpoint to find the IDs of all Atlas Search indexes.
in: path
name: indexId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexUpdateRequest"
description: Details to update on the Atlas Search index.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/SearchIndexResponse"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Atlas Search Index by ID
tags:
- Atlas Search
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api atlasSearch updateClusterSearchIndex --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterSearchIndexApiParams{}
sdkResp, httpResp, err := client.AtlasSearchApi.
UpdateGroupClusterSearchIndexWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/search/indexes/{indexId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/search/indexes/{indexId}" \
-d '{ }'
x-rolesRequirements:
- Project Search Index Editor
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Atlas-Search/operation/updateGroupClusterSearchIndex
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses:
get:
description: Returns all completed shard key analyses for the specified cluster, newest first. An analysis appears here only once the operation that produced it has succeeded, so attempts that failed or are still running are absent; read the operations sub-resource to see those. MongoDB Cloud retains an analysis for 30 days.
operationId: listShardKeyAnalyses
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster with the shard key analyses you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedShardKeyAnalysisResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Shard Key Analyses for One Cluster
tags:
- Shard Key Analyzer
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardKeyAnalyzer listShardKeyAnalyses --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterShardKeyAnalysesApiParams{}
sdkResp, httpResp, err := client.ShardKeyAnalyzerApi.
ListGroupClusterShardKeyAnalysesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses?pretty=true"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Shard-Key-Analyzer/operation/listGroupClusterShardKeyAnalyses
post:
description: "Analyzes how well one candidate shard key would distribute one collection across the shards of the specified cluster. This endpoint accepts the request and returns immediately: the `Location` header carries the URI of the operation that tracks the analysis. Poll that operation until its `status` is terminal, then follow its `resultHref` to read the analysis. MongoDB Cloud validates and authorizes the request before accepting it, so a rejected submission returns a `4xx` status and never an operation in a failed state. A namespace that is well formed but absent cannot be detected before the analysis runs and surfaces as a failed operation."
operationId: createShardKeyAnalysis
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster that contains the collection to analyze.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardKeyAnalysisRequest"
x-xgen-version: 2025-03-12
description: Shard key to analyze, and which metrics to compute for it.
required: true
responses:
"202":
content:
application/vnd.atlas.2025-03-12+json:
x-xgen-version: 2025-03-12
description: Accepted
headers:
Location:
description: URI of the operation that tracks this analysis. Absent when the request sets `envelope=true`, which returns the URI in the envelope's `locations` parameter instead.
schema:
description: URI of the operation that tracks this analysis.
format: uri
type: string
style: simple
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Shard Key Analysis for One Cluster
tags:
- Shard Key Analyzer
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardKeyAnalyzer createShardKeyAnalysis --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupClusterShardKeyAnalysisApiParams{}
sdkResp, httpResp, err := client.ShardKeyAnalyzerApi.
CreateGroupClusterShardKeyAnalysisWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses" \
-d '{ }'
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Shard-Key-Analyzer/operation/createGroupClusterShardKeyAnalysis
x-xgen-long-running-operation:
legacy: false
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/{analysisId}:
get:
description: Returns one completed shard key analysis for the specified cluster. This resource exists only once the operation that produced it has succeeded and reports no operation status of its own. MongoDB Cloud retains an analysis for 30 days.
operationId: getShardKeyAnalysis
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the shard key analysis you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the shard key analysis to return.
in: path
name: analysisId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardKeyAnalysisResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Shard Key Analysis for One Cluster
tags:
- Shard Key Analyzer
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardKeyAnalyzer getShardKeyAnalysis --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardKeyAnalysisApiParams{}
sdkResp, httpResp, err := client.ShardKeyAnalyzerApi.
GetGroupClusterShardKeyAnalysisWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/{analysisId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/{analysisId}?pretty=true"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Shard-Key-Analyzer/operation/getGroupClusterShardKeyAnalysis
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations:
get:
description: Returns every shard key analysis attempt for the specified cluster, newest first, including attempts that are still running and attempts that failed. Neither of those produces an analysis, so this sub-resource is the only place they appear. MongoDB Cloud retains an operation for 30 days past its terminal state.
operationId: listAnalysisOperations
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster with the shard key analysis operations you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedShardKeyAnalysisOperationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Shard Key Analysis Operations for One Cluster
tags:
- Shard Key Analyzer
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardKeyAnalyzer listAnalysisOperations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterShardKeyAnalysisOperationsApiParams{}
sdkResp, httpResp, err := client.ShardKeyAnalyzerApi.
ListGroupClusterShardKeyAnalysisOperationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations?pretty=true"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Shard-Key-Analyzer/operation/listGroupClusterShardKeyAnalysisOperations
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations/{operationId}:
get:
description: Returns the progress of one shard key analysis for the specified cluster. Poll this resource until `status` reaches a terminal value. On success it carries `resultHref`, the URI of the analysis it created; on failure it carries `error`. While the status is not terminal it carries `retryAfterSeconds`, how long to wait before polling again. MongoDB Cloud retains an operation for 30 days past its terminal state.
operationId: getAnalysisOperation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the shard key analysis operation you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the shard key analysis operation to return.
in: path
name: operationId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardKeyAnalysisOperationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Shard Key Analysis Operation for One Cluster
tags:
- Shard Key Analyzer
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardKeyAnalyzer getAnalysisOperation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardKeyAnalysisOperationApiParams{}
sdkResp, httpResp, err := client.ShardKeyAnalyzerApi.
GetGroupClusterShardKeyAnalysisOperationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations/{operationId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardKeyAnalyses/operations/{operationId}?pretty=true"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Shard-Key-Analyzer/operation/getGroupClusterShardKeyAnalysisOperation
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics:
get:
description: Returns the size and load of every shard in one sharded cluster. Each shard reports the data it stores, the CPU utilization of its nodes, the read and write operations it served, and any conditions that MongoDB Cloud observed relative to the rest of the cluster. To retrieve more details about a shard such as the latency, cache throughput and open alerts, request with an exact replica set name.
operationId: listClusterShardMetrics
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedShardMetricsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Shards in One Cluster
tags:
- Sharding Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingInsights listClusterShardMetrics --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterShardMetricsApiParams{}
sdkResp, httpResp, err := client.ShardingInsightsApi.
ListGroupClusterShardMetricsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Insights/operation/listGroupClusterShardMetrics
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}:
get:
description: Returns the size, load and open alerts of one shard in one sharded cluster. Returns everything the list method returns for this shard, plus its read latency, its WiredTiger cache throughput, its queued range deletion tasks, and the alerts open on its nodes.
operationId: getClusterShardMetric
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Name of the replica set that identifies the shard.
in: path
name: replicaSetName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardMetricsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Shard in One Cluster
tags:
- Sharding Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingInsights getClusterShardMetric --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardMetricApiParams{}
sdkResp, httpResp, err := client.ShardingInsightsApi.
GetGroupClusterShardMetricWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Insights/operation/getGroupClusterShardMetric
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}/measurements:
get:
description: Returns time series of the requested measurements for one shard of the specified sharded cluster. The series average the readings of the shard's member processes selected by `nodeType`. Responds with a 404 only when no shard with the given `replicaSetName` exists in the cluster; a shard that exists but has no readings yet returns series of `null` data points. Each series carries one data point per `granularity` interval, starting at `start` and not passing `end`. A data point's `value` is `null` when MongoDB Cloud has no reading for that interval; this includes the first minutes after a cluster or shard is created, before its metrics are collected, so `null` must not be read as zero load. Set `period`, or set both `start` and `end`; when neither is set, the response covers the last hour. A request whose window and `granularity` would produce more than 1000 data points per series is rejected.
operationId: getShardMetricMeasurements
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that identifies the shard, as the replica set name of its members.
in: path
name: replicaSetName
required: true
schema:
example: atlas-12vorz-shard-0
pattern: ^[A-Za-z0-9][A-Za-z0-9_-]*$
type: string
- description: One or more measurements to return. If omitted, the resource returns all measurements. To specify multiple values for `m`, repeat the `m` parameter for each value.
in: query
name: m
schema:
items:
description: One measurement to return.
type: string
maxItems: 20
minItems: 1
type: array
uniqueItems: true
style: form
- description: Interval between consecutive data points, in ISO 8601 duration format. If omitted, MongoDB Cloud chooses the resolution from the width of the window.
in: query
name: granularity
schema:
example: PT1M
type: string
- $ref: "#/components/parameters/period"
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- description: Members of the shard whose readings are averaged into the shard's series.
in: query
name: nodeType
schema:
default: ALL
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardMeasurementsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Measurements for One Shard
tags:
- Sharding Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingInsights getShardMetricMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardMetricMeasurementsApiParams{}
sdkResp, httpResp, err := client.ShardingInsightsApi.
GetGroupClusterShardMetricMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}/measurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics/{replicaSetName}/measurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Insights/operation/getGroupClusterShardMetricMeasurements
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics:listMeasurements:
get:
description: Returns time series of the requested measurements for every shard of the specified sharded cluster, one series per shard and measurement. Each shard's series averages the readings of its member processes selected by `nodeType`. Each series carries one data point per `granularity` interval, starting at `start` and not passing `end`. A data point's `value` is `null` when MongoDB Cloud has no reading for that interval; this includes the first minutes after a cluster or shard is created, before its metrics are collected, so `null` must not be read as zero load. Set `period`, or set both `start` and `end`; when neither is set, the response covers the last hour. A request whose window and `granularity` would produce more than 1000 data points per series is rejected.
operationId: listShardMetricMeasurements
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: One or more measurements to return. If omitted, the resource returns all measurements. To specify multiple values for `m`, repeat the `m` parameter for each value.
in: query
name: m
schema:
items:
description: One measurement to return.
type: string
maxItems: 20
minItems: 1
type: array
uniqueItems: true
style: form
- description: Interval between consecutive data points, in ISO 8601 duration format. If omitted, MongoDB Cloud chooses the resolution from the width of the window.
in: query
name: granularity
schema:
example: PT1M
type: string
- $ref: "#/components/parameters/period"
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- description: Members of each shard whose readings are averaged into the shard's series.
in: query
name: nodeType
schema:
default: ALL
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ClusterShardMeasurementsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Measurements for All Shards of One Cluster
tags:
- Sharding Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingInsights listShardMetricMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterShardMetricMeasurementsApiParams{}
sdkResp, httpResp, err := client.ShardingInsightsApi.
ListGroupClusterShardMetricMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics:listMeasurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardMetrics:listMeasurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Insights/operation/listGroupClusterShardMetricMeasurements
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingInsights:
get:
description: "Returns the cluster-level sharding state of one sharded cluster: the number of shards, the balancer state, the availability of the config servers, and the configured balancing window."
operationId: getClusterShardingInsights
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardingInsightsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Sharding Insights for One Cluster
tags:
- Sharding Insights
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingInsights getClusterShardingInsights --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardingInsightsApiParams{}
sdkResp, httpResp, err := client.ShardingInsightsApi.
GetGroupClusterShardingInsightsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingInsights?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingInsights?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Insights/operation/getGroupClusterShardingInsights
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingRecommendations:
get:
description: Returns the active Sharding Advisor recommendations for one cluster. Recommendations describe changes that may improve the cluster's data distribution, such as adding shards or sharding a collection, together with the monitored conditions that produced them.
operationId: getClusterShardingRecommendations
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/ShardingRecommendationsResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Sharding Recommendations for One Cluster
tags:
- Sharding Recommendations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api shardingRecommendations getClusterShardingRecommendations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterShardingRecommendationsApiParams{}
sdkResp, httpResp, err := client.ShardingRecommendationsApi.
GetGroupClusterShardingRecommendationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingRecommendations?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/shardingRecommendations?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Sharding-Recommendations/operation/getGroupClusterShardingRecommendations
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshotSchedule:
get:
deprecated: true
description: |-
Returns the snapshot schedule for one cluster in the specified project.
Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: getClusterSnapshotSchedule
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the snapshot you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiAtlasSnapshotSchedule"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Snapshot Schedule
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup getClusterSnapshotSchedule --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterSnapshotScheduleApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
GetGroupClusterSnapshotScheduleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshotSchedule?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshotSchedule?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/getGroupClusterSnapshotSchedule
patch:
deprecated: true
description: |-
Updates the snapshot schedule for one cluster in the specified project.
Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: updateClusterSnapshotSchedule
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster with the snapshot you want to return.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiAtlasSnapshotSchedule"
description: Update the snapshot schedule for one cluster in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ApiAtlasSnapshotSchedule"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Snapshot Schedule for One Cluster
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup updateClusterSnapshotSchedule --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterSnapshotScheduleApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
UpdateGroupClusterSnapshotScheduleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/snapshotSchedule" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/snapshotSchedule" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/updateGroupClusterSnapshotSchedule
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots:
get:
deprecated: true
description: Returns all legacy backup snapshots for one cluster in the specified project. Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: listClusterSnapshots
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Human-readable label that specifies whether to return only completed, incomplete, or all snapshots. By default, MongoDB Cloud only returns completed snapshots.
in: query
name: completed
schema:
default: "true"
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Legacy Backup Snapshots
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup listClusterSnapshots --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterSnapshotsApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
ListGroupClusterSnapshotsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/listGroupClusterSnapshots
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots/{snapshotId}:
delete:
deprecated: true
description: Removes one legacy backup snapshot for one cluster in the specified project. Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: deleteClusterSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Legacy Backup Snapshot
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup deleteClusterSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupClusterSnapshotApiParams{}
httpResp, err := client.LegacyBackupApi.
DeleteGroupClusterSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots/{snapshotId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots/{snapshotId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/deleteGroupClusterSnapshot
get:
deprecated: true
description: Returns one legacy backup snapshot for one cluster in the specified project. Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: getClusterSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Legacy Backup Snapshot
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup getClusterSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterSnapshotApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
GetGroupClusterSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots/{snapshotId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/snapshots/{snapshotId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/getGroupClusterSnapshot
patch:
deprecated: true
description: Changes the expiration date for one legacy backup snapshot for one cluster in the specified project. Effective 23 March 2020, all new clusters can use only Cloud Backups. When you upgrade to 4.2, your backup system upgrades to cloud backup if it is currently set to legacy backup. After this upgrade, all your existing legacy backup snapshots remain available. They expire over time in accordance with your retention policy. Your backup policy resets to the default schedule. If you had a custom backup policy in place with legacy backups, you must re-create it with the procedure outlined in the Cloud Backup documentation.
externalDocs:
description: Cloud Backup Documentation
url: https://www.mongodb.com/docs/atlas/backup/cloud-backup/scheduling/#std-label-cloud-provider-backup-schedule
operationId: updateClusterSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupSnapshot"
description: Changes One Legacy Backup Snapshot Expiration.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/BackupSnapshot"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Expiration Date for One Legacy Backup Snapshot
tags:
- Legacy Backup
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api legacyBackup updateClusterSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupClusterSnapshotApiParams{}
sdkResp, httpResp, err := client.LegacyBackupApi.
UpdateGroupClusterSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/snapshots/{snapshotId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/snapshots/{snapshotId}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Legacy-Backup/operation/updateGroupClusterSnapshot
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/status:
get:
description: Returns the status of all changes that you made to the specified cluster in the specified project. Use this resource to check the progress MongoDB Cloud has made in processing your changes. The response does not include the deployment of new dedicated clusters.
operationId: getClusterStatus
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ClusterStatus"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Status of All Cluster Operations
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters getClusterStatus --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupClusterStatusApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
GetGroupClusterStatusWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/status?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/status?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/getGroupClusterStatus
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:grantMongoDBEmployeeAccess:
post:
description: Grants MongoDB employee cluster access for the given duration and at the specified level for one cluster.
operationId: grantMongoEmployeeAccess
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-08-05+json:
schema:
$ref: "#/components/schemas/EmployeeAccessGrant"
x-xgen-version: 2024-08-05
description: Grant access level and expiration.
required: true
responses:
"204":
content:
application/vnd.atlas.2024-08-05+json:
x-xgen-version: 2024-08-05
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Grant MongoDB Employee Cluster Access for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters grantMongoEmployeeAccess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GrantGroupClusterMongoDbEmployeeAccessApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
GrantGroupClusterMongoDbEmployeeAccessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:grantMongoDBEmployeeAccess" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:grantMongoDBEmployeeAccess" \
-d '{ }'
x-rolesRequirements:
- Project Support Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/grantGroupClusterMongoDbEmployeeAccess
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:pinFeatureCompatibilityVersion:
post:
description: Pins the Feature Compatibility Version (FCV) to the current MongoDB version and sets the pin expiration date. If an FCV pin already exists for the cluster, calling this method will only update the expiration date of the existing pin and will not re-pin the FCV.
operationId: pinFeatureCompatibilityVersion
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/PinFCV"
x-xgen-version: 2024-05-30
description: Optional request parameters for tuning FCV pinning configuration.
responses:
"204":
content:
application/vnd.atlas.2024-05-30+json:
x-xgen-version: 2024-05-30
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Pin Feature Compatibility Version for One Cluster in One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters pinFeatureCompatibilityVersion --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.PinGroupClusterFeatureCompatibilityVersionApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
PinGroupClusterFeatureCompatibilityVersionWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:pinFeatureCompatibilityVersion" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:pinFeatureCompatibilityVersion" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/pinGroupClusterFeatureCompatibilityVersion
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:revokeMongoDBEmployeeAccess:
post:
description: Revokes a previously granted MongoDB employee cluster access.
operationId: revokeMongoEmployeeAccess
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-08-05+json:
x-xgen-version: 2024-08-05
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Revoke MongoDB Employee Cluster Access for One Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters revokeMongoEmployeeAccess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RevokeGroupClusterMongoDbEmployeeAccessApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
RevokeGroupClusterMongoDbEmployeeAccessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:revokeMongoDBEmployeeAccess" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:revokeMongoDBEmployeeAccess" \
-d '{ }'
x-rolesRequirements:
- Project Support Access Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/revokeGroupClusterMongoDbEmployeeAccess
/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:unpinFeatureCompatibilityVersion:
post:
description: Unpins the current fixed Feature Compatibility Version (FCV). This feature is not available for clusters on rapid release.
operationId: unpinFeatureCompatibilityVersion
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies this cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-05-30+json:
x-xgen-version: 2024-05-30
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Unpin Feature Compatibility Version for One Cluster in One Project
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters unpinFeatureCompatibilityVersion --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UnpinGroupClusterFeatureCompatibilityVersionApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UnpinGroupClusterFeatureCompatibilityVersionWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:unpinFeatureCompatibilityVersion" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}:unpinFeatureCompatibilityVersion" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/unpinGroupClusterFeatureCompatibilityVersion
/api/atlas/v2/groups/{groupId}/clusters/{hostName}/logs/{logName}.gz:
get:
description: "Returns a compressed (.gz) log file that contains a range of log messages for the specified host for the specified project. MongoDB updates process and audit logs from the cluster backend infrastructure every five minutes. Logs are stored in chunks approximately five minutes in length, but this duration may vary. If you poll the API for log files, we recommend polling every five minutes even though consecutive polls could contain some overlapping logs. This feature isn't available for `M0` free clusters, `M2`, `M5`, flex, or serverless clusters. The API does not support direct calls with the json response schema. You must request a gzip response schema using an accept header of the format: `Accept: application/vnd.atlas.YYYY-MM-DD+gzip`. Deprecated versions: v2-{2023-01-01}"
operationId: downloadClusterLog
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the host that stores the log files that you want to download.
in: path
name: hostName
required: true
schema:
pattern: ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?$
type: string
- description: Human-readable label that identifies the log file that you want to return. To return audit logs, enable *Database Auditing* for the specified project.
in: path
name: logName
required: true
schema:
externalDocs:
description: Set up Database Auditing
url: https://docs.atlas.mongodb.com/database-auditing/
type: string
- description: Specifies the date and time for the ending point of the range of log messages to retrieve, in the number of seconds that have elapsed since the UNIX epoch. This value will default to 24 hours after the start date. If the start date is also unspecified, the value will default to the time of the request.
in: query
name: endDate
schema:
format: int64
minimum: 1199145600
type: integer
- description: Specifies the date and time for the starting point of the range of log messages to retrieve, in the number of seconds that have elapsed since the UNIX epoch. This value will default to 24 hours prior to the end date. If the end date is also unspecified, the value will default to 24 hours prior to the time of the request.
in: query
name: startDate
schema:
format: int64
minimum: 1199145600
type: integer
responses:
"200":
content:
application/vnd.atlas.2023-02-01+gzip:
schema:
description: Compressed (.gz) log file that contains a range of log messages for the specified host for the specified project
format: binary
type: string
x-xgen-version: 2023-02-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Download Logs for One Cluster Host in One Project
tags:
- Monitoring and Logs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api monitoringAndLogs downloadClusterLog --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DownloadGroupClusterLogApiParams{}
sdkResp, httpResp, err := client.MonitoringandLogsApi.
DownloadGroupClusterLogWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{hostName}/logs/{logName}.gz" \
--output "file_name.gz"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{hostName}/logs/{logName}.gz" \
--output "file_name.gz"
x-rolesRequirements:
- Project Cluster Log Viewer
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Monitoring-and-Logs/operation/downloadGroupClusterLog
x-xgen-method-verb-override:
customMethod: "True"
verb: download
/api/atlas/v2/groups/{groupId}/clusters/provider/regions:
get:
description: Returns the list of regions available for the specified cloud provider at the specified tier.
operationId: listClusterProviderRegions
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Cloud providers whose regions to retrieve. When you specify multiple providers, the response can return only tiers and regions that support multi-cloud clusters.
in: query
name: providers
schema:
items:
type: string
type: array
- description: Cluster tier for which to retrieve the regions.
in: query
name: tier
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasProviderRegions"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Cloud Provider Regions
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters listClusterProviderRegions --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupClusterProviderRegionsApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
ListGroupClusterProviderRegionsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/provider/regions?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/provider/regions?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/listGroupClusterProviderRegions
/api/atlas/v2/groups/{groupId}/clusters/tenantUpgrade:
post:
description: |-
Upgrades a shared-tier cluster to a Flex or Dedicated (M10+) cluster in the specified project. Each project supports up to 25 clusters.
This endpoint can also be used to upgrade Flex clusters that were created using the [Create Cluster](https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/createCluster) API or former M2/M5 clusters that have been migrated to Flex clusters, using `instanceSizeName` to “M2” or “M5” until January 2026. This functionality will be available until January 22, 2026, after which it will only be available for M0 clusters. Please use the Upgrade Flex Cluster endpoint instead.
externalDocs:
description: Upgrade Flex Cluster
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/upgradeFlexCluster
operationId: upgradeTenantUpgrade
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/LegacyAtlasTenantClusterUpgradeRequest"
description: Details of the shared-tier cluster upgrade in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/LegacyAtlasCluster"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Upgrade One Shared-Tier Cluster
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters upgradeTenantUpgrade --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpgradeGroupClusterTenantUpgradeApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpgradeGroupClusterTenantUpgradeWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/tenantUpgrade" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/tenantUpgrade" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/upgradeGroupClusterTenantUpgrade
x-xgen-method-verb-override:
customMethod: true
verb: upgrade
/api/atlas/v2/groups/{groupId}/clusters/tenantUpgradeToServerless:
post:
deprecated: true
description: |-
This endpoint has been deprecated as of February 2025 as we no longer support the creation of new serverless instances. Please use the Upgrade Flex Cluster endpoint to upgrade Flex clusters.
Upgrades a shared-tier cluster to a serverless instance in the specified project.
externalDocs:
description: Upgrade Flex Cluster
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/upgradeFlexCluster
operationId: upgradeClusterToServerless
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ServerlessInstanceDescription"
description: Details of the shared-tier cluster upgrade in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ServerlessInstanceDescription"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Upgrade One Shared-Tier Cluster to One Serverless Instance
tags:
- Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api clusters upgradeClusterToServerless --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpgradeGroupClusterTenantUpgradeToServerlessApiParams{}
sdkResp, httpResp, err := client.ClustersApi.
UpgradeGroupClusterTenantUpgradeToServerlessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/tenantUpgradeToServerless" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/tenantUpgradeToServerless" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-sunset: 2025-02-05
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Clusters/operation/upgradeGroupClusterTenantUpgradeToServerless
x-xgen-method-verb-override:
customMethod: true
verb: upgrade
/api/atlas/v2/groups/{groupId}/collStats/metrics:
get:
description: Returns all available Coll Stats Latency metric names and their respective units for the specified project at the time of request.
operationId: listCollStatMetrics
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-11-15+json:
schema:
$ref: "#/components/schemas/CollStatsLatencyNamespaceMetrics"
x-xgen-version: 2023-11-15
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Metric Names
tags:
- Collection Level Metrics
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api collectionLevelMetrics listCollStatMetrics --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupCollStatMetricsApiParams{}
sdkResp, httpResp, err := client.CollectionLevelMetricsApi.
ListGroupCollStatMetricsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/collStats/metrics?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/collStats/metrics?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Collection-Level-Metrics/operation/listGroupCollStatMetrics
/api/atlas/v2/groups/{groupId}/containers:
get:
description: Returns details about all network peering containers in the specified project for the specified cloud provider. If you do not specify the cloud provider, MongoDB Cloud returns details about all network peering containers in the project for Amazon Web Services (AWS).
operationId: listGroupContainers
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Cloud service provider that serves the desired network peering containers.
in: query
name: providerName
required: true
schema:
default: AWS
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedCloudProviderContainer"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Network Peering Containers in One Project for One Cloud Provider
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering listGroupContainers --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupContainersApiParams{}
sdkResp, httpResp, err := client.NetworkPeeringApi.
ListGroupContainersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/listGroupContainers
post:
description: Creates one new network peering container in the specified project. MongoDB Cloud can deploy Network Peering connections in a network peering container. GCP can have one container per project. AWS and Azure can have one container per cloud provider region.
operationId: createGroupContainer
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderContainer"
description: Creates one new network peering container in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderContainer"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Network Peering Container
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering createGroupContainer --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupContainerApiParams{}
sdkResp, httpResp, err := client.NetworkPeeringApi.
CreateGroupContainerWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/createGroupContainer
/api/atlas/v2/groups/{groupId}/containers/{containerId}:
delete:
description: Removes one network peering container in the specified project.
operationId: deleteGroupContainer
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that you want to remove.
in: path
name: containerId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Network Peering Container
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering deleteGroupContainer --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupContainerApiParams{}
httpResp, err := client.NetworkPeeringApi.
DeleteGroupContainerWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/{containerId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/{containerId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/deleteGroupContainer
get:
description: Returns details about one network peering container in one specified project. Network peering containers contain network peering connections.
operationId: getGroupContainer
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container.
in: path
name: containerId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderContainer"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Network Peering Container
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering getGroupContainer --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupContainerApiParams{}
sdkResp, httpResp, err := client.NetworkPeeringApi.
GetGroupContainerWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/{containerId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/{containerId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/getGroupContainer
patch:
description: Updates the network details and labels of one specified network peering container in the specified project.
operationId: updateGroupContainer
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the MongoDB Cloud network container that you want to remove.
in: path
name: containerId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderContainer"
description: Updates the network details and labels of one specified network peering container in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudProviderContainer"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Network Peering Container
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering updateGroupContainer --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupContainerApiParams{}
sdkResp, httpResp, err := client.NetworkPeeringApi.
UpdateGroupContainerWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/containers/{containerId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/containers/{containerId}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/updateGroupContainer
/api/atlas/v2/groups/{groupId}/containers/all:
get:
description: Returns details about all network peering containers in the specified project. Network peering containers contain network peering connections.
operationId: listGroupContainerAll
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedCloudProviderContainer"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Network Peering Containers in One Project
tags:
- Network Peering
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api networkPeering listGroupContainerAll --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupContainerAllApiParams{}
sdkResp, httpResp, err := client.NetworkPeeringApi.
ListGroupContainerAllWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/all?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/containers/all?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Network-Peering/operation/listGroupContainerAll
x-xgen-method-verb-override:
customMethod: "False"
verb: list
/api/atlas/v2/groups/{groupId}/customDBRoles/roles:
get:
description: Returns all custom roles for the specified project.
operationId: listCustomDbRoles
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/UserCustomDBRole"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Custom Roles in One Project
tags:
- Custom Database Roles
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api customDatabaseRoles listCustomDbRoles --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupCustomDbRoleRolesApiParams{}
sdkResp, httpResp, err := client.CustomDatabaseRolesApi.
ListGroupCustomDbRoleRolesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Custom-Database-Roles/operation/listGroupCustomDbRoleRoles
post:
description: Creates one custom role in the specified project.
operationId: createCustomDbRole
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UserCustomDBRole"
description: Creates one custom role in the specified project.
required: true
responses:
"202":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UserCustomDBRole"
x-xgen-version: 2023-01-01
description: Accepted
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Custom Role
tags:
- Custom Database Roles
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api customDatabaseRoles createCustomDbRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupCustomDbRoleRoleApiParams{}
sdkResp, httpResp, err := client.CustomDatabaseRolesApi.
CreateGroupCustomDbRoleRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles" \
-d '{ }'
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Custom-Database-Roles/operation/createGroupCustomDbRoleRole
x-xgen-long-running-operation:
legacy: true
/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}:
delete:
description: Removes one custom role from the specified project. You can't remove a custom role that would leave one or more child roles with no parent roles or actions. You also can't remove a custom role that would leave one or more database users without roles.
operationId: deleteCustomDbRole
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the role for the request. This name must be unique for this custom role in this project.
in: path
name: roleName
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Custom Role from One Project
tags:
- Custom Database Roles
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api customDatabaseRoles deleteCustomDbRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupCustomDbRoleRoleApiParams{}
httpResp, err := client.CustomDatabaseRolesApi.
DeleteGroupCustomDbRoleRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}"
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Custom-Database-Roles/operation/deleteGroupCustomDbRoleRole
get:
description: Returns one custom role for the specified project.
operationId: getCustomDbRole
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the role for the request. This name must be unique for this custom role in this project.
in: path
name: roleName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UserCustomDBRole"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Custom Role in One Project
tags:
- Custom Database Roles
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api customDatabaseRoles getCustomDbRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupCustomDbRoleRoleApiParams{}
sdkResp, httpResp, err := client.CustomDatabaseRolesApi.
GetGroupCustomDbRoleRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/customDBRoles/roles/{roleName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Custom-Database-Roles/operation/getGroupCustomDbRoleRole
patch:
description: Updates one custom role in the specified project.
operationId: updateCustomDbRole
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the role for the request. This name must be unique for this custom role in this project.
in: path
name: roleName
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UpdateCustomDBRole"
description: Updates one custom role in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UserCustomDBRole"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Custom Role in One Project
tags:
- Custom Database Roles
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api customDatabaseRoles updateCustomDbRole --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupCustomDbRoleRoleApiParams{}
sdkResp, httpResp, err := client.CustomDatabaseRolesApi.
UpdateGroupCustomDbRoleRoleWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/customDBRoles/roles/{roleName}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/customDBRoles/roles/{roleName}" \
-d '{ }'
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Custom-Database-Roles/operation/updateGroupCustomDbRoleRole
/api/atlas/v2/groups/{groupId}/dataFederation:
get:
description: Returns the details of all federated database instances in the specified project.
operationId: listDataFederation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Type of Federated Database Instances to return.
in: query
name: type
schema:
default: USER
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/DataLakeTenant"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Federated Database Instances in One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation listDataFederation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupDataFederationApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
ListGroupDataFederationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/listGroupDataFederation
post:
description: Creates one federated database instance in the specified project.
operationId: createDataFederation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket. AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check.
in: query
name: skipRoleValidation
schema:
default: false
type: boolean
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataLakeTenant"
description: Details to create one federated database instance in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataLakeTenant"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Federated Database Instance in One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation createDataFederation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupDataFederationApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
CreateGroupDataFederationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/createGroupDataFederation
/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}:
delete:
description: Removes one federated database instance from the specified project.
operationId: deleteDataFederation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance to remove.
in: path
name: tenantName
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Federated Database Instance from One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation deleteDataFederation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupDataFederationApiParams{}
httpResp, err := client.DataFederationApi.
DeleteGroupDataFederationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/deleteGroupDataFederation
get:
description: Returns the details of one federated database instance within the specified project.
operationId: getDataFederation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the Federated Database to return.
in: path
name: tenantName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataLakeTenant"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Federated Database Instance in One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation getDataFederation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupDataFederationApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
GetGroupDataFederationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/getGroupDataFederation
patch:
description: Updates the details of one federated database instance in the specified project.
operationId: updateDataFederation
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance to update.
in: path
name: tenantName
required: true
schema:
type: string
- description: Flag that indicates whether this request should check if the requesting IAM role can read from the S3 bucket. AWS checks if the role can list the objects in the bucket before writing to it. Some IAM roles only need write permissions. This flag allows you to skip that check.
in: query
name: skipRoleValidation
required: true
schema:
type: boolean
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataLakeTenant"
description: Details of one Federated Database to update in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataLakeTenant"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Federated Database Instance in One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation updateDataFederation --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupDataFederationApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
UpdateGroupDataFederationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/dataFederation/{tenantName}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/dataFederation/{tenantName}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/updateGroupDataFederation
/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits:
get:
description: Returns query limits for a federated databases instance in the specified project.
operationId: listDataFederationLimits
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance for which you want to retrieve query limits.
in: path
name: tenantName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/DataFederationTenantQueryLimit"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Query Limits for One Federated Database Instance
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation listDataFederationLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupDataFederationLimitsApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
ListGroupDataFederationLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/listGroupDataFederationLimits
/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits/{limitName}:
delete:
description: Deletes one query limit for one federated database instance.
operationId: deleteDataFederationLimit
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance to which the query limit applies.
in: path
name: tenantName
required: true
schema:
type: string
- description: |
Human-readable label that identifies this data federation instance limit.
| Limit Name | Description | Default |
| --- | --- | --- |
| `bytesProcessed.query` | Limit on the number of bytes processed during a single data federation query | N/A |
| `bytesProcessed.daily` | Limit on the number of bytes processed for the data federation instance for the current day | N/A |
| `bytesProcessed.weekly` | Limit on the number of bytes processed for the data federation instance for the current week | N/A |
| `bytesProcessed.monthly` | Limit on the number of bytes processed for the data federation instance for the current month | N/A |
in: path
name: limitName
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Query Limit for One Federated Database Instance
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation deleteDataFederationLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupDataFederationLimitApiParams{}
httpResp, err := client.DataFederationApi.
DeleteGroupDataFederationLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits/{limitName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits/{limitName}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/deleteGroupDataFederationLimit
get:
description: Returns the details of one query limit for the specified federated database instance in the specified project.
operationId: getDataFederationLimit
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance to which the query limit applies.
in: path
name: tenantName
required: true
schema:
type: string
- description: |
Human-readable label that identifies this data federation instance limit.
| Limit Name | Description | Default |
| --- | --- | --- |
| `bytesProcessed.query` | Limit on the number of bytes processed during a single data federation query | N/A |
| `bytesProcessed.daily` | Limit on the number of bytes processed for the data federation instance for the current day | N/A |
| `bytesProcessed.weekly` | Limit on the number of bytes processed for the data federation instance for the current week | N/A |
| `bytesProcessed.monthly` | Limit on the number of bytes processed for the data federation instance for the current month | N/A |
in: path
name: limitName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationTenantQueryLimit"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Federated Database Instance Query Limit for One Project
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation getDataFederationLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupDataFederationLimitApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
GetGroupDataFederationLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits/{limitName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/limits/{limitName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/getGroupDataFederationLimit
patch:
description: Creates or updates one query limit for one federated database instance.
operationId: setDataFederationLimit
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the federated database instance to which the query limit applies.
in: path
name: tenantName
required: true
schema:
type: string
- description: |
Human-readable label that identifies this data federation instance limit.
| Limit Name | Description | Default |
| --- | --- | --- |
| `bytesProcessed.query` | Limit on the number of bytes processed during a single data federation query | N/A |
| `bytesProcessed.daily` | Limit on the number of bytes processed for the data federation instance for the current day | N/A |
| `bytesProcessed.weekly` | Limit on the number of bytes processed for the data federation instance for the current week | N/A |
| `bytesProcessed.monthly` | Limit on the number of bytes processed for the data federation instance for the current month | N/A |
in: path
name: limitName
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationTenantQueryLimit"
description: Creates or updates one query limit for one federated database instance.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationTenantQueryLimit"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Configure One Query Limit for One Federated Database Instance
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation setDataFederationLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.SetGroupDataFederationLimitApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
SetGroupDataFederationLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/dataFederation/{tenantName}/limits/{limitName}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/dataFederation/{tenantName}/limits/{limitName}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/setGroupDataFederationLimit
x-xgen-method-verb-override:
customMethod: true
verb: set
/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/queryLogs.gz:
get:
description: "Downloads the query logs for the specified federated database instance. The API does not support direct calls with the json response schema. You must request a gzip response schema using an accept header of the format: `Accept: application/vnd.atlas.YYYY-MM-DD+gzip`."
operationId: downloadFederationQueryLogs
parameters:
- $ref: "#/components/parameters/groupId"
- description: Timestamp that specifies the end point for the range of log messages to download. MongoDB Cloud expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch.
in: query
name: endDate
schema:
example: 1636481348
format: int64
pattern: "1199145600"
type: integer
- description: Timestamp that specifies the starting point for the range of log messages to download. MongoDB Cloud expresses this timestamp in the number of seconds that have elapsed since the UNIX epoch.
in: query
name: startDate
schema:
example: 1636466948
format: int64
pattern: "1199145600"
type: integer
- description: Human-readable label that identifies the federated database instance for which you want to download query logs.
in: path
name: tenantName
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+gzip:
schema:
description: Compressed archive labeled `queryLogs.gz` downloads
format: binary
type: string
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Download Query Logs for One Federated Database Instance
tags:
- Data Federation
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api dataFederation downloadFederationQueryLogs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DownloadGroupDataFederationQueryLogsApiParams{}
sdkResp, httpResp, err := client.DataFederationApi.
DownloadGroupDataFederationQueryLogsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/queryLogs.gz" \
--output "file_name.gz"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+gzip" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dataFederation/{tenantName}/queryLogs.gz" \
--output "file_name.gz"
x-rolesRequirements:
- Project Data Access Admin
- Project Data Access Read Only
- Project Data Access Read Write
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Data-Federation/operation/downloadGroupDataFederationQueryLogs
x-xgen-method-verb-override:
customMethod: "True"
verb: download
/api/atlas/v2/groups/{groupId}/databaseUsers:
get:
description: Returns all database users that belong to the specified project.
operationId: listDatabaseUsers
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasDatabaseUser"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Database Users in One Project
tags:
- Database Users
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api databaseUsers listDatabaseUsers --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupDatabaseUsersApiParams{}
sdkResp, httpResp, err := client.DatabaseUsersApi.
ListGroupDatabaseUsersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Database-Users/operation/listGroupDatabaseUsers
post:
description: Creates one database user in the specified project. This MongoDB Cloud supports a default limit of 100 and a maximum of 900 database users per project. If you require more than 900 database users on a project, contact Support.
externalDocs:
description: Contact MongoDB Support
url: https://cloud.mongodb.com/support
operationId: createDatabaseUser
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
examples:
AWS IAM Authentication:
description: AWS IAM Authentication
value:
awsIAMType: USER
databaseName: $external
groupId: 32b6e34b3d91647abb20e7b8
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: arn:aws:iam::358363220050:user/mongodb-aws-iam-auth-test-user
LDAP Authentication:
description: LDAP Authentication
value:
databaseName: admin
groupId: 32b6e34b3d91647abb20e7b8
ldapAuthType: GROUP
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: CN=marketing,OU=groups,DC=example,DC=com
OIDC Workforce Federated Authentication:
description: OIDC Workforce Federated Authentication
value:
databaseName: admin
groupId: 32b6e34b3d91647abb20e7b8
oidcAuthType: IDP_GROUP
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: 5dd7496c7a3e5a648454341c/sales
OIDC Workload Federated Authentication:
description: OIDC Workload Federated Authentication
value:
databaseName: $external
groupId: 32b6e34b3d91647abb20e7b8
oidcAuthType: USER
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: 5dd7496c7a3e5a648454341c/sales
SCRAM-SHA Authentication:
description: SCRAM-SHA Authentication
value:
databaseName: admin
groupId: 32b6e34b3d91647abb20e7b8
password: changeme123
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: david
X509 Authentication:
description: X509 Authentication
value:
databaseName: $external
groupId: 32b6e34b3d91647abb20e7b8
roles:
- databaseName: sales
roleName: readWrite
- databaseName: marketing
roleName: read
scopes:
- name: myCluster
type: CLUSTER
username: CN=david@example.com,OU=users,DC=example,DC=com
x509Type: CUSTOMER
schema:
$ref: "#/components/schemas/CloudDatabaseUser"
description: Creates one database user in the specified project.
required: true
responses:
"201":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudDatabaseUser"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Database User in One Project
tags:
- Database Users
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api databaseUsers createDatabaseUser --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupDatabaseUserApiParams{}
sdkResp, httpResp, err := client.DatabaseUsersApi.
CreateGroupDatabaseUserWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers" \
-d '{ }'
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Database-Users/operation/createGroupDatabaseUser
/api/atlas/v2/groups/{groupId}/databaseUsers/{databaseName}/{username}:
delete:
description: Removes one database user from the specified project.
operationId: deleteDatabaseUser
parameters:
- $ref: "#/components/parameters/groupId"
- description: The database against which the database user authenticates. Database users must provide both a username and authentication database to log into MongoDB. If the user authenticates with AWS IAM, x.509, LDAP, or OIDC Workload this value should be `$external`. If the user authenticates with SCRAM-SHA or OIDC Workforce, this value should be `admin`.
in: path
name: databaseName
required: true
schema:
type: string
- description: |
Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication:
| Authentication Method | Parameter Needed | Parameter Value | username Format |
|---|---|---|---|
| AWS IAM | `awsIAMType` | `ROLE` | ARN |
| AWS IAM | `awsIAMType` | `USER` | ARN |
| x.509 | `x509Type` | `CUSTOMER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| x.509 | `x509Type` | `MANAGED` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `USER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `GROUP` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| OIDC Workforce | `oidcAuthType` | `IDP_GROUP` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP group name |
| OIDC Workload | `oidcAuthType` | `USER` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP user name |
| SCRAM-SHA | `awsIAMType`, `x509Type`, `ldapAuthType`, `oidcAuthType` | `NONE` | Alphanumeric string |
in: path
name: username
required: true
schema:
example: "SCRAM-SHA: dylan or AWS IAM: arn:aws:iam::123456789012:user/sales/enterprise/DylanBloggs or x.509/LDAP: CN=Dylan Bloggs,OU=Enterprise,OU=Sales,DC=Example,DC=COM or OIDC: IdPIdentifier/IdPGroupName"
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Database User from One Project
tags:
- Database Users
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api databaseUsers deleteDatabaseUser --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupDatabaseUserApiParams{}
httpResp, err := client.DatabaseUsersApi.
DeleteGroupDatabaseUserWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{databaseName}/{username}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{databaseName}/{username}"
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Database-Users/operation/deleteGroupDatabaseUser
get:
description: Returns one database user that belong to the specified project.
operationId: getDatabaseUser
parameters:
- $ref: "#/components/parameters/groupId"
- description: The database against which the database user authenticates. Database users must provide both a username and authentication database to log into MongoDB. If the user authenticates with AWS IAM, x.509, LDAP, or OIDC Workload this value should be `$external`. If the user authenticates with SCRAM-SHA or OIDC Workforce, this value should be `admin`.
in: path
name: databaseName
required: true
schema:
type: string
- description: |
Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication:
| Authentication Method | Parameter Needed | Parameter Value | username Format |
|---|---|---|---|
| AWS IAM | `awsIAMType` | `ROLE` | ARN |
| AWS IAM | `awsIAMType` | `USER` | ARN |
| x.509 | `x509Type` | `CUSTOMER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| x.509 | `x509Type` | `MANAGED` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `USER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `GROUP` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| OIDC Workforce | `oidcAuthType` | `IDP_GROUP` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP group name |
| OIDC Workload | `oidcAuthType` | `USER` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP user name |
| SCRAM-SHA | `awsIAMType`, `x509Type`, `ldapAuthType`, `oidcAuthType` | `NONE` | Alphanumeric string |
in: path
name: username
required: true
schema:
example: "SCRAM-SHA: dylan or AWS IAM: arn:aws:iam::123456789012:user/sales/enterprise/DylanBloggs or x.509/LDAP: CN=Dylan Bloggs,OU=Enterprise,OU=Sales,DC=Example,DC=COM or OIDC: IdPIdentifier/IdPGroupName"
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudDatabaseUser"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Database User from One Project
tags:
- Database Users
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api databaseUsers getDatabaseUser --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupDatabaseUserApiParams{}
sdkResp, httpResp, err := client.DatabaseUsersApi.
GetGroupDatabaseUserWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{databaseName}/{username}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{databaseName}/{username}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Database-Users/operation/getGroupDatabaseUser
patch:
description: Updates one database user that belongs to the specified project.
operationId: updateDatabaseUser
parameters:
- $ref: "#/components/parameters/groupId"
- description: The database against which the database user authenticates. Database users must provide both a username and authentication database to log into MongoDB. If the user authenticates with AWS IAM, x.509, LDAP, or OIDC Workload this value should be `$external`. If the user authenticates with SCRAM-SHA or OIDC Workforce, this value should be `admin`.
in: path
name: databaseName
required: true
schema:
type: string
- description: |
Human-readable label that represents the user that authenticates to MongoDB. The format of this label depends on the method of authentication:
| Authentication Method | Parameter Needed | Parameter Value | username Format |
|---|---|---|---|
| AWS IAM | `awsIAMType` | `ROLE` | ARN |
| AWS IAM | `awsIAMType` | `USER` | ARN |
| x.509 | `x509Type` | `CUSTOMER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| x.509 | `x509Type` | `MANAGED` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `USER` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| LDAP | `ldapAuthType` | `GROUP` | [RFC 2253](https://tools.ietf.org/html/2253) Distinguished Name |
| OIDC Workforce | `oidcAuthType` | `IDP_GROUP` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP group name |
| OIDC Workload | `oidcAuthType` | `USER` | Atlas OIDC IdP ID (found in federation settings), followed by a '/', followed by the IdP user name |
| SCRAM-SHA | `awsIAMType`, `x509Type`, `ldapAuthType`, `oidcAuthType` | `NONE` | Alphanumeric string |
in: path
name: username
required: true
schema:
example: "SCRAM-SHA: dylan or AWS IAM: arn:aws:iam::123456789012:user/sales/enterprise/DylanBloggs or x.509/LDAP: CN=Dylan Bloggs,OU=Enterprise,OU=Sales,DC=Example,DC=COM or OIDC: IdPIdentifier/IdPGroupName"
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudDatabaseUser"
description: Updates one database user that belongs to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudDatabaseUser"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Database User in One Project
tags:
- Database Users
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api databaseUsers updateDatabaseUser --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupDatabaseUserApiParams{}
sdkResp, httpResp, err := client.DatabaseUsersApi.
UpdateGroupDatabaseUserWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/databaseUsers/{databaseName}/{username}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/databaseUsers/{databaseName}/{username}" \
-d '{ }'
x-rolesRequirements:
- Project Database Access Admin
- Project Stream Processing Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Database-Users/operation/updateGroupDatabaseUser
/api/atlas/v2/groups/{groupId}/databaseUsers/{username}/certs:
get:
description: Returns all unexpired X.509 certificates for the specified MongoDB user. This MongoDB user belongs to one project. Atlas manages these certificates and the MongoDB user.
operationId: listDatabaseUserCerts
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that represents the MongoDB database user account whose certificates you want to return.
in: path
name: username
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedUserCert"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All X.509 Certificates Assigned to One Database User
tags:
- X.509 Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api x509Authentication listDatabaseUserCerts --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupDatabaseUserCertsApiParams{}
sdkResp, httpResp, err := client.X509AuthenticationApi.
ListGroupDatabaseUserCertsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{username}/certs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{username}/certs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/X.509-Authentication/operation/listGroupDatabaseUserCerts
post:
description: |-
Generates one X.509 certificate for the specified MongoDB user. Atlas manages the certificate and MongoDB user that belong to one project.
To get MongoDB Cloud to generate a managed certificate for a database user, set `"x509Type" : "MANAGED"` on the desired MongoDB Database User.
If you are managing your own Certificate Authority (CA) in Self-Managed X.509 mode, you must generate certificates for database users using your own CA.
externalDocs:
description: Self-Managed X.509
url: https://www.mongodb.com/docs/atlas/security-self-managed-x509/#std-label-self-managed-x509
operationId: createDatabaseUserCert
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that represents the MongoDB database user account for whom to create a certificate.
in: path
name: username
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/UserCert"
description: Generates one X.509 certificate for the specified MongoDB user.
required: true
responses:
"201":
content:
application/vnd.atlas.2023-01-01+json:
schema:
description: PEM file that contains the user's X.509 certificate and private key.
type: string
x-xgen-version: 2023-01-01
description: This endpoint returns a PEM file with the certificate and private key.
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One X.509 Certificate for One Database User
tags:
- X.509 Authentication
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api x509Authentication createDatabaseUserCert --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupDatabaseUserCertApiParams{}
sdkResp, httpResp, err := client.X509AuthenticationApi.
CreateGroupDatabaseUserCertWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{username}/certs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/databaseUsers/{username}/certs" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/X.509-Authentication/operation/createGroupDatabaseUserCert
/api/atlas/v2/groups/{groupId}/dbAccessHistory/clusters/{clusterName}:
get:
description: Returns the access logs of one cluster identified by the cluster's name. Access logs contain a list of authentication requests made against your cluster. You can't use this feature on tenant-tier clusters (M0, M2, M5).
externalDocs:
description: Database Access History
url: https://docs.atlas.mongodb.com/access-tracking/
operationId: getAccessHistoryCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Flag that indicates whether the response returns the successful authentication attempts only.
in: query
name: authResult
schema:
type: boolean
- description: Human-readable label that identifies the cluster.
in: path
name: clusterName
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Date and time when to stop retrieving database history. If you specify **end**, you must also specify **start**. This parameter uses UNIX epoch time in milliseconds.
in: query
name: end
schema:
format: int64
minimum: 1199145600000
type: integer
- description: One Internet Protocol address that attempted to authenticate with the database.
in: query
name: ipAddress
schema:
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
- description: Maximum number of lines from the log to return.
in: query
name: nLogs
schema:
default: 20000
format: int32
maximum: 20000
minimum: 0
type: integer
- description: Date and time when MongoDB Cloud begins retrieving database history. If you specify **start**, you must also specify **end**. This parameter uses UNIX epoch time in milliseconds.
in: query
name: start
schema:
format: int64
minimum: 1199145600000
type: integer
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/MongoDBAccessLogsList"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Database Access History for One Cluster by Cluster Name
tags:
- Access Tracking
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api accessTracking getAccessHistoryCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupDbAccessHistoryClusterApiParams{}
sdkResp, httpResp, err := client.AccessTrackingApi.
GetGroupDbAccessHistoryClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/clusters/{clusterName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/clusters/{clusterName}?pretty=true"
x-rolesRequirements:
- Project Cluster Log Viewer
- Project Database Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Access-Tracking/operation/getGroupDbAccessHistoryCluster
/api/atlas/v2/groups/{groupId}/dbAccessHistory/processes/{hostname}:
get:
description: Returns the access logs of one cluster identified by the cluster's hostname. Access logs contain a list of authentication requests made against your clusters. You can't use this feature on tenant-tier clusters (M0, M2, M5).
externalDocs:
description: Database Access History
url: https://docs.atlas.mongodb.com/access-tracking/
operationId: getAccessHistoryProcess
parameters:
- $ref: "#/components/parameters/groupId"
- description: Flag that indicates whether the response returns the successful authentication attempts only.
in: query
name: authResult
schema:
type: boolean
- description: Date and time when to stop retrieving database history. If you specify **end**, you must also specify **start**. This parameter uses UNIX epoch time in milliseconds.
in: query
name: end
schema:
format: int64
minimum: 1199145600000
type: integer
- description: Fully qualified domain name or IP address of the MongoDB host that stores the log files that you want to download.
in: path
name: hostname
required: true
schema:
type: string
- description: One Internet Protocol address that attempted to authenticate with the database.
in: query
name: ipAddress
schema:
pattern: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}|([0-9a-f]{1,4}:){7}[0-9a-f]{1,4}$
type: string
- description: Maximum number of lines from the log to return.
in: query
name: nLogs
schema:
default: 20000
format: int32
maximum: 20000
minimum: 0
type: integer
- description: Date and time when MongoDB Cloud begins retrieving database history. If you specify **start**, you must also specify **end**. This parameter uses UNIX epoch time in milliseconds.
in: query
name: start
schema:
format: int64
minimum: 1199145600000
type: integer
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/MongoDBAccessLogsList"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Database Access History for One Cluster by Hostname
tags:
- Access Tracking
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api accessTracking getAccessHistoryProcess --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupDbAccessHistoryProcessApiParams{}
sdkResp, httpResp, err := client.AccessTrackingApi.
GetGroupDbAccessHistoryProcessWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/processes/{hostname}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/dbAccessHistory/processes/{hostname}?pretty=true"
x-rolesRequirements:
- Project Cluster Log Viewer
- Project Database Access Admin
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Access-Tracking/operation/getGroupDbAccessHistoryProcess
/api/atlas/v2/groups/{groupId}/encryptionAtRest:
get:
description: |-
Returns the configuration for encryption at rest using the keys you manage through your cloud provider. MongoDB Cloud encrypts all storage even if you don't use your own key management.
**LIMITED TO M10 OR GREATER:** MongoDB Cloud limits this feature to dedicated cluster tiers of M10 and greater.
operationId: getEncryptionAtRest
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EncryptionAtRest"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Configuration for Encryption at Rest Using Customer-Managed Keys for One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement getEncryptionAtRest --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupEncryptionAtRestApiParams{}
sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
GetGroupEncryptionAtRestWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/getGroupEncryptionAtRest
patch:
description: |-
Updates the configuration for encryption at rest using the keys you manage through your cloud provider. MongoDB Cloud encrypts all storage even if you don't use your own key management. This feature isn't available for `M0` free clusters, `M2`, `M5`, or serverless clusters.
After you configure at least one Encryption at Rest using a Customer Key Management provider for the MongoDB Cloud project, Project Owners can enable Encryption at Rest using Customer Key Management for each MongoDB Cloud cluster for which they require encryption. The Encryption at Rest using Customer Key Management provider doesn't have to match the cluster cloud service provider. MongoDB Cloud doesn't automatically rotate user-managed encryption keys. Defer to your preferred Encryption at Rest using Customer Key Management provider's documentation and guidance for best practices on key rotation. MongoDB Cloud automatically creates a 90-day key rotation alert when you configure Encryption at Rest using Customer Key Management using your Key Management in an MongoDB Cloud project. MongoDB Cloud encrypts all storage whether or not you use your own key management.
operationId: updateEncryptionAtRest
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EncryptionAtRest"
description: |-
Required parameters depend on whether someone has enabled Encryption at Rest using Customer Key Management:
If you have enabled Encryption at Rest using Customer Key Management (CMK), Atlas requires all of the parameters for the desired encryption provider.
- To use AWS Key Management Service (KMS), MongoDB Cloud requires all the fields in the `awsKms` object.
- To use Azure Key Vault, MongoDB Cloud requires all the fields in the `azureKeyVault` object.
- To use Google Cloud Key Management Service (KMS), MongoDB Cloud requires all the fields in the `googleCloudKms` object For authentication, you must provide either `serviceAccountKey` (static credentials) or `roleId` (service-account–based authentication) Once `roleId` is configured, `serviceAccountKey` is no longer supported.
If you enabled Encryption at Rest using Customer Key Management, administrators can pass only the changed fields for the `awsKms`, `azureKeyVault`, or `googleCloudKms` object to update the configuration to this endpoint.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EncryptionAtRest"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update Encryption at Rest Configuration in One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement updateEncryptionAtRest --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupEncryptionAtRestApiParams{}
sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
UpdateGroupEncryptionAtRestWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/encryptionAtRest" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/encryptionAtRest" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/updateGroupEncryptionAtRest
/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints:
get:
description: Returns the private endpoints of the specified cloud provider for encryption at rest using customer key management.
operationId: listRestPrivateEndpoints
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cloud provider for the private endpoints to return.
in: path
name: cloudProvider
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasEARPrivateEndpoint"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Private Endpoints for Encryption at Rest Using Customer Key Management for One Cloud Provider in One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement listRestPrivateEndpoints --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupEncryptionAtRestPrivateEndpointsApiParams{}
sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
ListGroupEncryptionAtRestPrivateEndpointsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/listGroupEncryptionAtRestPrivateEndpoints
post:
description: Creates a private endpoint in the specified region for encryption at rest using customer key management.
operationId: createRestPrivateEndpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider for the private endpoint to create.
in: path
name: cloudProvider
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EARPrivateEndpoint"
description: Creates a private endpoint in the specified region.
required: true
responses:
"202":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EARPrivateEndpoint"
x-xgen-version: 2023-01-01
description: Accepted
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Private Endpoint for Encryption at Rest Using Customer Key Management for One Cloud Provider in One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement createRestPrivateEndpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupEncryptionAtRestPrivateEndpointApiParams{}
sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
CreateGroupEncryptionAtRestPrivateEndpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/createGroupEncryptionAtRestPrivateEndpoint
x-xgen-long-running-operation:
legacy: true
/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints/{endpointId}:
delete:
description: Deletes one private endpoint, identified by its ID, for encryption at rest using Customer Key Management.
operationId: requestPrivateEndpointDeletion
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider of the private endpoint to delete.
in: path
name: cloudProvider
required: true
schema:
type: string
- description: Unique 24-hexadecimal digit string that identifies the private endpoint to delete.
in: path
name: endpointId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Delete One Private Endpoint for Encryption at Rest Using Customer Key Management for One Cloud Provider from One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement requestPrivateEndpointDeletion --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.RequestGroupEncryptionAtRestPrivateEndpointDeletionApiParams{}
httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
RequestGroupEncryptionAtRestPrivateEndpointDeletionWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints/{endpointId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints/{endpointId}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/requestGroupEncryptionAtRestPrivateEndpointDeletion
x-xgen-method-verb-override:
customMethod: "True"
verb: requestDeletion
get:
description: Returns one private endpoint, identified by its ID, for encryption at rest using Customer Key Management.
operationId: getRestPrivateEndpoint
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the cloud provider of the private endpoint.
in: path
name: cloudProvider
required: true
schema:
type: string
- description: Unique 24-hexadecimal digit string that identifies the private endpoint.
in: path
name: endpointId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EARPrivateEndpoint"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Private Endpoint for Encryption at Rest Using Customer Key Management for One Cloud Provider in One Project
tags:
- Encryption at Rest using Customer Key Management
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api encryptionAtRestUsingCustomerKeyManagement getRestPrivateEndpoint --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupEncryptionAtRestPrivateEndpointApiParams{}
sdkResp, httpResp, err := client.EncryptionatRestusingCustomerKeyManagementApi.
GetGroupEncryptionAtRestPrivateEndpointWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints/{endpointId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/{cloudProvider}/privateEndpoints/{endpointId}?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Encryption-at-Rest-using-Customer-Key-Management/operation/getGroupEncryptionAtRestPrivateEndpoint
/api/atlas/v2/groups/{groupId}/events:
get:
description: |-
Returns events for the specified project. Events identify significant database, billing, or security activities or status changes.
This resource remains under revision and may change.
operationId: listGroupEvents
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the cluster.
in: query
name: clusterNames
schema:
items:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
type: array
style: form
- description: |-
Category of incident recorded at this moment in time.
**IMPORTANT**: The complete list of event type values changes frequently.
in: query
name: eventType
schema:
items:
$ref: "#/components/schemas/EventTypeForNdsGroup"
type: array
- description: |-
Category of event that you would like to exclude from query results, such as `CLUSTER_CREATED`.
**IMPORTANT**: Event type names change frequently. Verify that you specify the event type correctly by checking the complete list of event types.
in: query
name: excludedEventType
schema:
items:
$ref: "#/components/schemas/EventTypeForNdsGroup"
type: array
- description: Flag that indicates whether to include the raw document in the output. The raw document contains additional meta information about the event.
in: query
name: includeRaw
schema:
default: false
type: boolean
- description: Date and time from when MongoDB Cloud stops returning events. This parameter uses the ISO 8601 timestamp format in UTC.
in: query
name: maxDate
schema:
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
- description: Date and time from when MongoDB Cloud starts returning events. This parameter uses the ISO 8601 timestamp format in UTC.
in: query
name: minDate
schema:
externalDocs:
description: ISO 8601
url: https://en.wikipedia.org/wiki/ISO_8601
format: date-time
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupPaginatedEvent"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Events from One Project
tags:
- Events
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api events listGroupEvents --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupEventsApiParams{}
sdkResp, httpResp, err := client.EventsApi.
ListGroupEventsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/events?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/events?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Events/operation/listGroupEvents
/api/atlas/v2/groups/{groupId}/events/{eventId}:
get:
description: |-
Returns one event for the specified project. Events identify significant database, billing, or security activities or status changes. Use the Return Events from One Project endpoint to retrieve all events to which the authenticated user has access.
This resource remains under revision and may change.
externalDocs:
description: Return Events from One Project
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Events/operation/listProjectEvents
operationId: getGroupEvent
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the event that you want to return.
in: path
name: eventId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
- description: Flag that indicates whether to include the raw document in the output. The raw document contains additional meta information about the event.
in: query
name: includeRaw
schema:
default: false
type: boolean
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/EventViewForNdsGroup"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Event from One Project
tags:
- Events
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api events getGroupEvent --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupEventApiParams{}
sdkResp, httpResp, err := client.EventsApi.
GetGroupEventWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/events/{eventId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/events/{eventId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Events/operation/getGroupEvent
/api/atlas/v2/groups/{groupId}/flexClusters:
get:
description: Returns details for all flex clusters in the specified project.
operationId: listFlexClusters
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/PaginatedFlexClusters20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Flex Clusters from One Project
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters listFlexClusters --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupFlexClustersApiParams{}
sdkResp, httpResp, err := client.FlexClustersApi.
ListGroupFlexClustersWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/listGroupFlexClusters
post:
description: Creates one flex cluster in the specified project.
operationId: createFlexCluster
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescriptionCreate20241113"
description: Create One Flex Cluster in One Project.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescription20241113"
x-xgen-version: 2024-11-13
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Flex Cluster in One Project
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters createFlexCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupFlexClusterApiParams{}
sdkResp, httpResp, err := client.FlexClustersApi.
CreateGroupFlexClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-changelog:
2026-05-07: Updated NO_PAYMENT_INFORMATION_FOUND error message to include a link for users to add a payment method when no payment info is found.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/createGroupFlexCluster
/api/atlas/v2/groups/{groupId}/flexClusters/{name}:
delete:
description: Removes one flex cluster from the specified project. The flex cluster must have termination protection disabled in order to be deleted.
operationId: deleteFlexCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"204":
content:
application/vnd.atlas.2024-11-13+json:
x-xgen-version: 2024-11-13
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Flex Cluster from One Project
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters deleteFlexCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupFlexClusterApiParams{}
httpResp, err := client.FlexClustersApi.
DeleteGroupFlexClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/deleteGroupFlexCluster
get:
description: Returns details for one flex cluster in the specified project.
operationId: getFlexCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescription20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Flex Cluster from One Project
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters getFlexCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupFlexClusterApiParams{}
sdkResp, httpResp, err := client.FlexClustersApi.
GetGroupFlexClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/getGroupFlexCluster
patch:
description: Updates one flex cluster in the specified project.
operationId: updateFlexCluster
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescriptionUpdate20241113"
description: Update One Flex Cluster in One Project.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescription20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
summary: Update One Flex Cluster in One Project
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters updateFlexCluster --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupFlexClusterApiParams{}
sdkResp, httpResp, err := client.FlexClustersApi.
UpdateGroupFlexClusterWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/flexClusters/{name}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/flexClusters/{name}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/updateGroupFlexCluster
/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/download:
post:
description: Requests one snapshot for the specified flex cluster. This resource returns a `snapshotURL` that you can use to download the snapshot. This `snapshotURL` remains active for four hours after you make the request.
operationId: downloadFlexBackup
parameters:
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupSnapshotDownloadCreate20241113"
description: Snapshot to be downloaded.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupRestoreJob20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Download One Flex Cluster Snapshot
tags:
- Flex Snapshots
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexSnapshots downloadFlexBackup --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DownloadGroupFlexClusterBackupApiParams{}
sdkResp, httpResp, err := client.FlexSnapshotsApi.
DownloadGroupFlexClusterBackupWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/download" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/download" \
-d '{ }'
x-rolesRequirements:
- Project Backup Export Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Snapshots/operation/downloadGroupFlexClusterBackup
x-xgen-method-verb-override:
customMethod: "True"
/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs:
get:
description: Returns all restore jobs for one flex cluster from the specified project.
operationId: listFlexRestoreJobs
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasFlexBackupRestoreJob20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Restore Jobs for One Flex Cluster
tags:
- Flex Restore Jobs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexRestoreJobs listFlexRestoreJobs --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupFlexClusterBackupRestoreJobsApiParams{}
sdkResp, httpResp, err := client.FlexRestoreJobsApi.
ListGroupFlexClusterBackupRestoreJobsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Restore-Jobs/operation/listGroupFlexClusterBackupRestoreJobs
post:
description: Restores one snapshot of one flex cluster from the specified project.
operationId: createFlexRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster whose snapshot you want to restore.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupRestoreJobCreate20241113"
description: Restores one snapshot of one flex cluster from the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupRestoreJob20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Restore Job for One Flex Cluster
tags:
- Flex Restore Jobs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexRestoreJobs createFlexRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupFlexClusterBackupRestoreJobApiParams{}
sdkResp, httpResp, err := client.FlexRestoreJobsApi.
CreateGroupFlexClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs" \
-d '{ }'
x-rolesRequirements:
- Project Backup Recovery Operator
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Restore-Jobs/operation/createGroupFlexClusterBackupRestoreJob
/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs/{restoreJobId}:
get:
description: Returns one restore job for one flex cluster from the specified project.
operationId: getFlexRestoreJob
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the restore job to return.
in: path
name: restoreJobId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupRestoreJob20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Restore Job for One Flex Cluster
tags:
- Flex Restore Jobs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexRestoreJobs getFlexRestoreJob --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupFlexClusterBackupRestoreJobApiParams{}
sdkResp, httpResp, err := client.FlexRestoreJobsApi.
GetGroupFlexClusterBackupRestoreJobWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs/{restoreJobId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/restoreJobs/{restoreJobId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Restore-Jobs/operation/getGroupFlexClusterBackupRestoreJob
/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots:
get:
description: Returns all snapshots of one flex cluster from the specified project.
operationId: listFlexBackupSnapshots
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/PaginatedApiAtlasFlexBackupSnapshot20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Snapshots for One Flex Cluster
tags:
- Flex Snapshots
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexSnapshots listFlexBackupSnapshots --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupFlexClusterBackupSnapshotsApiParams{}
sdkResp, httpResp, err := client.FlexSnapshotsApi.
ListGroupFlexClusterBackupSnapshotsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Snapshots/operation/listGroupFlexClusterBackupSnapshots
/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots/{snapshotId}:
get:
description: Returns one snapshot of one flex cluster from the specified project.
operationId: getFlexBackupSnapshot
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the flex cluster.
in: path
name: name
required: true
schema:
pattern: ^[a-zA-Z0-9][a-zA-Z0-9-]*$
type: string
- description: Unique 24-hexadecimal digit string that identifies the desired snapshot.
in: path
name: snapshotId
required: true
schema:
example: 32b6e34b3d91647abb20e7b8
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexBackupSnapshot20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Snapshot for One Flex Cluster
tags:
- Flex Snapshots
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexSnapshots getFlexBackupSnapshot --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupFlexClusterBackupSnapshotApiParams{}
sdkResp, httpResp, err := client.FlexSnapshotsApi.
GetGroupFlexClusterBackupSnapshotWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots/{snapshotId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters/{name}/backup/snapshots/{snapshotId}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Snapshots/operation/getGroupFlexClusterBackupSnapshot
/api/atlas/v2/groups/{groupId}/flexClusters:tenantUpgrade:
post:
description: Upgrades a flex cluster to a dedicated cluster (M10+) in the specified project.
operationId: tenantUpgrade
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/AtlasTenantClusterUpgradeRequest20240805"
description: Details of the flex cluster upgrade in the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-11-13+json:
schema:
$ref: "#/components/schemas/FlexClusterDescription20241113"
x-xgen-version: 2024-11-13
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"402":
$ref: "#/components/responses/paymentRequired"
"403":
$ref: "#/components/responses/forbiddenOrResourcePolicyViolation"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Upgrade One Flex Cluster
tags:
- Flex Clusters
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api flexClusters tenantUpgrade --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.TenantGroupFlexClusterUpgradeApiParams{}
sdkResp, httpResp, err := client.FlexClustersApi.
TenantGroupFlexClusterUpgradeWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters:tenantUpgrade" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/flexClusters:tenantUpgrade" \
-d '{ }'
x-rolesRequirements:
- Project Cluster Manager
x-xgen-changelog:
2026-05-07: Updated NO_PAYMENT_INFORMATION_FOUND error message to include a link for users to add a payment method when no payment info is found.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Flex-Clusters/operation/tenantGroupFlexClusterUpgrade
/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics:
get:
description: Returns all Atlas Search metric types available for one process in the specified project. You must have the Project Read Only or higher role to view the Atlas Search metric types.
operationId: listHostFtsMetrics
parameters:
- $ref: "#/components/parameters/processId"
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/CloudSearchMetrics"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Atlas Search Metric Types for One Process
tags:
- Monitoring and Logs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api monitoringAndLogs listHostFtsMetrics --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupHostFtsMetricsApiParams{}
sdkResp, httpResp, err := client.MonitoringandLogsApi.
ListGroupHostFtsMetricsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Monitoring-and-Logs/operation/listGroupHostFtsMetrics
/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/{indexName}/measurements:
get:
description: Returns the Atlas Search metrics data series within the provided time range for one namespace and index name on the specified process. You must have the Project Read Only or higher role to view the Atlas Search metric types.
operationId: getIndexMeasurements
parameters:
- $ref: "#/components/parameters/processId"
- $ref: "#/components/parameters/indexName"
- $ref: "#/components/parameters/databaseName"
- $ref: "#/components/parameters/collectionName"
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/granularity"
- $ref: "#/components/parameters/period"
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- description: List that contains the measurements that MongoDB Atlas reports for the associated data series.
in: query
name: metrics
required: true
schema:
description: List that contains the measurements that MongoDB Atlas reports for the associated data series.
items:
type: string
maxItems: 10
type: array
uniqueItems: true
style: form
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/MeasurementsIndexes"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Atlas Search Metrics for One Index in One Namespace
tags:
- Monitoring and Logs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api monitoringAndLogs getIndexMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupHostFtsMetricIndexMeasurementsApiParams{}
sdkResp, httpResp, err := client.MonitoringandLogsApi.
GetGroupHostFtsMetricIndexMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/{indexName}/measurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/{indexName}/measurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Monitoring-and-Logs/operation/getGroupHostFtsMetricIndexMeasurements
/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/measurements:
get:
description: Returns the Atlas Search index metrics within the specified time range for one namespace in the specified process.
operationId: listIndexMeasurements
parameters:
- $ref: "#/components/parameters/processId"
- $ref: "#/components/parameters/databaseName"
- $ref: "#/components/parameters/collectionName"
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/granularity"
- $ref: "#/components/parameters/period"
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- description: List that contains the measurements that MongoDB Atlas reports for the associated data series.
in: query
name: metrics
required: true
schema:
description: List that contains the measurements that MongoDB Atlas reports for the associated data series.
items:
type: string
maxItems: 10
type: array
uniqueItems: true
style: form
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/MeasurementsIndexes"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Atlas Search Index Metrics for One Namespace
tags:
- Monitoring and Logs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api monitoringAndLogs listIndexMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupHostFtsMetricIndexMeasurementsApiParams{}
sdkResp, httpResp, err := client.MonitoringandLogsApi.
ListGroupHostFtsMetricIndexMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/measurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/indexes/{databaseName}/{collectionName}/measurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Monitoring-and-Logs/operation/listGroupHostFtsMetricIndexMeasurements
x-xgen-method-verb-override:
customMethod: false
verb: list
/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/measurements:
get:
description: Returns the Atlas Search hardware and status data series within the provided time range for one process in the specified project. You must have the Project Read Only or higher role to view the Atlas Search metric types.
operationId: listMeasurements
parameters:
- $ref: "#/components/parameters/processId"
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/granularity"
- $ref: "#/components/parameters/period"
- $ref: "#/components/parameters/start"
- $ref: "#/components/parameters/end"
- description: List that contains the metrics that you want MongoDB Atlas to report for the associated data series. If you don't set this parameter, this resource returns all hardware and status metrics for the associated data series.
in: query
name: metrics
required: true
schema:
description: List that contains the metrics that you want MongoDB Atlas to report for the associated data series. If you don't set this parameter, this resource returns all hardware and status metrics for the associated data series.
items:
type: string
maxItems: 10
type: array
uniqueItems: true
style: form
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/MeasurementsNonIndex"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return Atlas Search Hardware and Status Metrics
tags:
- Monitoring and Logs
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api monitoringAndLogs listMeasurements --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupHostFtsMetricMeasurementsApiParams{}
sdkResp, httpResp, err := client.MonitoringandLogsApi.
ListGroupHostFtsMetricMeasurementsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/measurements?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/hosts/{processId}/fts/metrics/measurements?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Monitoring-and-Logs/operation/listGroupHostFtsMetricMeasurements
/api/atlas/v2/groups/{groupId}/integrations:
get:
description: Returns the settings that permit integrations with all configured third-party services. These settings apply to all databases managed in one MongoDB Cloud project.
operationId: listGroupIntegrations
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedIntegration"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Active Third-Party Service Integrations
tags:
- Third-Party Integrations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api thirdPartyIntegrations listGroupIntegrations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupIntegrationsApiParams{}
sdkResp, httpResp, err := client.Third - PartyIntegrationsApi.
ListGroupIntegrationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Third-Party-Integrations/operation/listGroupIntegrations
/api/atlas/v2/groups/{groupId}/integrations/{integrationType}:
delete:
description: Removes the settings that permit configuring one third-party service integration. These settings apply to all databases managed in one MongoDB Cloud project. If you delete an integration from a project, you remove that integration configuration only for that project. This action doesn't affect any other project or organization's configured `{INTEGRATION-TYPE}` integrations.
operationId: deleteGroupIntegration
parameters:
- description: Human-readable label that identifies the service which you want to integrate with MongoDB Cloud.
in: path
name: integrationType
required: true
schema:
title: Integration Type
type: string
- $ref: "#/components/parameters/groupId"
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Third-Party Service Integration
tags:
- Third-Party Integrations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api thirdPartyIntegrations deleteGroupIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupIntegrationApiParams{}
httpResp, err := client.Third - PartyIntegrationsApi.
DeleteGroupIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}"
x-rolesRequirements:
- Project Owner
x-xgen-changelog:
2026-01-07: Log export to S3, Splunk, and Datadog is not supported by this API.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Third-Party-Integrations/operation/deleteGroupIntegration
get:
description: Returns the settings for configuring integration with one third-party service. These settings apply to all databases managed in one MongoDB Cloud project.
operationId: getGroupIntegration
parameters:
- $ref: "#/components/parameters/groupId"
- description: Human-readable label that identifies the service which you want to integrate with MongoDB Cloud.
in: path
name: integrationType
required: true
schema:
title: Integration Type
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ThirdPartyIntegration"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Third-Party Service Integration
tags:
- Third-Party Integrations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api thirdPartyIntegrations getGroupIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupIntegrationApiParams{}
sdkResp, httpResp, err := client.Third - PartyIntegrationsApi.
GetGroupIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-changelog:
2026-01-07: Log export to S3, Splunk, and Datadog is not supported by this API.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Third-Party-Integrations/operation/getGroupIntegration
post:
description: Adds the settings for configuring one third-party service integration. These settings apply to all databases managed in the specified MongoDB Cloud project. Each project can have only one configuration per `{INTEGRATION-TYPE}`.
operationId: createGroupIntegration
parameters:
- description: Human-readable label that identifies the service which you want to integrate with MongoDB Cloud.
in: path
name: integrationType
required: true
schema:
title: Integration Type
type: string
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ThirdPartyIntegration"
description: Third-party integration that you want to configure for your project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedIntegration"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Third-Party Service Integration
tags:
- Third-Party Integrations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api thirdPartyIntegrations createGroupIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupIntegrationApiParams{}
sdkResp, httpResp, err := client.Third - PartyIntegrationsApi.
CreateGroupIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-changelog:
2026-01-07: Log export to S3, Splunk, and Datadog is not supported by this API.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Third-Party-Integrations/operation/createGroupIntegration
put:
description: Updates the settings for configuring integration with one third-party service. These settings apply to all databases managed in one MongoDB Cloud project.
operationId: updateGroupIntegration
parameters:
- description: Human-readable label that identifies the service which you want to integrate with MongoDB Cloud.
in: path
name: integrationType
required: true
schema:
title: Integration Type
type: string
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/ThirdPartyIntegration"
description: Third-party integration that you want to configure for your project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/PaginatedIntegration"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Third-Party Service Integration
tags:
- Third-Party Integrations
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api thirdPartyIntegrations updateGroupIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupIntegrationApiParams{}
sdkResp, httpResp, err := client.Third - PartyIntegrationsApi.
UpdateGroupIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/integrations/{integrationType}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-changelog:
2026-01-07: Log export to S3, Splunk, and Datadog is not supported by this API.
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Third-Party-Integrations/operation/updateGroupIntegration
/api/atlas/v2/groups/{groupId}/invites:
get:
deprecated: true
description: Returns all pending invitations to the specified project.
operationId: listGroupInvites
parameters:
- $ref: "#/components/parameters/groupId"
- description: Email address of the user account invited to this project.
in: query
name: username
schema:
format: email
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/GroupInvitation"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Invitations in One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects listGroupInvites --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupInvitesApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
ListGroupInvitesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites?pretty=true"
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/listGroupInvites
patch:
deprecated: true
description: Updates the details of one pending invitation to the specified project. To specify which invitation to update, provide the username of the invited user.
operationId: updateGroupInvites
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitationRequest"
description: Updates the details of one pending invitation to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Invitation in One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects updateGroupInvites --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupInvitesApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
UpdateGroupInvitesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/invites" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/invites" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/updateGroupInvites
post:
deprecated: true
description: Invites one MongoDB Cloud user to join the specified project. The MongoDB Cloud user must accept the invitation to access information within the specified project.
operationId: createGroupInvite
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitationRequest"
description: Invites one MongoDB Cloud user to join the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create Invitation for One MongoDB Cloud User in One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects createGroupInvite --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupInviteApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
CreateGroupInviteWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/createGroupInvite
/api/atlas/v2/groups/{groupId}/invites/{invitationId}:
delete:
deprecated: true
description: "Cancels one pending invitation sent to the specified MongoDB Cloud user to join a project. You can't cancel an invitation that the user accepted. Note: deleting a project invitation does not delete an organization invitation even if they were created together."
operationId: deleteGroupInvite
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the invitation.
in: path
name: invitationId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Invitation from One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects deleteGroupInvite --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupInviteApiParams{}
httpResp, err := client.ProjectsApi.
DeleteGroupInviteWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites/{invitationId}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites/{invitationId}"
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/deleteGroupInvite
get:
deprecated: true
description: Returns the details of one pending invitation to the specified project.
operationId: getGroupInvite
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the invitation.
in: path
name: invitationId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Invitation in One Project by Invitation ID
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects getGroupInvite --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupInviteApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
GetGroupInviteWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites/{invitationId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/invites/{invitationId}?pretty=true"
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/getGroupInvite
patch:
deprecated: true
description: Updates the details of one pending invitation to the specified project. To specify which invitation to update, provide the unique identification string for that invitation. Use the Return All Project Invitations endpoint to retrieve IDs for all pending project invitations.
operationId: updateInviteById
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the invitation.
in: path
name: invitationId
required: true
schema:
pattern: ^([a-f0-9]{24})$
type: string
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitationUpdateRequest"
description: Updates the details of one pending invitation to the specified project.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupInvitation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Invitation in One Project by Invitation ID
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects updateInviteById --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupInviteByIdApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
UpdateGroupInviteByIdWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/invites/{invitationId}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/invites/{invitationId}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-sunset: 2027-07-01
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/updateGroupInviteById
x-xgen-method-verb-override:
customMethod: false
verb: updateById
/api/atlas/v2/groups/{groupId}/ipAddresses:
get:
description: Returns all IP addresses for this project.
operationId: getGroupIpAddresses
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/GroupIPAddresses"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All IP Addresses for One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects getGroupIpAddresses --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupIpAddressesApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
GetGroupIpAddressesWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/ipAddresses?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/ipAddresses?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/getGroupIpAddresses
/api/atlas/v2/groups/{groupId}/limits:
get:
description: Returns all the limits for the specified project.
operationId: listGroupLimits
parameters:
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
items:
$ref: "#/components/schemas/DataFederationLimit"
type: array
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Limits for One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects listGroupLimits --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupLimitsApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
ListGroupLimitsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/listGroupLimits
/api/atlas/v2/groups/{groupId}/limits/{limitName}:
delete:
description: Removes the specified project limit. Depending on the limit, Atlas either resets the limit to its default value or removes the limit entirely.
operationId: deleteGroupLimit
parameters:
- description: |
Human-readable label that identifies this project limit.
| Limit Name | Description | Default | API Override Limit |
| --- | --- | --- | --- |
| `atlas.project.deployment.clusters` | Limit on the number of clusters in this project | 25 | 100 |
| `atlas.project.deployment.nodesPerPrivateLinkRegion` | Limit on AWS PrivateLink addressable target nodes per region in this project. For sharded clusters using optimized (load-balanced) connection strings, `currentUsage` doesn't grow with the number of `mongos` — the load balancer is counted as a single addressable target regardless of how many `mongos` sit behind it. | 50 | 90 |
| `atlas.project.security.databaseAccess.customRoles` | Limit on the number of custom roles in this project | 100 | 1400 |
| `atlas.project.security.databaseAccess.users` | Limit on the number of database users in this project | 100 | 900 |
| `atlas.project.security.networkAccess.crossRegionEntries` | Limit on the number of cross-region network access entries in this project | 40 | 220 |
| `atlas.project.security.networkAccess.entries` | Limit on the number of network access entries in this project | 200 | 20 |
| `dataFederation.bytesProcessed.query` | Limit on the number of bytes processed during a single Data Federation query | N/A | N/A |
| `dataFederation.bytesProcessed.daily` | Limit on the number of bytes processed across all Data Federation tenants for the current day | N/A | N/A |
| `dataFederation.bytesProcessed.weekly` | Limit on the number of bytes processed across all Data Federation tenants for the current week | N/A | N/A |
| `dataFederation.bytesProcessed.monthly` | Limit on the number of bytes processed across all Data Federation tenants for the current month | N/A | N/A |
| `atlas.project.deployment.privateServiceConnectionsPerRegionGroup` | Number of Private Service Connections per Region Group | 50 | 100|
| `atlas.project.deployment.privateServiceConnectionsSubnetMask` | Subnet mask for GCP PSC Networks. Has lower limit of 20. | 27 | 27|
in: path
name: limitName
required: true
schema:
type: string
- $ref: "#/components/parameters/groupId"
responses:
"204":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Project Limit
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects deleteGroupLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupLimitApiParams{}
httpResp, err := client.ProjectsApi.
DeleteGroupLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits/{limitName}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits/{limitName}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/deleteGroupLimit
get:
description: Returns the specified limit for the specified project.
operationId: getGroupLimit
parameters:
- description: |
Human-readable label that identifies this project limit.
| Limit Name | Description | Default | API Override Limit |
| --- | --- | --- | --- |
| `atlas.project.deployment.clusters` | Limit on the number of clusters in this project | 25 | 100 |
| `atlas.project.deployment.nodesPerPrivateLinkRegion` | Limit on AWS PrivateLink addressable target nodes per region in this project. For sharded clusters using optimized (load-balanced) connection strings, `currentUsage` doesn't grow with the number of `mongos` — the load balancer is counted as a single addressable target regardless of how many `mongos` sit behind it. | 50 | 90 |
| `atlas.project.security.databaseAccess.customRoles` | Limit on the number of custom roles in this project | 100 | 1400 |
| `atlas.project.security.databaseAccess.users` | Limit on the number of database users in this project | 100 | 900 |
| `atlas.project.security.networkAccess.crossRegionEntries` | Limit on the number of cross-region network access entries in this project | 40 | 220 |
| `atlas.project.security.networkAccess.entries` | Limit on the number of network access entries in this project | 200 | 20 |
| `dataFederation.bytesProcessed.query` | Limit on the number of bytes processed during a single Data Federation query | N/A | N/A |
| `dataFederation.bytesProcessed.daily` | Limit on the number of bytes processed across all Data Federation tenants for the current day | N/A | N/A |
| `dataFederation.bytesProcessed.weekly` | Limit on the number of bytes processed across all Data Federation tenants for the current week | N/A | N/A |
| `dataFederation.bytesProcessed.monthly` | Limit on the number of bytes processed across all Data Federation tenants for the current month | N/A | N/A |
| `atlas.project.deployment.privateServiceConnectionsPerRegionGroup` | Number of Private Service Connections per Region Group | 50 | 100|
| `atlas.project.deployment.privateServiceConnectionsSubnetMask` | Subnet mask for GCP PSC Networks. Has lower limit of 20. | 27 | 27|
in: path
name: limitName
required: true
schema:
type: string
- $ref: "#/components/parameters/groupId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationLimit"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Limit for One Project
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects getGroupLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupLimitApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
GetGroupLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits/{limitName}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/limits/{limitName}?pretty=true"
x-rolesRequirements:
- Project Read Only
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/getGroupLimit
patch:
description: |-
Sets the specified project limit.
**NOTE**: Increasing the following configuration limits might lead to slower response times in the MongoDB Cloud UI or increased user management overhead leading to authentication or authorization re-architecture. If possible, we recommend that you create additional projects to gain access to more of these resources for a more sustainable growth pattern.
operationId: setGroupLimit
parameters:
- description: |
Human-readable label that identifies this project limit.
| Limit Name | Description | Default | API Override Limit |
| --- | --- | --- | --- |
| `atlas.project.deployment.clusters` | Limit on the number of clusters in this project | 25 | 100 |
| `atlas.project.deployment.nodesPerPrivateLinkRegion` | Limit on AWS PrivateLink addressable target nodes per region in this project. For sharded clusters using optimized (load-balanced) connection strings, `currentUsage` doesn't grow with the number of `mongos` — the load balancer is counted as a single addressable target regardless of how many `mongos` sit behind it. | 50 | 90 |
| `atlas.project.security.databaseAccess.customRoles` | Limit on the number of custom roles in this project | 100 | 1400 |
| `atlas.project.security.databaseAccess.users` | Limit on the number of database users in this project | 100 | 900 |
| `atlas.project.security.networkAccess.crossRegionEntries` | Limit on the number of cross-region network access entries in this project | 40 | 220 |
| `atlas.project.security.networkAccess.entries` | Limit on the number of network access entries in this project | 200 | 20 |
| `dataFederation.bytesProcessed.query` | Limit on the number of bytes processed during a single Data Federation query | N/A | N/A |
| `dataFederation.bytesProcessed.daily` | Limit on the number of bytes processed across all Data Federation tenants for the current day | N/A | N/A |
| `dataFederation.bytesProcessed.weekly` | Limit on the number of bytes processed across all Data Federation tenants for the current week | N/A | N/A |
| `dataFederation.bytesProcessed.monthly` | Limit on the number of bytes processed across all Data Federation tenants for the current month | N/A | N/A |
| `atlas.project.deployment.privateServiceConnectionsPerRegionGroup` | Number of Private Service Connections per Region Group | 50 | 100|
| `atlas.project.deployment.privateServiceConnectionsSubnetMask` | Subnet mask for GCP PSC Networks. Has lower limit of 20. | 27 | 27|
in: path
name: limitName
required: true
schema:
type: string
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationLimit"
description: Limit to update.
required: true
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/DataFederationLimit"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"409":
$ref: "#/components/responses/conflict"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Set One Project Limit
tags:
- Projects
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api projects setGroupLimit --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.SetGroupLimitApiParams{}
sdkResp, httpResp, err := client.ProjectsApi.
SetGroupLimitWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --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}/limits/{limitName}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--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}/limits/{limitName}" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Projects/operation/setGroupLimit
x-xgen-method-verb-override:
customMethod: "True"
verb: set
/api/atlas/v2/groups/{groupId}/liveMigrations:
post:
description: |-
Migrate one cluster that Cloud or Ops Manager manages to MongoDB Atlas.
Please make sure to validate your migration before initiating it.
You can use this API endpoint for push live migrations only. Your API Key must have the Organization Owner role to successfully call this resource.
**NOTE**: Migrating time-series collections is not yet supported on MongoDB 6.0 or higher. Migrations on MongoDB 6.0 or higher will skip any time-series collections on the source cluster. Deprecated versions: v2-{2023-01-01}
externalDocs:
description: Validate Migration
url: https://www.mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/validateMigration
operationId: createGroupLiveMigration
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/LiveMigrationRequest20240530"
x-xgen-version: 2024-05-30
description: One migration to be created.
required: true
responses:
"201":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/LiveMigrationResponse"
x-xgen-version: 2024-05-30
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Migration for One Local Managed Cluster to MongoDB Atlas
tags:
- Cloud Migration Service
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudMigrationService createGroupLiveMigration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupLiveMigrationApiParams{}
sdkResp, httpResp, err := client.CloudMigrationServiceApi.
CreateGroupLiveMigrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/createGroupLiveMigration
/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}:
get:
description: Return details of one cluster migration job. Each push live migration job uses one migration host. Your API Key must have the Organization Member role to successfully call this resource.
operationId: getGroupLiveMigration
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/liveMigrationId"
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/LiveMigrationResponse"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Migration Job
tags:
- Cloud Migration Service
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudMigrationService getGroupLiveMigration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupLiveMigrationApiParams{}
sdkResp, httpResp, err := client.CloudMigrationServiceApi.
GetGroupLiveMigrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}?pretty=true"
x-rolesRequirements:
- Organization Member
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/getGroupLiveMigration
/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}/cutover:
put:
description: Cut over the migrated cluster to MongoDB Atlas. Confirm when the cut over completes. When the cut over completes, MongoDB Atlas completes the live migration process and stops synchronizing with the source cluster. Your API Key must have the Organization Owner role to successfully call this resource.
operationId: cutoverMigration
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/liveMigrationId"
responses:
"202":
content:
application/vnd.atlas.2023-01-01+json:
x-xgen-version: 2023-01-01
description: Accepted.
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Cut Over One Migrated Cluster
tags:
- Cloud Migration Service
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudMigrationService cutoverMigration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CutoverGroupLiveMigrationApiParams{}
sdkResp, httpResp, err := client.CloudMigrationServiceApi.
CutoverGroupLiveMigrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}/cutover" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/{liveMigrationId}/cutover" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/cutoverGroupLiveMigration
x-xgen-long-running-operation:
legacy: true
x-xgen-method-verb-override:
customMethod: true
/api/atlas/v2/groups/{groupId}/liveMigrations/validate:
post:
description: "Verifies whether the provided credentials, available disk space, MongoDB versions, and so on meet the requirements of the migration request. If the check passes, the migration can proceed. Your API Key must have the Organization Owner role to successfully call this resource. Deprecated versions: v2-{2023-01-01}"
operationId: validateLiveMigrations
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/LiveMigrationRequest20240530"
x-xgen-version: 2024-05-30
description: One migration to be validated.
required: true
responses:
"200":
content:
application/vnd.atlas.2024-05-30+json:
schema:
$ref: "#/components/schemas/LiveImportValidation"
x-xgen-version: 2024-05-30
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Validate One Migration Request
tags:
- Cloud Migration Service
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudMigrationService validateLiveMigrations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ValidateGroupLiveMigrationsApiParams{}
sdkResp, httpResp, err := client.CloudMigrationServiceApi.
ValidateGroupLiveMigrationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate" \
-d '{ }'
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/validateGroupLiveMigrations
x-xgen-method-verb-override:
customMethod: true
/api/atlas/v2/groups/{groupId}/liveMigrations/validate/{validationId}:
get:
description: Return the status of one migration validation job. Your API Key must have the Organization Owner role to successfully call this resource.
operationId: getMigrationValidateStatus
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique 24-hexadecimal digit string that identifies the validation job.
in: path
name: validationId
required: true
schema:
example: 507f1f77bcf86cd799439011
pattern: ^([a-f0-9]{24})$
type: string
responses:
"200":
content:
application/vnd.atlas.2023-01-01+json:
schema:
$ref: "#/components/schemas/LiveImportValidation"
x-xgen-version: 2023-01-01
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Migration Validation Job
tags:
- Cloud Migration Service
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api cloudMigrationService getMigrationValidateStatus --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupLiveMigrationValidateStatusApiParams{}
sdkResp, httpResp, err := client.CloudMigrationServiceApi.
GetGroupLiveMigrationValidateStatusWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate/{validationId}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/liveMigrations/validate/{validationId}?pretty=true"
x-rolesRequirements:
- Organization Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Cloud-Migration-Service/operation/getGroupLiveMigrationValidateStatus
x-xgen-method-verb-override:
customMethod: true
verb: getStatus
/api/atlas/v2/groups/{groupId}/logIntegrations:
get:
description: Returns all log integration configurations for the project. Optionally filter by integration type.
operationId: listGroupLogIntegrations
parameters:
- $ref: "#/components/parameters/groupId"
- $ref: "#/components/parameters/includeCount"
- $ref: "#/components/parameters/itemsPerPage"
- $ref: "#/components/parameters/pageNum"
- description: Optional filter by integration type (e.g., `S3_LOG_EXPORT`).
in: query
name: integrationType
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/PaginatedLogIntegrationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return All Active Log Integrations
tags:
- Push-Based Log Export
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api pushBasedLogExport listGroupLogIntegrations --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.ListGroupLogIntegrationsApiParams{}
sdkResp, httpResp, err := client.Push - BasedLogExportApi.
ListGroupLogIntegrationsWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Push-Based-Log-Export/operation/listGroupLogIntegrations
post:
description: Creates a new log integration configuration identified by a unique ID.
operationId: createGroupLogIntegration
parameters:
- $ref: "#/components/parameters/groupId"
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/LogIntegrationRequest"
description: Log integration configuration to create.
required: true
responses:
"201":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/LogIntegrationResponse"
x-xgen-version: 2025-03-12
description: Created
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Create One Log Integration
tags:
- Push-Based Log Export
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api pushBasedLogExport createGroupLogIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.CreateGroupLogIntegrationApiParams{}
sdkResp, httpResp, err := client.Push - BasedLogExportApi.
CreateGroupLogIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations" \
-d '{ }'
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Push-Based-Log-Export/operation/createGroupLogIntegration
/api/atlas/v2/groups/{groupId}/logIntegrations/{id}:
delete:
description: Removes the configuration for one log integration identified by its unique ID.
operationId: deleteGroupLogIntegration
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique identifier of the log integration configuration.
in: path
name: id
required: true
schema:
type: string
responses:
"204":
content:
application/vnd.atlas.2025-03-12+json:
x-xgen-version: 2025-03-12
description: No Content
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Remove One Log Integration
tags:
- Push-Based Log Export
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api pushBasedLogExport deleteGroupLogIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.DeleteGroupLogIntegrationApiParams{}
httpResp, err := client.Push - BasedLogExportApi.
DeleteGroupLogIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Push-Based-Log-Export/operation/deleteGroupLogIntegration
get:
description: Returns the configuration for one log integration identified by its unique ID.
operationId: getGroupLogIntegration
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique identifier of the log integration configuration.
in: path
name: id
required: true
schema:
type: string
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/LogIntegrationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Return One Log Integration
tags:
- Push-Based Log Export
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api pushBasedLogExport getGroupLogIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.GetGroupLogIntegrationApiParams{}
sdkResp, httpResp, err := client.Push - BasedLogExportApi.
GetGroupLogIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}?pretty=true"
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
-X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}?pretty=true"
x-rolesRequirements:
- Project Owner
x-xgen-docs-url: https://mongodb.com/docs/atlas/reference/api-resources-spec/v2/#tag/Push-Based-Log-Export/operation/getGroupLogIntegration
put:
description: Updates the configuration for one log integration identified by its unique ID.
operationId: updateGroupLogIntegration
parameters:
- $ref: "#/components/parameters/groupId"
- description: Unique identifier of the log integration configuration.
in: path
name: id
required: true
schema:
type: string
requestBody:
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/LogIntegrationRequest"
description: Updated log integration configuration.
required: true
responses:
"200":
content:
application/vnd.atlas.2025-03-12+json:
schema:
$ref: "#/components/schemas/LogIntegrationResponse"
x-xgen-version: 2025-03-12
description: OK
headers:
RateLimit-Limit:
$ref: "#/components/headers/HeaderRateLimitLimit"
RateLimit-Remaining:
$ref: "#/components/headers/HeaderRateLimitRemaining"
"400":
$ref: "#/components/responses/badRequest"
"401":
$ref: "#/components/responses/unauthorized"
"403":
$ref: "#/components/responses/forbidden"
"404":
$ref: "#/components/responses/notFound"
"429":
$ref: "#/components/responses/tooManyRequests"
"500":
$ref: "#/components/responses/internalServerError"
summary: Update One Log Integration
tags:
- Push-Based Log Export
x-codeSamples:
- label: Atlas CLI
lang: cURL
source: atlas api pushBasedLogExport updateGroupLogIntegration --help
- label: Go
lang: go
source: |
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")
// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))
if err != nil {
log.Fatalf("Error: %v", err)
}
params = &sdk.UpdateGroupLogIntegrationApiParams{}
sdkResp, httpResp, err := client.Push - BasedLogExportApi.
UpdateGroupLogIntegrationWithParams(ctx, params).
Execute()
}
- label: curl (Service Accounts)
lang: cURL
source: |-
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}" \
-d '{ }'
- label: curl (Digest)
lang: cURL
source: |-
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
--digest --include \
--header "Accept: application/vnd.atlas.2025-03-12+json" \
--header "Content-Type: application/json" \
-X PUT "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/logIntegrations/{id}" \
-d '{