diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/MongoCluster.tsp b/specification/mongocluster/DocumentDB.MongoCluster.Management/MongoCluster.tsp index 35fd29c3dece..5245a1c6c5e4 100644 --- a/specification/mongocluster/DocumentDB.MongoCluster.Management/MongoCluster.tsp +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/MongoCluster.tsp @@ -20,8 +20,14 @@ model MongoCluster is TrackedResource { @visibility(Lifecycle.Read) @path name: string; + + ...ManagedServiceIdentityProperty; } +@@added(MongoCluster.identity, + Microsoft.DocumentDB.Versions.v2025_07_01_preview +); + @armResourceOperations interface MongoClusters { /** Gets information about a mongo cluster. */ @@ -198,6 +204,11 @@ model MongoClusterProperties { /** The authentication configuration for the cluster. */ @added(Versions.v2025_04_01_preview) authConfig?: AuthConfigProperties; + + /** The encryption configuration for the cluster. Depends on identity being configured. */ + @added(Versions.v2025_07_01_preview) + @visibility(Lifecycle.Read, Lifecycle.Create) + encryption?: EncryptionProperties; } /** The mode that the Mongo Cluster is created with. */ @@ -553,3 +564,39 @@ union AuthenticationMode { /** Microsoft Entra ID authentication mode using Entra users assigned to the cluster and auth mechanism 'MONGODB-OIDC'. */ "MicrosoftEntraID", } + +/** The type of identity for key encryption key. */ +@added(Versions.v2025_07_01_preview) +union KeyEncryptionKeyIdentityType { + string, + + /** User assigned identity. */ + UserAssignedIdentity: "UserAssignedIdentity", +} + +/** The encryption configuration for the mongo cluster. */ +@added(Versions.v2025_07_01_preview) +model EncryptionProperties { + /** Customer managed key encryption settings. */ + customerManagedKeyEncryption?: CustomerManagedKeyEncryptionProperties; +} + +/** Customer managed key encryption settings. */ +@added(Versions.v2025_07_01_preview) +model CustomerManagedKeyEncryptionProperties { + /** The identity used to access the key encryption key. */ + keyEncryptionKeyIdentity: KeyEncryptionKeyIdentity; + + /** The URI of the key vault key used for encryption. */ + keyEncryptionKeyUrl: string; +} + +/** The identity used for key encryption key. */ +@added(Versions.v2025_07_01_preview) +model KeyEncryptionKeyIdentity { + /** The type of identity. Only 'UserAssignedIdentity' is supported. */ + identityType: KeyEncryptionKeyIdentityType; + + /** The user assigned identity resource id. */ + userAssignedIdentityResourceId: string; +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/User.tsp b/specification/mongocluster/DocumentDB.MongoCluster.Management/User.tsp index 784b064c25be..caef393a03ac 100644 --- a/specification/mongocluster/DocumentDB.MongoCluster.Management/User.tsp +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/User.tsp @@ -121,5 +121,10 @@ union UserRole { string, /** Datbase owner role permissions on the target scope. */ + @removed(Versions.v2025_07_01_preview) DatabaseOwner: "dbOwner", + + /** Root role permissions on the target scope. */ + @added(Versions.v2025_07_01_preview) + Root: "root", } diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create.json new file mode 100644 index 000000000000..00da2a0af279 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create.json @@ -0,0 +1,147 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "ZoneRedundantPreferred" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica.json new file mode 100644 index 000000000000..ad07c1b8bf0e --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica.json @@ -0,0 +1,122 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a replica Mongo Cluster resource from a source resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myReplicaMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "centralus", + "properties": { + "createMode": "GeoReplica", + "replicaParameters": { + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "sourceLocation": "eastus" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 3 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "centralus" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica_CMK.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica_CMK.json new file mode 100644 index 000000000000..c6dc6e2ad430 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreateGeoReplica_CMK.json @@ -0,0 +1,190 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a replica Mongo Cluster resource with Customer Managed Key encryption from a source resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myReplicaMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "centralus", + "properties": { + "createMode": "GeoReplica", + "replicaParameters": { + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "sourceLocation": "eastus" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-08T10:00:00Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-08T12:00:00Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "createMode": "GeoReplica", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2025-06-08T12:30:00Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-08T10:00:00Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-08T10:00:00Z" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "createMode": "GeoReplica", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": {}, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR.json new file mode 100644 index 000000000000..de588ded19dc --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR.json @@ -0,0 +1,114 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a Mongo Cluster resource from a point in time restore", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "createMode": "PointInTimeRestore", + "restoreParameters": { + "pointInTimeUTC": "2023-01-13T20:07:35Z", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myOtherMongoCluster" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR_CMK.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR_CMK.json new file mode 100644 index 000000000000..1f3e53f6673b --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_CreatePITR_CMK.json @@ -0,0 +1,178 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a Mongo Cluster resource with Customer Managed Key encryption from a point in time restore", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "westus2", + "properties": { + "createMode": "PointInTimeRestore", + "restoreParameters": { + "pointInTimeUTC": "2023-01-13T20:07:35Z", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myOtherMongoCluster" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2025-06-01T20:07:35Z" + }, + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary", + "replicationState": "Active" + }, + "infrastructureVersion": "2.0", + "dataApi": { + "mode": "Disabled" + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-01T17:18:19.1234567Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-01T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": {}, + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + }, + "createMode": "PointInTimeRestore", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_CMK.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_CMK.json new file mode 100644 index 000000000000..21399cfc59a1 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_CMK.json @@ -0,0 +1,193 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource with Customer Managed Key encryption.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "storage": { + "sizeGb": 32 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "administrator": { + "userName": "mongoAdmin" + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": { + "earliestRestoreTime": "2025-06-13T01:23:33Z" + }, + "infrastructureVersion": "2.0", + "privateEndpointConnections": [], + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary", + "replicationState": "Active" + }, + "dataApi": { + "mode": "Disabled" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdAt": "2025-06-13T01:12:16.7522689Z", + "createdBy": "user1", + "createdByType": "User", + "lastModifiedAt": "2025-06-13T01:12:16.7522689Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "administrator": { + "userName": "mongoAdmin" + }, + "serverVersion": "7.0", + "compute": { + "tier": "M30" + }, + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": {}, + "privateEndpointConnections": [], + "publicNetworkAccess": "Enabled", + "replica": { + "role": "Primary" + }, + "infrastructureVersion": "2.0", + "dataApi": { + "mode": "Disabled" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_SSDv2.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_SSDv2.json new file mode 100644 index 000000000000..1d7a0825871c --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Create_SSDv2.json @@ -0,0 +1,154 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource with Premium SSDv2 storage.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "ZoneRedundantPreferred" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Delete.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Delete.json new file mode 100644 index 000000000000..be35b89feae4 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Delete.json @@ -0,0 +1,19 @@ +{ + "operationId": "MongoClusters_Delete", + "title": "Deletes a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleCreate.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleCreate.json new file mode 100644 index 000000000000..f4befdfe490f --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleCreate.json @@ -0,0 +1,65 @@ +{ + "operationId": "FirewallRules_CreateOrUpdate", + "title": "Creates a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview", + "resource": { + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleDelete.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleDelete.json new file mode 100644 index 000000000000..9f5e12cdb965 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleDelete.json @@ -0,0 +1,20 @@ +{ + "operationId": "FirewallRules_Delete", + "title": "Deletes a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleGet.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleGet.json new file mode 100644 index 000000000000..27cfe1a8bf4e --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleGet.json @@ -0,0 +1,33 @@ +{ + "operationId": "FirewallRules_Get", + "title": "Gets a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleList.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleList.json new file mode 100644 index 000000000000..7bd1ba97e3bb --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_FirewallRuleList.json @@ -0,0 +1,54 @@ +{ + "operationId": "FirewallRules_ListByMongoCluster", + "title": "List the firewall rules on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule2", + "name": "rule2", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "1.0.0.0", + "endIpAddress": "255.0.0.0" + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ForcePromoteReplica.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ForcePromoteReplica.json new file mode 100644 index 000000000000..4415584f93a9 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ForcePromoteReplica.json @@ -0,0 +1,22 @@ +{ + "operationId": "MongoClusters_Promote", + "title": "Promotes a replica Mongo Cluster resource to a primary role.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "body": { + "promoteOption": "Forced", + "mode": "Switchover" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Get.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Get.json new file mode 100644 index 000000000000..493d9f056825 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Get.json @@ -0,0 +1,72 @@ +{ + "operationId": "MongoClusters_Get", + "title": "Gets a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_List.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_List.json new file mode 100644 index 000000000000..d4b3f0e549bf --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_List.json @@ -0,0 +1,130 @@ +{ + "operationId": "MongoClusters_List", + "title": "Lists the Mongo Cluster resources in a subscription.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster2", + "name": "myMongoCluster2", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string" + }, + "systemData": { + "createdBy": "user2", + "createdByType": "User", + "createdAt": "2020-02-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M40" + }, + "sharding": { + "shardCount": 2 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "1.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "eastus" + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListByResourceGroup.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListByResourceGroup.json new file mode 100644 index 000000000000..00fb414f5f5f --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "operationId": "MongoClusters_ListByResourceGroup", + "title": "Lists the Mongo Cluster resources in a resource group.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster2", + "name": "myMongoCluster2", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string" + }, + "systemData": { + "createdBy": "user2", + "createdByType": "User", + "createdAt": "2020-02-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M40" + }, + "sharding": { + "shardCount": 2 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "1.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster2.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "eastus" + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListConnectionStrings.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListConnectionStrings.json new file mode 100644 index 000000000000..b7067136990e --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ListConnectionStrings.json @@ -0,0 +1,22 @@ +{ + "operationId": "MongoClusters_ListConnectionStrings", + "title": "List the available connection strings for the Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "description": "default connection string" + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability.json new file mode 100644 index 000000000000..dc6d4ce9de37 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability.json @@ -0,0 +1,21 @@ +{ + "operationId": "MongoClusters_CheckNameAvailability", + "title": "Checks and confirms the Mongo Cluster name is availability for use.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "location": "westus2", + "api-version": "2025-07-01-preview", + "body": { + "name": "newmongocluster", + "type": "Microsoft.DocumentDB/mongoClusters" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability_AlreadyExists.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..0b16bc7b2ee7 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_NameAvailability_AlreadyExists.json @@ -0,0 +1,23 @@ +{ + "operationId": "MongoClusters_CheckNameAvailability", + "title": "Checks and returns that the Mongo Cluster name is already in-use.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "location": "westus2", + "api-version": "2025-07-01-preview", + "body": { + "name": "existingmongocluster", + "type": "Microsoft.DocumentDB/mongoClusters" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Cluster name 'existingmongocluster' is already in use." + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDataApi.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDataApi.json new file mode 100644 index 000000000000..a2e70747cca9 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDataApi.json @@ -0,0 +1,105 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Enables data API on a mongo cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "dataApi": { + "mode": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/mymongocluster-pe.ffffffff-ffff-ffff-ffff-ffffffffffff", + "systemData": { + "createdAt": "2024-02-06T04:00:25.0509765Z", + "createdBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "createdByType": "Application", + "lastModifiedAt": "2024-02-06T04:00:25.0509765Z", + "lastModifiedBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "lastModifiedByType": "Application" + }, + "properties": { + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.Network/privateEndpoints/mymongocluster-pe" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Disabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Enabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDiskSize.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDiskSize.json new file mode 100644 index 000000000000..6924acac3928 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchDiskSize.json @@ -0,0 +1,79 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the disk size on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "storage": { + "sizeGb": 256 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchEnableEntraIDAuth.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchEnableEntraIDAuth.json new file mode 100644 index 000000000000..875cab23109f --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchEnableEntraIDAuth.json @@ -0,0 +1,83 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the allowed authentication modes to include Microsoft Entra ID authentication.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "authConfig": { + "allowedModes": [ + "NativeAuth", + "MicrosoftEntraID" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth", + "MicrosoftEntraID" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchPrivateNetworkAccess.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchPrivateNetworkAccess.json new file mode 100644 index 000000000000..48d21dd8f377 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchPrivateNetworkAccess.json @@ -0,0 +1,103 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Disables public network access on a Mongo Cluster resource with a private endpoint connection.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "publicNetworkAccess": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/mymongocluster-pe.ffffffff-ffff-ffff-ffff-ffffffffffff", + "systemData": { + "createdAt": "2024-02-06T04:00:25.0509765Z", + "createdBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "createdByType": "Application", + "lastModifiedAt": "2024-02-06T04:00:25.0509765Z", + "lastModifiedBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "lastModifiedByType": "Application" + }, + "properties": { + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.Network/privateEndpoints/mymongocluster-pe" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Disabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchSSDv2.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchSSDv2.json new file mode 100644 index 000000000000..f58366b6ce77 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PatchSSDv2.json @@ -0,0 +1,84 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the Premium SSDv2 size, IOPS and throughput on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "storage": { + "sizeGb": 128, + "type": "PremiumSSDv2", + "iops": 5000, + "throughput": 1000 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSDv2", + "iops": 5000, + "throughput": 1000 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionDelete.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..cabdb2bf21ac --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionDelete.json @@ -0,0 +1,19 @@ +{ + "operationId": "PrivateEndpointConnections_Delete", + "title": "Delete a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "privateEndpointConnectionName": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionGet.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..3198c227e8e9 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionGet.json @@ -0,0 +1,42 @@ +{ + "operationId": "PrivateEndpointConnections_Get", + "title": "Get a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "privateEndpointConnectionName": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionList.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..ea742ccccf58 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionList.json @@ -0,0 +1,45 @@ +{ + "operationId": "PrivateEndpointConnections_ListByMongoCluster", + "title": "Lists the private endpoint connection resources on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionPut.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionPut.json new file mode 100644 index 000000000000..9957f4635147 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateEndpointConnectionPut.json @@ -0,0 +1,85 @@ +{ + "operationId": "PrivateEndpointConnections_Create", + "title": "Approves a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "privateEndpointConnectionName": "pecTest", + "resource": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin", + "actionsRequired": "None" + } + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateLinkResourceList.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateLinkResourceList.json new file mode 100644 index 000000000000..5f552245b3b0 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_PrivateLinkResourceList.json @@ -0,0 +1,32 @@ +{ + "operationId": "PrivateLinks_ListByMongoCluster", + "title": "Lists the private link resources available on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateLinkResources/MongoCluster", + "name": "MongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters/privateLinkResources", + "properties": { + "groupId": "MongoCluster", + "requiredMembers": [ + "c.p7ex3v2euquypn" + ], + "requiredZoneNames": [ + "privatelink.mongocluster.cosmos.azure.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ReplicaList.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ReplicaList.json new file mode 100644 index 000000000000..06363c76efd9 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ReplicaList.json @@ -0,0 +1,24 @@ +{ + "operationId": "Replicas_ListByParent", + "title": "List the replicas linked to a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ResetPassword.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ResetPassword.json new file mode 100644 index 000000000000..397be5c126a7 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_ResetPassword.json @@ -0,0 +1,80 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Resets the administrator login password.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Update.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Update.json new file mode 100644 index 000000000000..7eb4073be50c --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_Update.json @@ -0,0 +1,104 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates a Mongo Cluster resource", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M50" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "previewFeatures": [], + "publicNetworkAccess": "Enabled", + "dataApi": { + "mode": "Disabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M50" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserCreateOrUpdate.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserCreateOrUpdate.json new file mode 100644 index 000000000000..b192c8b1d2f0 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserCreateOrUpdate.json @@ -0,0 +1,89 @@ +{ + "operationId": "Users_CreateOrUpdate", + "title": "Creates a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview", + "resource": { + "properties": { + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserDelete.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserDelete.json new file mode 100644 index 000000000000..88dd402e91a4 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserDelete.json @@ -0,0 +1,20 @@ +{ + "operationId": "Users_Delete", + "title": "Deletes a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserGet.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserGet.json new file mode 100644 index 000000000000..453b650f730a --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserGet.json @@ -0,0 +1,43 @@ +{ + "operationId": "Users_Get", + "title": "Gets a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserList.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserList.json new file mode 100644 index 000000000000..04c608d7ada9 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/MongoClusters_UserList.json @@ -0,0 +1,74 @@ +{ + "operationId": "Users_ListByMongoCluster", + "title": "List the users on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/ssssssss-ssss-ssss-ssss-ssssssssssss", + "name": "ssssssss-ssss-ssss-ssss-ssssssssssss", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "servicePrincipal" + } + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/Operations_List.json b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/Operations_List.json new file mode 100644 index 000000000000..573a77a0af14 --- /dev/null +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/examples/2025-07-01-preview/Operations_List.json @@ -0,0 +1,35 @@ +{ + "operationId": "Operations_List", + "title": "Operations_List", + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "description": "ARM operation completed successfully.", + "body": { + "value": [ + { + "name": "Microsoft.DocumentDB/mongoClusters/read", + "display": { + "provider": "Microsoft.DocumentDB", + "resource": "Mongo Cluster", + "operation": "Read Mongo Clusters", + "description": "Reads a Mongo Cluster or list all Mongo Clusters." + } + }, + { + "name": "Microsoft.DocumentDB/mongoClusters/write", + "display": { + "provider": "Microsoft.DocumentDB", + "resource": "Mongo Cluster", + "operation": "Create or Update Mongo Cluster", + "description": "Create or Update the properties or tags of the specified Mongo Cluster." + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/DocumentDB.MongoCluster.Management/main.tsp b/specification/mongocluster/DocumentDB.MongoCluster.Management/main.tsp index 4e338c67e4c9..0d304af1c1d3 100644 --- a/specification/mongocluster/DocumentDB.MongoCluster.Management/main.tsp +++ b/specification/mongocluster/DocumentDB.MongoCluster.Management/main.tsp @@ -48,4 +48,9 @@ enum Versions { @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2025_04_01_preview: "2025-04-01-preview", + + /** Azure Cosmos DB for Mongo vCore clusters api version 2025-07-01-preview. */ + @useDependency(Azure.ResourceManager.Versions.v1_0_Preview_1) + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2025_07_01_preview: "2025-07-01-preview", } diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create.json new file mode 100644 index 000000000000..00da2a0af279 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create.json @@ -0,0 +1,147 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "ZoneRedundantPreferred" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica.json new file mode 100644 index 000000000000..ad07c1b8bf0e --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica.json @@ -0,0 +1,122 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a replica Mongo Cluster resource from a source resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myReplicaMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "centralus", + "properties": { + "createMode": "GeoReplica", + "replicaParameters": { + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "sourceLocation": "eastus" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 3 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "centralus" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "centralus" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica_CMK.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica_CMK.json new file mode 100644 index 000000000000..c6dc6e2ad430 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreateGeoReplica_CMK.json @@ -0,0 +1,190 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a replica Mongo Cluster resource with Customer Managed Key encryption from a source resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myReplicaMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "centralus", + "properties": { + "createMode": "GeoReplica", + "replicaParameters": { + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "sourceLocation": "eastus" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-08T10:00:00Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-08T12:00:00Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "createMode": "GeoReplica", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2025-06-08T12:30:00Z" + }, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "centralus", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-08T10:00:00Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-08T10:00:00Z" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "createMode": "GeoReplica", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": {}, + "previewFeatures": [ + "GeoReplicas" + ], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myReplicaMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "GeoAsyncReplica", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/mySourceMongoCluster", + "replicationState": "Provisioning" + }, + "dataApi": { + "mode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR.json new file mode 100644 index 000000000000..de588ded19dc --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR.json @@ -0,0 +1,114 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a Mongo Cluster resource from a point in time restore", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "createMode": "PointInTimeRestore", + "restoreParameters": { + "pointInTimeUTC": "2023-01-13T20:07:35Z", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myOtherMongoCluster" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR_CMK.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR_CMK.json new file mode 100644 index 000000000000..1f3e53f6673b --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_CreatePITR_CMK.json @@ -0,0 +1,178 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a Mongo Cluster resource with Customer Managed Key encryption from a point in time restore", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "westus2", + "properties": { + "createMode": "PointInTimeRestore", + "restoreParameters": { + "pointInTimeUTC": "2023-01-13T20:07:35Z", + "sourceResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myOtherMongoCluster" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2025-06-01T20:07:35Z" + }, + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary", + "replicationState": "Active" + }, + "infrastructureVersion": "2.0", + "dataApi": { + "mode": "Disabled" + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2025-06-01T17:18:19.1234567Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User", + "lastModifiedAt": "2025-06-01T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": {}, + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + }, + "createMode": "PointInTimeRestore", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_CMK.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_CMK.json new file mode 100644 index 000000000000..21399cfc59a1 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_CMK.json @@ -0,0 +1,193 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource with Customer Managed Key encryption.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity": {} + } + }, + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "storage": { + "sizeGb": 32 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.ManagedIdentity/userAssignedIdentities/myidentity" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "clusterStatus": "Ready", + "administrator": { + "userName": "mongoAdmin" + }, + "serverVersion": "7.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": { + "earliestRestoreTime": "2025-06-13T01:23:33Z" + }, + "infrastructureVersion": "2.0", + "privateEndpointConnections": [], + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary", + "replicationState": "Active" + }, + "dataApi": { + "mode": "Disabled" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "11111111-1111-1111-1111-111111111111" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters", + "tags": {}, + "location": "westus2", + "systemData": { + "createdAt": "2025-06-13T01:12:16.7522689Z", + "createdBy": "user1", + "createdByType": "User", + "lastModifiedAt": "2025-06-13T01:12:16.7522689Z", + "lastModifiedBy": "user1", + "lastModifiedByType": "User" + }, + "properties": { + "provisioningState": "InProgress", + "clusterStatus": "Provisioning", + "administrator": { + "userName": "mongoAdmin" + }, + "serverVersion": "7.0", + "compute": { + "tier": "M30" + }, + "storage": { + "sizeGb": 32, + "type": "PremiumSSD" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "Disabled" + }, + "backup": {}, + "privateEndpointConnections": [], + "publicNetworkAccess": "Enabled", + "replica": { + "role": "Primary" + }, + "infrastructureVersion": "2.0", + "dataApi": { + "mode": "Disabled" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "createMode": "Default", + "encryption": { + "customerManagedKeyEncryption": { + "keyEncryptionKeyIdentity": { + "identityType": "UserAssignedIdentity", + "userAssignedIdentityResourceId": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster" + }, + "keyEncryptionKeyUrl": "https://myVault.vault.azure.net/keys/myKey" + } + } + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster": {} + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_SSDv2.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_SSDv2.json new file mode 100644 index 000000000000..1d7a0825871c --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Create_SSDv2.json @@ -0,0 +1,154 @@ +{ + "operationId": "MongoClusters_CreateOrUpdate", + "title": "Creates a new Mongo Cluster resource with Premium SSDv2 storage.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "resource": { + "location": "westus2", + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "ZoneRedundantPreferred" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 32, + "type": "PremiumSSDv2", + "iops": 3000, + "throughput": 125 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 1 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Delete.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Delete.json new file mode 100644 index 000000000000..be35b89feae4 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Delete.json @@ -0,0 +1,19 @@ +{ + "operationId": "MongoClusters_Delete", + "title": "Deletes a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleCreate.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleCreate.json new file mode 100644 index 000000000000..f4befdfe490f --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleCreate.json @@ -0,0 +1,65 @@ +{ + "operationId": "FirewallRules_CreateOrUpdate", + "title": "Creates a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview", + "resource": { + "properties": { + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleDelete.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleDelete.json new file mode 100644 index 000000000000..9f5e12cdb965 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleDelete.json @@ -0,0 +1,20 @@ +{ + "operationId": "FirewallRules_Delete", + "title": "Deletes a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleGet.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleGet.json new file mode 100644 index 000000000000..27cfe1a8bf4e --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleGet.json @@ -0,0 +1,33 @@ +{ + "operationId": "FirewallRules_Get", + "title": "Gets a firewall rule on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "firewallRuleName": "rule1", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleList.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleList.json new file mode 100644 index 000000000000..7bd1ba97e3bb --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_FirewallRuleList.json @@ -0,0 +1,54 @@ +{ + "operationId": "FirewallRules_ListByMongoCluster", + "title": "List the firewall rules on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule1", + "name": "rule1", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "0.0.0.0", + "endIpAddress": "255.255.255.255" + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/firewallRules/rule2", + "name": "rule2", + "type": "/Microsoft.DocumentDB/mongoClusters/firewallRules", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "startIpAddress": "1.0.0.0", + "endIpAddress": "255.0.0.0" + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ForcePromoteReplica.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ForcePromoteReplica.json new file mode 100644 index 000000000000..4415584f93a9 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ForcePromoteReplica.json @@ -0,0 +1,22 @@ +{ + "operationId": "MongoClusters_Promote", + "title": "Promotes a replica Mongo Cluster resource to a primary role.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "body": { + "promoteOption": "Forced", + "mode": "Switchover" + } + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Get.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Get.json new file mode 100644 index 000000000000..493d9f056825 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Get.json @@ -0,0 +1,72 @@ +{ + "operationId": "MongoClusters_Get", + "title": "Gets a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_List.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_List.json new file mode 100644 index 000000000000..d4b3f0e549bf --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_List.json @@ -0,0 +1,130 @@ +{ + "operationId": "MongoClusters_List", + "title": "Lists the Mongo Cluster resources in a subscription.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster2", + "name": "myMongoCluster2", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string" + }, + "systemData": { + "createdBy": "user2", + "createdByType": "User", + "createdAt": "2020-02-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M40" + }, + "sharding": { + "shardCount": 2 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "1.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "eastus" + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListByResourceGroup.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListByResourceGroup.json new file mode 100644 index 000000000000..00fb414f5f5f --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListByResourceGroup.json @@ -0,0 +1,131 @@ +{ + "operationId": "MongoClusters_ListByResourceGroup", + "title": "Lists the Mongo Cluster resources in a resource group.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string", + "additionalProp2": "string", + "additionalProp3": "string" + }, + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster2", + "name": "myMongoCluster2", + "type": "/Microsoft.DocumentDB/mongoClusters", + "tags": { + "additionalProp1": "string" + }, + "systemData": { + "createdBy": "user2", + "createdByType": "User", + "createdAt": "2020-02-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-02-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M40" + }, + "sharding": { + "shardCount": 2 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "1.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster2.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "eastus" + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListConnectionStrings.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListConnectionStrings.json new file mode 100644 index 000000000000..b7067136990e --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ListConnectionStrings.json @@ -0,0 +1,22 @@ +{ + "operationId": "MongoClusters_ListConnectionStrings", + "title": "List the available connection strings for the Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "connectionStrings": [ + { + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "description": "default connection string" + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability.json new file mode 100644 index 000000000000..dc6d4ce9de37 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability.json @@ -0,0 +1,21 @@ +{ + "operationId": "MongoClusters_CheckNameAvailability", + "title": "Checks and confirms the Mongo Cluster name is availability for use.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "location": "westus2", + "api-version": "2025-07-01-preview", + "body": { + "name": "newmongocluster", + "type": "Microsoft.DocumentDB/mongoClusters" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability_AlreadyExists.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability_AlreadyExists.json new file mode 100644 index 000000000000..0b16bc7b2ee7 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_NameAvailability_AlreadyExists.json @@ -0,0 +1,23 @@ +{ + "operationId": "MongoClusters_CheckNameAvailability", + "title": "Checks and returns that the Mongo Cluster name is already in-use.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "location": "westus2", + "api-version": "2025-07-01-preview", + "body": { + "name": "existingmongocluster", + "type": "Microsoft.DocumentDB/mongoClusters" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "AlreadyExists", + "message": "Cluster name 'existingmongocluster' is already in use." + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDataApi.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDataApi.json new file mode 100644 index 000000000000..a2e70747cca9 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDataApi.json @@ -0,0 +1,105 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Enables data API on a mongo cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "dataApi": { + "mode": "Enabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/mymongocluster-pe.ffffffff-ffff-ffff-ffff-ffffffffffff", + "systemData": { + "createdAt": "2024-02-06T04:00:25.0509765Z", + "createdBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "createdByType": "Application", + "lastModifiedAt": "2024-02-06T04:00:25.0509765Z", + "lastModifiedBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "lastModifiedByType": "Application" + }, + "properties": { + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.Network/privateEndpoints/mymongocluster-pe" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Disabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Enabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDiskSize.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDiskSize.json new file mode 100644 index 000000000000..6924acac3928 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchDiskSize.json @@ -0,0 +1,79 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the disk size on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "storage": { + "sizeGb": 256 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchEnableEntraIDAuth.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchEnableEntraIDAuth.json new file mode 100644 index 000000000000..875cab23109f --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchEnableEntraIDAuth.json @@ -0,0 +1,83 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the allowed authentication modes to include Microsoft Entra ID authentication.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "authConfig": { + "allowedModes": [ + "NativeAuth", + "MicrosoftEntraID" + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth", + "MicrosoftEntraID" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchPrivateNetworkAccess.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchPrivateNetworkAccess.json new file mode 100644 index 000000000000..48d21dd8f377 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchPrivateNetworkAccess.json @@ -0,0 +1,103 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Disables public network access on a Mongo Cluster resource with a private endpoint connection.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "publicNetworkAccess": "Disabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/mymongocluster-pe.ffffffff-ffff-ffff-ffff-ffffffffffff", + "systemData": { + "createdAt": "2024-02-06T04:00:25.0509765Z", + "createdBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "createdByType": "Application", + "lastModifiedAt": "2024-02-06T04:00:25.0509765Z", + "lastModifiedBy": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "lastModifiedByType": "Application" + }, + "properties": { + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.Network/privateEndpoints/mymongocluster-pe" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ], + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Disabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchSSDv2.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchSSDv2.json new file mode 100644 index 000000000000..f58366b6ce77 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PatchSSDv2.json @@ -0,0 +1,84 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates the Premium SSDv2 size, IOPS and throughput on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "storage": { + "sizeGb": 128, + "type": "PremiumSSDv2", + "iops": 5000, + "throughput": 1000 + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 128, + "type": "PremiumSSDv2", + "iops": 5000, + "throughput": 1000 + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionDelete.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionDelete.json new file mode 100644 index 000000000000..cabdb2bf21ac --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionDelete.json @@ -0,0 +1,19 @@ +{ + "operationId": "PrivateEndpointConnections_Delete", + "title": "Delete a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "privateEndpointConnectionName": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionGet.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionGet.json new file mode 100644 index 000000000000..3198c227e8e9 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionGet.json @@ -0,0 +1,42 @@ +{ + "operationId": "PrivateEndpointConnections_Get", + "title": "Get a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "privateEndpointConnectionName": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionList.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionList.json new file mode 100644 index 000000000000..ea742ccccf58 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionList.json @@ -0,0 +1,45 @@ +{ + "operationId": "PrivateEndpointConnections_ListByMongoCluster", + "title": "Lists the private endpoint connection resources on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionPut.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionPut.json new file mode 100644 index 000000000000..9957f4635147 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateEndpointConnectionPut.json @@ -0,0 +1,85 @@ +{ + "operationId": "PrivateEndpointConnections_Create", + "title": "Approves a private endpoint connection on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "privateEndpointConnectionName": "pecTest", + "resource": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-Approved" + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin", + "actionsRequired": "None" + } + } + } + }, + "201": { + "body": { + "name": "pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateEndpointConnections/pecTest.5d393f64-ef64-46d0-9959-308321c44ac0", + "type": "Microsoft.DocumentDB/mongoClusters/privateEndpointConnections", + "systemData": { + "createdAt": "2024-02-09T05:51:31.1386869Z", + "createdBy": "2df9eb86-36b5-49dc-86ae-9a63135bfa8c", + "createdByType": "Application", + "lastModifiedAt": "2024-02-09T05:51:31.1386869Z", + "lastModifiedBy": "2ff9eb86-36b5-49dc-86ae-9a63135bfa8c", + "lastModifiedByType": "Application" + }, + "properties": { + "provisioningState": "Succeeded", + "privateEndpoint": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.Network/privateEndpoints/pecTest" + }, + "groupIds": [ + "MongoCluster" + ], + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Approved by admin", + "actionsRequired": "None" + } + } + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateLinkResourceList.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateLinkResourceList.json new file mode 100644 index 000000000000..5f552245b3b0 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_PrivateLinkResourceList.json @@ -0,0 +1,32 @@ +{ + "operationId": "PrivateLinks_ListByMongoCluster", + "title": "Lists the private link resources available on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/privateLinkResources/MongoCluster", + "name": "MongoCluster", + "type": "Microsoft.DocumentDB/mongoClusters/privateLinkResources", + "properties": { + "groupId": "MongoCluster", + "requiredMembers": [ + "c.p7ex3v2euquypn" + ], + "requiredZoneNames": [ + "privatelink.mongocluster.cosmos.azure.com" + ] + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ReplicaList.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ReplicaList.json new file mode 100644 index 000000000000..06363c76efd9 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ReplicaList.json @@ -0,0 +1,24 @@ +{ + "operationId": "Replicas_ListByParent", + "title": "List the replicas linked to a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myReplicaMongoCluster", + "name": "myReplicaMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "properties": {} + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ResetPassword.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ResetPassword.json new file mode 100644 index 000000000000..397be5c126a7 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_ResetPassword.json @@ -0,0 +1,80 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Resets the administrator login password.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "administrator": { + "userName": "mongoAdmin", + "password": "password" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M30" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Update.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Update.json new file mode 100644 index 000000000000..7eb4073be50c --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_Update.json @@ -0,0 +1,104 @@ +{ + "operationId": "MongoClusters_Update", + "title": "Updates a Mongo Cluster resource", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestResourceGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview", + "properties": { + "properties": { + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M50" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "previewFeatures": [], + "publicNetworkAccess": "Enabled", + "dataApi": { + "mode": "Disabled" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster", + "name": "myMongoCluster", + "type": "/Microsoft.DocumentDB/mongoClusters", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "administrator": { + "userName": "mongoAdmin" + }, + "authConfig": { + "allowedModes": [ + "NativeAuth" + ] + }, + "serverVersion": "5.0", + "storage": { + "sizeGb": 256, + "type": "PremiumSSD" + }, + "compute": { + "tier": "M50" + }, + "sharding": { + "shardCount": 4 + }, + "highAvailability": { + "targetMode": "SameZone" + }, + "backup": { + "earliestRestoreTime": "2023-01-13T20:07:35Z" + }, + "previewFeatures": [], + "infrastructureVersion": "2.0", + "publicNetworkAccess": "Enabled", + "connectionString": "mongodb+srv://:@myMongoCluster.mongocluster.cosmos.azure.com", + "replica": { + "replicationState": "Active", + "role": "Primary" + }, + "dataApi": { + "mode": "Disabled" + } + }, + "location": "westus2" + } + }, + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserCreateOrUpdate.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserCreateOrUpdate.json new file mode 100644 index 000000000000..b192c8b1d2f0 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserCreateOrUpdate.json @@ -0,0 +1,89 @@ +{ + "operationId": "Users_CreateOrUpdate", + "title": "Creates a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview", + "resource": { + "properties": { + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + }, + "201": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "InProgress", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserDelete.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserDelete.json new file mode 100644 index 000000000000..88dd402e91a4 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserDelete.json @@ -0,0 +1,20 @@ +{ + "operationId": "Users_Delete", + "title": "Deletes a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview" + }, + "responses": { + "202": { + "headers": { + "Location": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterOperationResults/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/providers/Microsoft.DocumentDB/locations/westus2/mongoClusterAzureAsyncOperation/f6a27306-3ee3-4e6b-997d-3ba2024b85e6?api-version=2024-06-01-preview" + } + }, + "204": {} + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserGet.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserGet.json new file mode 100644 index 000000000000..453b650f730a --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserGet.json @@ -0,0 +1,43 @@ +{ + "operationId": "Users_Get", + "title": "Gets a user on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "userName": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserList.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserList.json new file mode 100644 index 000000000000..04c608d7ada9 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/MongoClusters_UserList.json @@ -0,0 +1,74 @@ +{ + "operationId": "Users_ListByMongoCluster", + "title": "List the users on a Mongo Cluster resource.", + "parameters": { + "subscriptionId": "ffffffff-ffff-ffff-ffff-ffffffffffff", + "resourceGroupName": "TestGroup", + "mongoClusterName": "myMongoCluster", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/ssssssss-ssss-ssss-ssss-ssssssssssss", + "name": "ssssssss-ssss-ssss-ssss-ssssssssssss", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "servicePrincipal" + } + } + } + }, + { + "id": "/subscriptions/ffffffff-ffff-ffff-ffff-ffffffffffff/resourceGroups/TestResourceGroup/providers/Microsoft.DocumentDB/mongoClusters/myMongoCluster/users/uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "name": "uuuuuuuu-uuuu-uuuu-uuuu-uuuuuuuuuuuu", + "type": "/Microsoft.DocumentDB/mongoClusters/users", + "systemData": { + "createdBy": "user1", + "createdByType": "User", + "createdAt": "2020-01-01T17:18:19.1234567Z", + "lastModifiedBy": "user2", + "lastModifiedByType": "User", + "lastModifiedAt": "2020-01-02T17:18:19.1234567Z" + }, + "properties": { + "provisioningState": "Succeeded", + "roles": [ + { + "role": "root", + "db": "admin" + } + ], + "identityProvider": { + "type": "MicrosoftEntraID", + "properties": { + "principalType": "user" + } + } + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/Operations_List.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..573a77a0af14 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/examples/Operations_List.json @@ -0,0 +1,35 @@ +{ + "operationId": "Operations_List", + "title": "Operations_List", + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2025-07-01-preview" + }, + "responses": { + "200": { + "description": "ARM operation completed successfully.", + "body": { + "value": [ + { + "name": "Microsoft.DocumentDB/mongoClusters/read", + "display": { + "provider": "Microsoft.DocumentDB", + "resource": "Mongo Cluster", + "operation": "Read Mongo Clusters", + "description": "Reads a Mongo Cluster or list all Mongo Clusters." + } + }, + { + "name": "Microsoft.DocumentDB/mongoClusters/write", + "display": { + "provider": "Microsoft.DocumentDB", + "resource": "Mongo Cluster", + "operation": "Create or Update Mongo Cluster", + "description": "Create or Update the properties or tags of the specified Mongo Cluster." + } + } + ] + } + } + } +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/mongoCluster.json b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/mongoCluster.json new file mode 100644 index 000000000000..ed0336724945 --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/mongoCluster.json @@ -0,0 +1,2846 @@ +{ + "swagger": "2.0", + "info": { + "title": "MongoClusterManagementClient", + "version": "2025-07-01-preview", + "description": "The Microsoft Azure management API provides create, read, update, and delete functionality for Azure Cosmos DB for MongoDB vCore resources including clusters and firewall rules.", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "host": "management.azure.com", + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "description": "Azure Active Directory OAuth2 Flow.", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "tags": [ + { + "name": "Operations" + }, + { + "name": "MongoClusters" + }, + { + "name": "FirewallRules" + }, + { + "name": "PrivateEndpointConnections" + }, + { + "name": "PrivateLinks" + }, + { + "name": "Replicas" + }, + { + "name": "Users" + } + ], + "paths": { + "/providers/Microsoft.DocumentDB/operations": { + "get": { + "operationId": "Operations_List", + "tags": [ + "Operations" + ], + "description": "List the operations for the provider", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/OperationListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/checkMongoClusterNameAvailability": { + "post": { + "operationId": "MongoClusters_CheckNameAvailability", + "tags": [ + "MongoClusters" + ], + "description": "Check if mongo cluster name is available for use.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter" + }, + { + "name": "body", + "in": "body", + "description": "The CheckAvailability request", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Checks and confirms the Mongo Cluster name is availability for use.": { + "$ref": "./examples/MongoClusters_NameAvailability.json" + }, + "Checks and returns that the Mongo Cluster name is already in-use.": { + "$ref": "./examples/MongoClusters_NameAvailability_AlreadyExists.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/mongoClusters": { + "get": { + "operationId": "MongoClusters_List", + "tags": [ + "MongoClusters" + ], + "description": "List all the mongo clusters in a given subscription.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/MongoClusterListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the Mongo Cluster resources in a subscription.": { + "$ref": "./examples/MongoClusters_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters": { + "get": { + "operationId": "MongoClusters_ListByResourceGroup", + "tags": [ + "MongoClusters" + ], + "description": "List all the mongo clusters in a given resource group.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/MongoClusterListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the Mongo Cluster resources in a resource group.": { + "$ref": "./examples/MongoClusters_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}": { + "get": { + "operationId": "MongoClusters_Get", + "tags": [ + "MongoClusters" + ], + "description": "Gets information about a mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/MongoCluster" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_Get.json" + } + } + }, + "put": { + "operationId": "MongoClusters_CreateOrUpdate", + "tags": [ + "MongoClusters" + ], + "description": "Create or update a mongo cluster. Update overwrites all properties for the resource. To only modify some of the properties, use PATCH.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/MongoCluster" + } + } + ], + "responses": { + "200": { + "description": "Resource 'MongoCluster' update operation succeeded", + "schema": { + "$ref": "#/definitions/MongoCluster" + } + }, + "201": { + "description": "Resource 'MongoCluster' create operation succeeded", + "schema": { + "$ref": "#/definitions/MongoCluster" + }, + "headers": { + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates a Mongo Cluster resource from a point in time restore": { + "$ref": "./examples/MongoClusters_CreatePITR.json" + }, + "Creates a Mongo Cluster resource with Customer Managed Key encryption from a point in time restore": { + "$ref": "./examples/MongoClusters_CreatePITR_CMK.json" + }, + "Creates a new Mongo Cluster resource with Customer Managed Key encryption.": { + "$ref": "./examples/MongoClusters_Create_CMK.json" + }, + "Creates a new Mongo Cluster resource with Premium SSDv2 storage.": { + "$ref": "./examples/MongoClusters_Create_SSDv2.json" + }, + "Creates a new Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_Create.json" + }, + "Creates a replica Mongo Cluster resource from a source resource.": { + "$ref": "./examples/MongoClusters_CreateGeoReplica.json" + }, + "Creates a replica Mongo Cluster resource with Customer Managed Key encryption from a source resource.": { + "$ref": "./examples/MongoClusters_CreateGeoReplica_CMK.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "patch": { + "operationId": "MongoClusters_Update", + "tags": [ + "MongoClusters" + ], + "description": "Updates an existing mongo cluster. The request body can contain one to many of the properties present in the normal mongo cluster definition.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "properties", + "in": "body", + "description": "The resource properties to be updated.", + "required": true, + "schema": { + "$ref": "#/definitions/MongoClusterUpdate" + } + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/MongoCluster" + } + }, + "202": { + "description": "Resource update request accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Disables public network access on a Mongo Cluster resource with a private endpoint connection.": { + "$ref": "./examples/MongoClusters_PatchPrivateNetworkAccess.json" + }, + "Enables data API on a mongo cluster resource.": { + "$ref": "./examples/MongoClusters_PatchDataApi.json" + }, + "Resets the administrator login password.": { + "$ref": "./examples/MongoClusters_ResetPassword.json" + }, + "Updates a Mongo Cluster resource": { + "$ref": "./examples/MongoClusters_Update.json" + }, + "Updates the Premium SSDv2 size, IOPS and throughput on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PatchSSDv2.json" + }, + "Updates the allowed authentication modes to include Microsoft Entra ID authentication.": { + "$ref": "./examples/MongoClusters_PatchEnableEntraIDAuth.json" + }, + "Updates the disk size on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PatchDiskSize.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "MongoClusters_Delete", + "tags": [ + "MongoClusters" + ], + "description": "Deletes a mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_Delete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules": { + "get": { + "operationId": "FirewallRules_ListByMongoCluster", + "tags": [ + "FirewallRules" + ], + "description": "List all the firewall rules in a given mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FirewallRuleListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the firewall rules on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_FirewallRuleList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}": { + "get": { + "operationId": "FirewallRules_Get", + "tags": [ + "FirewallRules" + ], + "description": "Gets information about a mongo cluster firewall rule.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the mongo cluster firewall rule.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "^[a-zA-Z0-9][-_.a-zA-Z0-9]*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets a firewall rule on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_FirewallRuleGet.json" + } + } + }, + "put": { + "operationId": "FirewallRules_CreateOrUpdate", + "tags": [ + "FirewallRules" + ], + "description": "Creates a new firewall rule or updates an existing firewall rule on a mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the mongo cluster firewall rule.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "^[a-zA-Z0-9][-_.a-zA-Z0-9]*" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/FirewallRule" + } + } + ], + "responses": { + "200": { + "description": "Resource 'FirewallRule' update operation succeeded", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "201": { + "description": "Resource 'FirewallRule' create operation succeeded", + "schema": { + "$ref": "#/definitions/FirewallRule" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates a firewall rule on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_FirewallRuleCreate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "FirewallRules_Delete", + "tags": [ + "FirewallRules" + ], + "description": "Deletes a mongo cluster firewall rule.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "firewallRuleName", + "in": "path", + "description": "The name of the mongo cluster firewall rule.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 80, + "pattern": "^[a-zA-Z0-9][-_.a-zA-Z0-9]*" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a firewall rule on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_FirewallRuleDelete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/listConnectionStrings": { + "post": { + "operationId": "MongoClusters_ListConnectionStrings", + "tags": [ + "MongoClusters" + ], + "description": "List mongo cluster connection strings. This includes the default connection string using SCRAM-SHA-256, as well as other connection strings supported by the cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ListConnectionStringsResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the available connection strings for the Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_ListConnectionStrings.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections": { + "get": { + "operationId": "PrivateEndpointConnections_ListByMongoCluster", + "tags": [ + "PrivateEndpointConnections" + ], + "description": "List existing private connections", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the private endpoint connection resources on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PrivateEndpointConnectionList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "operationId": "PrivateEndpointConnections_Get", + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Get a specific private connection", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get a private endpoint connection on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PrivateEndpointConnectionGet.json" + } + } + }, + "put": { + "operationId": "PrivateEndpointConnections_Create", + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Create a Private endpoint connection", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/parameters/PrivateEndpointConnectionName" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + } + ], + "responses": { + "200": { + "description": "Resource 'PrivateEndpointConnectionResource' update operation succeeded", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "201": { + "description": "Resource 'PrivateEndpointConnectionResource' create operation succeeded", + "schema": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Approves a private endpoint connection on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PrivateEndpointConnectionPut.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "PrivateEndpointConnections_Delete", + "tags": [ + "PrivateEndpointConnections" + ], + "description": "Delete the private endpoint connection", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/parameters/PrivateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete a private endpoint connection on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PrivateEndpointConnectionDelete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/privateLinkResources": { + "get": { + "operationId": "PrivateLinks_ListByMongoCluster", + "tags": [ + "PrivateLinks" + ], + "description": "list private links on the given resource", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Lists the private link resources available on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_PrivateLinkResourceList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/promote": { + "post": { + "operationId": "MongoClusters_Promote", + "tags": [ + "MongoClusters" + ], + "description": "Promotes a replica mongo cluster to a primary role.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "body", + "in": "body", + "description": "The content of the action request", + "required": true, + "schema": { + "$ref": "#/definitions/PromoteReplicaRequest" + } + } + ], + "responses": { + "202": { + "description": "Resource operation accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Promotes a replica Mongo Cluster resource to a primary role.": { + "$ref": "./examples/MongoClusters_ForcePromoteReplica.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/replicas": { + "get": { + "operationId": "Replicas_ListByParent", + "tags": [ + "Replicas" + ], + "description": "List all the replicas for the mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/ReplicaListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the replicas linked to a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_ReplicaList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/users": { + "get": { + "operationId": "Users_ListByMongoCluster", + "tags": [ + "Users" + ], + "description": "List all the users on a mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/UserListResult" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "List the users on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_UserList.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/users/{userName}": { + "get": { + "operationId": "Users_Get", + "tags": [ + "Users" + ], + "description": "Gets the defintion of a Mongo cluster user.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the mongo cluster user.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9\\-]*" + } + ], + "responses": { + "200": { + "description": "Azure operation completed successfully.", + "schema": { + "$ref": "#/definitions/User" + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Gets a user on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_UserGet.json" + } + } + }, + "put": { + "operationId": "Users_CreateOrUpdate", + "tags": [ + "Users" + ], + "description": "Creates a new user or updates an existing user on a mongo cluster.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the mongo cluster user.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9\\-]*" + }, + { + "name": "resource", + "in": "body", + "description": "Resource create parameters.", + "required": true, + "schema": { + "$ref": "#/definitions/User" + } + } + ], + "responses": { + "200": { + "description": "Resource 'User' update operation succeeded", + "schema": { + "$ref": "#/definitions/User" + } + }, + "201": { + "description": "Resource 'User' create operation succeeded", + "schema": { + "$ref": "#/definitions/User" + }, + "headers": { + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates a user on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_UserCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + }, + "x-ms-long-running-operation": true + }, + "delete": { + "operationId": "Users_Delete", + "tags": [ + "Users" + ], + "description": "Deletes a mongo cluster user.", + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "mongoClusterName", + "in": "path", + "description": "The name of the mongo cluster.", + "required": true, + "type": "string", + "minLength": 3, + "maxLength": 40, + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*" + }, + { + "name": "userName", + "in": "path", + "description": "The name of the mongo cluster user.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 63, + "pattern": "^[a-zA-Z0-9\\-]*" + } + ], + "responses": { + "202": { + "description": "Resource deletion accepted.", + "headers": { + "Location": { + "type": "string", + "description": "The Location header contains the URL where the status of the long running operation can be checked." + }, + "Retry-After": { + "type": "integer", + "format": "int32", + "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." + } + } + }, + "204": { + "description": "Resource does not exist." + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Deletes a user on a Mongo Cluster resource.": { + "$ref": "./examples/MongoClusters_UserDelete.json" + } + }, + "x-ms-long-running-operation-options": { + "final-state-via": "location" + }, + "x-ms-long-running-operation": true + } + } + }, + "definitions": { + "AdministratorProperties": { + "type": "object", + "description": "The local administrator login properties.", + "properties": { + "userName": { + "type": "string", + "description": "The administrator user name.", + "x-ms-mutability": [ + "read", + "update", + "create" + ] + }, + "password": { + "type": "string", + "format": "password", + "description": "The administrator password.", + "x-ms-mutability": [ + "update", + "create" + ], + "x-ms-secret": true + } + } + }, + "AuthConfigProperties": { + "type": "object", + "description": "The authentication configuration for the Mongo cluster.", + "properties": { + "allowedModes": { + "type": "array", + "description": "Allowed authentication modes for data access on the cluster.", + "items": { + "$ref": "#/definitions/AuthenticationMode" + } + } + } + }, + "AuthenticationMode": { + "type": "string", + "description": "The authentication modes supporting on the Mongo cluster.", + "enum": [ + "NativeAuth", + "MicrosoftEntraID" + ], + "x-ms-enum": { + "name": "AuthenticationMode", + "modelAsString": true, + "values": [ + { + "name": "NativeAuth", + "value": "NativeAuth", + "description": "Native mongo authentication mode using username and password with auth mechanism 'SCRAM-SHA-256'." + }, + { + "name": "MicrosoftEntraID", + "value": "MicrosoftEntraID", + "description": "Microsoft Entra ID authentication mode using Entra users assigned to the cluster and auth mechanism 'MONGODB-OIDC'." + } + ] + } + }, + "Azure.Core.azureLocation": { + "type": "string", + "description": "Represents an Azure geography region where supported resource providers live." + }, + "BackupProperties": { + "type": "object", + "description": "The backup properties of the cluster. This includes the earliest restore time and retention settings.", + "properties": { + "earliestRestoreTime": { + "type": "string", + "description": "Earliest restore timestamp in UTC ISO8601 format.", + "readOnly": true + } + } + }, + "ComputeProperties": { + "type": "object", + "description": "The compute properties of the cluster. This includes the virtual-cores/memory and scaling options applied to servers in the cluster.", + "properties": { + "tier": { + "type": "string", + "description": "The compute tier to assign to the cluster, where each tier maps to a virtual-core and memory size. Example values: 'M30', 'M40'." + } + } + }, + "ConnectionString": { + "type": "object", + "description": "Connection string for the mongo cluster", + "properties": { + "connectionString": { + "type": "string", + "description": "Value of the connection string", + "readOnly": true + }, + "description": { + "type": "string", + "description": "Description of the connection string", + "readOnly": true + }, + "name": { + "type": "string", + "description": "Name of the connection string.", + "readOnly": true + } + } + }, + "CreateMode": { + "type": "string", + "description": "The mode that the Mongo Cluster is created with.", + "enum": [ + "Default", + "PointInTimeRestore", + "GeoReplica", + "Replica" + ], + "x-ms-enum": { + "name": "CreateMode", + "modelAsString": true, + "values": [ + { + "name": "Default", + "value": "Default", + "description": "Create a new mongo cluster." + }, + { + "name": "PointInTimeRestore", + "value": "PointInTimeRestore", + "description": "Create a mongo cluster from a restore point-in-time." + }, + { + "name": "GeoReplica", + "value": "GeoReplica", + "description": "Create a replica cluster in distinct geographic region from the source cluster." + }, + { + "name": "Replica", + "value": "Replica", + "description": "Create a replica cluster in the same geographic region as the source cluster." + } + ] + } + }, + "CustomerManagedKeyEncryptionProperties": { + "type": "object", + "description": "Customer managed key encryption settings.", + "properties": { + "keyEncryptionKeyIdentity": { + "$ref": "#/definitions/KeyEncryptionKeyIdentity", + "description": "The identity used to access the key encryption key." + }, + "keyEncryptionKeyUrl": { + "type": "string", + "description": "The URI of the key vault key used for encryption." + } + }, + "required": [ + "keyEncryptionKeyIdentity", + "keyEncryptionKeyUrl" + ] + }, + "DataApiMode": { + "type": "string", + "description": "The mode to apply to the Mongo Data API.", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "DataApiMode", + "modelAsString": true, + "values": [ + { + "name": "Enabled", + "value": "Enabled", + "description": "Mongo Data API is enabled for the cluster." + }, + { + "name": "Disabled", + "value": "Disabled", + "description": "Mongo Data API is disabled for the cluster." + } + ] + } + }, + "DataApiProperties": { + "type": "object", + "description": "Data API properties.", + "properties": { + "mode": { + "$ref": "#/definitions/DataApiMode", + "description": "The mode to indicate whether the Mongo Data API is enabled for a cluster." + } + } + }, + "DatabaseRole": { + "type": "object", + "description": "Database role definition that is assigned to a user.", + "properties": { + "db": { + "type": "string", + "description": "Database scope that the role is assigned to." + }, + "role": { + "$ref": "#/definitions/UserRole", + "description": "The role that is assigned to the user on the database scope." + } + }, + "required": [ + "db", + "role" + ] + }, + "EncryptionProperties": { + "type": "object", + "description": "The encryption configuration for the mongo cluster.", + "properties": { + "customerManagedKeyEncryption": { + "$ref": "#/definitions/CustomerManagedKeyEncryptionProperties", + "description": "Customer managed key encryption settings." + } + } + }, + "EntraIdentityProvider": { + "type": "object", + "description": "Defines a Microsoft Entra ID Mongo user.", + "properties": { + "properties": { + "$ref": "#/definitions/EntraIdentityProviderProperties", + "description": "The Entra identity properties for the user." + } + }, + "required": [ + "properties" + ], + "allOf": [ + { + "$ref": "#/definitions/IdentityProvider" + } + ], + "x-ms-discriminator-value": "MicrosoftEntraID" + }, + "EntraIdentityProviderProperties": { + "type": "object", + "description": "Microsoft Entra ID provider properties.", + "properties": { + "principalType": { + "$ref": "#/definitions/EntraPrincipalType", + "description": "The principal type of the user." + } + }, + "required": [ + "principalType" + ] + }, + "EntraPrincipalType": { + "type": "string", + "description": "Microsoft Entra ID principal types available for a Mongo user.", + "enum": [ + "user", + "servicePrincipal" + ], + "x-ms-enum": { + "name": "EntraPrincipalType", + "modelAsString": true, + "values": [ + { + "name": "User", + "value": "user", + "description": "Entra user type." + }, + { + "name": "ServicePrincipal", + "value": "servicePrincipal", + "description": "Entra service principal type." + } + ] + } + }, + "FirewallRule": { + "type": "object", + "description": "Represents a mongo cluster firewall rule.", + "properties": { + "properties": { + "$ref": "#/definitions/FirewallRuleProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "FirewallRuleListResult": { + "type": "object", + "description": "The response of a FirewallRule list operation.", + "properties": { + "value": { + "type": "array", + "description": "The FirewallRule items on this page", + "items": { + "$ref": "#/definitions/FirewallRule" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "FirewallRuleProperties": { + "type": "object", + "description": "The properties of a mongo cluster firewall rule.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state of the firewall rule.", + "readOnly": true + }, + "startIpAddress": { + "type": "string", + "description": "The start IP address of the mongo cluster firewall rule. Must be IPv4 format.", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + }, + "endIpAddress": { + "type": "string", + "description": "The end IP address of the mongo cluster firewall rule. Must be IPv4 format.", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + } + }, + "required": [ + "startIpAddress", + "endIpAddress" + ] + }, + "HighAvailabilityMode": { + "type": "string", + "description": "The high availability modes for a cluster.", + "enum": [ + "Disabled", + "SameZone", + "ZoneRedundantPreferred" + ], + "x-ms-enum": { + "name": "HighAvailabilityMode", + "modelAsString": true, + "values": [ + { + "name": "Disabled", + "value": "Disabled", + "description": "High availability mode is disabled. This mode is can see availability impact during faults or maintenance and is not recommended for production." + }, + { + "name": "SameZone", + "value": "SameZone", + "description": "High availability mode is enabled, where each server in a shard is placed in the same availability zone." + }, + { + "name": "ZoneRedundantPreferred", + "value": "ZoneRedundantPreferred", + "description": "High availability mode is enabled and preferences ZoneRedundant if availability zones capacity is available in the region, otherwise falls-back to provisioning with SameZone." + } + ] + } + }, + "HighAvailabilityProperties": { + "type": "object", + "description": "The high availability properties of the cluster.", + "properties": { + "targetMode": { + "$ref": "#/definitions/HighAvailabilityMode", + "description": "The target high availability mode requested for the cluster." + } + } + }, + "IdentityProvider": { + "type": "object", + "description": "Defines a user's identity provider definition.", + "properties": { + "type": { + "$ref": "#/definitions/IdentityProviderType", + "description": "The type of identity provider that the user belongs to." + } + }, + "discriminator": "type", + "required": [ + "type" + ] + }, + "IdentityProviderType": { + "type": "string", + "description": "Identity provider types that a a user identity can belong to.", + "enum": [ + "MicrosoftEntraID" + ], + "x-ms-enum": { + "name": "IdentityProviderType", + "modelAsString": true, + "values": [ + { + "name": "MicrosoftEntraID", + "value": "MicrosoftEntraID", + "description": "Microsoft Entra ID provider." + } + ] + } + }, + "IdentityUserProperties": { + "type": "object", + "description": "Identity provider Mongo user properties.", + "properties": { + "identityProvider": { + "$ref": "#/definitions/IdentityProvider", + "description": "The user's identity provider definition." + }, + "roles": { + "type": "array", + "description": "Database roles that are assigned to the user.", + "items": { + "$ref": "#/definitions/DatabaseRole" + }, + "x-ms-identifiers": [] + } + } + }, + "KeyEncryptionKeyIdentity": { + "type": "object", + "description": "The identity used for key encryption key.", + "properties": { + "identityType": { + "$ref": "#/definitions/KeyEncryptionKeyIdentityType", + "description": "The type of identity. Only 'UserAssignedIdentity' is supported." + }, + "userAssignedIdentityResourceId": { + "type": "string", + "description": "The user assigned identity resource id." + } + }, + "required": [ + "identityType", + "userAssignedIdentityResourceId" + ] + }, + "KeyEncryptionKeyIdentityType": { + "type": "string", + "description": "The type of identity for key encryption key.", + "enum": [ + "UserAssignedIdentity" + ], + "x-ms-enum": { + "name": "KeyEncryptionKeyIdentityType", + "modelAsString": true, + "values": [ + { + "name": "UserAssignedIdentity", + "value": "UserAssignedIdentity", + "description": "User assigned identity." + } + ] + } + }, + "ListConnectionStringsResult": { + "type": "object", + "description": "The connection strings for the given mongo cluster.", + "properties": { + "connectionStrings": { + "type": "array", + "description": "An array that contains the connection strings for a mongo cluster.", + "items": { + "$ref": "#/definitions/ConnectionString" + }, + "readOnly": true, + "x-ms-identifiers": [] + } + } + }, + "MongoCluster": { + "type": "object", + "description": "Represents a mongo cluster resource.", + "properties": { + "properties": { + "$ref": "#/definitions/MongoClusterProperties", + "description": "The resource-specific properties for this resource." + }, + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/TrackedResource" + } + ] + }, + "MongoClusterListResult": { + "type": "object", + "description": "The response of a MongoCluster list operation.", + "properties": { + "value": { + "type": "array", + "description": "The MongoCluster items on this page", + "items": { + "$ref": "#/definitions/MongoCluster" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "MongoClusterProperties": { + "type": "object", + "description": "The properties of a mongo cluster.", + "properties": { + "createMode": { + "$ref": "#/definitions/CreateMode", + "description": "The mode to create a mongo cluster.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "restoreParameters": { + "$ref": "#/definitions/MongoClusterRestoreParameters", + "description": "The parameters to create a point-in-time restore mongo cluster.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "replicaParameters": { + "$ref": "#/definitions/MongoClusterReplicaParameters", + "description": "The parameters to create a replica mongo cluster.", + "x-ms-mutability": [ + "read", + "create" + ] + }, + "administrator": { + "$ref": "#/definitions/AdministratorProperties", + "description": "The local administrator properties for the mongo cluster." + }, + "serverVersion": { + "type": "string", + "description": "The Mongo DB server version. Defaults to the latest available version if not specified." + }, + "connectionString": { + "type": "string", + "description": "The default mongo connection string for the cluster.", + "readOnly": true + }, + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state of the mongo cluster.", + "readOnly": true + }, + "clusterStatus": { + "$ref": "#/definitions/MongoClusterStatus", + "description": "The status of the mongo cluster.", + "readOnly": true + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public endpoint access is allowed for this mongo cluster." + }, + "highAvailability": { + "$ref": "#/definitions/HighAvailabilityProperties", + "description": "The high availability properties of the mongo cluster." + }, + "storage": { + "$ref": "#/definitions/StorageProperties", + "description": "The storage properties of the mongo cluster." + }, + "sharding": { + "$ref": "#/definitions/ShardingProperties", + "description": "The sharding properties of the mongo cluster." + }, + "compute": { + "$ref": "#/definitions/ComputeProperties", + "description": "The compute properties of the mongo cluster." + }, + "backup": { + "$ref": "#/definitions/BackupProperties", + "description": "The backup properties of the mongo cluster." + }, + "dataApi": { + "$ref": "#/definitions/DataApiProperties", + "description": "The Data API properties of the mongo cluster." + }, + "privateEndpointConnections": { + "type": "array", + "description": "List of private endpoint connections.", + "items": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + }, + "previewFeatures": { + "type": "array", + "description": "List of private endpoint connections.", + "items": { + "$ref": "#/definitions/PreviewFeature" + } + }, + "replica": { + "$ref": "#/definitions/ReplicationProperties", + "description": "The replication properties for the mongo cluster", + "readOnly": true + }, + "infrastructureVersion": { + "type": "string", + "description": "The infrastructure version the cluster is provisioned on.", + "readOnly": true + }, + "authConfig": { + "$ref": "#/definitions/AuthConfigProperties", + "description": "The authentication configuration for the cluster." + }, + "encryption": { + "$ref": "#/definitions/EncryptionProperties", + "description": "The encryption configuration for the cluster. Depends on identity being configured.", + "x-ms-mutability": [ + "read", + "create" + ] + } + } + }, + "MongoClusterReplicaParameters": { + "type": "object", + "description": "Parameters used for replica operations.", + "properties": { + "sourceResourceId": { + "$ref": "#/definitions/MongoClusterResourceId", + "description": "The id of the replication source cluster." + }, + "sourceLocation": { + "$ref": "#/definitions/Azure.Core.azureLocation", + "description": "The location of the source cluster" + } + }, + "required": [ + "sourceResourceId", + "sourceLocation" + ] + }, + "MongoClusterResourceId": { + "type": "string", + "format": "arm-id", + "description": "Identifier for a mongo cluster resource.", + "x-ms-arm-id-details": { + "allowedResources": [ + { + "type": "Microsoft.DocumentDB/mongoClusters" + } + ] + } + }, + "MongoClusterRestoreParameters": { + "type": "object", + "description": "Parameters used for restore operations", + "properties": { + "pointInTimeUTC": { + "type": "string", + "format": "date-time", + "description": "UTC point in time to restore a mongo cluster" + }, + "sourceResourceId": { + "$ref": "#/definitions/MongoClusterResourceId", + "description": "Resource ID to locate the source cluster to restore" + } + } + }, + "MongoClusterStatus": { + "type": "string", + "description": "The status of the Mongo cluster resource.", + "enum": [ + "Ready", + "Provisioning", + "Updating", + "Starting", + "Stopping", + "Stopped", + "Dropping" + ], + "x-ms-enum": { + "name": "MongoClusterStatus", + "modelAsString": true, + "values": [ + { + "name": "Ready", + "value": "Ready", + "description": "The mongo cluster resource is ready for use." + }, + { + "name": "Provisioning", + "value": "Provisioning", + "description": "The mongo cluster resource is being provisioned." + }, + { + "name": "Updating", + "value": "Updating", + "description": "The mongo cluster resource is being updated." + }, + { + "name": "Starting", + "value": "Starting", + "description": "The mongo cluster resource is being started." + }, + { + "name": "Stopping", + "value": "Stopping", + "description": "The mongo cluster resource is being stopped." + }, + { + "name": "Stopped", + "value": "Stopped", + "description": "The mongo cluster resource is stopped." + }, + { + "name": "Dropping", + "value": "Dropping", + "description": "The mongo cluster resource is being dropped." + } + ] + } + }, + "MongoClusterUpdate": { + "type": "object", + "description": "The type used for update operations of the MongoCluster.", + "properties": { + "identity": { + "$ref": "../../../../../common-types/resource-management/v5/managedidentity.json#/definitions/ManagedServiceIdentity", + "description": "The managed service identities assigned to this resource." + }, + "tags": { + "type": "object", + "description": "Resource tags.", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "$ref": "#/definitions/MongoClusterUpdateProperties", + "description": "The resource-specific properties for this resource." + } + } + }, + "MongoClusterUpdateProperties": { + "type": "object", + "description": "The updatable properties of the MongoCluster.", + "properties": { + "administrator": { + "$ref": "#/definitions/AdministratorProperties", + "description": "The local administrator properties for the mongo cluster." + }, + "serverVersion": { + "type": "string", + "description": "The Mongo DB server version. Defaults to the latest available version if not specified." + }, + "publicNetworkAccess": { + "$ref": "#/definitions/PublicNetworkAccess", + "description": "Whether or not public endpoint access is allowed for this mongo cluster." + }, + "highAvailability": { + "$ref": "#/definitions/HighAvailabilityProperties", + "description": "The high availability properties of the mongo cluster." + }, + "storage": { + "$ref": "#/definitions/StorageProperties", + "description": "The storage properties of the mongo cluster." + }, + "sharding": { + "$ref": "#/definitions/ShardingProperties", + "description": "The sharding properties of the mongo cluster." + }, + "compute": { + "$ref": "#/definitions/ComputeProperties", + "description": "The compute properties of the mongo cluster." + }, + "backup": { + "$ref": "#/definitions/BackupProperties", + "description": "The backup properties of the mongo cluster." + }, + "dataApi": { + "$ref": "#/definitions/DataApiProperties", + "description": "The Data API properties of the mongo cluster." + }, + "previewFeatures": { + "type": "array", + "description": "List of private endpoint connections.", + "items": { + "$ref": "#/definitions/PreviewFeature" + } + }, + "authConfig": { + "$ref": "#/definitions/AuthConfigProperties", + "description": "The authentication configuration for the cluster." + } + } + }, + "PreviewFeature": { + "type": "string", + "description": "Preview features that can be enabled on a mongo cluster.", + "enum": [ + "GeoReplicas" + ], + "x-ms-enum": { + "name": "PreviewFeature", + "modelAsString": true, + "values": [ + { + "name": "GeoReplicas", + "value": "GeoReplicas", + "description": "Enables geo replicas preview feature. The feature must be set at create-time on new cluster to enable linking a geo-replica cluster to it." + } + ] + } + }, + "PrivateEndpointConnectionResource": { + "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", + "properties": { + "properties": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateEndpointConnectionProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateEndpointConnectionResourceListResult": { + "type": "object", + "description": "The response of a PrivateEndpointConnectionResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The PrivateEndpointConnectionResource items on this page", + "items": { + "$ref": "#/definitions/PrivateEndpointConnectionResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "PrivateLinkResource": { + "type": "object", + "description": "Concrete proxy resource types can be created by aliasing this type using a specific property type.", + "properties": { + "properties": { + "$ref": "../../../../../common-types/resource-management/v5/privatelinks.json#/definitions/PrivateLinkResourceProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "PrivateLinkResourceListResult": { + "type": "object", + "description": "The response of a PrivateLinkResource list operation.", + "properties": { + "value": { + "type": "array", + "description": "The PrivateLinkResource items on this page", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "PromoteMode": { + "type": "string", + "description": "The mode to apply to a promote operation.", + "enum": [ + "Switchover" + ], + "x-ms-enum": { + "name": "PromoteMode", + "modelAsString": true, + "values": [ + { + "name": "Switchover", + "value": "Switchover", + "description": "Promotion will switch the current replica cluster to the primary role and the original primary will be switched to a replica role, maintaining the replication link." + } + ] + } + }, + "PromoteOption": { + "type": "string", + "description": "The option to apply to a promote operation.", + "enum": [ + "Forced" + ], + "x-ms-enum": { + "name": "PromoteOption", + "modelAsString": true, + "values": [ + { + "name": "Forced", + "value": "Forced", + "description": "Promote option forces the promotion without waiting for the replica to be caught up to the primary. This can result in data-loss so should only be used during disaster recovery scenarios." + } + ] + } + }, + "PromoteReplicaRequest": { + "type": "object", + "description": "Promote replica request properties.", + "properties": { + "promoteOption": { + "$ref": "#/definitions/PromoteOption", + "description": "The promote option to apply to the operation." + }, + "mode": { + "$ref": "#/definitions/PromoteMode", + "description": "The mode to apply to the promote operation. Value is optional and default value is 'Switchover'." + } + }, + "required": [ + "promoteOption" + ] + }, + "ProvisioningState": { + "type": "string", + "description": "The provisioning state of the last accepted operation.", + "enum": [ + "Succeeded", + "Failed", + "Canceled", + "InProgress", + "Updating", + "Dropping" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true, + "values": [ + { + "name": "Succeeded", + "value": "Succeeded", + "description": "Resource has been created." + }, + { + "name": "Failed", + "value": "Failed", + "description": "Resource creation failed." + }, + { + "name": "Canceled", + "value": "Canceled", + "description": "Resource creation was canceled." + }, + { + "name": "InProgress", + "value": "InProgress", + "description": "An operation is in-progress on the resource." + }, + { + "name": "Updating", + "value": "Updating", + "description": "An update operation is in-progress on the resource." + }, + { + "name": "Dropping", + "value": "Dropping", + "description": "A drop operation is in-progress on the resource." + } + ] + }, + "readOnly": true + }, + "PublicNetworkAccess": { + "type": "string", + "description": "Whether or not public endpoint access is allowed for this Mongo cluster. Value is optional and default value is 'Enabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true, + "values": [ + { + "name": "Enabled", + "value": "Enabled", + "description": "If set, mongo cluster can be accessed through private and public methods." + }, + { + "name": "Disabled", + "value": "Disabled", + "description": "If set, the private endpoints are the exclusive access method." + } + ] + } + }, + "Replica": { + "type": "object", + "description": "Represents a mongo cluster replica.", + "properties": { + "properties": { + "$ref": "#/definitions/MongoClusterProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "ReplicaListResult": { + "type": "object", + "description": "The response of a Replica list operation.", + "properties": { + "value": { + "type": "array", + "description": "The Replica items on this page", + "items": { + "$ref": "#/definitions/Replica" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "ReplicationProperties": { + "type": "object", + "description": "Replica properties of the mongo cluster.", + "properties": { + "sourceResourceId": { + "$ref": "#/definitions/MongoClusterResourceId", + "description": "The resource id the source cluster for the replica cluster.", + "readOnly": true + }, + "role": { + "$ref": "#/definitions/ReplicationRole", + "description": "The replication role of the cluster", + "readOnly": true + }, + "replicationState": { + "$ref": "#/definitions/ReplicationState", + "description": "The replication link state of the replica cluster.", + "readOnly": true + } + } + }, + "ReplicationRole": { + "type": "string", + "description": "Replication role of the mongo cluster.", + "enum": [ + "Primary", + "AsyncReplica", + "GeoAsyncReplica" + ], + "x-ms-enum": { + "name": "ReplicationRole", + "modelAsString": true, + "values": [ + { + "name": "Primary", + "value": "Primary", + "description": "The cluster is a primary replica." + }, + { + "name": "AsyncReplica", + "value": "AsyncReplica", + "description": "The cluster is a local asynchronous replica." + }, + { + "name": "GeoAsyncReplica", + "value": "GeoAsyncReplica", + "description": "The cluster is a geo-asynchronous replica." + } + ] + } + }, + "ReplicationState": { + "type": "string", + "description": "The state of the replication link between the replica and source cluster.", + "enum": [ + "Active", + "Catchup", + "Provisioning", + "Updating", + "Broken", + "Reconfiguring" + ], + "x-ms-enum": { + "name": "ReplicationState", + "modelAsString": true, + "values": [ + { + "name": "Active", + "value": "Active", + "description": "Replication link is active." + }, + { + "name": "Catchup", + "value": "Catchup", + "description": "Replica is catching-up with the primary. This can occur after the replica is created or after a promotion is triggered." + }, + { + "name": "Provisioning", + "value": "Provisioning", + "description": "Replica and replication link to the primary is being created." + }, + { + "name": "Updating", + "value": "Updating", + "description": "Replication link is being updated due to a change on the replica or an upgrade." + }, + { + "name": "Broken", + "value": "Broken", + "description": "Replication link is broken and the replica may need to be recreated." + }, + { + "name": "Reconfiguring", + "value": "Reconfiguring", + "description": "Replication link is re-configuring due to a promotion event." + } + ] + } + }, + "ShardingProperties": { + "type": "object", + "description": "The sharding properties of the cluster. This includes the shard count and scaling options for the cluster.", + "properties": { + "shardCount": { + "type": "integer", + "format": "int32", + "description": "Number of shards to provision on the cluster." + } + } + }, + "StorageProperties": { + "type": "object", + "description": "The storage properties of the cluster. This includes the data storage size and scaling applied to servers in the cluster.", + "properties": { + "sizeGb": { + "type": "integer", + "format": "int64", + "description": "The size of the data disk assigned to each server." + }, + "type": { + "$ref": "#/definitions/StorageType", + "description": "The type of storage to provision the cluster servers with." + }, + "iops": { + "type": "integer", + "format": "int64", + "description": "The IOPs of the storage assigned to each server. Only applicable if the type is 'PremiumSSDv2'." + }, + "throughput": { + "type": "integer", + "format": "int64", + "description": "The throughput of the storage assigned to each server. Only applicable if the type is 'PremiumSSDv2'." + } + } + }, + "StorageType": { + "type": "string", + "description": "The type of storage that a mongo cluster can be provisioned with.", + "enum": [ + "PremiumSSD", + "PremiumSSDv2" + ], + "x-ms-enum": { + "name": "StorageType", + "modelAsString": true, + "values": [ + { + "name": "PremiumSSD", + "value": "PremiumSSD", + "description": "Premium SSD for high performance workloads." + }, + { + "name": "PremiumSSDv2", + "value": "PremiumSSDv2", + "description": "Premium SSD v2 for very IO-intensive workloads. This is a preview option and has additional limitations." + } + ] + } + }, + "User": { + "type": "object", + "description": "Represents a Mongo cluster user.", + "properties": { + "properties": { + "$ref": "#/definitions/UserProperties", + "description": "The resource-specific properties for this resource." + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource" + } + ] + }, + "UserListResult": { + "type": "object", + "description": "The response of a User list operation.", + "properties": { + "value": { + "type": "array", + "description": "The User items on this page", + "items": { + "$ref": "#/definitions/User" + } + }, + "nextLink": { + "type": "string", + "format": "uri", + "description": "The link to the next page of items" + } + }, + "required": [ + "value" + ] + }, + "UserProperties": { + "type": "object", + "description": "Definition of Mongo user resource on a cluster.", + "properties": { + "provisioningState": { + "$ref": "#/definitions/ProvisioningState", + "description": "The provisioning state of the user.", + "readOnly": true + }, + "identityProvider": { + "$ref": "#/definitions/IdentityProvider", + "description": "The user's identity provider definition." + }, + "roles": { + "type": "array", + "description": "Database roles that are assigned to the user.", + "items": { + "$ref": "#/definitions/DatabaseRole" + }, + "x-ms-identifiers": [] + } + } + }, + "UserRole": { + "type": "string", + "description": "Built-in database role that can be assigned to a user.", + "enum": [ + "root" + ], + "x-ms-enum": { + "name": "UserRole", + "modelAsString": true, + "values": [ + { + "name": "Root", + "value": "root", + "description": "Root role permissions on the target scope." + } + ] + } + } + }, + "parameters": {} +} diff --git a/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/scenarios/basic.yaml b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/scenarios/basic.yaml new file mode 100644 index 000000000000..7266e9a8474b --- /dev/null +++ b/specification/mongocluster/resource-manager/Microsoft.DocumentDB/preview/2025-07-01-preview/scenarios/basic.yaml @@ -0,0 +1,141 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-rest-api-specs/main/documentation/api-scenario/references/v1.2/schema.json +scope: ResourceGroup +variables: + primaryClusterName: + type: string + prefix: mongoclu + primaryRegion: + type: string + value: westus + replicaClusterName: + type: string + prefix: replicaclu + replicaRegion: + type: string + value: westus3 + administratorLoginPassword: + type: secureString + administratorLoginPassword2: + type: secureString + firewallRuleName: + type: string + prefix: firewall +scenarios: + - scenario: basic + description: Basic scenario for creating, reading and deleting a Mongo Cluster. + steps: + - step: Check_NameAvailability + exampleFile: ../examples/MongoClusters_NameAvailability.json + requestUpdate: + - replace: /body/name + value: $(primaryClusterName) + - step: MongoClusters_CreateOrUpdate + variables: + location: $(primaryRegion) + exampleFile: ../examples/MongoClusters_Create.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - replace: /resource/location + value: $(primaryRegion) + - replace: /resource/properties/administratorLoginPassword + value: $(administratorLoginPassword) + - add: /resource/properties/previewFeatures + value: + - GeoReplicas + - step: MongoClusters_ListByResourceGroup + exampleFile: ../examples/MongoClusters_ListByResourceGroup.json + - step: MongoClusters_Get + exampleFile: ../examples/MongoClusters_Get.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + outputVariables: + sourceResourceId: + type: string + fromResponse: /id + - step: FirewallRules_CreateOrUpdate + exampleFile: ../examples/MongoClusters_FirewallRuleCreate.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_ListByMongoCluster + exampleFile: ../examples/MongoClusters_FirewallRuleList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_Get + exampleFile: ../examples/MongoClusters_FirewallRuleGet.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ListConnectionStrings + exampleFile: ../examples/MongoClusters_ListConnectionStrings.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_UpdateDiskSize + exampleFile: ../examples/MongoClusters_PatchDiskSize.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: FirewallRules_Delete + exampleFile: ../examples/MongoClusters_FirewallRuleDelete.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ResetPassword + exampleFile: ../examples/MongoClusters_ResetPassword.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - replace: /properties/properties/administratorLoginPassword + value: $(administratorLoginPassword2) + - step: Check_Replica_NameAvailability + exampleFile: ../examples/MongoClusters_NameAvailability.json + requestUpdate: + - replace: /body/name + value: $(replicaClusterName) + - step: MongoClusters_CreateGeoReplica + variables: + location: $(replicaRegion) + exampleFile: ../examples/MongoClusters_CreateGeoReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - replace: /resource/location + value: $(replicaRegion) + - replace: /resource/properties/replicaParameters/sourceResourceId + value: $(sourceResourceId) + - replace: /resource/properties/replicaParameters/sourceLocation + value: $(primaryRegion) + - step: MongoClusters_ReplicaList + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ForcePromoteReplica + exampleFile: ../examples/MongoClusters_ForcePromoteReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - step: MongoClusters_ReplicaList_PostPromote + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) + - step: MongoClusters_ForcePromoteReplica_2 + exampleFile: ../examples/MongoClusters_ForcePromoteReplica.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_ReplicaList_PostPromote_2 + exampleFile: ../examples/MongoClusters_ReplicaList.json + requestUpdate: + - replace: /mongoClusterName + value: $(primaryClusterName) + - step: MongoClusters_Delete_Replica + exampleFile: ../examples/MongoClusters_Delete.json + requestUpdate: + - replace: /mongoClusterName + value: $(replicaClusterName) \ No newline at end of file diff --git a/specification/mongocluster/resource-manager/readme.md b/specification/mongocluster/resource-manager/readme.md index 5f9d0eeead14..580c61e1790c 100644 --- a/specification/mongocluster/resource-manager/readme.md +++ b/specification/mongocluster/resource-manager/readme.md @@ -26,7 +26,16 @@ These are the global settings for the mongocluster. ```yaml openapi-type: arm -tag: package-2025-04-01-preview +tag: package-2025-07-01-preview +``` + +### Tag: package-2025-07-01-preview + +These settings apply only when `--tag=package-2025-07-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2025-07-01-preview' +input-file: + - Microsoft.DocumentDB/preview/2025-07-01-preview/mongoCluster.json ``` ### Tag: package-2025-04-01-preview @@ -56,7 +65,6 @@ input-file: - Microsoft.DocumentDB/stable/2024-07-01/mongoCluster.json ``` - ### Tag: package-2024-06-01-preview These settings apply only when `--tag=package-2024-06-01-preview` is specified on the command line. @@ -66,7 +74,6 @@ input-file: - Microsoft.DocumentDB/preview/2024-06-01-preview/mongoCluster.json ``` - ### Tag: package-2024-03-01-preview These settings apply only when `--tag=package-2024-03-01-preview` is specified on the command line.