{ "swagger": "2.0", "info": { "version": "2016-08-10", "title": "SiteRecoveryManagementClient", "x-ms-code-generation-settings": { "header": "MICROSOFT_MIT_NO_VERSION" } }, "host": "management.azure.com", "schemes": [ "https" ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "paths": { "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationVaultHealth": { "get": { "tags": [ "ReplicationVaultHealth" ], "summary": "Gets the health summary for the vault.", "description": "Gets the health details of the vault.", "operationId": "ReplicationVaultHealth_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VaultHealthDetails" } } }, "x-ms-examples": { "Gets the health summary for the vault.": { "$ref": "./examples/ReplicationVaultHealth_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems": { "get": { "tags": [ "ReplicationProtectedItems" ], "summary": "Gets the list of Replication protected items.", "description": "Gets the list of ASR replication protected items in the protection container.", "operationId": "ReplicationProtectedItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItemCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of Replication protected items.": { "$ref": "./examples/ReplicationProtectedItems_ListByReplicationProtectionContainers.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectedItems": { "get": { "tags": [ "ReplicationProtectedItems" ], "summary": "Gets the list of replication protected items.", "description": "Gets the list of ASR replication protected items in the vault.", "operationId": "ReplicationProtectedItems_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "skipToken", "in": "query", "description": "The pagination token. Possible values: \"FabricId\" or \"FabricId_CloudId\" or null", "required": false, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItemCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-odata": "#/definitions/ProtectedItemsQueryParameter", "x-ms-examples": { "Gets the list of replication protected items.": { "$ref": "./examples/ReplicationProtectedItems_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworkMappings": { "get": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Gets all the network mappings under a vault.", "description": "Lists all ASR network mappings in the vault.", "operationId": "ReplicationNetworkMappings_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets all the network mappings under a vault.": { "$ref": "./examples/ReplicationNetworkMappings_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings": { "get": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Gets all the network mappings under a network.", "description": "Lists all ASR network mappings for the specified network.", "operationId": "ReplicationNetworkMappings_ListByReplicationNetworks", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Primary fabric name.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets all the network mappings under a network.": { "$ref": "./examples/ReplicationNetworkMappings_ListByReplicationNetworks.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/migratetoaad": { "post": { "tags": [ "ReplicationFabrics" ], "summary": "Migrates the site to AAD.", "description": "The operation to migrate an Azure Site Recovery fabric to AAD.", "operationId": "ReplicationFabrics_MigrateToAad", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "ASR fabric to migrate.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Migrates the site to AAD.": { "$ref": "./examples/ReplicationFabrics_MigrateToAad.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/renewCertificate": { "post": { "tags": [ "ReplicationFabrics" ], "summary": "Renews certificate for the fabric.", "description": "Renews the connection certificate for the ASR replication fabric.", "operationId": "ReplicationFabrics_RenewCertificate", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "fabric name to renew certs for.", "required": true, "type": "string" }, { "name": "renewCertificate", "in": "body", "description": "Renew certificate input.", "required": true, "schema": { "$ref": "#/definitions/RenewCertificateInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Fabric" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Renews certificate for the fabric.": { "$ref": "./examples/ReplicationFabrics_RenewCertificate.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters/{vCenterName}": { "get": { "tags": [ "ReplicationvCenters" ], "summary": "Gets the details of a vCenter.", "description": "Gets the details of a registered vCenter server(Add vCenter server.)", "operationId": "ReplicationvCenters_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "vCenterName", "in": "path", "description": "vCenter name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VCenter" } } }, "x-ms-examples": { "Gets the details of a vCenter.": { "$ref": "./examples/ReplicationvCenters_Get.json" } } }, "put": { "tags": [ "ReplicationvCenters" ], "summary": "Add vCenter.", "description": "The operation to create a vCenter object..", "operationId": "ReplicationvCenters_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "vCenterName", "in": "path", "description": "vCenter name.", "required": true, "type": "string" }, { "name": "addVCenterRequest", "in": "body", "description": "The input to the add vCenter operation.", "required": true, "schema": { "$ref": "#/definitions/AddVCenterRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VCenter" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Add vCenter.": { "$ref": "./examples/ReplicationvCenters_Create.json" } } }, "delete": { "tags": [ "ReplicationvCenters" ], "summary": "Remove vCenter operation.", "description": "The operation to remove(unregister) a registered vCenter server from the vault.", "operationId": "ReplicationvCenters_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "vCenterName", "in": "path", "description": "vCenter name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Remove vCenter operation.": { "$ref": "./examples/ReplicationvCenters_Delete.json" } } }, "patch": { "tags": [ "ReplicationvCenters" ], "summary": "Update vCenter operation.", "description": "The operation to update a registered vCenter.", "operationId": "ReplicationvCenters_Update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "vCenterName", "in": "path", "description": "vCenter name", "required": true, "type": "string" }, { "name": "updateVCenterRequest", "in": "body", "description": "The input to the update vCenter operation.", "required": true, "schema": { "$ref": "#/definitions/UpdateVCenterRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VCenter" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Update vCenter operation.": { "$ref": "./examples/ReplicationvCenters_Update.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationvCenters": { "get": { "tags": [ "ReplicationvCenters" ], "summary": "Gets the list of vCenter registered under a fabric.", "description": "Lists the vCenter servers registered in a fabric.", "operationId": "ReplicationvCenters_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VCenterCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of vCenter registered under a fabric.": { "$ref": "./examples/ReplicationvCenters_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationvCenters": { "get": { "tags": [ "ReplicationvCenters" ], "summary": "Gets the list of vCenter registered under the vault.", "description": "Lists the vCenter servers registered in the vault.", "operationId": "ReplicationvCenters_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/VCenterCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of vCenter registered under the vault.": { "$ref": "./examples/ReplicationvCenters_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings/{storageClassificationMappingName}": { "get": { "tags": [ "ReplicationStorageClassificationMappings" ], "summary": "Gets the details of a storage classification mapping.", "description": "Gets the details of the specified storage classification mapping.", "operationId": "ReplicationStorageClassificationMappings_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "storageClassificationName", "in": "path", "description": "Storage classification name.", "required": true, "type": "string" }, { "name": "storageClassificationMappingName", "in": "path", "description": "Storage classification mapping name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationMapping" } } }, "x-ms-examples": { "Gets the details of a storage classification mapping.": { "$ref": "./examples/ReplicationStorageClassificationMappings_Get.json" } } }, "put": { "tags": [ "ReplicationStorageClassificationMappings" ], "summary": "Create storage classification mapping.", "description": "The operation to create a storage classification mapping.", "operationId": "ReplicationStorageClassificationMappings_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "storageClassificationName", "in": "path", "description": "Storage classification name.", "required": true, "type": "string" }, { "name": "storageClassificationMappingName", "in": "path", "description": "Storage classification mapping name.", "required": true, "type": "string" }, { "name": "pairingInput", "in": "body", "description": "Pairing input.", "required": true, "schema": { "$ref": "#/definitions/StorageClassificationMappingInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationMapping" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Create storage classification mapping.": { "$ref": "./examples/ReplicationStorageClassificationMappings_Create.json" } } }, "delete": { "tags": [ "ReplicationStorageClassificationMappings" ], "summary": "Delete a storage classification mapping.", "description": "The operation to delete a storage classification mapping.", "operationId": "ReplicationStorageClassificationMappings_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "storageClassificationName", "in": "path", "description": "Storage classification name.", "required": true, "type": "string" }, { "name": "storageClassificationMappingName", "in": "path", "description": "Storage classification mapping name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Delete a storage classification mapping.": { "$ref": "./examples/ReplicationStorageClassificationMappings_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}/replicationStorageClassificationMappings": { "get": { "tags": [ "ReplicationStorageClassificationMappings" ], "summary": "Gets the list of storage classification mappings objects under a storage.", "description": "Lists the storage classification mappings for the fabric.", "operationId": "ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "storageClassificationName", "in": "path", "description": "Storage classification name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of storage classification mappings objects under a storage.": { "$ref": "./examples/ReplicationStorageClassificationMappings_ListByReplicationStorageClassifications.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassificationMappings": { "get": { "tags": [ "ReplicationStorageClassificationMappings" ], "summary": "Gets the list of storage classification mappings objects under a vault.", "description": "Lists the storage classification mappings in the vault.", "operationId": "ReplicationStorageClassificationMappings_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of storage classification mappings objects under a vault.": { "$ref": "./examples/ReplicationStorageClassificationMappings_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications/{storageClassificationName}": { "get": { "tags": [ "ReplicationStorageClassifications" ], "summary": "Gets the details of a storage classification.", "description": "Gets the details of the specified storage classification.", "operationId": "ReplicationStorageClassifications_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "storageClassificationName", "in": "path", "description": "Storage classification name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassification" } } }, "x-ms-examples": { "Gets the details of a storage classification.": { "$ref": "./examples/ReplicationStorageClassifications_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationStorageClassifications": { "get": { "tags": [ "ReplicationStorageClassifications" ], "summary": "Gets the list of storage classification objects under a fabric.", "description": "Lists the storage classifications available in the specified fabric.", "operationId": "ReplicationStorageClassifications_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Site name of interest.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of storage classification objects under a fabric.": { "$ref": "./examples/ReplicationStorageClassifications_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationStorageClassifications": { "get": { "tags": [ "ReplicationStorageClassifications" ], "summary": "Gets the list of storage classification objects under a vault.", "description": "Lists the storage classifications in the vault.", "operationId": "ReplicationStorageClassifications_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/StorageClassificationCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of storage classification objects under a vault.": { "$ref": "./examples/ReplicationStorageClassifications_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/applyRecoveryPoint": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Change or apply recovery point.", "description": "The operation to change the recovery point of a failed over replication protected item.", "operationId": "ReplicationProtectedItems_ApplyRecoveryPoint", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The ARM fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "The replicated protected item's name.", "required": true, "type": "string" }, { "name": "applyRecoveryPointInput", "in": "body", "description": "The ApplyRecoveryPointInput.", "required": true, "schema": { "$ref": "#/definitions/ApplyRecoveryPointInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Change or apply recovery point.": { "$ref": "./examples/ReplicationProtectedItems_ApplyRecoveryPoint.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/repairReplication": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Resynchronize or repair replication.", "description": "The operation to start resynchronize/repair replication for a replication protected item requiring resynchronization.", "operationId": "ReplicationProtectedItems_RepairReplication", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The name of the fabric.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The name of the container.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "The name of the replication protected item.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Resynchronize or repair replication.": { "$ref": "./examples/ReplicationProtectedItems_RepairReplication.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicationProtectedItemName}/updateMobilityService": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Update the mobility service on a protected item.", "description": "The operation to update(push update) the installed mobility service software on a replication protected item to the latest available version.", "operationId": "ReplicationProtectedItems_UpdateMobilityService", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The name of the fabric containing the protected item.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The name of the container containing the protected item.", "required": true, "type": "string" }, { "name": "replicationProtectedItemName", "in": "path", "description": "The name of the protected item on which the agent is to be updated.", "required": true, "type": "string" }, { "name": "updateMobilityServiceRequest", "in": "body", "description": "Request to update the mobility service on the protected item.", "required": true, "schema": { "$ref": "#/definitions/UpdateMobilityServiceRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Update the mobility service on a protected item.": { "$ref": "./examples/ReplicationProtectedItems_UpdateMobilityService.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/reProtect": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute Reverse Replication\\Reprotect", "description": "Operation to reprotect or reverse replicate a failed over replication protected item.", "operationId": "ReplicationProtectedItems_Reprotect", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "rrInput", "in": "body", "description": "Disable protection input.", "required": true, "schema": { "$ref": "#/definitions/ReverseReplicationInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute Reverse Replication\\Reprotect": { "$ref": "./examples/ReplicationProtectedItems_Reprotect.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/failoverCommit": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute commit failover", "description": "Operation to commit the failover of the replication protected item.", "operationId": "ReplicationProtectedItems_FailoverCommit", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute commit failover": { "$ref": "./examples/ReplicationProtectedItems_FailoverCommit.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailoverCleanup": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute test failover cleanup.", "description": "Operation to clean up the test failover of a replication protected item.", "operationId": "ReplicationProtectedItems_TestFailoverCleanup", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "cleanupInput", "in": "body", "description": "Test failover cleanup input.", "required": true, "schema": { "$ref": "#/definitions/TestFailoverCleanupInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute test failover cleanup.": { "$ref": "./examples/ReplicationProtectedItems_TestFailoverCleanup.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/testFailover": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute test failover", "description": "Operation to perform a test failover of the replication protected item.", "operationId": "ReplicationProtectedItems_TestFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "failoverInput", "in": "body", "description": "Test failover input.", "required": true, "schema": { "$ref": "#/definitions/TestFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute test failover": { "$ref": "./examples/ReplicationProtectedItems_TestFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/unplannedFailover": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute unplanned failover", "description": "Operation to initiate a failover of the replication protected item.", "operationId": "ReplicationProtectedItems_UnplannedFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "failoverInput", "in": "body", "description": "Disable protection input.", "required": true, "schema": { "$ref": "#/definitions/UnplannedFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute unplanned failover": { "$ref": "./examples/ReplicationProtectedItems_UnplannedFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/plannedFailover": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Execute planned failover", "description": "Operation to initiate a planned failover of the replication protected item.", "operationId": "ReplicationProtectedItems_PlannedFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "failoverInput", "in": "body", "description": "Disable protection input.", "required": true, "schema": { "$ref": "#/definitions/PlannedFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute planned failover": { "$ref": "./examples/ReplicationProtectedItems_PlannedFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/remove": { "post": { "tags": [ "ReplicationProtectedItems" ], "summary": "Disables protection.", "description": "The operation to disable replication on a replication protected item. This will also remove the item.", "operationId": "ReplicationProtectedItems_Delete", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "disableProtectionInput", "in": "body", "description": "Disable protection input.", "required": true, "schema": { "$ref": "#/definitions/DisableProtectionInput" } } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Disables protection.": { "$ref": "./examples/ReplicationProtectedItems_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}": { "get": { "tags": [ "ReplicationProtectedItems" ], "summary": "Gets the details of a Replication protected item.", "description": "Gets the details of an ASR replication protected item.", "operationId": "ReplicationProtectedItems_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric unique name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } } }, "x-ms-examples": { "Gets the details of a Replication protected item.": { "$ref": "./examples/ReplicationProtectedItems_Get.json" } } }, "put": { "tags": [ "ReplicationProtectedItems" ], "summary": "Enables protection.", "description": "The operation to create an ASR replication protected item (Enable replication).", "operationId": "ReplicationProtectedItems_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Name of the fabric.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "A name for the replication protected item.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Enable Protection Input.", "required": true, "schema": { "$ref": "#/definitions/EnableProtectionInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Enables protection.": { "$ref": "./examples/ReplicationProtectedItems_Create.json" } } }, "delete": { "tags": [ "ReplicationProtectedItems" ], "summary": "Purges protection.", "description": "The operation to delete or purge a replication protected item. This operation will force delete the replication protected item. Use the remove operation on replication protected item to perform a clean disable replication for the item.", "operationId": "ReplicationProtectedItems_Purge", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Purges protection.": { "$ref": "./examples/ReplicationProtectedItems_Purge.json" } } }, "patch": { "tags": [ "ReplicationProtectedItems" ], "summary": "Updates protection.", "description": "The operation to update the recovery settings of an ASR replication protected item.", "operationId": "ReplicationProtectedItems_Update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "Replication protected item name.", "required": true, "type": "string" }, { "name": "updateProtectionInput", "in": "body", "description": "Update protection input.", "required": true, "schema": { "$ref": "#/definitions/UpdateReplicationProtectedItemInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Updates protection.": { "$ref": "./examples/ReplicationProtectedItems_Update.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/refreshProvider": { "post": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Refresh details from the recovery services provider.", "description": "The operation to refresh the information from the recovery services provider.", "operationId": "ReplicationRecoveryServicesProviders_RefreshProvider", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "providerName", "in": "path", "description": "Recovery services provider name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryServicesProvider" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Refresh details from the recovery services provider.": { "$ref": "./examples/ReplicationRecoveryServicesProviders_RefreshProvider.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}/remove": { "post": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).", "description": "The operation to removes/delete(unregister) a recovery services provider from the vault", "operationId": "ReplicationRecoveryServicesProviders_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "providerName", "in": "path", "description": "Recovery services provider name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Deletes provider from fabric. Note: Deleting provider for any fabric other than SingleHost is unsupported. To maintain backward compatibility for released clients the object \"deleteRspInput\" is used (if the object is empty we assume that it is old client and continue the old behavior).": { "$ref": "./examples/ReplicationRecoveryServicesProviders_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders/{providerName}": { "get": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Gets the details of a recovery services provider.", "description": "Gets the details of registered recovery services provider.", "operationId": "ReplicationRecoveryServicesProviders_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "providerName", "in": "path", "description": "Recovery services provider name", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryServicesProvider" } } }, "x-ms-examples": { "Gets the details of a recovery services provider.": { "$ref": "./examples/ReplicationRecoveryServicesProviders_Get.json" } } }, "delete": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Purges recovery service provider from fabric", "description": "The operation to purge(force delete) a recovery services provider from the vault.", "operationId": "ReplicationRecoveryServicesProviders_Purge", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "providerName", "in": "path", "description": "Recovery services provider name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Purges recovery service provider from fabric": { "$ref": "./examples/ReplicationRecoveryServicesProviders_Purge.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationRecoveryServicesProviders": { "get": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Gets the list of registered recovery services providers for the fabric.", "description": "Lists the registered recovery services providers for the specified fabric.", "operationId": "ReplicationRecoveryServicesProviders_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryServicesProviderCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of registered recovery services providers for the fabric.": { "$ref": "./examples/ReplicationRecoveryServicesProviders_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryServicesProviders": { "get": { "tags": [ "ReplicationRecoveryServicesProviders" ], "summary": "Gets the list of registered recovery services providers in the vault. This is a view only api.", "description": "Lists the registered recovery services providers in the vault", "operationId": "ReplicationRecoveryServicesProviders_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryServicesProviderCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of registered recovery services providers in the vault. This is a view only api.": { "$ref": "./examples/ReplicationRecoveryServicesProviders_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints/{recoveryPointName}": { "get": { "tags": [ "RecoveryPoints" ], "summary": "Get a recovery point.", "description": "Get the details of specified recovery point.", "operationId": "RecoveryPoints_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "The replication protected item's name.", "required": true, "type": "string" }, { "name": "recoveryPointName", "in": "path", "description": "The recovery point name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPoint" } } }, "x-ms-examples": { "Get a recovery point.": { "$ref": "./examples/RecoveryPoints_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectedItems/{replicatedProtectedItemName}/recoveryPoints": { "get": { "tags": [ "RecoveryPoints" ], "summary": "Get recovery points for a replication protected item.", "description": "Lists the available recovery points for a replication protected item.", "operationId": "RecoveryPoints_ListByReplicationProtectedItems", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The protection container name.", "required": true, "type": "string" }, { "name": "replicatedProtectedItemName", "in": "path", "description": "The replication protected item's name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPointCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Get recovery points for a replication protected item.": { "$ref": "./examples/RecoveryPoints_ListByReplicationProtectedItems.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/reProtect": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute reprotect of the recovery plan.", "description": "The operation to reprotect(reverse replicate) a recovery plan.", "operationId": "ReplicationRecoveryPlans_Reprotect", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute reprotect of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_Reprotect.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/failoverCommit": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute commit failover of the recovery plan.", "description": "The operation to commit the fail over of a recovery plan.", "operationId": "ReplicationRecoveryPlans_FailoverCommit", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute commit failover of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_FailoverCommit.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailoverCleanup": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute test failover cleanup of the recovery plan.", "description": "The operation to cleanup test failover of a recovery plan.", "operationId": "ReplicationRecoveryPlans_TestFailoverCleanup", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Test failover cleanup input.", "required": true, "schema": { "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute test failover cleanup of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_TestFailoverCleanup.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/testFailover": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute test failover of the recovery plan.", "description": "The operation to start the test failover of a recovery plan.", "operationId": "ReplicationRecoveryPlans_TestFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Failover input.", "required": true, "schema": { "$ref": "#/definitions/RecoveryPlanTestFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute test failover of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_TestFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/unplannedFailover": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute unplanned failover of the recovery plan.", "description": "The operation to start the failover of a recovery plan.", "operationId": "ReplicationRecoveryPlans_UnplannedFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Failover input.", "required": true, "schema": { "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute unplanned failover of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_UnplannedFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}/plannedFailover": { "post": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Execute planned failover of the recovery plan.", "description": "The operation to start the planned failover of a recovery plan.", "operationId": "ReplicationRecoveryPlans_PlannedFailover", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Failover input.", "required": true, "schema": { "$ref": "#/definitions/RecoveryPlanPlannedFailoverInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Execute planned failover of the recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_PlannedFailover.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans/{recoveryPlanName}": { "get": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Gets the requested recovery plan.", "description": "Gets the details of the recovery plan.", "operationId": "ReplicationRecoveryPlans_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Name of the recovery plan.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } } }, "x-ms-examples": { "Gets the requested recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_Get.json" } } }, "put": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Creates a recovery plan with the given details.", "description": "The operation to create a recovery plan.", "operationId": "ReplicationRecoveryPlans_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Recovery Plan creation input.", "required": true, "schema": { "$ref": "#/definitions/CreateRecoveryPlanInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Creates a recovery plan with the given details.": { "$ref": "./examples/ReplicationRecoveryPlans_Create.json" } } }, "delete": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Deletes the specified recovery plan.", "description": "Delete a recovery plan.", "operationId": "ReplicationRecoveryPlans_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Deletes the specified recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_Delete.json" } } }, "patch": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Updates the given recovery plan.", "description": "The operation to update a recovery plan.", "operationId": "ReplicationRecoveryPlans_Update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "recoveryPlanName", "in": "path", "description": "Recovery plan name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Update recovery plan input", "required": true, "schema": { "$ref": "#/definitions/UpdateRecoveryPlanInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlan" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Updates the given recovery plan.": { "$ref": "./examples/ReplicationRecoveryPlans_Update.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationRecoveryPlans": { "get": { "tags": [ "ReplicationRecoveryPlans" ], "summary": "Gets the list of recovery plans.", "description": "Lists the recovery plans in the vault.", "operationId": "ReplicationRecoveryPlans_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/RecoveryPlanCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of recovery plans.": { "$ref": "./examples/ReplicationRecoveryPlans_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection": { "post": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Switches protection from one container to another or one replication provider to another.", "description": "Operation to switch protection from one container to another or one replication provider to another.", "operationId": "ReplicationProtectionContainers_SwitchProtection", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "switchInput", "in": "body", "description": "Switch protection input.", "required": true, "schema": { "$ref": "#/definitions/SwitchProtectionInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainer" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Switches protection from one container to another or one replication provider to another.": { "$ref": "./examples/ReplicationProtectionContainers_SwitchProtection.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove": { "post": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Removes a protection container.", "description": "Operation to remove a protection container.", "operationId": "ReplicationProtectionContainers_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric ARM name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Unique protection container ARM name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Removes a protection container.": { "$ref": "./examples/ReplicationProtectionContainers_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem": { "post": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Adds a protectable item to the replication protection container.", "description": "The operation to a add a protectable item to a protection container(Add physical server.)", "operationId": "ReplicationProtectionContainers_DiscoverProtectableItem", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The name of the fabric.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "The name of the protection container.", "required": true, "type": "string" }, { "name": "discoverProtectableItemRequest", "in": "body", "description": "The request object to add a protectable item.", "required": true, "schema": { "$ref": "#/definitions/DiscoverProtectableItemRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainer" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Adds a protectable item to the replication protection container.": { "$ref": "./examples/ReplicationProtectionContainers_DiscoverProtectableItem.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}": { "get": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Gets the protection container details.", "description": "Gets the details of a protection container.", "operationId": "ReplicationProtectionContainers_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainer" } } }, "x-ms-examples": { "Gets the protection container details.": { "$ref": "./examples/ReplicationProtectionContainers_Get.json" } } }, "put": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Create a protection container.", "description": "Operation to create a protection container.", "operationId": "ReplicationProtectionContainers_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Unique fabric ARM name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Unique protection container ARM name.", "required": true, "type": "string" }, { "name": "creationInput", "in": "body", "description": "Creation input.", "required": true, "schema": { "$ref": "#/definitions/CreateProtectionContainerInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainer" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Create a protection container.": { "$ref": "./examples/ReplicationProtectionContainers_Create.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers": { "get": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Gets the list of protection container for a fabric.", "description": "Lists the protection containers in the specified fabric.", "operationId": "ReplicationProtectionContainers_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of protection container for a fabric.": { "$ref": "./examples/ReplicationProtectionContainers_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers": { "get": { "tags": [ "ReplicationProtectionContainers" ], "summary": "Gets the list of all protection containers in a vault.", "description": "Lists the protection containers in a vault.", "operationId": "ReplicationProtectionContainers_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of all protection containers in a vault.": { "$ref": "./examples/ReplicationProtectionContainers_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}/remove": { "post": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Remove protection container mapping.", "description": "The operation to delete or remove a protection container mapping.", "operationId": "ReplicationProtectionContainerMappings_Delete", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "mappingName", "in": "path", "description": "Protection container mapping name.", "required": true, "type": "string" }, { "name": "removalInput", "in": "body", "description": "Removal input.", "required": true, "schema": { "$ref": "#/definitions/RemoveProtectionContainerMappingInput" } } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Remove protection container mapping.": { "$ref": "./examples/ReplicationProtectionContainerMappings_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings/{mappingName}": { "get": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Gets a protection container mapping/", "description": "Gets the details of a protection container mapping.", "operationId": "ReplicationProtectionContainerMappings_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "mappingName", "in": "path", "description": "Protection Container mapping name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerMapping" } } }, "x-ms-examples": { "Gets a protection container mapping/": { "$ref": "./examples/ReplicationProtectionContainerMappings_Get.json" } } }, "put": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Create protection container mapping.", "description": "The operation to create a protection container mapping.", "operationId": "ReplicationProtectionContainerMappings_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "mappingName", "in": "path", "description": "Protection container mapping name.", "required": true, "type": "string" }, { "name": "creationInput", "in": "body", "description": "Mapping creation input.", "required": true, "schema": { "$ref": "#/definitions/CreateProtectionContainerMappingInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerMapping" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Create protection container mapping.": { "$ref": "./examples/ReplicationProtectionContainerMappings_Create.json" } } }, "delete": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Purge protection container mapping.", "description": "The operation to purge(force delete) a protection container mapping", "operationId": "ReplicationProtectionContainerMappings_Purge", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "mappingName", "in": "path", "description": "Protection container mapping name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Purge protection container mapping.": { "$ref": "./examples/ReplicationProtectionContainerMappings_Purge.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectionContainerMappings": { "get": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Gets the list of protection container mappings for a protection container.", "description": "Lists the protection container mappings for a protection container.", "operationId": "ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of protection container mappings for a protection container.": { "$ref": "./examples/ReplicationProtectionContainerMappings_ListByReplicationProtectionContainers.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainerMappings": { "get": { "tags": [ "ReplicationProtectionContainerMappings" ], "summary": "Gets the list of all protection container mappings in a vault.", "description": "Lists the protection container mappings in the vault.", "operationId": "ReplicationProtectionContainerMappings_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectionContainerMappingCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of all protection container mappings in a vault.": { "$ref": "./examples/ReplicationProtectionContainerMappings_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems/{protectableItemName}": { "get": { "tags": [ "ReplicationProtectableItems" ], "summary": "Gets the details of a protectable item.", "description": "The operation to get the details of a protectable item.", "operationId": "ReplicationProtectableItems_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" }, { "name": "protectableItemName", "in": "path", "description": "Protectable item name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectableItem" } } }, "x-ms-examples": { "Gets the details of a protectable item.": { "$ref": "./examples/ReplicationProtectableItems_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/replicationProtectableItems": { "get": { "tags": [ "ReplicationProtectableItems" ], "summary": "Gets the list of protectable items.", "description": "Lists the protectable items in a protection container.", "operationId": "ReplicationProtectableItems_ListByReplicationProtectionContainers", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" }, { "name": "protectionContainerName", "in": "path", "description": "Protection container name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/ProtectableItemCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of protectable items.": { "$ref": "./examples/ReplicationProtectableItems_ListByReplicationProtectionContainers.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies/{policyName}": { "get": { "tags": [ "ReplicationPolicies" ], "summary": "Gets the requested policy.", "description": "Gets the details of a replication policy.", "operationId": "ReplicationPolicies_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "policyName", "in": "path", "description": "Replication policy name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Policy" } } }, "x-ms-examples": { "Gets the requested policy.": { "$ref": "./examples/ReplicationPolicies_Get.json" } } }, "put": { "tags": [ "ReplicationPolicies" ], "summary": "Creates the policy.", "description": "The operation to create a replication policy", "operationId": "ReplicationPolicies_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "policyName", "in": "path", "description": "Replication policy name", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Create policy input", "required": true, "schema": { "$ref": "#/definitions/CreatePolicyInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Policy" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Creates the policy.": { "$ref": "./examples/ReplicationPolicies_Create.json" } } }, "delete": { "tags": [ "ReplicationPolicies" ], "summary": "Delete the policy.", "description": "The operation to delete a replication policy.", "operationId": "ReplicationPolicies_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "policyName", "in": "path", "description": "Replication policy name.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Delete the policy.": { "$ref": "./examples/ReplicationPolicies_Delete.json" } } }, "patch": { "tags": [ "ReplicationPolicies" ], "summary": "Updates the protection profile.", "description": "The operation to update a replication policy.", "operationId": "ReplicationPolicies_Update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "policyName", "in": "path", "description": "Protection profile Id.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Update Protection Profile Input", "required": true, "schema": { "$ref": "#/definitions/UpdatePolicyInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Policy" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Updates the protection profile.": { "$ref": "./examples/ReplicationPolicies_Update.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationPolicies": { "get": { "tags": [ "ReplicationPolicies" ], "summary": "Gets the list of replication policies", "description": "Lists the replication policies for a vault.", "operationId": "ReplicationPolicies_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/PolicyCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of replication policies": { "$ref": "./examples/ReplicationPolicies_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/operations": { "get": { "tags": [ "Operations" ], "summary": "Returns the list of available operations.", "description": "Operation to return the list of available operations.", "operationId": "Operations_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/OperationsDiscoveryCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Returns the list of available operations.": { "$ref": "./examples/Operations_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationNetworks": { "get": { "tags": [ "ReplicationNetworks" ], "summary": "Gets the list of networks. View-only API.", "description": "Lists the networks available in a vault", "operationId": "ReplicationNetworks_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of networks. View-only API.": { "$ref": "./examples/ReplicationNetworks_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks": { "get": { "tags": [ "ReplicationNetworks" ], "summary": "Gets the list of networks under a fabric.", "description": "Lists the networks available for a fabric.", "operationId": "ReplicationNetworks_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of networks under a fabric.": { "$ref": "./examples/ReplicationNetworks_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}": { "get": { "tags": [ "ReplicationNetworks" ], "summary": "Gets a network with specified server id and network name.", "description": "Gets the details of a network.", "operationId": "ReplicationNetworks_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Server Id.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Network" } } }, "x-ms-examples": { "Gets a network with specified server id and network name.": { "$ref": "./examples/ReplicationNetworks_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationNetworks/{networkName}/replicationNetworkMappings/{networkMappingName}": { "get": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Gets network mapping by name.", "description": "Gets the details of an ASR network mapping", "operationId": "ReplicationNetworkMappings_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Primary fabric name.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" }, { "name": "networkMappingName", "in": "path", "description": "Network mapping name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkMapping" } } }, "x-ms-examples": { "Gets network mapping by name.": { "$ref": "./examples/ReplicationNetworkMappings_Get.json" } } }, "put": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Creates network mapping.", "description": "The operation to create an ASR network mapping.", "operationId": "ReplicationNetworkMappings_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Primary fabric name.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" }, { "name": "networkMappingName", "in": "path", "description": "Network mapping name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Create network mapping input.", "required": true, "schema": { "$ref": "#/definitions/CreateNetworkMappingInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkMapping" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Creates network mapping.": { "$ref": "./examples/ReplicationNetworkMappings_Create.json" } } }, "delete": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Delete network mapping.", "description": "The operation to delete a network mapping.", "operationId": "ReplicationNetworkMappings_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Primary fabric name.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" }, { "name": "networkMappingName", "in": "path", "description": "ARM Resource Name for network mapping.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Delete network mapping.": { "$ref": "./examples/ReplicationNetworkMappings_Delete.json" } } }, "patch": { "tags": [ "ReplicationNetworkMappings" ], "summary": "Updates network mapping.", "description": "The operation to update an ASR network mapping.", "operationId": "ReplicationNetworkMappings_Update", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Primary fabric name.", "required": true, "type": "string" }, { "name": "networkName", "in": "path", "description": "Primary network name.", "required": true, "type": "string" }, { "name": "networkMappingName", "in": "path", "description": "Network mapping name.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Update network mapping input.", "required": true, "schema": { "$ref": "#/definitions/UpdateNetworkMappingInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/NetworkMapping" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Updates network mapping.": { "$ref": "./examples/ReplicationNetworkMappings_Update.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks": { "get": { "tags": [ "ReplicationLogicalNetworks" ], "summary": "Gets the list of logical networks under a fabric.", "description": "Lists all the logical networks of the Azure Site Recovery fabric", "operationId": "ReplicationLogicalNetworks_ListByReplicationFabrics", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Server Id.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LogicalNetworkCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of logical networks under a fabric.": { "$ref": "./examples/ReplicationLogicalNetworks_ListByReplicationFabrics.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationLogicalNetworks/{logicalNetworkName}": { "get": { "tags": [ "ReplicationLogicalNetworks" ], "summary": "Gets a logical network with specified server id and logical network name.", "description": "Gets the details of a logical network.", "operationId": "ReplicationLogicalNetworks_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Server Id.", "required": true, "type": "string" }, { "name": "logicalNetworkName", "in": "path", "description": "Logical network name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LogicalNetwork" } } }, "x-ms-examples": { "Gets a logical network with specified server id and logical network name.": { "$ref": "./examples/ReplicationLogicalNetworks_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/resume": { "post": { "tags": [ "ReplicationJobs" ], "summary": "Resumes the specified job.", "description": "The operation to resume an Azure Site Recovery job", "operationId": "ReplicationJobs_Resume", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "jobName", "in": "path", "description": "Job identifier.", "required": true, "type": "string" }, { "name": "resumeJobParams", "in": "body", "description": "Resume rob comments.", "required": true, "schema": { "$ref": "#/definitions/ResumeJobParams" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Job" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Resumes the specified job.": { "$ref": "./examples/ReplicationJobs_Resume.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/restart": { "post": { "tags": [ "ReplicationJobs" ], "summary": "Restarts the specified job.", "description": "The operation to restart an Azure Site Recovery job.", "operationId": "ReplicationJobs_Restart", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "jobName", "in": "path", "description": "Job identifier.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Job" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Restarts the specified job.": { "$ref": "./examples/ReplicationJobs_Restart.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}/cancel": { "post": { "tags": [ "ReplicationJobs" ], "summary": "Cancels the specified job.", "description": "The operation to cancel an Azure Site Recovery job.", "operationId": "ReplicationJobs_Cancel", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "jobName", "in": "path", "description": "Job identifier.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Job" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Cancels the specified job.": { "$ref": "./examples/ReplicationJobs_Cancel.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/{jobName}": { "get": { "tags": [ "ReplicationJobs" ], "summary": "Gets the job details.", "description": "Get the details of an Azure Site Recovery job.", "operationId": "ReplicationJobs_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "jobName", "in": "path", "description": "Job identifier", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Job" } } }, "x-ms-examples": { "Gets the job details.": { "$ref": "./examples/ReplicationJobs_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs/export": { "post": { "tags": [ "ReplicationJobs" ], "summary": "Exports the details of the Azure Site Recovery jobs of the vault.", "description": "The operation to export the details of the Azure Site Recovery jobs of the vault.", "operationId": "ReplicationJobs_Export", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "jobQueryParameter", "in": "body", "description": "job query filter.", "required": true, "schema": { "$ref": "#/definitions/JobQueryParameter" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Job" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Exports the details of the Azure Site Recovery jobs of the vault.": { "$ref": "./examples/ReplicationJobs_Export.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationJobs": { "get": { "tags": [ "ReplicationJobs" ], "summary": "Gets the list of jobs.", "description": "Gets the list of Azure Site Recovery Jobs for the vault.", "operationId": "ReplicationJobs_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/JobCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-odata": "#/definitions/JobQueryParameter", "x-ms-examples": { "Gets the list of jobs.": { "$ref": "./examples/ReplicationJobs_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/reassociateGateway": { "post": { "tags": [ "ReplicationFabrics" ], "summary": "Perform failover of the process server.", "description": "The operation to move replications from a process server to another process server.", "operationId": "ReplicationFabrics_ReassociateGateway", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "The name of the fabric containing the process server.", "required": true, "type": "string" }, { "name": "failoverProcessServerRequest", "in": "body", "description": "The input to the failover process server operation.", "required": true, "schema": { "$ref": "#/definitions/FailoverProcessServerRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Fabric" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Perform failover of the process server.": { "$ref": "./examples/ReplicationFabrics_ReassociateGateway.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/checkConsistency": { "post": { "tags": [ "ReplicationFabrics" ], "summary": "Checks the consistency of the ASR fabric.", "description": "The operation to perform a consistency check on the fabric.", "operationId": "ReplicationFabrics_CheckConsistency", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Fabric" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Checks the consistency of the ASR fabric.": { "$ref": "./examples/ReplicationFabrics_CheckConsistency.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/remove": { "post": { "tags": [ "ReplicationFabrics" ], "summary": "Deletes the site.", "description": "The operation to delete or remove an Azure Site Recovery fabric.", "operationId": "ReplicationFabrics_Delete", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "ASR fabric to delete", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Deletes the site.": { "$ref": "./examples/ReplicationFabrics_Delete.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}": { "get": { "tags": [ "ReplicationFabrics" ], "summary": "Gets the details of an ASR fabric.", "description": "Gets the details of an Azure Site Recovery fabric.", "operationId": "ReplicationFabrics_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Fabric name.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Fabric" } } }, "x-ms-examples": { "Gets the details of an ASR fabric.": { "$ref": "./examples/ReplicationFabrics_Get.json" } } }, "put": { "tags": [ "ReplicationFabrics" ], "summary": "Creates an Azure Site Recovery fabric.", "description": "The operation to create an Azure Site Recovery fabric (for e.g. Hyper-V site)", "operationId": "ReplicationFabrics_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "Name of the ASR fabric.", "required": true, "type": "string" }, { "name": "input", "in": "body", "description": "Fabric creation input.", "required": true, "schema": { "$ref": "#/definitions/FabricCreationInput" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Fabric" } }, "202": { "description": "Accepted" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Creates an Azure Site Recovery fabric.": { "$ref": "./examples/ReplicationFabrics_Create.json" } } }, "delete": { "tags": [ "ReplicationFabrics" ], "summary": "Purges the site.", "description": "The operation to purge(force delete) an Azure Site Recovery fabric.", "operationId": "ReplicationFabrics_Purge", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "fabricName", "in": "path", "description": "ASR fabric to purge.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Accepted" }, "204": { "description": "NoContent" } }, "x-ms-long-running-operation": true, "x-ms-examples": { "Purges the site.": { "$ref": "./examples/ReplicationFabrics_Purge.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics": { "get": { "tags": [ "ReplicationFabrics" ], "summary": "Gets the list of ASR fabrics", "description": "Gets a list of the Azure Site Recovery fabrics in the vault.", "operationId": "ReplicationFabrics_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/FabricCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of ASR fabrics": { "$ref": "./examples/ReplicationFabrics_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents/{eventName}": { "get": { "tags": [ "ReplicationEvents" ], "summary": "Get the details of an Azure Site recovery event.", "description": "The operation to get the details of an Azure Site recovery event.", "operationId": "ReplicationEvents_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "eventName", "in": "path", "description": "The name of the Azure Site Recovery event.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Event" } } }, "x-ms-examples": { "Get the details of an Azure Site recovery event.": { "$ref": "./examples/ReplicationEvents_Get.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationEvents": { "get": { "tags": [ "ReplicationEvents" ], "summary": "Gets the list of Azure Site Recovery events.", "description": "Gets the list of Azure Site Recovery events for the vault.", "operationId": "ReplicationEvents_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/EventCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-odata": "#/definitions/EventQueryParameter", "x-ms-examples": { "Gets the list of Azure Site Recovery events.": { "$ref": "./examples/ReplicationEvents_List.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings/{alertSettingName}": { "get": { "tags": [ "ReplicationAlertSettings" ], "summary": "Gets an email notification(alert) configuration.", "description": "Gets the details of the specified email notification(alert) configuration.", "operationId": "ReplicationAlertSettings_Get", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "alertSettingName", "in": "path", "description": "The name of the email notification configuration.", "required": true, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Alert" } } }, "x-ms-examples": { "Gets an email notification(alert) configuration.": { "$ref": "./examples/ReplicationAlertSettings_Get.json" } } }, "put": { "tags": [ "ReplicationAlertSettings" ], "summary": "Configures email notifications for this vault.", "description": "Create or update an email notification(alert) configuration.", "operationId": "ReplicationAlertSettings_Create", "consumes": [ "application/json" ], "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" }, { "name": "alertSettingName", "in": "path", "description": "The name of the email notification(alert) configuration.", "required": true, "type": "string" }, { "name": "request", "in": "body", "description": "The input to configure the email notification(alert).", "required": true, "schema": { "$ref": "#/definitions/ConfigureAlertRequest" } } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/Alert" } } }, "x-ms-examples": { "Configures email notifications for this vault.": { "$ref": "./examples/ReplicationAlertSettings_Create.json" } } } }, "/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationAlertSettings": { "get": { "tags": [ "ReplicationAlertSettings" ], "summary": "Gets the list of configured email notification(alert) configurations.", "description": "Gets the list of email notification(alert) configurations for the vault.", "operationId": "ReplicationAlertSettings_List", "produces": [ "application/json" ], "parameters": [ { "$ref": "#/parameters/ApiVersion" }, { "$ref": "#/parameters/ResourceName" }, { "$ref": "#/parameters/ResourceGroupName" }, { "$ref": "#/parameters/SubscriptionId" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/AlertCollection" } } }, "x-ms-pageable": { "nextLinkName": "nextLink" }, "x-ms-examples": { "Gets the list of configured email notification(alert) configurations.": { "$ref": "./examples/ReplicationAlertSettings_List.json" } } } } }, "definitions": { "AlertCollection": { "description": "Collection of alerts.", "type": "object", "properties": { "value": { "description": "The list of alerts.", "type": "array", "items": { "$ref": "#/definitions/Alert" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "Alert": { "description": "Implements the Alert class.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/AlertProperties", "description": "Alert related data." } } }, "AlertProperties": { "description": "The properties of an alert.", "type": "object", "properties": { "sendToOwners": { "description": "A value indicating whether to send email to subscription administrator.", "type": "string" }, "customEmailAddresses": { "description": "The custom email address for sending emails.", "type": "array", "items": { "type": "string" } }, "locale": { "description": "The locale for the email notification.", "type": "string" } } }, "ConfigureAlertRequest": { "description": "Request to configure alerts for the system.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/ConfigureAlertRequestProperties", "description": "The properties of a configure alert request." } } }, "ConfigureAlertRequestProperties": { "description": "Properties of a configure alert request.", "type": "object", "properties": { "sendToOwners": { "description": "A value indicating whether to send email to subscription administrator.", "type": "string" }, "customEmailAddresses": { "description": "The custom email address for sending emails.", "type": "array", "items": { "type": "string" } }, "locale": { "description": "The locale for the email notification.", "type": "string" } } }, "EventCollection": { "description": "Collection of fabric details.", "type": "object", "properties": { "value": { "description": "The list of events.", "type": "array", "items": { "$ref": "#/definitions/Event" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "Event": { "description": "Implements the Event class.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/EventProperties", "description": "Event related data." } } }, "EventProperties": { "description": "The properties of a monitoring event.", "type": "object", "properties": { "eventCode": { "description": "The Id of the monitoring event.", "type": "string" }, "description": { "description": "The event name.", "type": "string" }, "eventType": { "description": "The type of the event. for example: VM Health, Server Health, Job Failure etc.", "type": "string" }, "affectedObjectFriendlyName": { "description": "The friendly name of the source of the event on which it is raised (for example, VM, VMM etc).", "type": "string" }, "severity": { "description": "The severity of the event.", "type": "string" }, "timeOfOccurrence": { "format": "date-time", "description": "The time of occurrence of the event.", "type": "string" }, "fabricId": { "description": "The ARM ID of the fabric.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/EventProviderSpecificDetails", "description": "The provider specific settings." }, "eventSpecificDetails": { "$ref": "#/definitions/EventSpecificDetails", "description": "The event specific settings." }, "healthErrors": { "description": "The list of errors / warnings capturing details associated with the issue(s).", "type": "array", "items": { "$ref": "#/definitions/HealthError" } } } }, "EventProviderSpecificDetails": { "description": "Model class for provider specific details for an event.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "EventSpecificDetails": { "description": "Model class for event specific details for an event.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "HealthError": { "description": "Health Error", "type": "object", "properties": { "errorSource": { "description": "Source of error.", "type": "string" }, "errorType": { "description": "Type of error.", "type": "string" }, "errorLevel": { "description": "Level of error.", "type": "string" }, "errorCode": { "description": "Error code.", "type": "string" }, "errorMessage": { "description": "Error message.", "type": "string" }, "possibleCauses": { "description": "Possible causes of error.", "type": "string" }, "recommendedAction": { "description": "Recommended action to resolve error.", "type": "string" }, "creationTimeUtc": { "format": "date-time", "description": "Error creation time (UTC)", "type": "string" }, "recoveryProviderErrorMessage": { "description": "DRA error message.", "type": "string" }, "entityId": { "description": "ID of the entity.", "type": "string" }, "childErrors": { "description": "The child health errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } } } }, "EventQueryParameter": { "description": "Implements the event query parameter.", "type": "object", "properties": { "EventCode": { "description": "The source id of the events to be queried.", "type": "string" }, "Severity": { "description": "The severity of the events to be queried.", "type": "string" }, "EventType": { "description": "The type of the events to be queried.", "type": "string" }, "FabricName": { "description": "The affected object server id of the events to be queried.", "type": "string" }, "AffectedObjectFriendlyName": { "description": "The affected object name of the events to be queried.", "type": "string" }, "StartTime": { "format": "date-time", "description": "The start time of the time range within which the events are to be queried.", "type": "string" }, "EndTime": { "format": "date-time", "description": "The end time of the time range within which the events are to be queried.", "type": "string" } } }, "FabricCollection": { "description": "Collection of fabric details.", "type": "object", "properties": { "value": { "description": "The fabric details.", "type": "array", "items": { "$ref": "#/definitions/Fabric" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "Fabric": { "description": "Fabric definition.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/FabricProperties", "description": "Fabric related data." } } }, "FabricProperties": { "description": "Fabric properties.", "type": "object", "properties": { "friendlyName": { "description": "Friendly name of the fabric.", "type": "string" }, "encryptionDetails": { "$ref": "#/definitions/EncryptionDetails", "description": "Encryption details for the fabric." }, "rolloverEncryptionDetails": { "$ref": "#/definitions/EncryptionDetails", "description": "Rollover encryption details for the fabric." }, "internalIdentifier": { "description": "Dra Registration Id.", "type": "string" }, "bcdrState": { "description": "BCDR state of the fabric.", "type": "string" }, "customDetails": { "$ref": "#/definitions/FabricSpecificDetails", "description": "Fabric specific settings." }, "healthErrorDetails": { "description": "Fabric health error details.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "health": { "description": "Health of fabric.", "type": "string" } } }, "EncryptionDetails": { "description": "Encryption details for the fabric.", "type": "object", "properties": { "kekState": { "description": "The key encryption key state for the Vmm.", "type": "string" }, "kekCertThumbprint": { "description": "The key encryption key certificate thumbprint.", "type": "string" }, "kekCertExpiryDate": { "format": "date-time", "description": "The key encryption key certificate expiry date.", "type": "string" } } }, "FabricSpecificDetails": { "description": "Fabric specific details.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "FabricCreationInput": { "description": "Site details provided during the time of site creation", "type": "object", "properties": { "properties": { "$ref": "#/definitions/FabricCreationInputProperties", "description": "Fabric creation input." } } }, "FabricCreationInputProperties": { "description": "Properties of site details provided during the time of site creation", "type": "object", "properties": { "customDetails": { "$ref": "#/definitions/FabricSpecificCreationInput", "description": "Fabric provider specific creation input." } } }, "FabricSpecificCreationInput": { "description": "Fabric provider specific settings.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "Object": { "description": "Base of all objects.", "type": "object", "properties": {} }, "FailoverProcessServerRequest": { "description": "Request to failover a process server.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/FailoverProcessServerRequestProperties", "description": "The properties of the PS Failover request." } } }, "FailoverProcessServerRequestProperties": { "description": "The properties of the Failover Process Server request.", "type": "object", "properties": { "containerName": { "description": "The container identifier.", "type": "string" }, "sourceProcessServerId": { "description": "The source process server.", "type": "string" }, "targetProcessServerId": { "description": "The new process server.", "type": "string" }, "vmsToMigrate": { "description": "The VMS to migrate.", "type": "array", "items": { "type": "string" } }, "updateType": { "description": "A value for failover type. It can be systemlevel/serverlevel", "type": "string" } } }, "JobCollection": { "description": "Collection of jobs.", "type": "object", "properties": { "value": { "description": "The list of jobs.", "type": "array", "items": { "$ref": "#/definitions/Job" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "Job": { "description": "Job details.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/JobProperties", "description": "The custom data." }, "status": { "description": "The status of the Job. ARM expects the terminal status to be one of (1) Succeeded, (2) Failed or (3) Canceled. All other values imply that the operation is still running / being applied.", "type": "string" }, "error": { "$ref": "#/definitions/ARMException", "description": "The error." }, "startTime": { "description": "The start time.", "type": "string" }, "endTime": { "description": "The start time.", "type": "string" } } }, "JobProperties": { "description": "Job custom data details.", "type": "object", "properties": { "activityId": { "description": "The activity id.", "type": "string" }, "scenarioName": { "description": "The ScenarioName.", "type": "string" }, "friendlyName": { "description": "The DisplayName.", "type": "string" }, "state": { "description": "The status of the Job. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", "type": "string" }, "stateDescription": { "description": "The description of the state of the Job. For e.g. - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", "type": "string" }, "tasks": { "description": "The tasks.", "type": "array", "items": { "$ref": "#/definitions/ASRTask" } }, "errors": { "description": "The errors.", "type": "array", "items": { "$ref": "#/definitions/JobErrorDetails" } }, "startTime": { "format": "date-time", "description": "The start time.", "type": "string" }, "endTime": { "format": "date-time", "description": "The end time.", "type": "string" }, "allowedActions": { "description": "The Allowed action the job.", "type": "array", "items": { "type": "string" } }, "targetObjectId": { "description": "The affected Object Id.", "type": "string" }, "targetObjectName": { "description": "The name of the affected object.", "type": "string" }, "targetInstanceType": { "description": "The type of the affected object which is of {Microsoft.Azure.SiteRecovery.V2015_11_10.AffectedObjectType} class.", "type": "string" }, "customDetails": { "$ref": "#/definitions/JobDetails", "description": "The custom job details like test failover job details." } } }, "ARMException": { "description": "ARM inner exception class.", "type": "object", "properties": { "code": { "description": "Gets HTTP status code for the error.", "type": "string" }, "message": { "description": "Gets exception message.", "type": "string" }, "target": { "description": "Gets exception target.", "type": "string" }, "details": { "description": "Gets service based error details.", "type": "array", "items": { "$ref": "#/definitions/ARMExceptionDetails" } }, "innererror": { "$ref": "#/definitions/ARMInnerError", "description": "Gets private data for service debugging." } } }, "ASRTask": { "description": "Task of the Job.", "type": "object", "properties": { "taskId": { "description": "The Id.", "type": "string" }, "name": { "description": "The unique Task name.", "type": "string" }, "startTime": { "format": "date-time", "description": "The start time.", "type": "string" }, "endTime": { "format": "date-time", "description": "The end time.", "type": "string" }, "allowedActions": { "description": "The state/actions applicable on this task.", "type": "array", "items": { "type": "string" } }, "friendlyName": { "description": "The name.", "type": "string" }, "state": { "description": "The State. It is one of these values - NotStarted, InProgress, Succeeded, Failed, Cancelled, Suspended or Other.", "type": "string" }, "stateDescription": { "description": "The description of the task state. For example - For Succeeded state, description can be Completed, PartiallySucceeded, CompletedWithInformation or Skipped.", "type": "string" }, "taskType": { "description": "The type of task. Details in CustomDetails property depend on this type.", "type": "string" }, "customDetails": { "$ref": "#/definitions/TaskTypeDetails", "description": "The custom task details based on the task type." }, "groupTaskCustomDetails": { "$ref": "#/definitions/GroupTaskDetails", "description": "The custom task details based on the task type, if the task type is GroupTaskDetails or one of the types derived from it." }, "errors": { "description": "The task error details.", "type": "array", "items": { "$ref": "#/definitions/JobErrorDetails" } } } }, "JobErrorDetails": { "description": "This class contains the error details per object.", "type": "object", "properties": { "serviceErrorDetails": { "$ref": "#/definitions/ServiceError", "description": "The Service error details." }, "providerErrorDetails": { "$ref": "#/definitions/ProviderError", "description": "The Provider error details." }, "errorLevel": { "description": "Error level of error.", "type": "string" }, "creationTime": { "format": "date-time", "description": "The creation time of job error.", "type": "string" }, "taskId": { "description": "The Id of the task.", "type": "string" } } }, "JobDetails": { "description": "Job details based on specific job type.", "type": "object", "properties": { "instanceType": { "description": "Gets the type of job details (see JobDetailsTypes enum for possible values).", "type": "string", "readOnly": true }, "affectedObjectDetails": { "description": "The affected object properties like source server, source cloud, target server, target cloud etc. based on the workflow object details.", "type": "object", "additionalProperties": { "type": "string" } } }, "discriminator": "instanceType" }, "ARMExceptionDetails": { "description": "Service based exception details.", "type": "object", "properties": { "code": { "description": "Gets service error code.", "type": "string" }, "message": { "description": "Gets error message.", "type": "string" }, "possibleCauses": { "description": "Gets possible cause for error.", "type": "string" }, "recommendedAction": { "description": "Gets recommended action for the error.", "type": "string" }, "clientRequestId": { "description": "Gets the client request Id for the session.", "type": "string" }, "activityId": { "description": "Gets the activity Id for the session.", "type": "string" }, "target": { "description": "Gets exception target.", "type": "string" } } }, "ARMInnerError": { "description": "ARM internal error class for providing additional debug data.", "type": "object", "properties": { "trace": { "description": "Gets complete stack trace of the exception.", "type": "string" }, "source": { "description": "Gets exception source.", "type": "string" }, "methodStatus": { "$ref": "#/definitions/MethodCallStatus", "description": "Gets data related to method which threw the exception." }, "cloudId": { "description": "Gets cloud Id in exception.", "type": "string" }, "hVHostId": { "description": "Gets hyperV host ID.", "type": "string" }, "hVClusterId": { "description": "Gets hyperV cluster Id.", "type": "string" }, "networkId": { "description": "Gets network Id.", "type": "string" }, "vmId": { "description": "Gets Vm Id.", "type": "string" }, "fabricId": { "description": "Gets Fabric Id.", "type": "string" }, "liveId": { "description": "Gets Live Id of the caller.", "type": "string" }, "containerId": { "description": "Gets container Id of the caller.", "type": "string" }, "resourceId": { "description": "Gets resource id used in the call.", "type": "string" }, "resourceName": { "description": "Gets caller resource name.", "type": "string" }, "subscriptionId": { "description": "Gets subscription Id.", "type": "string" }, "serializedSRSLogContext": { "description": "Gets serialized SRS log context.", "type": "string" } } }, "TaskTypeDetails": { "description": "Task details based on specific task type.", "type": "object", "properties": { "instanceType": { "description": "The type of task details.", "type": "string" } }, "discriminator": "instanceType" }, "GroupTaskDetails": { "description": "This class represents the group task details when parent child relationship exists in the drill down.", "type": "object", "properties": { "instanceType": { "description": "The type of task details.", "type": "string" }, "childTasks": { "description": "The child tasks.", "type": "array", "items": { "$ref": "#/definitions/ASRTask" } } }, "discriminator": "instanceType" }, "ServiceError": { "description": "ASR error model", "type": "object", "properties": { "code": { "description": "Error code.", "type": "string" }, "message": { "description": "Error message.", "type": "string" }, "possibleCauses": { "description": "Possible causes of error.", "type": "string" }, "recommendedAction": { "description": "Recommended action to resolve error.", "type": "string" }, "activityId": { "description": "Activity Id.", "type": "string" } } }, "ProviderError": { "description": "This class contains the error details per object.", "type": "object", "properties": { "errorCode": { "format": "int32", "description": "The Error code.", "type": "integer" }, "errorMessage": { "description": "The Error message.", "type": "string" }, "errorId": { "description": "The Provider error Id.", "type": "string" }, "possibleCauses": { "description": "The possible causes for the error.", "type": "string" }, "recommendedAction": { "description": "The recommended action to resolve the error.", "type": "string" } } }, "MethodCallStatus": { "description": "Reports method status where exception was raised.", "type": "object", "properties": { "isVirtual": { "description": "Gets a value indicating whether called method was virtual", "type": "string" }, "parameters": { "description": "Gets parameter list passed to method.", "type": "array", "items": { "type": "string" } }, "containsGenericParameters": { "description": "Gets a value indicating whether method container generic params.", "type": "string" } } }, "JobQueryParameter": { "description": "Query parameter to enumerate jobs.", "type": "object", "properties": { "startTime": { "description": "Date time to get jobs from.", "type": "string" }, "endTime": { "description": "Date time to get jobs up to.", "type": "string" }, "fabricId": { "description": "The Id of the fabric to search jobs under.", "type": "string" }, "affectedObjectTypes": { "description": "The type of objects.", "type": "array", "items": { "type": "string" } }, "jobStatus": { "description": "The states of the job to be filtered can be in.", "type": "array", "items": { "type": "string" } } } }, "ResumeJobParams": { "description": "Resume job params.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/ResumeJobParamsProperties", "description": "Resume job properties." } } }, "ResumeJobParamsProperties": { "description": "Resume job properties.", "type": "object", "properties": { "comments": { "description": "Resume job comments.", "type": "string" } } }, "LogicalNetwork": { "description": "Logical network data model.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/LogicalNetworkProperties", "description": "The Logical Network Properties." } } }, "LogicalNetworkProperties": { "description": "Logical Network Properties.", "type": "object", "properties": { "friendlyName": { "description": "The Friendly Name.", "type": "string" }, "networkVirtualizationStatus": { "description": "A value indicating whether Network Virtualization is enabled for the logical network.", "type": "string" }, "logicalNetworkUsage": { "description": "A value indicating whether logical network is used as private test network by test failover.", "type": "string" }, "logicalNetworkDefinitionsStatus": { "description": "A value indicating whether logical network definitions are isolated.", "type": "string" } } }, "LogicalNetworkCollection": { "description": "List of logical networks.", "type": "object", "properties": { "value": { "description": "The Logical Networks list details.", "type": "array", "items": { "$ref": "#/definitions/LogicalNetwork" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "NetworkMapping": { "description": "Network Mapping model. Ideally it should have been possible to inherit this class from prev version in InheritedModels as long as there is no difference in structure or method signature. Since there were no base Models for certain fields and methods viz NetworkMappingProperties and Load with required return type, the class has been introduced in its entirety with references to base models to facilitate extensions in subsequent versions.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/NetworkMappingProperties", "description": "The Network Mapping Properties." } } }, "NetworkMappingProperties": { "description": "Network Mapping Properties.", "type": "object", "properties": { "state": { "description": "The pairing state for network mapping.", "type": "string" }, "primaryNetworkFriendlyName": { "description": "The primary network friendly name.", "type": "string" }, "primaryNetworkId": { "description": "The primary network id for network mapping.", "type": "string" }, "primaryFabricFriendlyName": { "description": "The primary fabric friendly name.", "type": "string" }, "recoveryNetworkFriendlyName": { "description": "The recovery network friendly name.", "type": "string" }, "recoveryNetworkId": { "description": "The recovery network id for network mapping.", "type": "string" }, "recoveryFabricArmId": { "description": "The recovery fabric ARM id.", "type": "string" }, "recoveryFabricFriendlyName": { "description": "The recovery fabric friendly name.", "type": "string" }, "fabricSpecificSettings": { "$ref": "#/definitions/NetworkMappingFabricSpecificSettings", "description": "The fabric specific settings." } } }, "NetworkMappingFabricSpecificSettings": { "description": "Network Mapping fabric specific settings.", "type": "object", "properties": { "instanceType": { "description": "Gets the Instance type.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "CreateNetworkMappingInput": { "description": "Create network mappings input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/CreateNetworkMappingInputProperties", "description": "Input properties for creating network mapping." } } }, "CreateNetworkMappingInputProperties": { "description": "Common input details for network mapping operation.", "type": "object", "properties": { "recoveryFabricName": { "description": "Recovery fabric Name.", "type": "string" }, "recoveryNetworkId": { "description": "Recovery network Id.", "type": "string" }, "fabricSpecificDetails": { "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput", "description": "Fabric specific input properties." } } }, "FabricSpecificCreateNetworkMappingInput": { "description": "Input details specific to fabrics during Network Mapping.", "type": "object", "properties": { "instanceType": { "description": "The instance type.", "type": "string" } }, "discriminator": "instanceType" }, "UpdateNetworkMappingInput": { "description": "Update network mapping input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdateNetworkMappingInputProperties", "description": "The input properties needed to update network mapping." } } }, "UpdateNetworkMappingInputProperties": { "description": "Common input details for network mapping operation.", "type": "object", "properties": { "recoveryFabricName": { "description": "Recovery fabric name.", "type": "string" }, "recoveryNetworkId": { "description": "Recovery network Id.", "type": "string" }, "fabricSpecificDetails": { "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput", "description": "Fabrics specific input network Id." } } }, "FabricSpecificUpdateNetworkMappingInput": { "description": "Input details specific to fabrics during Network Mapping.", "type": "object", "properties": { "instanceType": { "description": "The instance type.", "type": "string" } }, "discriminator": "instanceType" }, "Network": { "description": "Network model.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/NetworkProperties", "description": "The Network Properties." } } }, "NetworkProperties": { "description": "Network Properties", "type": "object", "properties": { "fabricType": { "description": "The Fabric Type.", "type": "string" }, "subnets": { "description": "The List of subnets.", "type": "array", "items": { "$ref": "#/definitions/Subnet" } }, "friendlyName": { "description": "The Friendly Name.", "type": "string" }, "networkType": { "description": "The Network Type.", "type": "string" } } }, "Subnet": { "description": "Subnets of the network.", "type": "object", "properties": { "name": { "description": "The subnet name.", "type": "string" }, "friendlyName": { "description": "The subnet friendly name.", "type": "string" }, "addressList": { "description": "The list of addresses for the subnet.", "type": "array", "items": { "type": "string" } } } }, "NetworkCollection": { "description": "List of networks.", "type": "object", "properties": { "value": { "description": "The Networks list details.", "type": "array", "items": { "$ref": "#/definitions/Network" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "OperationsDiscoveryCollection": { "description": "Collection of ClientDiscovery details.", "type": "object", "properties": { "value": { "description": "The ClientDiscovery details.", "type": "array", "items": { "$ref": "#/definitions/OperationsDiscovery" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "OperationsDiscovery": { "description": "Operations discovery class.", "type": "object", "properties": { "name": { "description": "Name of the API. The name of the operation being performed on this particular object. It should match the action name that appears in RBAC / the event service. Examples of operations include: * Microsoft.Compute/virtualMachine/capture/action * Microsoft.Compute/virtualMachine/restart/action * Microsoft.Compute/virtualMachine/write * Microsoft.Compute/virtualMachine/read * Microsoft.Compute/virtualMachine/delete Each action should include, in order: (1) Resource Provider Namespace (2) Type hierarchy for which the action applies (e.g. server/databases for a SQL Azure database) (3) Read, Write, Action or Delete indicating which type applies. If it is a PUT/PATCH on a collection or named value, Write should be used. If it is a GET, Read should be used. If it is a DELETE, Delete should be used. If it is a POST, Action should be used. As a note: all resource providers would need to include the \"{Resource Provider Namespace}/register/action\" operation in their response. This API is used to register for their service, and should include details about the operation (e.g. a localized name for the resource provider + any special considerations like PII release)", "type": "string" }, "display": { "$ref": "#/definitions/Display", "description": "Object type" }, "origin": { "description": "Origin. The intended executor of the operation; governs the display of the operation in the RBAC UX and the audit logs UX. Default value is \"user,system\"", "type": "string" }, "properties": { "$ref": "#/definitions/OperationsDiscoveryProperties", "description": "Properties. Reserved for future use." } } }, "Display": { "description": "Contains the localized display information for this particular operation / action. These value will be used by several clients for (1) custom role definitions for RBAC; (2) complex query filters for the event service; and (3) audit history / records for management operations.", "type": "object", "properties": { "provider": { "description": "The provider. The localized friendly form of the resource provider name – it is expected to also include the publisher/company responsible. It should use Title Casing and begin with \"Microsoft\" for 1st party services. e.g. \"Microsoft Monitoring Insights\" or \"Microsoft Compute.\"", "type": "string" }, "resource": { "description": "The resource. The localized friendly form of the resource related to this action/operation – it should match the public documentation for the resource provider. It should use Title Casing. This value should be unique for a particular URL type (e.g. nested types should *not* reuse their parent’s display.resource field). e.g. \"Virtual Machines\" or \"Scheduler Job Collections\", or \"Virtual Machine VM Sizes\" or \"Scheduler Jobs\"", "type": "string" }, "operation": { "description": "The operation. The localized friendly name for the operation, as it should be shown to the user. It should be concise (to fit in drop downs) but clear (i.e. self-documenting). It should use Title Casing. Prescriptive guidance: Read Create or Update Delete 'ActionName'", "type": "string" }, "description": { "description": "The description. The localized friendly description for the operation, as it should be shown to the user. It should be thorough, yet concise – it will be used in tool tips and detailed views. Prescriptive guidance for namespaces: Read any 'display.provider' resource Create or Update any 'display.provider' resource Delete any 'display.provider' resource Perform any other action on any 'display.provider' resource Prescriptive guidance for namespaces: Read any 'display.resource' Create or Update any 'display.resource' Delete any 'display.resource' 'ActionName' any 'display.resources'", "type": "string" } } }, "OperationsDiscoveryProperties": { "description": "ClientDiscovery properties.", "type": "object", "properties": {} }, "PolicyCollection": { "description": "Protection Profile Collection details.", "type": "object", "properties": { "value": { "description": "The policy details.", "type": "array", "items": { "$ref": "#/definitions/Policy" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "Policy": { "description": "Protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/PolicyProperties", "description": "The custom data." } } }, "PolicyProperties": { "description": "Protection profile custom data details.", "type": "object", "properties": { "friendlyName": { "description": "The FriendlyName.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/PolicyProviderSpecificDetails", "description": "The ReplicationChannelSetting." } } }, "PolicyProviderSpecificDetails": { "description": "Base class for Provider specific details for policies.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "CreatePolicyInput": { "description": "Protection profile input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/CreatePolicyInputProperties", "description": "Policy creation properties." } } }, "CreatePolicyInputProperties": { "description": "Policy creation properties.", "type": "object", "properties": { "providerSpecificInput": { "$ref": "#/definitions/PolicyProviderSpecificInput", "description": "The ReplicationProviderSettings." } } }, "PolicyProviderSpecificInput": { "description": "Base class for provider specific input", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "UpdatePolicyInput": { "description": "Update protection profile input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdatePolicyInputProperties", "description": "The ReplicationProviderSettings." } } }, "UpdatePolicyInputProperties": { "description": "Policy update properties.", "type": "object", "properties": { "replicationProviderSettings": { "$ref": "#/definitions/PolicyProviderSpecificInput", "description": "The ReplicationProviderSettings." } } }, "ProtectableItemCollection": { "description": "Protectable item collection.", "type": "object", "properties": { "value": { "description": "The Protectable item details.", "type": "array", "items": { "$ref": "#/definitions/ProtectableItem" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "ProtectableItem": { "description": "Replication protected item", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/ProtectableItemProperties", "description": "The custom data." } } }, "ProtectableItemProperties": { "description": "Replication protected item custom data details.", "type": "object", "properties": { "friendlyName": { "description": "The name.", "type": "string" }, "protectionStatus": { "description": "The protection status.", "type": "string" }, "replicationProtectedItemId": { "description": "The ARM resource of protected items.", "type": "string" }, "recoveryServicesProviderId": { "description": "The recovery provider ARM Id.", "type": "string" }, "protectionReadinessErrors": { "description": "The Current protection readiness errors.", "type": "array", "items": { "type": "string" } }, "supportedReplicationProviders": { "description": "The list of replication providers supported for the protectable item.", "type": "array", "items": { "type": "string" } }, "customDetails": { "$ref": "#/definitions/ConfigurationSettings", "description": "The Replication provider custom settings." } } }, "ConfigurationSettings": { "description": "Replication provider specific settings.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "ProtectionContainerMappingCollection": { "description": "Protection container mapping collection class.", "type": "object", "properties": { "value": { "description": "List of container mappings.", "type": "array", "items": { "$ref": "#/definitions/ProtectionContainerMapping" } }, "nextLink": { "description": "Link to fetch rest of the data.", "type": "string" } } }, "ProtectionContainerMapping": { "description": "Protection container mapping object.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/ProtectionContainerMappingProperties", "description": "The custom data." } } }, "ProtectionContainerMappingProperties": { "description": "Protection container mapping properties.", "type": "object", "properties": { "targetProtectionContainerId": { "description": "Paired protection container ARM ID.", "type": "string" }, "targetProtectionContainerFriendlyName": { "description": "Friendly name of paired container.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ProtectionContainerMappingProviderSpecificDetails", "description": "Provider specific provider details." }, "health": { "description": "Health of pairing.", "type": "string" }, "healthErrorDetails": { "description": "Health error.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "policyId": { "description": "Policy ARM Id.", "type": "string" }, "state": { "description": "Association Status", "type": "string" }, "sourceProtectionContainerFriendlyName": { "description": "Friendly name of source protection container.", "type": "string" }, "sourceFabricFriendlyName": { "description": "Friendly name of source fabric.", "type": "string" }, "targetFabricFriendlyName": { "description": "Friendly name of target fabric.", "type": "string" }, "policyFriendlyName": { "description": "Friendly name of replication policy.", "type": "string" } } }, "ProtectionContainerMappingProviderSpecificDetails": { "description": "Container mapping provider specific details.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } } }, "CreateProtectionContainerMappingInput": { "description": "Configure pairing input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/CreateProtectionContainerMappingInputProperties", "description": "Configure protection input properties." } } }, "CreateProtectionContainerMappingInputProperties": { "description": "Configure pairing input properties.", "type": "object", "properties": { "targetProtectionContainerId": { "description": "The target unique protection container name.", "type": "string" }, "PolicyId": { "description": "Applicable policy.", "type": "string" }, "providerSpecificInput": { "$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput", "description": "Provider specific input for pairing." } } }, "ReplicationProviderSpecificContainerMappingInput": { "description": "Provider specific input for pairing operations.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } } }, "RemoveProtectionContainerMappingInput": { "description": "Container unpairing input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/RemoveProtectionContainerMappingInputProperties", "description": "Configure protection input properties." } } }, "RemoveProtectionContainerMappingInputProperties": { "description": "Unpairing input properties.", "type": "object", "properties": { "providerSpecificInput": { "$ref": "#/definitions/ReplicationProviderContainerUnmappingInput", "description": "Provider specific input for unpairing." } } }, "ReplicationProviderContainerUnmappingInput": { "description": "Provider specific input for unpairing operations.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } } }, "ProtectionContainerCollection": { "description": "Protection Container collection.", "type": "object", "properties": { "value": { "description": "The Protection Container details.", "type": "array", "items": { "$ref": "#/definitions/ProtectionContainer" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "ProtectionContainer": { "description": "Protection container details.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/ProtectionContainerProperties", "description": "The custom data." } } }, "ProtectionContainerProperties": { "description": "Protection profile custom data details.", "type": "object", "properties": { "fabricFriendlyName": { "description": "Fabric friendly name.", "type": "string" }, "friendlyName": { "description": "The name.", "type": "string" }, "fabricType": { "description": "The fabric type.", "type": "string" }, "protectedItemCount": { "format": "int32", "description": "Number of protected PEs", "type": "integer" }, "pairingStatus": { "description": "The pairing status of this cloud.", "type": "string" }, "role": { "description": "The role of this cloud.", "type": "string" }, "fabricSpecificDetails": { "$ref": "#/definitions/ProtectionContainerFabricSpecificDetails", "description": "Fabric specific details." } } }, "ProtectionContainerFabricSpecificDetails": { "description": "Base class for fabric specific details of container.", "type": "object", "properties": { "instanceType": { "description": "Gets the class type. Overridden in derived classes.", "type": "string", "readOnly": true } } }, "CreateProtectionContainerInput": { "description": "Create protection container input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/CreateProtectionContainerInputProperties", "description": "Create protection container input properties." } } }, "CreateProtectionContainerInputProperties": { "description": "Create protection container input properties.", "type": "object", "properties": { "providerSpecificInput": { "description": "Provider specific inputs for container creation.", "type": "array", "items": { "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" } } } }, "ReplicationProviderSpecificContainerCreationInput": { "description": "Provider specific input for container creation operation.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "DiscoverProtectableItemRequest": { "description": "Request to add a physical machine as a protectable item in a container.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/DiscoverProtectableItemRequestProperties", "description": "The properties of a discover protectable item request." } } }, "DiscoverProtectableItemRequestProperties": { "description": "Discover protectable item properties.", "type": "object", "properties": { "friendlyName": { "description": "The friendly name of the physical machine.", "type": "string" }, "ipAddress": { "description": "The IP address of the physical machine to be discovered.", "type": "string" }, "osType": { "description": "The OS type on the physical machine.", "type": "string" } } }, "SwitchProtectionInput": { "description": "Switch protection input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/SwitchProtectionInputProperties", "description": "Switch protection properties" } } }, "SwitchProtectionInputProperties": { "description": "Switch protection input properties.", "type": "object", "properties": { "replicationProtectedItemName": { "description": "The unique replication protected item name.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/SwitchProtectionProviderSpecificInput", "description": "Provider specific switch protection input." } } }, "SwitchProtectionProviderSpecificInput": { "description": "Provider specific switch protection input.", "type": "object", "properties": { "instanceType": { "description": "Gets the Instance type.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "RecoveryPlanCollection": { "description": "Recovery plan collection details.", "type": "object", "properties": { "value": { "description": "The list of recovery plans.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlan" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "RecoveryPlan": { "description": "Recovery plan details.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/RecoveryPlanProperties", "description": "The custom details." } } }, "RecoveryPlanProperties": { "description": "Recovery plan custom details.", "type": "object", "properties": { "friendlyName": { "description": "The friendly name.", "type": "string" }, "primaryFabricId": { "description": "The primary fabric Id.", "type": "string" }, "primaryFabricFriendlyName": { "description": "The primary fabric friendly name.", "type": "string" }, "recoveryFabricId": { "description": "The recovery fabric Id.", "type": "string" }, "recoveryFabricFriendlyName": { "description": "The recovery fabric friendly name.", "type": "string" }, "failoverDeploymentModel": { "description": "The failover deployment model.", "type": "string" }, "replicationProviders": { "description": "The list of replication providers.", "type": "array", "items": { "type": "string" } }, "allowedOperations": { "description": "The list of allowed operations.", "type": "array", "items": { "type": "string" } }, "lastPlannedFailoverTime": { "format": "date-time", "description": "The start time of the last planned failover.", "type": "string" }, "lastUnplannedFailoverTime": { "format": "date-time", "description": "The start time of the last unplanned failover.", "type": "string" }, "lastTestFailoverTime": { "format": "date-time", "description": "The start time of the last test failover.", "type": "string" }, "currentScenario": { "$ref": "#/definitions/CurrentScenarioDetails", "description": "The current scenario details." }, "currentScenarioStatus": { "description": "The recovery plan status.", "type": "string" }, "currentScenarioStatusDescription": { "description": "The recovery plan status description.", "type": "string" }, "groups": { "description": "The recovery plan groups.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanGroup" } } } }, "RecoveryPlanGroup": { "description": "Recovery plan group details.", "required": [ "groupType" ], "type": "object", "properties": { "groupType": { "description": "The group type.", "enum": [ "Shutdown", "Boot", "Failover" ], "type": "string", "x-ms-enum": { "name": "RecoveryPlanGroupType", "modelAsString": false } }, "replicationProtectedItems": { "description": "The list of protected items.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanProtectedItem" } }, "startGroupActions": { "description": "The start group actions.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanAction" } }, "endGroupActions": { "description": "The end group actions.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanAction" } } } }, "RecoveryPlanProtectedItem": { "description": "Recovery plan protected item.", "type": "object", "properties": { "id": { "description": "The ARM Id of the recovery plan protected item.", "type": "string" }, "virtualMachineId": { "description": "The virtual machine Id.", "type": "string" } } }, "RecoveryPlanAction": { "description": "Recovery plan action details.", "required": [ "actionName", "failoverTypes", "failoverDirections", "customDetails" ], "type": "object", "properties": { "actionName": { "description": "The action name.", "type": "string" }, "failoverTypes": { "description": "The list of failover types.", "type": "array", "items": { "enum": [ "ReverseReplicate", "Commit", "PlannedFailover", "UnplannedFailover", "DisableProtection", "TestFailover", "TestFailoverCleanup", "Failback", "FinalizeFailback", "ChangePit", "RepairReplication", "SwitchProtection", "CompleteMigration" ], "type": "string", "x-ms-enum": { "name": "ReplicationProtectedItemOperation", "modelAsString": false } } }, "failoverDirections": { "description": "The list of failover directions.", "type": "array", "items": { "enum": [ "PrimaryToRecovery", "RecoveryToPrimary" ], "type": "string", "x-ms-enum": { "name": "PossibleOperationsDirections", "modelAsString": false } } }, "customDetails": { "$ref": "#/definitions/RecoveryPlanActionDetails", "description": "The custom details." } } }, "RecoveryPlanActionDetails": { "description": "Recovery plan action custom details.", "type": "object", "properties": { "instanceType": { "description": "Gets the type of action details (see RecoveryPlanActionDetailsTypes enum for possible values).", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "CreateRecoveryPlanInput": { "description": "Create recovery plan input class.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/CreateRecoveryPlanInputProperties", "description": "Recovery plan creation properties." } } }, "CreateRecoveryPlanInputProperties": { "description": "Recovery plan creation properties.", "required": [ "primaryFabricId", "recoveryFabricId", "groups" ], "type": "object", "properties": { "primaryFabricId": { "description": "The primary fabric Id.", "type": "string" }, "recoveryFabricId": { "description": "The recovery fabric Id.", "type": "string" }, "failoverDeploymentModel": { "description": "The failover deployment model.", "enum": [ "NotApplicable", "Classic", "ResourceManager" ], "type": "string", "x-ms-enum": { "name": "FailoverDeploymentModel", "modelAsString": false } }, "groups": { "description": "The recovery plan groups.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanGroup" } } } }, "UpdateRecoveryPlanInput": { "description": "Update recovery plan input class.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdateRecoveryPlanInputProperties", "description": "Recovery plan update properties." } } }, "UpdateRecoveryPlanInputProperties": { "description": "Recovery plan update properties.", "type": "object", "properties": { "groups": { "description": "The recovery plan groups.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanGroup" } } } }, "RecoveryPlanPlannedFailoverInput": { "description": "Recovery plan planned failover input.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/RecoveryPlanPlannedFailoverInputProperties", "description": "The recovery plan planned failover input properties." } } }, "RecoveryPlanPlannedFailoverInputProperties": { "description": "Recovery plan planned failover input properties.", "required": [ "failoverDirection" ], "type": "object", "properties": { "failoverDirection": { "description": "The failover direction.", "enum": [ "PrimaryToRecovery", "RecoveryToPrimary" ], "type": "string", "x-ms-enum": { "name": "PossibleOperationsDirections", "modelAsString": false } }, "providerSpecificDetails": { "description": "The provider specific properties.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } } } }, "RecoveryPlanProviderSpecificFailoverInput": { "description": "Recovery plan provider specific failover input base class.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "RecoveryPlanUnplannedFailoverInput": { "description": "Recovery plan unplanned failover input.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/RecoveryPlanUnplannedFailoverInputProperties", "description": "The recovery plan unplanned failover input properties." } } }, "RecoveryPlanUnplannedFailoverInputProperties": { "description": "Recovery plan unplanned failover input properties.", "required": [ "failoverDirection", "sourceSiteOperations" ], "type": "object", "properties": { "failoverDirection": { "description": "The failover direction.", "enum": [ "PrimaryToRecovery", "RecoveryToPrimary" ], "type": "string", "x-ms-enum": { "name": "PossibleOperationsDirections", "modelAsString": false } }, "sourceSiteOperations": { "description": "A value indicating whether source site operations are required.", "enum": [ "Required", "NotRequired" ], "type": "string", "x-ms-enum": { "name": "SourceSiteOperations", "modelAsString": false } }, "providerSpecificDetails": { "description": "The provider specific properties.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } } } }, "RecoveryPlanTestFailoverInput": { "description": "Recovery plan test failover input.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/RecoveryPlanTestFailoverInputProperties", "description": "The recovery plan test failover input properties." } } }, "RecoveryPlanTestFailoverInputProperties": { "description": "Recovery plan test failover input properties.", "required": [ "failoverDirection", "networkType" ], "type": "object", "properties": { "failoverDirection": { "description": "The failover direction.", "enum": [ "PrimaryToRecovery", "RecoveryToPrimary" ], "type": "string", "x-ms-enum": { "name": "PossibleOperationsDirections", "modelAsString": false } }, "networkType": { "description": "The network type to be used for test failover.", "type": "string" }, "networkId": { "description": "The Id of the network to be used for test failover.", "type": "string" }, "skipTestFailoverCleanup": { "description": "A value indicating whether the test failover cleanup is to be skipped.", "type": "string" }, "providerSpecificDetails": { "description": "The provider specific properties.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } } } }, "RecoveryPlanTestFailoverCleanupInput": { "description": "Recovery plan test failover cleanup input.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/RecoveryPlanTestFailoverCleanupInputProperties", "description": "The recovery plan test failover cleanup input properties." } } }, "RecoveryPlanTestFailoverCleanupInputProperties": { "description": "Recovery plan test failover cleanup input properties.", "type": "object", "properties": { "comments": { "description": "The test failover cleanup comments.", "type": "string" } } }, "RecoveryPointCollection": { "description": "Collection of recovery point details.", "type": "object", "properties": { "value": { "description": "The recovery point details.", "type": "array", "items": { "$ref": "#/definitions/RecoveryPoint" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "RecoveryPoint": { "description": "Base class representing a recovery point.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/RecoveryPointProperties", "description": "Recovery point related data." } } }, "RecoveryPointProperties": { "description": "Recovery point properties.", "type": "object", "properties": { "recoveryPointTime": { "format": "date-time", "description": "The recovery point time.", "type": "string" }, "recoveryPointType": { "description": "The recovery point type: ApplicationConsistent, CrashConsistent.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails", "description": "The provider specific details for the recovery point." } } }, "ProviderSpecificRecoveryPointDetails": { "description": "Replication provider specific recovery point details.", "type": "object", "properties": { "Type": { "description": "Gets the provider type.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "RecoveryServicesProviderCollection": { "description": "Collection of providers.", "type": "object", "properties": { "value": { "description": "The Servers details.", "type": "array", "items": { "$ref": "#/definitions/RecoveryServicesProvider" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "RecoveryServicesProvider": { "description": "Provider details.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/RecoveryServicesProviderProperties", "description": "Provider properties." } } }, "RecoveryServicesProviderProperties": { "description": "Recovery services provider properties.", "type": "object", "properties": { "fabricType": { "description": "Type of the site.", "type": "string" }, "friendlyName": { "description": "Friendly name of the DRA.", "type": "string" }, "providerVersion": { "description": "The provider version.", "type": "string" }, "serverVersion": { "description": "The fabric provider.", "type": "string" }, "providerVersionState": { "description": "DRA version status.", "type": "string" }, "providerVersionExpiryDate": { "format": "date-time", "description": "Expiry date if the version is deprecated.", "type": "string" }, "fabricFriendlyName": { "description": "The fabric friendly name.", "type": "string" }, "lastHeartBeat": { "format": "date-time", "description": "Time when last heartbeat was sent by the DRA.", "type": "string" }, "connectionStatus": { "description": "A value indicating whether DRA is responsive.", "type": "string" }, "protectedItemCount": { "format": "int32", "description": "Number of protected VMs currently managed by the DRA.", "type": "integer" }, "allowedScenarios": { "description": "The scenarios allowed on this provider.", "type": "array", "items": { "type": "string" } }, "healthErrorDetails": { "description": "The recovery services provider health error details.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "draIdentifier": { "description": "The DRA Id.", "type": "string" }, "identityDetails": { "$ref": "#/definitions/IdentityInformation", "description": "The identity details." } } }, "IdentityInformation": { "description": "Identity details.", "type": "object", "properties": { "identityProviderType": { "description": "The identity provider type. Value is the ToString() of a IdentityProviderType value.", "enum": [ "RecoveryServicesActiveDirectory", "CustomerActiveDirectory" ], "type": "string", "x-ms-enum": { "name": "IdentityProviderType", "modelAsString": false } }, "tenantId": { "description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", "type": "string" }, "applicationId": { "description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.", "type": "string" }, "objectId": { "description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", "type": "string" }, "audience": { "description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.", "type": "string" }, "aadAuthority": { "description": "The base authority for Azure Active Directory authentication.", "type": "string" }, "certificateThumbprint": { "description": "The certificate thumbprint. Applicable only if IdentityProviderType is RecoveryServicesActiveDirectory.", "type": "string" } } }, "ReplicationProtectedItem": { "description": "Replication protected item.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/ReplicationProtectedItemProperties", "description": "The custom data." } } }, "ReplicationProtectedItemProperties": { "description": "Replication protected item custom data details.", "type": "object", "properties": { "friendlyName": { "description": "The name.", "type": "string" }, "protectedItemType": { "description": "The type of protected item type.", "type": "string" }, "protectableItemId": { "description": "The protected item ARM Id.", "type": "string" }, "recoveryServicesProviderId": { "description": "The recovery provider ARM Id.", "type": "string" }, "primaryFabricFriendlyName": { "description": "The friendly name of the primary fabric.", "type": "string" }, "recoveryFabricFriendlyName": { "description": "The friendly name of recovery fabric.", "type": "string" }, "recoveryFabricId": { "description": "The Arm Id of recovery fabric.", "type": "string" }, "primaryProtectionContainerFriendlyName": { "description": "The name of primary protection container friendly name.", "type": "string" }, "recoveryProtectionContainerFriendlyName": { "description": "The name of recovery container friendly name.", "type": "string" }, "protectionState": { "description": "The protection status.", "type": "string" }, "protectionStateDescription": { "description": "The protection state description.", "type": "string" }, "activeLocation": { "description": "The Current active location of the PE.", "type": "string" }, "testFailoverState": { "description": "The Test failover state.", "type": "string" }, "testFailoverStateDescription": { "description": "The Test failover state description.", "type": "string" }, "allowedOperations": { "description": "The allowed operations on the Replication protected item.", "type": "array", "items": { "type": "string" } }, "replicationHealth": { "description": "The consolidated protection health for the VM taking any issues with SRS as well as all the replication units associated with the VM's replication group into account. This is a string representation of the ProtectionHealth enumeration.", "type": "string" }, "failoverHealth": { "description": "The consolidated failover health for the VM.", "type": "string" }, "replicationHealthErrors": { "description": "List of replication health errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "failoverHealthErrors": { "description": "List of failover health errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "policyId": { "description": "The ID of Policy governing this PE.", "type": "string" }, "policyFriendlyName": { "description": "The name of Policy governing this PE.", "type": "string" }, "lastSuccessfulFailoverTime": { "format": "date-time", "description": "The Last successful failover time.", "type": "string" }, "lastSuccessfulTestFailoverTime": { "format": "date-time", "description": "The Last successful test failover time.", "type": "string" }, "currentScenario": { "$ref": "#/definitions/CurrentScenarioDetails", "description": "The current scenario." }, "failoverRecoveryPointId": { "description": "The recovery point ARM Id to which the Vm was failed over.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ReplicationProviderSpecificSettings", "description": "The Replication provider custom settings." }, "recoveryContainerId": { "description": "The recovery container Id.", "type": "string" } } }, "CurrentScenarioDetails": { "description": "Current scenario details of the protected entity.", "type": "object", "properties": { "scenarioName": { "description": "Scenario name.", "type": "string" }, "jobId": { "description": "ARM Id of the job being executed.", "type": "string" }, "startTime": { "format": "date-time", "description": "Start time of the workflow.", "type": "string" } } }, "ReplicationProviderSpecificSettings": { "description": "Replication provider specific settings.", "type": "object", "properties": { "instanceType": { "description": "Gets the Instance type.", "type": "string", "readOnly": true } }, "discriminator": "instanceType" }, "EnableProtectionInput": { "description": "Enable protection input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/EnableProtectionInputProperties", "description": "Enable protection input properties." } } }, "EnableProtectionInputProperties": { "description": "Enable protection input properties.", "type": "object", "properties": { "policyId": { "description": "The Policy Id.", "type": "string" }, "protectableItemId": { "description": "The protectable item Id.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/EnableProtectionProviderSpecificInput", "description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null." } } }, "EnableProtectionProviderSpecificInput": { "description": "Enable protection provider specific input.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "UpdateReplicationProtectedItemInput": { "description": "Update replication protected item input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdateReplicationProtectedItemInputProperties", "description": "Update replication protected item properties." } } }, "UpdateReplicationProtectedItemInputProperties": { "description": "Update protected item input properties.", "type": "object", "properties": { "recoveryAzureVMName": { "description": "Target azure VM name given by the user.", "type": "string" }, "recoveryAzureVMSize": { "description": "Target Azure Vm size.", "type": "string" }, "selectedRecoveryAzureNetworkId": { "description": "Target Azure Network Id.", "type": "string" }, "enableRDPOnTargetOption": { "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", "type": "string" }, "vmNics": { "description": "The list of vm nic details.", "type": "array", "items": { "$ref": "#/definitions/VMNicInputDetails" } }, "licenseType": { "description": "License type.", "enum": [ "NotSpecified", "NoLicenseType", "WindowsServer" ], "type": "string", "x-ms-enum": { "name": "LicenseType", "modelAsString": false } }, "recoveryAvailabilitySetId": { "description": "The target availability set id.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput", "description": "The provider specific input to update replication protected item." } } }, "VMNicInputDetails": { "description": "Hyper V VM network input details.", "type": "object", "properties": { "nicId": { "description": "The nic Id.", "type": "string" }, "recoveryVMSubnetName": { "description": "Recovery VM subnet name.", "type": "string" }, "replicaNicStaticIPAddress": { "description": "Replica nic static IP address.", "type": "string" }, "selectionType": { "description": "Selection type for failover.", "type": "string" } } }, "UpdateReplicationProtectedItemProviderInput": { "description": "Update replication protected item provider specific input.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "DisableProtectionInput": { "description": "Disable protection input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/DisableProtectionInputProperties", "description": "Disable protection input properties." } } }, "DisableProtectionInputProperties": { "description": "Disable protection input properties.", "type": "object", "properties": { "disableProtectionReason": { "description": "Disable protection reason. It can have values NotSpecified/MigrationComplete.", "enum": [ "NotSpecified", "MigrationComplete" ], "type": "string", "x-ms-enum": { "name": "DisableProtectionReason", "modelAsString": false } }, "replicationProviderInput": { "$ref": "#/definitions/DisableProtectionProviderSpecificInput", "description": "Replication provider specific input." } } }, "DisableProtectionProviderSpecificInput": { "description": "Disable protection provider specific input.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "PlannedFailoverInput": { "description": "Input definition for planned failover.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/PlannedFailoverInputProperties", "description": "Planned failover input properties" } } }, "PlannedFailoverInputProperties": { "description": "Input definition for planned failover input properties.", "type": "object", "properties": { "failoverDirection": { "description": "Failover direction.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ProviderSpecificFailoverInput", "description": "Provider specific settings" } } }, "ProviderSpecificFailoverInput": { "description": "Provider specific failover input.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "UnplannedFailoverInput": { "description": "Input definition for planned failover.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UnplannedFailoverInputProperties", "description": "Planned failover input properties" } } }, "UnplannedFailoverInputProperties": { "description": "Input definition for planned failover input properties.", "type": "object", "properties": { "failoverDirection": { "description": "Failover direction.", "type": "string" }, "sourceSiteOperations": { "description": "Source site operations status", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ProviderSpecificFailoverInput", "description": "Provider specific settings" } } }, "TestFailoverInput": { "description": "Input definition for planned failover.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/TestFailoverInputProperties", "description": "Planned failover input properties" } } }, "TestFailoverInputProperties": { "description": "Input definition for planned failover input properties.", "type": "object", "properties": { "failoverDirection": { "description": "Failover direction.", "type": "string" }, "networkType": { "description": "Network type to be used for test failover.", "type": "string" }, "networkId": { "description": "The id of the network to be used for test failover", "type": "string" }, "skipTestFailoverCleanup": { "description": "A value indicating whether the test failover cleanup is to be skipped.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ProviderSpecificFailoverInput", "description": "Provider specific settings" } } }, "TestFailoverCleanupInput": { "description": "Input definition for test failover cleanup.", "required": [ "properties" ], "type": "object", "properties": { "properties": { "$ref": "#/definitions/TestFailoverCleanupInputProperties", "description": "Test failover cleanup input properties." } } }, "TestFailoverCleanupInputProperties": { "description": "Input definition for test failover cleanup input properties.", "type": "object", "properties": { "comments": { "description": "Test failover cleanup comments.", "type": "string" } } }, "ReverseReplicationInput": { "description": "Reverse replication input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/ReverseReplicationInputProperties", "description": "Reverse replication properties" } } }, "ReverseReplicationInputProperties": { "description": "Reverse replication input properties.", "type": "object", "properties": { "failoverDirection": { "description": "Failover direction.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ReverseReplicationProviderSpecificInput", "description": "Provider specific reverse replication input." } } }, "ReverseReplicationProviderSpecificInput": { "description": "Provider specific reverse replication input.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "UpdateMobilityServiceRequest": { "description": "Request to update the mobility service on a protected item.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdateMobilityServiceRequestProperties", "description": "The properties of the update mobility service request." } } }, "UpdateMobilityServiceRequestProperties": { "description": "The properties of an update mobility service request.", "type": "object", "properties": { "runAsAccountId": { "description": "The CS run as account Id.", "type": "string" } } }, "ApplyRecoveryPointInput": { "description": "Input to apply recovery point.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/ApplyRecoveryPointInputProperties", "description": "The input properties to apply recovery point." } } }, "ApplyRecoveryPointInputProperties": { "description": "Input properties to apply recovery point.", "type": "object", "properties": { "recoveryPointId": { "description": "The recovery point Id.", "type": "string" }, "providerSpecificDetails": { "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput", "description": "Provider specific input for applying recovery point." } } }, "ApplyRecoveryPointProviderSpecificInput": { "description": "Provider specific input for apply recovery point.", "type": "object", "properties": { "instanceType": { "description": "The class type.", "type": "string" } }, "discriminator": "instanceType" }, "StorageClassificationCollection": { "description": "Collection of storage details.", "type": "object", "properties": { "value": { "description": "The storage details.", "type": "array", "items": { "$ref": "#/definitions/StorageClassification" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "StorageClassification": { "description": "Storage object definition.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/StorageClassificationProperties", "description": "Properties of the storage object." } } }, "StorageClassificationProperties": { "description": "Storage object properties.", "type": "object", "properties": { "friendlyName": { "description": "Friendly name of the Storage classification.", "type": "string" } } }, "StorageClassificationMappingCollection": { "description": "Collection of storage mapping details.", "type": "object", "properties": { "value": { "description": "The storage details.", "type": "array", "items": { "$ref": "#/definitions/StorageClassificationMapping" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "StorageClassificationMapping": { "description": "Storage mapping object.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/StorageClassificationMappingProperties", "description": "Properties of the storage mapping object." } } }, "StorageClassificationMappingProperties": { "description": "Storage mapping properties.", "type": "object", "properties": { "targetStorageClassificationId": { "description": "Target storage object Id.", "type": "string" } } }, "StorageClassificationMappingInput": { "description": "Storage mapping input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/StorageMappingInputProperties", "description": "Storage mapping input properties." } } }, "StorageMappingInputProperties": { "description": "Storage mapping input properties.", "type": "object", "properties": { "targetStorageClassificationId": { "description": "The ID of the storage object.", "type": "string" } } }, "VCenterCollection": { "description": "Collection of vCenter details.", "type": "object", "properties": { "value": { "description": "The vCenter details.", "type": "array", "items": { "$ref": "#/definitions/VCenter" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "VCenter": { "description": "vCenter definition.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/VCenterProperties", "description": "VCenter related data." } } }, "VCenterProperties": { "description": "vCenter properties.", "type": "object", "properties": { "friendlyName": { "description": "Friendly name of the vCenter.", "type": "string" }, "internalId": { "description": "VCenter internal ID.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The time when the last heartbeat was received by vCenter.", "type": "string" }, "discoveryStatus": { "description": "The VCenter discovery status.", "type": "string" }, "processServerId": { "description": "The process server Id.", "type": "string" }, "ipAddress": { "description": "The IP address of the vCenter.", "type": "string" }, "infrastructureId": { "description": "The infrastructure Id of vCenter.", "type": "string" }, "port": { "description": "The port number for discovery.", "type": "string" }, "runAsAccountId": { "description": "The account Id which has privileges to discover the vCenter.", "type": "string" }, "fabricArmResourceName": { "description": "The ARM resource name of the fabric containing this VCenter.", "type": "string" } } }, "AddVCenterRequest": { "description": "Input required to add vCenter.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/AddVCenterRequestProperties", "description": "The properties of an add vCenter request." } } }, "AddVCenterRequestProperties": { "description": "The properties of an add vCenter request.", "type": "object", "properties": { "friendlyName": { "description": "The friendly name of the vCenter.", "type": "string" }, "ipAddress": { "description": "The IP address of the vCenter to be discovered.", "type": "string" }, "processServerId": { "description": "The process server Id from where the discovery is orchestrated.", "type": "string" }, "port": { "description": "The port number for discovery.", "type": "string" }, "runAsAccountId": { "description": "The account Id which has privileges to discover the vCenter.", "type": "string" } } }, "UpdateVCenterRequest": { "description": "Input required to update vCenter.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/UpdateVCenterRequestProperties", "description": "The update VCenter Request Properties." } } }, "UpdateVCenterRequestProperties": { "description": "The properties of an update vCenter request.", "type": "object", "properties": { "friendlyName": { "description": "The friendly name of the vCenter.", "type": "string" }, "ipAddress": { "description": "The IP address of the vCenter to be discovered.", "type": "string" }, "processServerId": { "description": "The process server Id from where the update can be orchestrated.", "type": "string" }, "port": { "description": "The port number for discovery.", "type": "string" }, "runAsAccountId": { "description": "The CS account Id which has privileges to update the vCenter.", "type": "string" } } }, "RenewCertificateInput": { "description": "Certificate renewal input.", "type": "object", "properties": { "properties": { "$ref": "#/definitions/RenewCertificateInputProperties", "description": "Renew certificate input properties." } } }, "RenewCertificateInputProperties": { "description": "Renew Certificate input properties.", "type": "object", "properties": { "renewCertificateType": { "description": "Renew certificate type.", "type": "string" } } }, "NetworkMappingCollection": { "description": "List of network mappings. As with NetworkMapping, it should be possible to reuse a prev version of this class. It doesn't seem likely this class could be anything more than a slightly bespoke collection of NetworkMapping. Hence it makes sense to override Load with Base.NetworkMapping instead of existing CurrentVersion.NetworkMapping.", "type": "object", "properties": { "value": { "description": "The Network Mappings list.", "type": "array", "items": { "$ref": "#/definitions/NetworkMapping" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "ReplicationProtectedItemCollection": { "description": "Replication protected item collection.", "type": "object", "properties": { "value": { "description": "The Replication protected item details.", "type": "array", "items": { "$ref": "#/definitions/ReplicationProtectedItem" } }, "nextLink": { "description": "The value of next link.", "type": "string" } } }, "ProtectedItemsQueryParameter": { "description": "Query parameter to enumerate protected items.", "type": "object", "properties": { "sourceFabricName": { "description": "The source fabric name filter.", "type": "string" }, "recoveryPlanName": { "description": "The recovery plan filter.", "type": "string" }, "vCenterName": { "description": "The vCenter name filter.", "type": "string" } } }, "VaultHealthDetails": { "description": "Vault health details definition.", "type": "object", "allOf": [ { "$ref": "#/definitions/Resource" } ], "properties": { "properties": { "$ref": "#/definitions/VaultHealthProperties", "description": "The vault health related data." } } }, "VaultHealthProperties": { "description": "class to define the health summary of the Vault.", "type": "object", "properties": { "vaultErrors": { "description": "The list of errors on the vault.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "protectedItemsHealth": { "$ref": "#/definitions/ResourceHealthSummary", "description": "The list of the health detail of the protected items in the vault." }, "fabricsHealth": { "$ref": "#/definitions/ResourceHealthSummary", "description": "The list of the health detail of the fabrics in the vault." } } }, "ResourceHealthSummary": { "description": "Base class to define the health summary of the resources contained under an Arm resource.", "type": "object", "properties": { "resourceCount": { "format": "int32", "description": "The count of total resources under the container.", "type": "integer" }, "issues": { "description": "The list of summary of health errors across the resources under the container.", "type": "array", "items": { "$ref": "#/definitions/HealthErrorSummary" } } } }, "HealthErrorSummary": { "description": "class to define the summary of the health error details.", "type": "object", "properties": { "summaryCode": { "description": "The code of the health error.", "type": "string" }, "category": { "description": "The category of the health error.", "enum": [ "Replication", "TestFailover", "Configuration" ], "type": "string", "x-ms-enum": { "name": "HealthErrorCategory", "modelAsString": false } }, "severity": { "description": "Severity of error.", "enum": [ "NONE", "Warning", "Error", "Info" ], "type": "string", "x-ms-enum": { "name": "Severity", "modelAsString": false } }, "summaryMessage": { "description": "The summary message of the health error.", "type": "string" }, "affectedResourceType": { "description": "The type of affected ARM resource.", "type": "string" }, "affectedResourceSubtype": { "description": "The sub type of any subcomponent within the ARM resource that this might be applicable. Value remains null if not applicable.", "type": "string" }, "affectedResourceCorrelationIds": { "description": "The list of affected resource correlation Ids. This can be used to uniquely identify the count of items affected by a specific category and severity as well as count of item affected by an specific issue.", "type": "array", "items": { "type": "string" } } } }, "AzureToAzureNetworkMappingSettings": { "description": "A2A Network Mapping fabric specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" } ], "properties": { "primaryFabricLocation": { "description": "The primary fabric location.", "type": "string" }, "recoveryFabricLocation": { "description": "The recovery fabric location.", "type": "string" } }, "x-ms-discriminator-value": "AzureToAzure" }, "VmmToAzureNetworkMappingSettings": { "description": "E2A Network Mapping fabric specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" } ], "properties": {}, "x-ms-discriminator-value": "VmmToAzure" }, "VmmToVmmNetworkMappingSettings": { "description": "E2E Network Mapping fabric specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/NetworkMappingFabricSpecificSettings" } ], "properties": {}, "x-ms-discriminator-value": "VmmToVmm" }, "AzureToAzureCreateNetworkMappingInput": { "description": "Create network mappings input properties/behavior specific to Azure to Azure Network mapping.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" } ], "properties": { "primaryNetworkId": { "description": "The primary azure vnet Id.", "type": "string" } }, "x-ms-discriminator-value": "AzureToAzure" }, "VmmToAzureCreateNetworkMappingInput": { "description": "Create network mappings input properties/behavior specific to Vmm to Azure Network mapping.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" } ], "properties": {}, "x-ms-discriminator-value": "VmmToAzure" }, "VmmToVmmCreateNetworkMappingInput": { "description": "Create network mappings input properties/behavior specific to vmm to vmm Network mapping.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput" } ], "properties": {}, "x-ms-discriminator-value": "VmmToVmm" }, "AzureToAzureUpdateNetworkMappingInput": { "description": "Updates network mappings input.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" } ], "properties": { "primaryNetworkId": { "description": "The primary azure vnet Id.", "type": "string" } }, "x-ms-discriminator-value": "AzureToAzure" }, "VmmToAzureUpdateNetworkMappingInput": { "description": "Update network mappings input properties/behavior specific to vmm to azure.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" } ], "properties": {}, "x-ms-discriminator-value": "VmmToAzure" }, "VmmToVmmUpdateNetworkMappingInput": { "description": "Update network mappings input properties/behavior specific to vmm to vmm.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificUpdateNetworkMappingInput" } ], "properties": {}, "x-ms-discriminator-value": "VmmToVmm" }, "AzureFabricSpecificDetails": { "description": "Azure Fabric Specific Details.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificDetails" } ], "properties": { "location": { "description": "The Location for the Azure fabric.", "type": "string" }, "containerIds": { "description": "The container Ids for the Azure fabric.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "Azure" }, "VmmDetails": { "description": "VMM fabric specific details.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificDetails" } ], "properties": {}, "x-ms-discriminator-value": "VMM" }, "HyperVSiteDetails": { "description": "HyperVSite fabric specific details.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificDetails" } ], "properties": {}, "x-ms-discriminator-value": "HyperVSite" }, "VMwareDetails": { "description": "Store the fabric details specific to the VMware fabric.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificDetails" } ], "properties": { "processServers": { "description": "The list of Process Servers associated with the fabric.", "type": "array", "items": { "$ref": "#/definitions/ProcessServer" } }, "masterTargetServers": { "description": "The list of Master Target servers associated with the fabric.", "type": "array", "items": { "$ref": "#/definitions/MasterTargetServer" } }, "runAsAccounts": { "description": "The list of run as accounts created on the server.", "type": "array", "items": { "$ref": "#/definitions/RunAsAccount" } }, "replicationPairCount": { "description": "The number of replication pairs configured in this CS.", "type": "string" }, "processServerCount": { "description": "The number of process servers.", "type": "string" }, "agentCount": { "description": "The number of source and target servers configured to talk to this CS.", "type": "string" }, "protectedServers": { "description": "The number of protected servers.", "type": "string" }, "systemLoad": { "description": "The percentage of the system load.", "type": "string" }, "systemLoadStatus": { "description": "The system load status.", "type": "string" }, "cpuLoad": { "description": "The percentage of the CPU load.", "type": "string" }, "cpuLoadStatus": { "description": "The CPU load status.", "type": "string" }, "totalMemoryInBytes": { "format": "int64", "description": "The total memory.", "type": "integer" }, "availableMemoryInBytes": { "format": "int64", "description": "The available memory.", "type": "integer" }, "memoryUsageStatus": { "description": "The memory usage status.", "type": "string" }, "totalSpaceInBytes": { "format": "int64", "description": "The total space.", "type": "integer" }, "availableSpaceInBytes": { "format": "int64", "description": "The available space.", "type": "integer" }, "spaceUsageStatus": { "description": "The space usage status.", "type": "string" }, "webLoad": { "description": "The web load.", "type": "string" }, "webLoadStatus": { "description": "The web load status.", "type": "string" }, "databaseServerLoad": { "description": "The database server load.", "type": "string" }, "databaseServerLoadStatus": { "description": "The database server load status.", "type": "string" }, "csServiceStatus": { "description": "The CS service status.", "type": "string" }, "ipAddress": { "description": "The IP address.", "type": "string" }, "agentVersion": { "description": "The agent Version.", "type": "string" }, "hostName": { "description": "The host name.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from CS server.", "type": "string" }, "versionStatus": { "description": "Version status", "type": "string" }, "sslCertExpiryDate": { "format": "date-time", "description": "CS SSL cert expiry date.", "type": "string" }, "sslCertExpiryRemainingDays": { "format": "int32", "description": "CS SSL cert expiry date.", "type": "integer" }, "psTemplateVersion": { "description": "PS template version.", "type": "string" } }, "x-ms-discriminator-value": "VMware" }, "ProcessServer": { "description": "Details of the Process Server.", "type": "object", "properties": { "friendlyName": { "description": "The Process Server's friendly name.", "type": "string" }, "id": { "description": "The Process Server Id.", "type": "string" }, "ipAddress": { "description": "The IP address of the server.", "type": "string" }, "osType": { "description": "The OS type of the server.", "type": "string" }, "agentVersion": { "description": "The version of the scout component on the server.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from the server.", "type": "string" }, "versionStatus": { "description": "Version status", "type": "string" }, "mobilityServiceUpdates": { "description": "The list of the mobility service updates available on the Process Server.", "type": "array", "items": { "$ref": "#/definitions/MobilityServiceUpdate" } }, "hostId": { "description": "The agent generated Id.", "type": "string" }, "machineCount": { "description": "The servers configured with this PS.", "type": "string" }, "replicationPairCount": { "description": "The number of replication pairs configured in this PS.", "type": "string" }, "systemLoad": { "description": "The percentage of the system load.", "type": "string" }, "systemLoadStatus": { "description": "The system load status.", "type": "string" }, "cpuLoad": { "description": "The percentage of the CPU load.", "type": "string" }, "cpuLoadStatus": { "description": "The CPU load status.", "type": "string" }, "totalMemoryInBytes": { "format": "int64", "description": "The total memory.", "type": "integer" }, "availableMemoryInBytes": { "format": "int64", "description": "The available memory.", "type": "integer" }, "memoryUsageStatus": { "description": "The memory usage status.", "type": "string" }, "totalSpaceInBytes": { "format": "int64", "description": "The total space.", "type": "integer" }, "availableSpaceInBytes": { "format": "int64", "description": "The available space.", "type": "integer" }, "spaceUsageStatus": { "description": "The space usage status.", "type": "string" }, "psServiceStatus": { "description": "The PS service status.", "type": "string" }, "sslCertExpiryDate": { "format": "date-time", "description": "The PS SSL cert expiry date.", "type": "string" }, "sslCertExpiryRemainingDays": { "format": "int32", "description": "CS SSL cert expiry date.", "type": "integer" }, "osVersion": { "description": "OS Version of the process server. Note: This will get populated if user has CS version greater than 9.12.0.0.", "type": "string" } } }, "MasterTargetServer": { "description": "Details of a Master Target Server.", "type": "object", "properties": { "id": { "description": "The server Id.", "type": "string" }, "ipAddress": { "description": "The IP address of the server.", "type": "string" }, "name": { "description": "The server name.", "type": "string" }, "osType": { "description": "The OS type of the server.", "type": "string" }, "agentVersion": { "description": "The version of the scout component on the server.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from the server.", "type": "string" }, "versionStatus": { "description": "Version status", "type": "string" }, "retentionVolumes": { "description": "The retention volumes of Master target Server.", "type": "array", "items": { "$ref": "#/definitions/RetentionVolume" } }, "dataStores": { "description": "The list of data stores in the fabric.", "type": "array", "items": { "$ref": "#/definitions/DataStore" } }, "validationErrors": { "description": "Validation errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "diskCount": { "format": "int32", "description": "Disk count of the master target.", "type": "integer" }, "osVersion": { "description": "OS Version of the master target.", "type": "string" } } }, "RunAsAccount": { "description": "CS Accounts Details.", "type": "object", "properties": { "accountId": { "description": "The CS RunAs account Id.", "type": "string" }, "accountName": { "description": "The CS RunAs account name.", "type": "string" } } }, "MobilityServiceUpdate": { "description": "The Mobility Service update details.", "type": "object", "properties": { "version": { "description": "The version of the latest update.", "type": "string" }, "rebootStatus": { "description": "The reboot status of the update - whether it is required or not.", "type": "string" }, "osType": { "description": "The OS type.", "type": "string" } } }, "RetentionVolume": { "description": "The retention details of the MT.", "type": "object", "properties": { "volumeName": { "description": "The volume name.", "type": "string" }, "capacityInBytes": { "format": "int64", "description": "The volume capacity.", "type": "integer" }, "freeSpaceInBytes": { "format": "int64", "description": "The free space available in this volume.", "type": "integer" }, "thresholdPercentage": { "format": "int32", "description": "The threshold percentage.", "type": "integer" } } }, "DataStore": { "description": "The data store details of the MT.", "type": "object", "properties": { "symbolicName": { "description": "The symbolic name of data store.", "type": "string" }, "uuid": { "description": "The uuid of data store.", "type": "string" }, "capacity": { "description": "The capacity of data store in GBs.", "type": "string" }, "freeSpace": { "description": "The free space of data store in GBs.", "type": "string" }, "type": { "description": "The type of data store.", "type": "string" } } }, "VMwareV2FabricSpecificDetails": { "description": "VMwareV2 fabric Specific Details.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificDetails" } ], "properties": { "srsServiceEndpoint": { "description": "The endpoint for making requests to the SRS Service.", "type": "string" }, "rcmServiceEndpoint": { "description": "The endpoint for making requests to the RCM Service.", "type": "string" } }, "x-ms-discriminator-value": "VMwareV2" }, "HyperVReplicaBaseReplicationDetails": { "description": "Hyper V replica provider specific settings base class.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "lastReplicatedTime": { "format": "date-time", "description": "The Last replication time.", "type": "string" }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "initialReplicationDetails": { "$ref": "#/definitions/InitialReplicationDetails", "description": "Initial replication details." }, "vMDiskDetails": { "description": "VM disk details.", "type": "array", "items": { "$ref": "#/definitions/DiskDetails" } } }, "x-ms-discriminator-value": "HyperVReplicaBaseReplicationDetails" }, "VMNicDetails": { "description": "Hyper V VM network details.", "type": "object", "properties": { "nicId": { "description": "The nic Id.", "type": "string" }, "replicaNicId": { "description": "The replica nic Id.", "type": "string" }, "sourceNicArmId": { "description": "The source nic ARM Id.", "type": "string" }, "vMSubnetName": { "description": "VM subnet name.", "type": "string" }, "vMNetworkName": { "description": "VM network name.", "type": "string" }, "recoveryVMNetworkId": { "description": "Recovery VM network Id.", "type": "string" }, "recoveryVMSubnetName": { "description": "Recovery VM subnet name.", "type": "string" }, "ipAddressType": { "description": "Ip address type.", "type": "string" }, "primaryNicStaticIPAddress": { "description": "Primary nic static IP address.", "type": "string" }, "replicaNicStaticIPAddress": { "description": "Replica nic static IP address.", "type": "string" }, "selectionType": { "description": "Selection type for failover.", "type": "string" }, "recoveryNicIpAddressType": { "description": "IP allocation type for recovery VM.", "type": "string" } } }, "InitialReplicationDetails": { "description": "Initial replication details.", "type": "object", "properties": { "initialReplicationType": { "description": "Initial replication type.", "type": "string" }, "initialReplicationProgressPercentage": { "description": "The initial replication progress percentage.", "type": "string" } } }, "HyperVReplicaReplicationDetails": { "description": "HyperV replica 2012 replication details.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "lastReplicatedTime": { "format": "date-time", "description": "The Last replication time.", "type": "string" }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "initialReplicationDetails": { "$ref": "#/definitions/InitialReplicationDetails", "description": "Initial replication details." }, "vMDiskDetails": { "description": "VM disk details.", "type": "array", "items": { "$ref": "#/definitions/DiskDetails" } } }, "x-ms-discriminator-value": "HyperVReplica2012" }, "HyperVReplicaBlueReplicationDetails": { "description": "HyperV replica 2012 R2 (Blue) replication details.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "lastReplicatedTime": { "format": "date-time", "description": "The Last replication time.", "type": "string" }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "initialReplicationDetails": { "$ref": "#/definitions/InitialReplicationDetails", "description": "Initial replication details." }, "vMDiskDetails": { "description": "VM disk details.", "type": "array", "items": { "$ref": "#/definitions/DiskDetails" } } }, "x-ms-discriminator-value": "HyperVReplica2012R2" }, "HyperVReplicaAzureReplicationDetails": { "description": "Hyper V Replica Azure provider specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "azureVMDiskDetails": { "description": "Azure VM Disk details.", "type": "array", "items": { "$ref": "#/definitions/AzureVmDiskDetails" } }, "recoveryAzureVMName": { "description": "Recovery Azure given name.", "type": "string" }, "recoveryAzureVMSize": { "description": "The Recovery Azure VM size.", "type": "string" }, "recoveryAzureStorageAccount": { "description": "The recovery Azure storage account.", "type": "string" }, "recoveryAzureLogStorageAccountId": { "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", "type": "string" }, "lastReplicatedTime": { "format": "date-time", "description": "The Last replication time.", "type": "string" }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "initialReplicationDetails": { "$ref": "#/definitions/InitialReplicationDetails", "description": "Initial replication details." }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "selectedRecoveryAzureNetworkId": { "description": "The selected recovery azure network Id.", "type": "string" }, "encryption": { "description": "The encryption info.", "type": "string" }, "oSDetails": { "$ref": "#/definitions/OSDetails", "description": "The operating system info." }, "sourceVmRAMSizeInMB": { "format": "int32", "description": "The RAM size of the VM on the primary side.", "type": "integer" }, "sourceVmCPUCount": { "format": "int32", "description": "The CPU count of the VM on the primary side.", "type": "integer" }, "enableRDPOnTargetOption": { "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", "type": "string" }, "recoveryAzureResourceGroupId": { "description": "The target resource group Id.", "type": "string" }, "recoveryAvailabilitySetId": { "description": "The recovery availability set Id.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" }, "licenseType": { "description": "License Type of the VM to be used.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "AzureVmDiskDetails": { "description": "Disk details for E2A provider.", "type": "object", "properties": { "vhdType": { "description": "VHD type.", "type": "string" }, "vhdId": { "description": "The VHD id.", "type": "string" }, "vhdName": { "description": "VHD name.", "type": "string" }, "maxSizeMB": { "description": "Max side in MB.", "type": "string" }, "targetDiskLocation": { "description": "Blob uri of the Azure disk.", "type": "string" }, "targetDiskName": { "description": "The target Azure disk name.", "type": "string" }, "lunId": { "description": "Ordinal\\LunId of the disk for the Azure VM.", "type": "string" } } }, "OSDetails": { "description": "Disk Details.", "type": "object", "properties": { "osType": { "description": "VM Disk details.", "type": "string" }, "productType": { "description": "Product type.", "type": "string" }, "osEdition": { "description": "The OSEdition.", "type": "string" }, "oSVersion": { "description": "The OS Version.", "type": "string" }, "oSMajorVersion": { "description": "The OS Major Version.", "type": "string" }, "oSMinorVersion": { "description": "The OS Minor Version.", "type": "string" } } }, "InMageAzureV2ReplicationDetails": { "description": "InMageAzureV2 provider specific settings", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "infrastructureVmId": { "description": "The infrastructure VM Id.", "type": "string" }, "vCenterInfrastructureId": { "description": "The vCenter infrastructure Id.", "type": "string" }, "protectionStage": { "description": "The protection stage.", "type": "string" }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "resyncProgressPercentage": { "format": "int32", "description": "The resync progress percentage.", "type": "integer" }, "rpoInSeconds": { "format": "int64", "description": "The RPO in seconds.", "type": "integer" }, "compressedDataRateInMB": { "format": "double", "description": "The compressed data change rate in MB.", "type": "number" }, "uncompressedDataRateInMB": { "format": "double", "description": "The uncompressed data change rate in MB.", "type": "number" }, "ipAddress": { "description": "The source IP address.", "type": "string" }, "agentVersion": { "description": "The agent version.", "type": "string" }, "isAgentUpdateRequired": { "description": "A value indicating whether installed agent needs to be updated.", "type": "string" }, "isRebootAfterUpdateRequired": { "description": "A value indicating whether the source server requires a restart after update.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from the source server.", "type": "string" }, "processServerId": { "description": "The process server Id.", "type": "string" }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" }, "multiVmGroupName": { "description": "The multi vm group name.", "type": "string" }, "multiVmSyncStatus": { "description": "A value indicating whether multi vm sync is enabled or disabled.", "type": "string" }, "protectedDisks": { "description": "The list of protected disks.", "type": "array", "items": { "$ref": "#/definitions/InMageAzureV2ProtectedDiskDetails" } }, "diskResized": { "description": "A value indicating whether any disk is resized for this VM.", "type": "string" }, "masterTargetId": { "description": "The master target Id.", "type": "string" }, "sourceVmCPUCount": { "format": "int32", "description": "The CPU count of the VM on the primary side.", "type": "integer" }, "sourceVmRAMSizeInMB": { "format": "int32", "description": "The RAM size of the VM on the primary side.", "type": "integer" }, "osType": { "description": "The type of the OS on the VM.", "type": "string" }, "vhdName": { "description": "The OS disk VHD name.", "type": "string" }, "osDiskId": { "description": "The id of the disk containing the OS.", "type": "string" }, "azureVMDiskDetails": { "description": "Azure VM Disk details.", "type": "array", "items": { "$ref": "#/definitions/AzureVmDiskDetails" } }, "recoveryAzureVMName": { "description": "Recovery Azure given name.", "type": "string" }, "recoveryAzureVMSize": { "description": "The Recovery Azure VM size.", "type": "string" }, "recoveryAzureStorageAccount": { "description": "The recovery Azure storage account.", "type": "string" }, "recoveryAzureLogStorageAccountId": { "description": "The ARM id of the log storage account used for replication. This will be set to null if no log storage account was provided during enable protection.", "type": "string" }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "selectedRecoveryAzureNetworkId": { "description": "The selected recovery azure network Id.", "type": "string" }, "discoveryType": { "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", "type": "string" }, "enableRDPOnTargetOption": { "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", "type": "string" }, "datastores": { "description": "The data stores of the on-premise machine. Value can be list of strings that contain data store names.", "type": "array", "items": { "type": "string" } }, "targetVmId": { "description": "The ARM Id of the target Azure VM. This value will be null until the VM is failed over. Only after failure it will be populated with the ARM Id of the Azure VM.", "type": "string" }, "recoveryAzureResourceGroupId": { "description": "The target resource group Id.", "type": "string" }, "recoveryAvailabilitySetId": { "description": "The recovery availability set Id.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" }, "licenseType": { "description": "License Type of the VM to be used.", "type": "string" }, "validationErrors": { "description": "The validation errors of the on-premise machine Value can be list of validation errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "lastRpoCalculatedTime": { "format": "date-time", "description": "The last RPO calculated time.", "type": "string" }, "lastUpdateReceivedTime": { "format": "date-time", "description": "The last update time received from on-prem components.", "type": "string" }, "replicaId": { "description": "The replica id of the protected item.", "type": "string" }, "osVersion": { "description": "The OS Version of the protected item.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMageAzureV2ProtectedDiskDetails": { "description": "InMageAzureV2 protected disk details.", "type": "object", "properties": { "diskId": { "description": "The disk id.", "type": "string" }, "diskName": { "description": "The disk name.", "type": "string" }, "protectionStage": { "description": "The protection stage.", "type": "string" }, "healthErrorCode": { "description": "The health error code for the disk.", "type": "string" }, "rpoInSeconds": { "format": "int64", "description": "The RPO in seconds.", "type": "integer" }, "resyncRequired": { "description": "A value indicating whether resync is required for this disk.", "type": "string" }, "resyncProgressPercentage": { "format": "int32", "description": "The resync progress percentage.", "type": "integer" }, "resyncDurationInSeconds": { "format": "int64", "description": "The resync duration in seconds.", "type": "integer" }, "diskCapacityInBytes": { "format": "int64", "description": "The disk capacity in bytes.", "type": "integer" }, "fileSystemCapacityInBytes": { "format": "int64", "description": "The disk file system capacity in bytes.", "type": "integer" }, "sourceDataInMegaBytes": { "format": "double", "description": "The source data transit in MB.", "type": "number" }, "psDataInMegaBytes": { "format": "double", "description": "The PS data transit in MB.", "type": "number" }, "targetDataInMegaBytes": { "format": "double", "description": "The target data transit in MB.", "type": "number" }, "diskResized": { "description": "A value indicating whether disk is resized.", "type": "string" }, "lastRpoCalculatedTime": { "format": "date-time", "description": "The last RPO calculated time.", "type": "string" } } }, "InMageReplicationDetails": { "description": "InMage provider specific settings", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "activeSiteType": { "description": "The active location of the VM. If the VM is being protected from Azure, this field will take values from { Azure, OnPrem }. If the VM is being protected between two data-centers, this field will be OnPrem always.", "type": "string" }, "sourceVmCPUCount": { "format": "int32", "description": "The CPU count of the VM on the primary side.", "type": "integer" }, "sourceVmRAMSizeInMB": { "format": "int32", "description": "The RAM size of the VM on the primary side.", "type": "integer" }, "osDetails": { "$ref": "#/definitions/OSDiskDetails", "description": "The OS details." }, "protectionStage": { "description": "The protection stage.", "type": "string" }, "vmId": { "description": "The virtual machine Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "resyncDetails": { "$ref": "#/definitions/InitialReplicationDetails", "description": "The resync details of the machine" }, "retentionWindowStart": { "format": "date-time", "description": "The retention window start time.", "type": "string" }, "retentionWindowEnd": { "format": "date-time", "description": "The retention window end time.", "type": "string" }, "compressedDataRateInMB": { "format": "double", "description": "The compressed data change rate in MB.", "type": "number" }, "uncompressedDataRateInMB": { "format": "double", "description": "The uncompressed data change rate in MB.", "type": "number" }, "rpoInSeconds": { "format": "int64", "description": "The RPO in seconds.", "type": "integer" }, "protectedDisks": { "description": "The list of protected disks.", "type": "array", "items": { "$ref": "#/definitions/InMageProtectedDiskDetails" } }, "ipAddress": { "description": "The source IP address.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from the source server.", "type": "string" }, "processServerId": { "description": "The process server Id.", "type": "string" }, "masterTargetId": { "description": "The master target Id.", "type": "string" }, "consistencyPoints": { "description": "The collection of Consistency points.", "type": "object", "additionalProperties": { "format": "date-time", "type": "string" } }, "diskResized": { "description": "A value indicating whether any disk is resized for this VM.", "type": "string" }, "rebootAfterUpdateStatus": { "description": "A value indicating whether the source server requires a restart after update.", "type": "string" }, "multiVmGroupId": { "description": "The multi vm group Id, if any.", "type": "string" }, "multiVmGroupName": { "description": "The multi vm group name, if any.", "type": "string" }, "multiVmSyncStatus": { "description": "A value indicating whether the multi vm sync is enabled or disabled.", "type": "string" }, "agentDetails": { "$ref": "#/definitions/InMageAgentDetails", "description": "The agent details." }, "vCenterInfrastructureId": { "description": "The vCenter infrastructure Id.", "type": "string" }, "infrastructureVmId": { "description": "The infrastructure VM Id.", "type": "string" }, "vmNics": { "description": "The PE Network details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "discoveryType": { "description": "A value indicating the discovery type of the machine.", "type": "string" }, "azureStorageAccountId": { "description": "A value indicating the underlying Azure storage account. If the VM is not running in Azure, this value shall be set to null.", "type": "string" }, "datastores": { "description": "The data stores of the on-premise machine Value can be list of strings that contain data store names", "type": "array", "items": { "type": "string" } }, "validationErrors": { "description": "The validation errors of the on-premise machine Value can be list of validation errors", "type": "array", "items": { "$ref": "#/definitions/HealthError" } }, "lastRpoCalculatedTime": { "format": "date-time", "description": "The last RPO calculated time.", "type": "string" }, "lastUpdateReceivedTime": { "format": "date-time", "description": "The last update time received from on-prem components.", "type": "string" }, "replicaId": { "description": "The replica id of the protected item.", "type": "string" }, "osVersion": { "description": "The OS Version of the protected item.", "type": "string" } }, "x-ms-discriminator-value": "InMage" }, "OSDiskDetails": { "description": "Details of the OS Disk.", "type": "object", "properties": { "osVhdId": { "description": "The id of the disk containing the OS.", "type": "string" }, "osType": { "description": "The type of the OS on the VM.", "type": "string" }, "vhdName": { "description": "The OS disk VHD name.", "type": "string" } } }, "InMageProtectedDiskDetails": { "description": "InMage protected disk details.", "type": "object", "properties": { "diskId": { "description": "The disk id.", "type": "string" }, "diskName": { "description": "The disk name.", "type": "string" }, "protectionStage": { "description": "The protection stage.", "type": "string" }, "healthErrorCode": { "description": "The health error code for the disk.", "type": "string" }, "rpoInSeconds": { "format": "int64", "description": "The RPO in seconds.", "type": "integer" }, "resyncRequired": { "description": "A value indicating whether resync is required for this disk.", "type": "string" }, "resyncProgressPercentage": { "format": "int32", "description": "The resync progress percentage.", "type": "integer" }, "resyncDurationInSeconds": { "format": "int64", "description": "The resync duration in seconds.", "type": "integer" }, "diskCapacityInBytes": { "format": "int64", "description": "The disk capacity in bytes.", "type": "integer" }, "fileSystemCapacityInBytes": { "format": "int64", "description": "The file system capacity in bytes.", "type": "integer" }, "sourceDataInMB": { "format": "double", "description": "The source data transit in MB.", "type": "number" }, "psDataInMB": { "format": "double", "description": "The PS data transit in MB.", "type": "number" }, "targetDataInMB": { "format": "double", "description": "The target data transit in MB.", "type": "number" }, "diskResized": { "description": "A value indicating whether disk is resized.", "type": "string" }, "lastRpoCalculatedTime": { "format": "date-time", "description": "The last RPO calculated time.", "type": "string" } } }, "InMageAgentDetails": { "description": "The details of the InMage agent.", "type": "object", "properties": { "agentVersion": { "description": "The agent version.", "type": "string" }, "agentUpdateStatus": { "description": "A value indicating whether installed agent needs to be updated.", "type": "string" }, "postUpdateRebootStatus": { "description": "A value indicating whether reboot is required after update is applied.", "type": "string" } } }, "A2AReplicationDetails": { "description": "A2A provider specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificSettings" } ], "properties": { "fabricObjectId": { "description": "The fabric specific object Id of the virtual machine.", "type": "string" }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" }, "multiVmGroupName": { "description": "The multi vm group name.", "type": "string" }, "managementId": { "description": "The management Id.", "type": "string" }, "protectedDisks": { "description": "The list of protected disks.", "type": "array", "items": { "$ref": "#/definitions/A2AProtectedDiskDetails" } }, "protectedManagedDisks": { "description": "The list of protected managed disks.", "type": "array", "items": { "$ref": "#/definitions/A2AProtectedManagedDiskDetails" } }, "primaryFabricLocation": { "description": "Primary fabric location.", "type": "string" }, "recoveryFabricLocation": { "description": "The recovery fabric location.", "type": "string" }, "osType": { "description": "The type of operating system.", "type": "string" }, "recoveryAzureVMSize": { "description": "The size of recovery virtual machine.", "type": "string" }, "recoveryAzureVMName": { "description": "The name of recovery virtual machine.", "type": "string" }, "recoveryAzureResourceGroupId": { "description": "The recovery resource group.", "type": "string" }, "recoveryCloudService": { "description": "The recovery cloud service.", "type": "string" }, "recoveryAvailabilitySet": { "description": "The recovery availability set.", "type": "string" }, "selectedRecoveryAzureNetworkId": { "description": "The recovery virtual network.", "type": "string" }, "vmNics": { "description": "The virtual machine nic details.", "type": "array", "items": { "$ref": "#/definitions/VMNicDetails" } }, "vmSyncedConfigDetails": { "$ref": "#/definitions/AzureToAzureVmSyncedConfigDetails", "description": "The synced configuration details." }, "monitoringPercentageCompletion": { "format": "int32", "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", "type": "integer" }, "monitoringJobType": { "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", "type": "string" }, "lastHeartbeat": { "format": "date-time", "description": "The last heartbeat received from the source server.", "type": "string" }, "agentVersion": { "description": "The agent version.", "type": "string" }, "isReplicationAgentUpdateRequired": { "description": "A value indicating whether replication agent update is required.", "type": "boolean" }, "recoveryFabricObjectId": { "description": "The recovery fabric object Id.", "type": "string" }, "vmProtectionState": { "description": "The protection state for the vm.", "type": "string" }, "vmProtectionStateDescription": { "description": "The protection state description for the vm.", "type": "string" }, "lifecycleId": { "description": "An id associated with the PE that survives actions like switch protection which change the backing PE/CPE objects internally.The lifecycle id gets carried forward to have a link/continuity in being able to have an Id that denotes the \"same\" protected item even though other internal Ids/ARM Id might be changing.", "type": "string" }, "testFailoverRecoveryFabricObjectId": { "description": "The test failover fabric object Id.", "type": "string" }, "rpoInSeconds": { "format": "int64", "description": "The last RPO value in seconds.", "type": "integer" }, "lastRpoCalculatedTime": { "format": "date-time", "description": "The time (in UTC) when the last RPO value was calculated by Protection Service.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "A2AProtectedDiskDetails": { "description": "A2A protected disk details.", "type": "object", "properties": { "diskUri": { "description": "The disk uri.", "type": "string" }, "recoveryAzureStorageAccountId": { "description": "The recovery disk storage account.", "type": "string" }, "primaryDiskAzureStorageAccountId": { "description": "The primary disk storage account.", "type": "string" }, "recoveryDiskUri": { "description": "Recovery disk uri.", "type": "string" }, "diskName": { "description": "The disk name.", "type": "string" }, "diskCapacityInBytes": { "format": "int64", "description": "The disk capacity in bytes.", "type": "integer" }, "primaryStagingAzureStorageAccountId": { "description": "The primary staging storage account.", "type": "string" }, "diskType": { "description": "The type of disk.", "type": "string" }, "resyncRequired": { "description": "A value indicating whether resync is required for this disk.", "type": "boolean" }, "monitoringPercentageCompletion": { "format": "int32", "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", "type": "integer" }, "monitoringJobType": { "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", "type": "string" }, "dataPendingInStagingStorageAccountInMB": { "format": "double", "description": "The data pending for replication in MB at staging account.", "type": "number" }, "dataPendingAtSourceAgentInMB": { "format": "double", "description": "The data pending at source virtual machine in MB.", "type": "number" } } }, "A2AProtectedManagedDiskDetails": { "description": "A2A protected managed disk details.", "type": "object", "properties": { "diskId": { "description": "The managed disk Arm id.", "type": "string" }, "recoveryAzureResourceGroupId": { "description": "The recovery disk resource group Arm Id.", "type": "string" }, "recoveryDiskId": { "description": "Recovery disk Arm Id.", "type": "string" }, "diskName": { "description": "The disk name.", "type": "string" }, "diskCapacityInBytes": { "format": "int64", "description": "The disk capacity in bytes.", "type": "integer" }, "primaryStagingAzureStorageAccountId": { "description": "The primary staging storage account.", "type": "string" }, "diskType": { "description": "The type of disk.", "type": "string" }, "resyncRequired": { "description": "A value indicating whether resync is required for this disk.", "type": "boolean" }, "monitoringPercentageCompletion": { "format": "int32", "description": "The percentage of the monitoring job. The type of the monitoring job is defined by MonitoringJobType property.", "type": "integer" }, "monitoringJobType": { "description": "The type of the monitoring job. The progress is contained in MonitoringPercentageCompletion property.", "type": "string" }, "dataPendingInStagingStorageAccountInMB": { "format": "double", "description": "The data pending for replication in MB at staging account.", "type": "number" }, "dataPendingAtSourceAgentInMB": { "format": "double", "description": "The data pending at source virtual machine in MB.", "type": "number" } } }, "AzureToAzureVmSyncedConfigDetails": { "description": "Azure to Azure VM synced configuration details.", "type": "object", "properties": { "tags": { "description": "The Azure VM tags.", "type": "object", "additionalProperties": { "type": "string" } }, "roleAssignments": { "description": "The Azure role assignments.", "type": "array", "items": { "$ref": "#/definitions/RoleAssignment" } }, "inputEndpoints": { "description": "The Azure VM input endpoints.", "type": "array", "items": { "$ref": "#/definitions/InputEndpoint" } } } }, "RoleAssignment": { "description": "Azure role assignment details.", "type": "object", "properties": { "id": { "description": "The ARM Id of the role assignment.", "type": "string" }, "name": { "description": "The name of the role assignment.", "type": "string" }, "scope": { "description": "Role assignment scope.", "type": "string" }, "principalId": { "description": "Principal Id.", "type": "string" }, "roleDefinitionId": { "description": "Role definition id.", "type": "string" } } }, "InputEndpoint": { "description": "Azure VM input endpoint details.", "type": "object", "properties": { "endpointName": { "description": "The input endpoint name.", "type": "string" }, "privatePort": { "format": "int32", "description": "The input endpoint private port.", "type": "integer" }, "publicPort": { "format": "int32", "description": "The input endpoint public port.", "type": "integer" }, "protocol": { "description": "The input endpoint protocol.", "type": "string" } } }, "HyperVReplicaAzureEnableProtectionInput": { "description": "Azure specific enable protection input.", "type": "object", "allOf": [ { "$ref": "#/definitions/EnableProtectionProviderSpecificInput" } ], "properties": { "hvHostVmId": { "description": "The Hyper-V host Vm Id.", "type": "string" }, "vmName": { "description": "The Vm Name.", "type": "string" }, "osType": { "description": "The OS type associated with vm.", "type": "string" }, "vhdId": { "description": "The OS disk VHD id associated with vm.", "type": "string" }, "targetStorageAccountId": { "description": "The storage account name.", "type": "string" }, "targetAzureNetworkId": { "description": "The selected target Azure network Id.", "type": "string" }, "targetAzureSubnetId": { "description": "The selected target Azure subnet Id.", "type": "string" }, "enableRDPOnTargetOption": { "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", "type": "string" }, "targetAzureVmName": { "description": "The target azure Vm Name.", "type": "string" }, "logStorageAccountId": { "description": "The storage account to be used for logging during replication.", "type": "string" }, "disksToInclude": { "description": "The list of VHD IDs of disks to be protected.", "type": "array", "items": { "type": "string" } }, "targetAzureV1ResourceGroupId": { "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", "type": "string" }, "targetAzureV2ResourceGroupId": { "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "SanEnableProtectionInput": { "description": "San enable protection provider specific input.", "type": "object", "allOf": [ { "$ref": "#/definitions/EnableProtectionProviderSpecificInput" } ], "properties": {}, "x-ms-discriminator-value": "San" }, "InMageAzureV2EnableProtectionInput": { "description": "VMware Azure specific enable protection input.", "required": [ "storageAccountId" ], "type": "object", "allOf": [ { "$ref": "#/definitions/EnableProtectionProviderSpecificInput" } ], "properties": { "masterTargetId": { "description": "The Master target Id.", "type": "string" }, "processServerId": { "description": "The Process Server Id.", "type": "string" }, "storageAccountId": { "description": "The storage account name.", "type": "string" }, "runAsAccountId": { "description": "The CS account Id.", "type": "string" }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" }, "multiVmGroupName": { "description": "The multi vm group name.", "type": "string" }, "disksToInclude": { "description": "The disks to include list.", "type": "array", "items": { "type": "string" } }, "targetAzureNetworkId": { "description": "The selected target Azure network Id.", "type": "string" }, "targetAzureSubnetId": { "description": "The selected target Azure subnet Id.", "type": "string" }, "enableRDPOnTargetOption": { "description": "The selected option to enable RDP\\SSH on target vm after failover. String value of {SrsDataContract.EnableRDPOnTargetOption} enum.", "type": "string" }, "targetAzureVmName": { "description": "The target azure Vm Name.", "type": "string" }, "logStorageAccountId": { "description": "The storage account to be used for logging during replication.", "type": "string" }, "targetAzureV1ResourceGroupId": { "description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.", "type": "string" }, "targetAzureV2ResourceGroupId": { "description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMageEnableProtectionInput": { "description": "VMware Azure specific enable protection input.", "required": [ "masterTargetId", "processServerId", "retentionDrive", "multiVmGroupId", "multiVmGroupName" ], "type": "object", "allOf": [ { "$ref": "#/definitions/EnableProtectionProviderSpecificInput" } ], "properties": { "vmFriendlyName": { "description": "The Vm Name.", "type": "string" }, "masterTargetId": { "description": "The Master Target Id.", "type": "string" }, "processServerId": { "description": "The Process Server Id.", "type": "string" }, "retentionDrive": { "description": "The retention drive to use on the MT.", "type": "string" }, "runAsAccountId": { "description": "The CS account Id.", "type": "string" }, "multiVmGroupId": { "description": "The multi vm group Id.", "type": "string" }, "multiVmGroupName": { "description": "The multi vm group name.", "type": "string" }, "datastoreName": { "description": "The target data store name.", "type": "string" }, "diskExclusionInput": { "$ref": "#/definitions/InMageDiskExclusionInput", "description": "The enable disk exclusion input." }, "disksToInclude": { "description": "The disks to include list.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "InMage" }, "A2AEnableProtectionInput": { "description": "A2A enable protection input.", "type": "object", "allOf": [ { "$ref": "#/definitions/EnableProtectionProviderSpecificInput" } ], "properties": { "fabricObjectId": { "description": "The fabric specific object Id of the virtual machine.", "type": "string" }, "recoveryContainerId": { "description": "The recovery container Id.", "type": "string" }, "recoveryResourceGroupId": { "description": "The recovery resource group Id. Valid for V2 scenarios.", "type": "string" }, "recoveryCloudServiceId": { "description": "The recovery cloud service Id. Valid for V1 scenarios.", "type": "string" }, "recoveryAvailabilitySetId": { "description": "The recovery availability set Id.", "type": "string" }, "vmDisks": { "description": "The list of vm disk details.", "type": "array", "items": { "$ref": "#/definitions/A2AVmDiskInputDetails" } }, "vmManagedDisks": { "description": "The list of vm managed disk details.", "type": "array", "items": { "$ref": "#/definitions/A2AVmManagedDiskInputDetails" } } }, "x-ms-discriminator-value": "A2A" }, "Resource": { "description": "Azure resource.", "properties": { "id": { "description": "Resource Id", "type": "string", "readOnly": true }, "name": { "description": "Resource Name", "type": "string", "readOnly": true }, "type": { "description": "Resource Type", "type": "string", "readOnly": true }, "location": { "description": "Resource Location", "type": "string" } }, "x-ms-azure-resource": true }, "A2AVmManagedDiskInputDetails": { "description": "Azure VM managed disk input details.", "type": "object", "properties": { "diskId": { "description": "The disk Id.", "type": "string" }, "primaryStagingAzureStorageAccountId": { "description": "The primary staging storage account Arm Id.", "type": "string" }, "recoveryResourceGroupId": { "description": "The target resource group Arm Id.", "type": "string" } } }, "HyperVReplicaAzureUpdateReplicationProtectedItemInput": { "description": "HyperV replica Azure input to update replication protected item.", "type": "object", "allOf": [ { "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" } ], "properties": { "recoveryAzureV1ResourceGroupId": { "description": "The recovery Azure resource group Id for classic deployment.", "type": "string" }, "recoveryAzureV2ResourceGroupId": { "description": "The recovery Azure resource group Id for resource manager deployment.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "InMageAzureV2UpdateReplicationProtectedItemInput": { "description": "InMage Azure V2 input to update replication protected item.", "type": "object", "allOf": [ { "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" } ], "properties": { "recoveryAzureV1ResourceGroupId": { "description": "The recovery Azure resource group Id for classic deployment.", "type": "string" }, "recoveryAzureV2ResourceGroupId": { "description": "The recovery Azure resource group Id for resource manager deployment.", "type": "string" }, "useManagedDisks": { "description": "A value indicating whether managed disks should be used during failover.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "A2AUpdateReplicationProtectedItemInput": { "description": "InMage Azure V2 input to update replication protected item.", "type": "object", "allOf": [ { "$ref": "#/definitions/UpdateReplicationProtectedItemProviderInput" } ], "properties": { "recoveryCloudServiceId": { "description": "The target cloud service ARM Id (for V1).", "type": "string" }, "recoveryResourceGroupId": { "description": "The target resource group ARM Id (for V2).", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "HyperVReplicaBaseEventDetails": { "description": "Abstract model class for event details of a HyperVReplica E2E event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "containerName": { "description": "The container friendly name.", "type": "string" }, "fabricName": { "description": "The fabric friendly name.", "type": "string" }, "remoteContainerName": { "description": "The remote container name.", "type": "string" }, "remoteFabricName": { "description": "The remote fabric name.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaBaseEventDetails" }, "HyperVReplica2012EventDetails": { "description": "Model class for event details of a HyperVReplica E2E event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "containerName": { "description": "The container friendly name.", "type": "string" }, "fabricName": { "description": "The fabric friendly name.", "type": "string" }, "remoteContainerName": { "description": "The remote container name.", "type": "string" }, "remoteFabricName": { "description": "The remote fabric name.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012" }, "HyperVReplica2012R2EventDetails": { "description": "Model class for event details of a HyperVReplica blue E2E event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "containerName": { "description": "The container friendly name.", "type": "string" }, "fabricName": { "description": "The fabric friendly name.", "type": "string" }, "remoteContainerName": { "description": "The remote container name.", "type": "string" }, "remoteFabricName": { "description": "The remote fabric name.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012R2" }, "HyperVReplicaAzureEventDetails": { "description": "Model class for event details of a HyperVReplica E2A event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "containerName": { "description": "The container friendly name.", "type": "string" }, "fabricName": { "description": "The fabric friendly name.", "type": "string" }, "remoteContainerName": { "description": "The remote container name.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "A2AEventDetails": { "description": "Model class for event details of a A2A event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "protectedItemName": { "description": "The protected item arm name.", "type": "string" }, "fabricObjectId": { "description": "The azure vm arm id.", "type": "string" }, "fabricName": { "description": "Fabric arm name.", "type": "string" }, "fabricLocation": { "description": "The fabric location.", "type": "string" }, "remoteFabricName": { "description": "Remote fabric arm name.", "type": "string" }, "remoteFabricLocation": { "description": "Remote fabric location.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "InMageAzureV2EventDetails": { "description": "Model class for event details of a VMwareAzureV2 event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventProviderSpecificDetails" } ], "properties": { "eventType": { "description": "InMage Event type. Takes one of the values of {InMageDataContract.InMageMonitoringEventType}.", "type": "string" }, "category": { "description": "InMage Event Category.", "type": "string" }, "component": { "description": "InMage Event Component.", "type": "string" }, "correctiveAction": { "description": "Corrective Action string for the event.", "type": "string" }, "details": { "description": "InMage Event Details.", "type": "string" }, "summary": { "description": "InMage Event Summary.", "type": "string" }, "siteName": { "description": "VMware Site name.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "JobStatusEventDetails": { "description": "Model class for event details of a job status event.", "type": "object", "allOf": [ { "$ref": "#/definitions/EventSpecificDetails" } ], "properties": { "jobId": { "description": "Job arm id for the event.", "type": "string" }, "jobFriendlyName": { "description": "JobName for the Event.", "type": "string" }, "jobStatus": { "description": "JobStatus for the Event.", "type": "string" }, "affectedObjectType": { "description": "AffectedObjectType for the event.", "type": "string" } }, "x-ms-discriminator-value": "JobStatus" }, "HyperVVirtualMachineDetails": { "description": "Hyper V replica provider specific settings", "type": "object", "allOf": [ { "$ref": "#/definitions/ConfigurationSettings" } ], "properties": { "sourceItemId": { "description": "The source id of the object.", "type": "string" }, "generation": { "description": "The id of the object in fabric.", "type": "string" }, "osDetails": { "$ref": "#/definitions/OSDetails", "description": "The Last replication time." }, "diskDetails": { "description": "The Last successful failover time.", "type": "array", "items": { "$ref": "#/definitions/DiskDetails" } } }, "x-ms-discriminator-value": "HyperVVirtualMachine" }, "DiskDetails": { "description": "On-prem disk details data.", "type": "object", "properties": { "maxSizeMB": { "format": "int64", "description": "The hard disk max size in MB.", "type": "integer" }, "vhdType": { "description": "The type of the volume.", "type": "string" }, "vhdId": { "description": "The VHD Id.", "type": "string" }, "vhdName": { "description": "The VHD name.", "type": "string" } } }, "VMwareVirtualMachineDetails": { "description": "VMware provider specific settings", "type": "object", "allOf": [ { "$ref": "#/definitions/ConfigurationSettings" } ], "properties": { "agentGeneratedId": { "description": "The ID generated by the InMage agent after it gets installed on guest. This is the ID to be used during InMage CreateProtection.", "type": "string" }, "agentInstalled": { "description": "The value indicating if InMage scout agent is installed on guest.", "type": "string" }, "osType": { "description": "The OsType installed on VM.", "type": "string" }, "agentVersion": { "description": "The agent version.", "type": "string" }, "ipAddress": { "description": "The IP address.", "type": "string" }, "poweredOn": { "description": "The value indicating whether VM is powered on.", "type": "string" }, "vCenterInfrastructureId": { "description": "The VCenter infrastructure Id.", "type": "string" }, "discoveryType": { "description": "A value indicating the discovery type of the machine. Value can be vCenter or physical.", "type": "string" }, "diskDetails": { "description": "The disk details.", "type": "array", "items": { "$ref": "#/definitions/InMageDiskDetails" } }, "validationErrors": { "description": "The validation errors.", "type": "array", "items": { "$ref": "#/definitions/HealthError" } } }, "x-ms-discriminator-value": "VMwareVirtualMachine" }, "InMageDiskDetails": { "description": "VMware/Physical specific Disk Details", "type": "object", "properties": { "diskId": { "description": "The disk Id.", "type": "string" }, "diskName": { "description": "The disk name.", "type": "string" }, "diskSizeInMB": { "description": "The disk size in MB.", "type": "string" }, "diskType": { "description": "Whether disk is system disk or data disk.", "type": "string" }, "diskConfiguration": { "description": "Whether disk is dynamic disk or basic disk.", "type": "string" }, "volumeList": { "description": "Volumes of the disk.", "type": "array", "items": { "$ref": "#/definitions/DiskVolumeDetails" } } } }, "DiskVolumeDetails": { "description": "Volume details.", "type": "object", "properties": { "label": { "description": "The volume label.", "type": "string" }, "name": { "description": "The volume name.", "type": "string" } } }, "ReplicationGroupDetails": { "description": "Replication group details. This will be used in case of San and Wvr.", "type": "object", "allOf": [ { "$ref": "#/definitions/ConfigurationSettings" } ], "properties": {}, "x-ms-discriminator-value": "ReplicationGroupDetails" }, "InMageAzureV2RecoveryPointDetails": { "description": "InMage Azure V2 provider specific recovery point details.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificRecoveryPointDetails" } ], "properties": { "instanceType": { "description": "Gets the instance type.", "type": "string", "readOnly": true }, "isMultiVmSyncPoint": { "description": "A value indicating whether the recovery point is multi VM consistent.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2RecoveryPointDetails" }, "InMageDisableProtectionProviderSpecificInput": { "description": "InMage disable protection provider specific input.", "type": "object", "allOf": [ { "$ref": "#/definitions/DisableProtectionProviderSpecificInput" } ], "properties": { "replicaVmDeletionStatus": { "description": "A value indicating whether the replica VM should be destroyed or retained. Values from Delete and Retain.", "type": "string" } }, "x-ms-discriminator-value": "InMage" }, "HyperVReplicaAzureFailoverProviderInput": { "description": "HvrA provider specific input for failover.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificFailoverInput" } ], "properties": { "vaultLocation": { "description": "Location of the vault.", "type": "string" }, "primaryKekCertificatePfx": { "description": "Primary kek certificate pfx.", "type": "string" }, "secondaryKekCertificatePfx": { "description": "Secondary kek certificate pfx.", "type": "string" }, "recoveryPointId": { "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "HyperVReplicaAzureFailbackProviderInput": { "description": "HvrA provider specific input for failback.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificFailoverInput" } ], "properties": { "dataSyncOption": { "description": "Data sync option.", "type": "string" }, "recoveryVmCreationOption": { "description": "ALR options to create alternate recovery.", "type": "string" }, "providerIdForAlternateRecovery": { "description": "Provider ID for alternate location", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzureFailback" }, "InMageAzureV2FailoverProviderInput": { "description": "InMageAzureV2 provider specific input for failover.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificFailoverInput" } ], "properties": { "vaultLocation": { "description": "Location of the vault.", "type": "string" }, "recoveryPointId": { "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMageFailoverProviderInput": { "description": "Provider specific input for InMage failover.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificFailoverInput" } ], "properties": { "recoveryPointType": { "description": "The recovery point type. Values from LatestTime, LatestTag or Custom. In the case of custom, the recovery point provided by RecoveryPointId will be used. In the other two cases, recovery point id will be ignored.", "enum": [ "LatestTime", "LatestTag", "Custom" ], "type": "string", "x-ms-enum": { "name": "RecoveryPointType", "modelAsString": false } }, "recoveryPointId": { "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", "type": "string" } }, "x-ms-discriminator-value": "InMage" }, "A2AFailoverProviderInput": { "description": "A2A provider specific input for failover.", "type": "object", "allOf": [ { "$ref": "#/definitions/ProviderSpecificFailoverInput" } ], "properties": { "recoveryPointId": { "description": "The recovery point id to be passed to failover to a particular recovery point. In case of latest recovery point, null should be passed.", "type": "string" }, "cloudServiceCreationOption": { "description": "A value indicating whether to use recovery cloud service for TFO or not.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "HyperVReplicaAzureReprotectInput": { "description": "Azure specific reprotect input.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" } ], "properties": { "hvHostVmId": { "description": "The Hyper-V host Vm Id.", "type": "string" }, "vmName": { "description": "The Vm Name.", "type": "string" }, "osType": { "description": "The OS type associated with vm.", "type": "string" }, "vHDId": { "description": "The OS disk VHD id associated with vm.", "type": "string" }, "storageAccountId": { "description": "The storage account name.", "type": "string" }, "logStorageAccountId": { "description": "The storage account to be used for logging during replication.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "InMageAzureV2ReprotectInput": { "description": "InMageAzureV2 specific provider input.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" } ], "properties": { "masterTargetId": { "description": "The Master target Id.", "type": "string" }, "processServerId": { "description": "The Process Server Id.", "type": "string" }, "storageAccountId": { "description": "The storage account id.", "type": "string" }, "runAsAccountId": { "description": "The CS account Id.", "type": "string" }, "policyId": { "description": "The Policy Id.", "type": "string" }, "logStorageAccountId": { "description": "The storage account to be used for logging during replication.", "type": "string" }, "disksToInclude": { "description": "The disks to include list.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMageReprotectInput": { "description": "InMageAzureV2 specific provider input.", "required": [ "masterTargetId", "processServerId", "retentionDrive", "profileId" ], "type": "object", "allOf": [ { "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" } ], "properties": { "masterTargetId": { "description": "The Master Target Id.", "type": "string" }, "processServerId": { "description": "The Process Server Id.", "type": "string" }, "retentionDrive": { "description": "The retention drive to use on the MT.", "type": "string" }, "runAsAccountId": { "description": "The CS account Id.", "type": "string" }, "datastoreName": { "description": "The target data store name.", "type": "string" }, "diskExclusionInput": { "$ref": "#/definitions/InMageDiskExclusionInput", "description": "The enable disk exclusion input." }, "profileId": { "description": "The Policy Id.", "type": "string" }, "disksToInclude": { "description": "The disks to include list.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "InMage" }, "InMageDiskExclusionInput": { "description": "DiskExclusionInput when doing enable protection of virtual machine in InMage provider.", "type": "object", "properties": { "volumeOptions": { "description": "The volume label based option for disk exclusion.", "type": "array", "items": { "$ref": "#/definitions/InMageVolumeExclusionOptions" } }, "diskSignatureOptions": { "description": "The guest disk signature based option for disk exclusion.", "type": "array", "items": { "$ref": "#/definitions/InMageDiskSignatureExclusionOptions" } } } }, "InMageVolumeExclusionOptions": { "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", "type": "object", "properties": { "volumeLabel": { "description": "The volume label. The disk having any volume with this label will be excluded from replication.", "type": "string" }, "OnlyExcludeIfSingleVolume": { "description": "The value indicating whether to exclude multi volume disk or not. If a disk has multiple volumes and one of the volume has label matching with VolumeLabel this disk will be excluded from replication if OnlyExcludeIfSingleVolume is false.", "type": "string" } } }, "InMageDiskSignatureExclusionOptions": { "description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.", "type": "object", "properties": { "diskSignature": { "description": "The guest signature of disk to be excluded from replication.", "type": "string" } } }, "A2AReprotectInput": { "description": "Azure specific reprotect input.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReverseReplicationProviderSpecificInput" } ], "properties": { "recoveryContainerId": { "description": "The recovery container Id.", "type": "string" }, "vmDisks": { "description": "The list of vm disk details.", "type": "array", "items": { "$ref": "#/definitions/A2AVmDiskInputDetails" } }, "recoveryResourceGroupId": { "description": "The recovery resource group Id. Valid for V2 scenarios.", "type": "string" }, "recoveryCloudServiceId": { "description": "The recovery cloud service Id. Valid for V1 scenarios.", "type": "string" }, "recoveryAvailabilitySetId": { "description": "The recovery availability set.", "type": "string" }, "policyId": { "description": "The Policy Id.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "A2AVmDiskInputDetails": { "description": "Azure VM disk input details.", "type": "object", "properties": { "diskUri": { "description": "The disk Uri.", "type": "string" }, "recoveryAzureStorageAccountId": { "description": "The recovery VHD storage account Id.", "type": "string" }, "primaryStagingAzureStorageAccountId": { "description": "The primary staging storage account Id.", "type": "string" } } }, "HyperVReplicaAzureApplyRecoveryPointInput": { "description": "ApplyRecoveryPoint input specific to HyperVReplicaAzure provider.", "type": "object", "allOf": [ { "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" } ], "properties": { "vaultLocation": { "description": "The vault location where the recovery Vm resides.", "type": "string" }, "primaryKekCertificatePfx": { "description": "The primary kek certificate pfx.", "type": "string" }, "secondaryKekCertificatePfx": { "description": "The secondary kek certificate pfx.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "InMageAzureV2ApplyRecoveryPointInput": { "description": "ApplyRecoveryPoint input specific to InMageAzureV2 provider.", "type": "object", "allOf": [ { "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" } ], "properties": { "vaultLocation": { "description": "The vault location where the recovery Vm resides.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "A2AApplyRecoveryPointInput": { "description": "ApplyRecoveryPoint input specific to A2A provider.", "type": "object", "allOf": [ { "$ref": "#/definitions/ApplyRecoveryPointProviderSpecificInput" } ], "properties": {}, "x-ms-discriminator-value": "A2A" }, "JobTaskDetails": { "description": "This class represents a task which is actually a workflow so that one can navigate to its individual drill down.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "jobTask": { "$ref": "#/definitions/JobEntity", "description": "The job entity." } }, "x-ms-discriminator-value": "JobTaskDetails" }, "JobEntity": { "description": "This class contains the minimal job details required to navigate to the desired drill down.", "type": "object", "properties": { "jobId": { "description": "The job id.", "type": "string" }, "jobFriendlyName": { "description": "The job display name.", "type": "string" }, "targetObjectId": { "description": "The object id.", "type": "string" }, "targetObjectName": { "description": "The object name.", "type": "string" }, "targetInstanceType": { "description": "The workflow affected object type.", "type": "string" }, "jobScenarioName": { "description": "The job name. Enum type ScenarioName.", "type": "string" } } }, "VirtualMachineTaskDetails": { "description": "This class represents the virtual machine task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "skippedReason": { "description": "The skipped reason.", "type": "string" }, "skippedReasonString": { "description": "The skipped reason string.", "type": "string" }, "jobTask": { "$ref": "#/definitions/JobEntity", "description": "The job entity." } }, "x-ms-discriminator-value": "VirtualMachineTaskDetails" }, "FabricReplicationGroupTaskDetails": { "description": "This class represents the fabric replication group task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "skippedReason": { "description": "The skipped reason.", "type": "string" }, "skippedReasonString": { "description": "The skipped reason string.", "type": "string" }, "jobTask": { "$ref": "#/definitions/JobEntity", "description": "The job entity." } }, "x-ms-discriminator-value": "FabricReplicationGroupTaskDetails" }, "ManualActionTaskDetails": { "description": "This class represents the manual action task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "name": { "description": "The name.", "type": "string" }, "instructions": { "description": "The instructions.", "type": "string" }, "observation": { "description": "The observation.", "type": "string" } }, "x-ms-discriminator-value": "ManualActionTaskDetails" }, "ScriptActionTaskDetails": { "description": "This class represents the script action task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "name": { "description": "The name.", "type": "string" }, "path": { "description": "The path.", "type": "string" }, "output": { "description": "The output.", "type": "string" }, "isPrimarySideScript": { "description": "A value indicating whether it is a primary side script or not.", "type": "boolean" } }, "x-ms-discriminator-value": "ScriptActionTaskDetails" }, "VmNicUpdatesTaskDetails": { "description": "This class represents the vm NicUpdates task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "vmId": { "description": "Virtual machine Id.", "type": "string" }, "nicId": { "description": "Nic Id.", "type": "string" }, "name": { "description": "Name of the Nic.", "type": "string" } }, "x-ms-discriminator-value": "VmNicUpdatesTaskDetails" }, "ConsistencyCheckTaskDetails": { "description": "This class contains monitoring details of all the inconsistent Protected Entities in Vmm.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "vmDetails": { "description": "The list of inconsistent Vm details.", "type": "array", "items": { "$ref": "#/definitions/InconsistentVmDetails" } } }, "x-ms-discriminator-value": "ConsistencyCheckTaskDetails" }, "InconsistentVmDetails": { "description": "This class stores the monitoring details for consistency check of inconsistent Protected Entity.", "type": "object", "properties": { "vmName": { "description": "The Vm name.", "type": "string" }, "cloudName": { "description": "The Cloud name.", "type": "string" }, "details": { "description": "The list of details regarding state of the Protected Entity in SRS and On prem.", "type": "array", "items": { "type": "string" } }, "errorIds": { "description": "The list of error ids.", "type": "array", "items": { "type": "string" } } } }, "AutomationRunbookTaskDetails": { "description": "This class represents the task details for an automation runbook.", "type": "object", "allOf": [ { "$ref": "#/definitions/TaskTypeDetails" } ], "properties": { "name": { "description": "The recovery plan task name.", "type": "string" }, "cloudServiceName": { "description": "The cloud service of the automation runbook account.", "type": "string" }, "subscriptionId": { "description": "The subscription Id of the automation runbook account.", "type": "string" }, "accountName": { "description": "The automation account name of the runbook.", "type": "string" }, "runbookId": { "description": "The runbook Id.", "type": "string" }, "runbookName": { "description": "The runbook name.", "type": "string" }, "jobId": { "description": "The job Id of the runbook execution.", "type": "string" }, "jobOutput": { "description": "The execution output of the runbook.", "type": "string" }, "isPrimarySideScript": { "description": "A value indicating whether it is a primary side script or not.", "type": "boolean" } }, "x-ms-discriminator-value": "AutomationRunbookTaskDetails" }, "InlineWorkflowTaskDetails": { "description": "This class represents the inline workflow task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/GroupTaskDetails" } ], "properties": { "workflowIds": { "description": "The list of child workflow ids.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "InlineWorkflowTaskDetails" }, "RecoveryPlanGroupTaskDetails": { "description": "This class represents the recovery plan group task.", "type": "object", "allOf": [ { "$ref": "#/definitions/GroupTaskDetails" } ], "properties": { "name": { "description": "The name.", "type": "string" }, "groupId": { "description": "The group identifier.", "type": "string" }, "rpGroupType": { "description": "The group type.", "type": "string" } }, "x-ms-discriminator-value": "RecoveryPlanGroupTaskDetails" }, "RecoveryPlanShutdownGroupTaskDetails": { "description": "This class represents the recovery plan shutdown group task details.", "type": "object", "allOf": [ { "$ref": "#/definitions/GroupTaskDetails" } ], "properties": { "name": { "description": "The name.", "type": "string" }, "groupId": { "description": "The group identifier.", "type": "string" }, "rpGroupType": { "description": "The group type.", "type": "string" } }, "x-ms-discriminator-value": "RecoveryPlanShutdownGroupTaskDetails" }, "AsrJobDetails": { "description": "This class represents job details based on specific job type.", "type": "object", "allOf": [ { "$ref": "#/definitions/JobDetails" } ], "properties": {}, "x-ms-discriminator-value": "AsrJobDetails" }, "TestFailoverJobDetails": { "description": "This class represents the details for a test failover job.", "type": "object", "allOf": [ { "$ref": "#/definitions/JobDetails" } ], "properties": { "testFailoverStatus": { "description": "The test failover status.", "type": "string" }, "comments": { "description": "The test failover comments.", "type": "string" }, "networkName": { "description": "The test network name.", "type": "string" }, "networkFriendlyName": { "description": "The test network friendly name.", "type": "string" }, "networkType": { "description": "The test network type (see TestFailoverInput enum for possible values).", "type": "string" }, "protectedItemDetails": { "description": "The test VM details.", "type": "array", "items": { "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" } } }, "x-ms-discriminator-value": "TestFailoverJobDetails" }, "FailoverReplicationProtectedItemDetails": { "description": "Failover details for a replication protected item.", "type": "object", "properties": { "name": { "description": "The name.", "type": "string" }, "friendlyName": { "description": "The friendly name.", "type": "string" }, "testVmName": { "description": "The test Vm name.", "type": "string" }, "testVmFriendlyName": { "description": "The test Vm friendly name.", "type": "string" }, "networkConnectionStatus": { "description": "The network connection status.", "type": "string" }, "networkFriendlyName": { "description": "The network friendly name.", "type": "string" }, "subnet": { "description": "The network subnet.", "type": "string" }, "recoveryPointId": { "description": "The recovery point Id.", "type": "string" }, "recoveryPointTime": { "format": "date-time", "description": "The recovery point time.", "type": "string" } } }, "FailoverJobDetails": { "description": "This class represents the details for a failover job.", "type": "object", "allOf": [ { "$ref": "#/definitions/JobDetails" } ], "properties": { "protectedItemDetails": { "description": "The test VM details.", "type": "array", "items": { "$ref": "#/definitions/FailoverReplicationProtectedItemDetails" } } }, "x-ms-discriminator-value": "FailoverJobDetails" }, "ExportJobDetails": { "description": "This class represents details for export jobs workflow.", "type": "object", "allOf": [ { "$ref": "#/definitions/JobDetails" } ], "properties": { "blobUri": { "description": "BlobUri of the exported jobs.", "type": "string" }, "sasToken": { "description": "The sas token to access blob.", "type": "string" } }, "x-ms-discriminator-value": "ExportJobDetails" }, "SwitchProtectionJobDetails": { "description": "This class represents details for switch protection job.", "type": "object", "allOf": [ { "$ref": "#/definitions/JobDetails" } ], "properties": { "newReplicationProtectedItemId": { "description": "ARM Id of the new replication protected item.", "type": "string" } }, "x-ms-discriminator-value": "SwitchProtectionJobDetails" }, "A2AContainerCreationInput": { "description": "A2A cloud creation input.", "type": "object", "allOf": [ { "$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput" } ], "properties": {}, "x-ms-discriminator-value": "A2A" }, "A2ASwitchProtectionInput": { "description": "A2A specific switch protection input.", "type": "object", "allOf": [ { "$ref": "#/definitions/SwitchProtectionProviderSpecificInput" } ], "properties": { "recoveryContainerId": { "description": "The recovery container Id.", "type": "string" }, "vmDisks": { "description": "The list of vm disk details.", "type": "array", "items": { "$ref": "#/definitions/A2AVmDiskInputDetails" } }, "vmManagedDisks": { "description": "The list of vm managed disk details.", "type": "array", "items": { "$ref": "#/definitions/A2AVmManagedDiskInputDetails" } }, "recoveryResourceGroupId": { "description": "The recovery resource group Id. Valid for V2 scenarios.", "type": "string" }, "recoveryCloudServiceId": { "description": "The recovery cloud service Id. Valid for V1 scenarios.", "type": "string" }, "recoveryAvailabilitySetId": { "description": "The recovery availability set.", "type": "string" }, "policyId": { "description": "The Policy Id.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "HyperVReplicaAzurePolicyDetails": { "description": "Hyper-V Replica Azure specific protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointHistoryDurationInHours": { "format": "int32", "description": "The duration (in hours) to which point the recovery history needs to be maintained.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", "type": "integer" }, "replicationInterval": { "format": "int32", "description": "The replication interval.", "type": "integer" }, "onlineReplicationStartTime": { "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", "type": "string" }, "encryption": { "description": "A value indicating whether encryption is enabled for virtual machines in this cloud.", "type": "string" }, "activeStorageAccountId": { "description": "The active storage account Id.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "HyperVReplicaBasePolicyDetails": { "description": "Base class for HyperVReplica policy details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPoints": { "format": "int32", "description": "A value indicating the number of recovery points.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "A value indicating the application consistent frequency.", "type": "integer" }, "compression": { "description": "A value indicating whether compression has to be enabled.", "type": "string" }, "initialReplicationMethod": { "description": "A value indicating whether IR is online.", "type": "string" }, "onlineReplicationStartTime": { "description": "A value indicating the online IR start time.", "type": "string" }, "offlineReplicationImportPath": { "description": "A value indicating the offline IR import path.", "type": "string" }, "offlineReplicationExportPath": { "description": "A value indicating the offline IR export path.", "type": "string" }, "replicationPort": { "format": "int32", "description": "A value indicating the recovery HTTPS port.", "type": "integer" }, "allowedAuthenticationType": { "format": "int32", "description": "A value indicating the authentication type.", "type": "integer" }, "replicaDeletionOption": { "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplicaBasePolicyDetails" }, "HyperVReplicaPolicyDetails": { "description": "Hyper-V Replica Blue specific protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPoints": { "format": "int32", "description": "A value indicating the number of recovery points.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "A value indicating the application consistent frequency.", "type": "integer" }, "compression": { "description": "A value indicating whether compression has to be enabled.", "type": "string" }, "initialReplicationMethod": { "description": "A value indicating whether IR is online.", "type": "string" }, "onlineReplicationStartTime": { "description": "A value indicating the online IR start time.", "type": "string" }, "offlineReplicationImportPath": { "description": "A value indicating the offline IR import path.", "type": "string" }, "offlineReplicationExportPath": { "description": "A value indicating the offline IR export path.", "type": "string" }, "replicationPort": { "format": "int32", "description": "A value indicating the recovery HTTPS port.", "type": "integer" }, "allowedAuthenticationType": { "format": "int32", "description": "A value indicating the authentication type.", "type": "integer" }, "replicaDeletionOption": { "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012" }, "HyperVReplicaBluePolicyDetails": { "description": "Hyper-V Replica Blue specific protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "replicationFrequencyInSeconds": { "format": "int32", "description": "A value indicating the replication interval.", "type": "integer" }, "recoveryPoints": { "format": "int32", "description": "A value indicating the number of recovery points.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "A value indicating the application consistent frequency.", "type": "integer" }, "compression": { "description": "A value indicating whether compression has to be enabled.", "type": "string" }, "initialReplicationMethod": { "description": "A value indicating whether IR is online.", "type": "string" }, "onlineReplicationStartTime": { "description": "A value indicating the online IR start time.", "type": "string" }, "offlineReplicationImportPath": { "description": "A value indicating the offline IR import path.", "type": "string" }, "offlineReplicationExportPath": { "description": "A value indicating the offline IR export path.", "type": "string" }, "replicationPort": { "format": "int32", "description": "A value indicating the recovery HTTPS port.", "type": "integer" }, "allowedAuthenticationType": { "format": "int32", "description": "A value indicating the authentication type.", "type": "integer" }, "replicaDeletionOption": { "description": "A value indicating whether the VM has to be auto deleted. Supported Values: String.Empty, None, OnRecoveryCloud", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012R2" }, "InMageBasePolicyDetails": { "description": "Base class for the policies of providers using InMage replication.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled.", "type": "string" } }, "x-ms-discriminator-value": "InMageBasePolicyDetails" }, "InMageAzureV2PolicyDetails": { "description": "InMage Azure v2 specific protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency in minutes.", "type": "integer" }, "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMagePolicyDetails": { "description": "InMage specific protection profile details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled.", "type": "string" } }, "x-ms-discriminator-value": "InMage" }, "A2APolicyDetails": { "description": "A2A specific policy details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled.", "type": "string" }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency in minutes.", "type": "integer" } }, "x-ms-discriminator-value": "A2A" }, "RcmAzureMigrationPolicyDetails": { "description": "RCM based Azure migration specific policy details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled.", "enum": [ "Enabled", "Disabled" ], "type": "string", "x-ms-enum": { "name": "MultiVmSyncStatus", "modelAsString": false } }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency in minutes.", "type": "integer" } }, "x-ms-discriminator-value": "RcmAzureMigration" }, "VmwareCbtPolicyDetails": { "description": "VMware Cbt specific policy details.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificDetails" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency in minutes.", "type": "integer" }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency in minutes.", "type": "integer" } }, "x-ms-discriminator-value": "VMwareCbt" }, "HyperVReplicaAzurePolicyInput": { "description": "Hyper-V Replica Azure specific input for creating a protection profile.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPointHistoryDuration": { "format": "int32", "description": "The duration (in hours) to which point the recovery history needs to be maintained.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.", "type": "integer" }, "replicationInterval": { "format": "int32", "description": "The replication interval.", "type": "integer" }, "onlineReplicationStartTime": { "description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.", "type": "string" }, "encryption": { "description": "A value indicating whether encryption needs to be enabled for Vms in this cloud.", "type": "string" }, "storageAccounts": { "description": "The list of storage accounts to which the VMs in the primary cloud can replicate to.", "type": "array", "items": { "type": "string" } } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "HyperVReplicaPolicyInput": { "description": "Hyper-V Replica specific protection profile Input.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPoints": { "format": "int32", "description": "A value indicating the number of recovery points.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "A value indicating the application consistent frequency.", "type": "integer" }, "compression": { "description": "A value indicating whether compression has to be enabled.", "type": "string" }, "initialReplicationMethod": { "description": "A value indicating whether IR is online.", "type": "string" }, "onlineReplicationStartTime": { "description": "A value indicating the online IR start time.", "type": "string" }, "offlineReplicationImportPath": { "description": "A value indicating the offline IR import path.", "type": "string" }, "offlineReplicationExportPath": { "description": "A value indicating the offline IR export path.", "type": "string" }, "replicationPort": { "format": "int32", "description": "A value indicating the recovery HTTPS port.", "type": "integer" }, "allowedAuthenticationType": { "format": "int32", "description": "A value indicating the authentication type.", "type": "integer" }, "replicaDeletion": { "description": "A value indicating whether the VM has to be auto deleted.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012" }, "HyperVReplicaBluePolicyInput": { "description": "HyperV Replica Blue policy input.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "replicationFrequencyInSeconds": { "format": "int32", "description": "A value indicating the replication interval.", "type": "integer" }, "recoveryPoints": { "format": "int32", "description": "A value indicating the number of recovery points.", "type": "integer" }, "applicationConsistentSnapshotFrequencyInHours": { "format": "int32", "description": "A value indicating the application consistent frequency.", "type": "integer" }, "compression": { "description": "A value indicating whether compression has to be enabled.", "type": "string" }, "initialReplicationMethod": { "description": "A value indicating whether IR is online.", "type": "string" }, "onlineReplicationStartTime": { "description": "A value indicating the online IR start time.", "type": "string" }, "offlineReplicationImportPath": { "description": "A value indicating the offline IR import path.", "type": "string" }, "offlineReplicationExportPath": { "description": "A value indicating the offline IR export path.", "type": "string" }, "replicationPort": { "format": "int32", "description": "A value indicating the recovery HTTPS port.", "type": "integer" }, "allowedAuthenticationType": { "format": "int32", "description": "A value indicating the authentication type.", "type": "integer" }, "replicaDeletion": { "description": "A value indicating whether the VM has to be auto deleted.", "type": "string" } }, "x-ms-discriminator-value": "HyperVReplica2012R2" }, "InMageAzureV2PolicyInput": { "description": "VMWare Azure specific protection profile Input.", "required": [ "multiVmSyncStatus" ], "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency (in minutes).", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency (in minutes).", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", "enum": [ "Enable", "Disable" ], "type": "string", "x-ms-enum": { "name": "SetMultiVmSyncStatus", "modelAsString": false } } }, "x-ms-discriminator-value": "InMageAzureV2" }, "InMagePolicyInput": { "description": "VMWare Azure specific protection profile Input.", "required": [ "multiVmSyncStatus" ], "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPointThresholdInMinutes": { "format": "int32", "description": "The recovery point threshold in minutes.", "type": "integer" }, "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency (in minutes).", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", "enum": [ "Enable", "Disable" ], "type": "string", "x-ms-enum": { "name": "SetMultiVmSyncStatus", "modelAsString": false } } }, "x-ms-discriminator-value": "InMage" }, "A2APolicyCreationInput": { "description": "A2A Policy creation input.", "required": [ "multiVmSyncStatus" ], "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency (in minutes).", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency (in minutes).", "type": "integer" }, "multiVmSyncStatus": { "description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.", "enum": [ "Enable", "Disable" ], "type": "string", "x-ms-enum": { "name": "SetMultiVmSyncStatus", "modelAsString": false } } }, "x-ms-discriminator-value": "A2A" }, "VMwareCbtPolicyCreationInput": { "description": "VMware Cbt Policy creation input.", "type": "object", "allOf": [ { "$ref": "#/definitions/PolicyProviderSpecificInput" } ], "properties": { "recoveryPointHistory": { "format": "int32", "description": "The duration in minutes until which the recovery points need to be stored.", "type": "integer" }, "crashConsistentFrequencyInMinutes": { "format": "int32", "description": "The crash consistent snapshot frequency (in minutes).", "type": "integer" }, "appConsistentFrequencyInMinutes": { "format": "int32", "description": "The app consistent snapshot frequency (in minutes).", "type": "integer" } }, "x-ms-discriminator-value": "VMwareCbt" }, "RecoveryPlanScriptActionDetails": { "description": "Recovery plan script action details.", "required": [ "path", "fabricLocation" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanActionDetails" } ], "properties": { "path": { "description": "The script path.", "type": "string" }, "timeout": { "description": "The script timeout.", "type": "string" }, "fabricLocation": { "description": "The fabric location.", "enum": [ "Primary", "Recovery" ], "type": "string", "x-ms-enum": { "name": "RecoveryPlanActionLocation", "modelAsString": false } } }, "x-ms-discriminator-value": "ScriptActionDetails" }, "RecoveryPlanAutomationRunbookActionDetails": { "description": "Recovery plan Automation runbook action details.", "required": [ "fabricLocation" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanActionDetails" } ], "properties": { "runbookId": { "description": "The runbook ARM Id.", "type": "string" }, "timeout": { "description": "The runbook timeout.", "type": "string" }, "fabricLocation": { "description": "The fabric location.", "enum": [ "Primary", "Recovery" ], "type": "string", "x-ms-enum": { "name": "RecoveryPlanActionLocation", "modelAsString": false } } }, "x-ms-discriminator-value": "AutomationRunbookActionDetails" }, "RecoveryPlanManualActionDetails": { "description": "Recovery plan manual action details.", "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanActionDetails" } ], "properties": { "description": { "description": "The manual action description.", "type": "string" } }, "x-ms-discriminator-value": "ManualActionDetails" }, "RecoveryPlanHyperVReplicaAzureFailoverInput": { "description": "Recovery plan HVR Azure failover input.", "required": [ "vaultLocation" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } ], "properties": { "vaultLocation": { "description": "The vault location.", "type": "string" }, "primaryKekCertificatePfx": { "description": "The primary KEK certificate PFX.", "type": "string" }, "secondaryKekCertificatePfx": { "description": "The secondary KEK certificate PFX.", "type": "string" }, "recoveryPointType": { "description": "The recovery point type.", "enum": [ "Latest", "LatestApplicationConsistent", "LatestProcessed" ], "type": "string", "x-ms-enum": { "name": "HyperVReplicaAzureRpRecoveryPointType", "modelAsString": false } } }, "x-ms-discriminator-value": "HyperVReplicaAzure" }, "RecoveryPlanHyperVReplicaAzureFailbackInput": { "description": "Recovery plan HVR Azure failback input.", "required": [ "dataSyncOption", "recoveryVmCreationOption" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } ], "properties": { "dataSyncOption": { "description": "The data sync option.", "enum": [ "ForDownTime", "ForSynchronization" ], "type": "string", "x-ms-enum": { "name": "DataSyncStatus", "modelAsString": false } }, "recoveryVmCreationOption": { "description": "The ALR option.", "enum": [ "CreateVmIfNotFound", "NoAction" ], "type": "string", "x-ms-enum": { "name": "AlternateLocationRecoveryOption", "modelAsString": false } } }, "x-ms-discriminator-value": "HyperVReplicaAzureFailback" }, "RecoveryPlanInMageAzureV2FailoverInput": { "description": "Recovery plan InMageAzureV2 failover input.", "required": [ "vaultLocation", "recoveryPointType" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } ], "properties": { "vaultLocation": { "description": "The vault location.", "type": "string" }, "recoveryPointType": { "description": "The recovery point type.", "enum": [ "Latest", "LatestApplicationConsistent", "LatestCrashConsistent", "LatestProcessed" ], "type": "string", "x-ms-enum": { "name": "InMageV2RpRecoveryPointType", "modelAsString": false } }, "useMultiVmSyncPoint": { "description": "A value indicating whether multi VM sync enabled VMs should use multi VM sync points for failover.", "type": "string" } }, "x-ms-discriminator-value": "InMageAzureV2" }, "RecoveryPlanInMageFailoverInput": { "description": "Recovery plan InMage failover input.", "required": [ "recoveryPointType" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } ], "properties": { "recoveryPointType": { "description": "The recovery point type.", "enum": [ "LatestTime", "LatestTag", "Custom" ], "type": "string", "x-ms-enum": { "name": "RpInMageRecoveryPointType", "modelAsString": false } } }, "x-ms-discriminator-value": "InMage" }, "RecoveryPlanA2AFailoverInput": { "description": "Recovery plan A2A failover input.", "required": [ "recoveryPointType" ], "type": "object", "allOf": [ { "$ref": "#/definitions/RecoveryPlanProviderSpecificFailoverInput" } ], "properties": { "recoveryPointType": { "description": "The recovery point type.", "enum": [ "Latest", "LatestApplicationConsistent", "LatestCrashConsistent", "LatestProcessed" ], "type": "string", "x-ms-enum": { "name": "A2ARpRecoveryPointType", "modelAsString": false } }, "cloudServiceCreationOption": { "description": "A value indicating whether to use recovery cloud service for TFO or not.", "type": "string" } }, "x-ms-discriminator-value": "A2A" }, "AzureFabricCreationInput": { "description": "Fabric provider specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificCreationInput" } ], "properties": { "location": { "description": "The Location.", "type": "string" } }, "x-ms-discriminator-value": "Azure" }, "VMwareV2FabricCreationInput": { "description": "Fabric provider specific settings.", "type": "object", "allOf": [ { "$ref": "#/definitions/FabricSpecificCreationInput" } ], "properties": {}, "x-ms-discriminator-value": "VMwareV2" } }, "parameters": { "SubscriptionId": { "name": "subscriptionId", "in": "path", "description": "The subscription Id.", "required": true, "type": "string" }, "ResourceGroupName": { "name": "resourceGroupName", "in": "path", "description": "The name of the resource group where the recovery services vault is present.", "required": true, "type": "string", "x-ms-parameter-location": "client" }, "ResourceName": { "name": "resourceName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string", "x-ms-parameter-location": "client" }, "ApiVersion": { "name": "api-version", "in": "query", "description": "Client Api Version.", "required": true, "type": "string" } }, "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." } } }, "security": [ { "azure_auth": [ "user_impersonation" ] } ] }