{ "swagger": "2.0", "info": { "title": "Recovery Services Backup Client", "version": "2026-03-31-preview", "description": "Open API 2.0 Specs for Azure RecoveryServices Backup service", "x-typespec-generated": [ { "emitter": "@azure-tools/typespec-autorest" } ] }, "schemes": [ "https" ], "host": "management.azure.com", "produces": [ "application/json" ], "consumes": [ "application/json" ], "security": [ { "azure_auth": [ "user_impersonation" ] } ], "securityDefinitions": { "azure_auth": { "type": "oauth2", "description": "Azure Active Directory OAuth2 Flow.", "flow": "implicit", "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", "scopes": { "user_impersonation": "impersonate your user account" } } }, "tags": [ { "name": "Operations" }, { "name": "BackupResourceStorageConfigsNonCRR" }, { "name": "BMSPrepareDataMoveOperationResult" }, { "name": "BackupResourceConfigOperationStatuses" }, { "name": "ProtectionIntentResources" }, { "name": "BackupResourceVaultConfigs" }, { "name": "BackupResourceEncryptionConfigs" }, { "name": "PrivateEndpointConnectionResources" }, { "name": "PrivateEndpointOperationStatuses" }, { "name": "ProtectedItems" }, { "name": "Backups" }, { "name": "RecoveryPointsRecommendedForMove" }, { "name": "ProtectedItemOperationStatuses" }, { "name": "ProtectedItemOperationResults" }, { "name": "ProtectionContainers" }, { "name": "BackupWorkloadItems" }, { "name": "ProtectionContainerOperationResults" }, { "name": "RecoveryPoints" }, { "name": "Restores" }, { "name": "ItemLevelRecoveryConnections" }, { "name": "ProtectionPolicies" }, { "name": "BackupPolicies" }, { "name": "ProtectionPolicyOperationResults" }, { "name": "ProtectionPolicyOperationStatuses" }, { "name": "JobDetails" }, { "name": "BackupJobs" }, { "name": "JobCancellations" }, { "name": "JobOperationResults" }, { "name": "ExportJobsOperationResults" }, { "name": "BackupEngines" }, { "name": "ResourceGuardProxy" }, { "name": "ResourceGuardProxies" }, { "name": "CrossTenantVaultMappings" }, { "name": "CrossTenantVaultMappingStatus" }, { "name": "CrossTenant" }, { "name": "BackupProtectedItemsFromCrossTenantVault" }, { "name": "ProtectedItemFromCrossTenantVault" }, { "name": "CrossTenantVaultRecoveryPoints" }, { "name": "CrossTenantVaultRecoveryPoint" }, { "name": "RestoresFromCrossTenantVault" }, { "name": "ProtectedItemOperationResultsFromCrossTenantVault" }, { "name": "ProtectedItemOperationStatusesFromCrossTenantVault" }, { "name": "BackupJobsFromCrossTenantVault" }, { "name": "JobDetailsFromCrossTenantVault" }, { "name": "OperationFromCrossTenantVault" }, { "name": "ValidateOperationFromCrossTenantVault" }, { "name": "ValidateOperationResultFromCrossTenantVault" }, { "name": "ValidateOperationStatusFromCrossTenantVault" }, { "name": "CrossTenantVaultCredential" }, { "name": "CrossTenantVaultCredentialOperationResults" }, { "name": "CrossTenantVaultCredentialOperationStatuses" }, { "name": "ProtectionIntent" }, { "name": "BackupStatus" }, { "name": "FeatureSupport" }, { "name": "BackupProtectionIntent" }, { "name": "BackupUsageSummaries" }, { "name": "Jobs" }, { "name": "BackupProtectedItems" }, { "name": "Operation" }, { "name": "ValidateOperation" }, { "name": "ValidateOperationResults" }, { "name": "ValidateOperationStatuses" }, { "name": "ProtectionContainerRefreshOperationResults" }, { "name": "ProtectableContainers" }, { "name": "BackupOperationResults" }, { "name": "BackupOperationStatuses" }, { "name": "BackupProtectableItems" }, { "name": "BackupProtectionContainers" }, { "name": "SoftDeletedContainers" }, { "name": "SecurityPINs" }, { "name": "FetchTieringCost" }, { "name": "GetTieringCostOperationResult" }, { "name": "TieringCostOperationStatus" } ], "paths": { "/providers/Microsoft.RecoveryServices/operations": { "get": { "operationId": "Operations_List", "tags": [ "Operations" ], "description": "List the operations for the provider", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ClientDiscoveryResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "ListOperations": { "$ref": "./examples/ListOperations.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection": { "post": { "operationId": "ProtectionIntent_Validate", "tags": [ "ProtectionIntent" ], "summary": "It will validate followings\n1. Vault capacity\n2. VM is already protected\n3. Any VM related configuration passed in properties.", "description": "It will validate followings\n1. Vault capacity\n2. VM is already protected\n3. Any VM related configuration passed in properties.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "azureRegion", "in": "path", "description": "Azure region to hit Api", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "parameters", "in": "body", "description": "Enable backup validation request on Virtual Machine", "required": true, "schema": { "$ref": "#/definitions/PreValidateEnableBackupRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/PreValidateEnableBackupResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Validate Enable Protection on Azure Vm": { "$ref": "./examples/AzureIaasVm/ProtectionIntent_Validate.json" } } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus": { "post": { "operationId": "BackupStatus_Get", "tags": [ "BackupStatus" ], "summary": "Get the container backup status", "description": "Get the container backup status", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "azureRegion", "in": "path", "description": "Azure region to hit Api", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "parameters", "in": "body", "description": "Container Backup Status Request", "required": true, "schema": { "$ref": "#/definitions/BackupStatusRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupStatusResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Azure Virtual Machine Backup Status": { "$ref": "./examples/AzureIaasVm/GetBackupStatus.json" } } } }, "/subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures": { "post": { "operationId": "FeatureSupport_Validate", "tags": [ "FeatureSupport" ], "summary": "It will validate if given feature with resource properties is supported in service", "description": "It will validate if given feature with resource properties is supported in service", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "azureRegion", "in": "path", "description": "Azure region to hit Api", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "parameters", "in": "body", "description": "Feature support request object", "required": true, "schema": { "$ref": "#/definitions/FeatureSupportRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/AzureVMResourceFeatureSupportResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Check Azure Vm Backup Feature Support": { "$ref": "./examples/AzureIaasVm/BackupFeature_Validate.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappingStatus": { "post": { "operationId": "CrossTenantVaultMappingStatus_Check", "tags": [ "CrossTenantVaultMappingStatus", "CrossTenant" ], "description": "Gets the mapping status of the vault for cross-tenant restore operations.\nReturns the mapping status that indicates whether the vault is properly configured for cross-tenant operations.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantVaultMappingStatusResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Check Vault Mapping Status": { "$ref": "./examples/CrossTenantVaultMappingOperations/CheckVaultMappingStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings": { "get": { "operationId": "CrossTenantVaultMappings_List", "tags": [ "CrossTenantVaultMappings" ], "description": "Lists the cross-tenant vault mapping configurations for cross-tenant restore operations.\nRetrieves the current cross-tenant vault mapping details including source vault mappings and mapping state.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantVaultMappingListResult" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Cross Tenant Vault Mappings": { "$ref": "./examples/CrossTenantVaultMappingOperations/ListCrossTenantVaultMappings.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}": { "get": { "operationId": "CrossTenantVaultMappings_Get", "tags": [ "CrossTenantVaultMappings" ], "description": "Gets the cross-tenant vault mapping by name.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantVaultMapping" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross Tenant Vault Mapping": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetCrossTenantVaultMapping.json" } } }, "put": { "operationId": "CrossTenantVaultMappings_CreateOrUpdate", "tags": [ "CrossTenantVaultMappings" ], "description": "Creates or updates the cross-tenant vault mapping for cross-tenant restore operations.\nThis API updates the target vault properties with source vault ID and creates catalog mapping.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$" }, { "name": "resource", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/CrossTenantVaultMapping" } } ], "responses": { "200": { "description": "Resource 'CrossTenantVaultMapping' update operation succeeded", "schema": { "$ref": "#/definitions/CrossTenantVaultMapping" } }, "201": { "description": "Resource 'CrossTenantVaultMapping' create operation succeeded", "schema": { "$ref": "#/definitions/CrossTenantVaultMapping" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create Cross Tenant Vault Mapping": { "$ref": "./examples/CrossTenantVaultMappingOperations/CreateCrossTenantVaultMapping.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { "get": { "operationId": "ProtectedItemFromCrossTenantVault_Get", "tags": [ "ProtectedItemFromCrossTenantVault", "CrossTenant" ], "description": "Gets the details of a protected item from a cross-tenant vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectedItemResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Item From Cross-Tenant Vault": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetProtectedItemFromCrossTenantVault.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationResults/{operationId}": { "get": { "operationId": "ProtectedItemOperationResultsFromCrossTenantVault_Get", "tags": [ "ProtectedItemOperationResultsFromCrossTenantVault", "CrossTenant" ], "description": "Fetches the result of any cross-tenant operation on the backup item.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "$ref": "#/parameters/CrossTenantProtectedItemParentParameters.protectedItemName" }, { "name": "operationId", "in": "path", "description": "OperationID which represents the operation whose result needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectedItemResource" } }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross-Tenant Operation Result": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetCrossTenantOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationsStatus/{operationId}": { "get": { "operationId": "ProtectedItemOperationStatusesFromCrossTenantVault_Get", "tags": [ "ProtectedItemOperationStatusesFromCrossTenantVault", "CrossTenant" ], "description": "Fetches the status of a cross-tenant operation such as triggering a restore.\nThe status can be in progress, completed or failed.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "$ref": "#/parameters/CrossTenantProtectedItemParentParameters.protectedItemName" }, { "name": "operationId", "in": "path", "description": "OperationID represents the operation whose status needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross-Tenant Operation Status": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetCrossTenantOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints": { "get": { "operationId": "CrossTenantVaultRecoveryPoints_List", "tags": [ "CrossTenantVaultRecoveryPoints", "CrossTenant" ], "description": "Lists recovery points from the source vault in a different tenant.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "$ref": "#/parameters/CrossTenantProtectedItemParentParameters.protectedItemName" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantRecoveryPointResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Recovery Points From Cross-Tenant Vault": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetCrossTenantRecoveryPoints.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}": { "get": { "operationId": "CrossTenantVaultRecoveryPoint_Get", "tags": [ "CrossTenantVaultRecoveryPoint", "CrossTenant" ], "description": "Provides the information of the backed up data identified using RecoveryPointID from the source\nvault in a different tenant.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "$ref": "#/parameters/CrossTenantProtectedItemParentParameters.protectedItemName" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/RecoveryPointResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Recovery Point From Cross-Tenant Vault": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetRecoveryPointFromCrossTenantVault.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/restore": { "post": { "operationId": "RestoresFromCrossTenantVault_Trigger", "tags": [ "RestoresFromCrossTenantVault", "CrossTenant" ], "description": "Restores the specified backed up data from a source vault in a different tenant. This is an asynchronous operation.\nTo know the status of this API call, use GetProtectedItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.fabricName" }, { "$ref": "#/parameters/CrossTenantContainerParentParameters.containerName" }, { "$ref": "#/parameters/CrossTenantProtectedItemParentParameters.protectedItemName" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" }, { "name": "body", "in": "body", "description": "The content of the action request", "required": true, "schema": { "$ref": "#/definitions/RestoreRequestResource" } } ], "responses": { "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Cross-Tenant Restore": { "$ref": "./examples/CrossTenantVaultMappingOperations/TriggerCrossTenantRestore.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupJobs": { "get": { "operationId": "BackupJobsFromCrossTenantVault_List", "tags": [ "BackupJobsFromCrossTenantVault", "CrossTenant" ], "description": "Provides a pageable list of cross-tenant backup jobs.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantJobResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Cross-Tenant Jobs": { "$ref": "./examples/CrossTenantVaultMappingOperations/ListCrossTenantJobs.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupJobs/{jobName}": { "get": { "operationId": "JobDetailsFromCrossTenantVault_Get", "tags": [ "JobDetailsFromCrossTenantVault", "CrossTenant" ], "description": "Gets extended information associated with a cross-tenant backup job.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "jobName", "in": "path", "description": "Name of the job whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/JobResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross-Tenant Job Details": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetCrossTenantJobDetails.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupProtectedItems": { "get": { "operationId": "BackupProtectedItemsFromCrossTenantVault_List", "tags": [ "BackupProtectedItemsFromCrossTenantVault", "CrossTenant" ], "description": "Lists the protected items from the source vault in a different tenant.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/CrossTenantProtectedItemResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Protected Items From Cross-Tenant Vault": { "$ref": "./examples/CrossTenantVaultMappingOperations/ListCrossTenantProtectedItems.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupTriggerValidateOperation": { "post": { "operationId": "ValidateOperationFromCrossTenantVault_Trigger", "tags": [ "ValidateOperationFromCrossTenantVault", "CrossTenant" ], "description": "Triggers a validate operation for cross-tenant restore scenarios.\nThis is an asynchronous operation that performs validation checks.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$" }, { "name": "body", "in": "body", "description": "The content of the action request", "required": true, "schema": { "$ref": "#/definitions/ValidateOperationRequestResource" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ValidateOperationsResponse" } }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Cross-Tenant Validate Operation": { "$ref": "./examples/CrossTenantVaultMappingOperations/TriggerValidateOperation.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location", "final-state-schema": "#/definitions/ValidateOperationsResponse" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupValidateOperation": { "post": { "operationId": "OperationFromCrossTenantVault_Validate", "tags": [ "OperationFromCrossTenantVault", "CrossTenant" ], "description": "Validates a backup operation for cross-tenant restore scenarios.\nThis API performs validation checks before executing a backup operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$" }, { "name": "body", "in": "body", "description": "The content of the action request", "required": true, "schema": { "$ref": "#/definitions/ValidateOperationRequestResource" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ValidateOperationsResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Validate Cross-Tenant Backup Operation": { "$ref": "./examples/CrossTenantVaultMappingOperations/ValidateOperation.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupValidateOperationResults/{operationId}": { "get": { "operationId": "ValidateOperationResultFromCrossTenantVault_Get", "tags": [ "ValidateOperationResultFromCrossTenantVault", "CrossTenant" ], "description": "Gets the result of a specific validate operation for cross-tenant restore scenarios.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "operationId", "in": "path", "description": "OperationID which represents the operation whose result needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ValidateOperationsResponse" } }, "202": { "description": "Accepted", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross-Tenant Validate Operation Result": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetValidateOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/backupValidateOperationsStatuses/{operationId}": { "get": { "operationId": "ValidateOperationStatusFromCrossTenantVault_Get", "tags": [ "ValidateOperationStatusFromCrossTenantVault", "CrossTenant" ], "description": "Gets the status of a validate operation for cross-tenant restore scenarios.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "operationId", "in": "path", "description": "OperationID represents the operation whose status needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Cross-Tenant Validate Operation Status": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetValidateOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/removeCrossTenantVaultMapping": { "post": { "operationId": "CrossTenantVaultMappings_Remove", "tags": [ "CrossTenantVaultMappings" ], "description": "Removes the cross-tenant vault mapping for cross-tenant restore operations.\nThis API removes the target vault properties associated with source vault ID and deletes catalog mapping.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$" }, { "name": "body", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/RemoveCrossTenantVaultMappingRequest" } } ], "responses": { "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "204": { "description": "Action completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Remove Cross Tenant Vault Mapping": { "$ref": "./examples/CrossTenantVaultMappingOperations/RemoveCrossTenantVaultMapping.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/vaultCredentials/{certificateName}/generate": { "post": { "operationId": "CrossTenantVaultCredential_Generate", "tags": [ "CrossTenantVaultCredential", "CrossTenant" ], "description": "Generates a vault credential certificate for cross-tenant restore scenarios.\nThis is an asynchronous operation. BMS creates a TEE job that calls IDM's certificates\nendpoint for the source vault, generating a self-signed certificate registered with AAD.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "name": "certificateName", "in": "path", "description": "Name identifier for the certificate.", "required": true, "type": "string" }, { "name": "body", "in": "body", "description": "The content of the action request", "required": false, "schema": { "$ref": "#/definitions/VaultCredentialCertificateRequest" } } ], "responses": { "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Generate Cross-Tenant Vault Credential": { "$ref": "./examples/CrossTenantVaultMappingOperations/GenerateCrossTenantVaultCredential.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/vaultCredentials/{certificateName}/operationResults/{operationId}": { "get": { "operationId": "CrossTenantVaultCredentialOperationResults_Get", "tags": [ "CrossTenantVaultCredentialOperationResults", "CrossTenant" ], "description": "Gets the result of an async vault credential generation operation.\nReturns 202 Accepted while the TEE job is still in progress.\nReturns 200 OK with VaultCredentialCertificateResponse when the job completes.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantVaultCredentialParentParameters.certificateName" }, { "name": "operationId", "in": "path", "description": "Operation ID returned in the Location header of the generate call.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/VaultCredentialCertificateResponse" } }, "202": { "description": "Accepted", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Credential Operation Result": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetVaultCredentialOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupCrossTenantVaultMappings/{crossTenantVaultMappingName}/vaultCredentials/{certificateName}/operationStatus/{operationId}": { "get": { "operationId": "CrossTenantVaultCredentialOperationStatuses_Get", "tags": [ "CrossTenantVaultCredentialOperationStatuses", "CrossTenant" ], "description": "Gets the status of an async vault credential generation operation.\nReturns the current status (InProgress, Completed, Failed) and any associated job details.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.vaultName" }, { "$ref": "#/parameters/CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName" }, { "$ref": "#/parameters/CrossTenantVaultCredentialParentParameters.certificateName" }, { "name": "operationId", "in": "path", "description": "Operation ID returned in the Azure-AsyncOperation header of the generate call.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Credential Operation Status": { "$ref": "./examples/CrossTenantVaultMappingOperations/GetVaultCredentialOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupDeletedProtectionContainers": { "get": { "operationId": "DeletedProtectionContainers_List", "tags": [ "SoftDeletedContainers" ], "description": "Lists the soft deleted containers registered to Recovery Services Vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionContainerResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Backup Protection Containers": { "$ref": "./examples/AzureStorage/SoftDeletedContainers_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEncryptionConfigs/backupResourceEncryptionConfig": { "get": { "operationId": "BackupResourceEncryptionConfigs_Get", "tags": [ "BackupResourceEncryptionConfigs" ], "description": "Fetches Vault Encryption config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupResourceEncryptionConfigExtendedResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Encryption Configuration": { "$ref": "./examples/BackupResourceEncryptionConfig_Get.json" } } }, "put": { "operationId": "BackupResourceEncryptionConfigs_Update", "tags": [ "BackupResourceEncryptionConfigs" ], "description": "Updates Vault encryption config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Vault encryption input config request", "required": true, "schema": { "$ref": "#/definitions/BackupResourceEncryptionConfigResource" } } ], "responses": { "200": { "description": "The request has succeeded." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Vault Encryption Configuration": { "$ref": "./examples/BackupResourceEncryptionConfig_Put.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines": { "get": { "operationId": "BackupEngines_List", "tags": [ "BackupEngines" ], "description": "Backup management servers registered to Recovery Services Vault. Returns a pageable list of servers.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupEngineBaseResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Dpm/AzureBackupServer/Lajolla Backup Engines": { "$ref": "./examples/Dpm/BackupEngines_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupEngines/{backupEngineName}": { "get": { "operationId": "BackupEngines_Get", "tags": [ "BackupEngines" ], "description": "Returns backup management server registered to Recovery Services Vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "backupEngineName", "in": "path", "description": "Name of the backup management server.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupEngineBaseResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Dpm/AzureBackupServer/Lajolla Backup Engine Details": { "$ref": "./examples/Dpm/BackupEngines_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}": { "get": { "operationId": "ProtectionIntent_Get", "tags": [ "ProtectionIntentResources" ], "description": "Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation,\ncall the GetItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "intentObjectName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionIntentResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get ProtectionIntent for an item": { "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Get.json" } } }, "put": { "operationId": "ProtectionIntent_CreateOrUpdate", "tags": [ "ProtectionIntentResources" ], "description": "Create Intent for Enabling backup of an item. This is a synchronous operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "intentObjectName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource backed up item", "required": true, "schema": { "$ref": "#/definitions/ProtectionIntentResource" } } ], "responses": { "200": { "description": "Resource 'ProtectionIntentResource' update operation succeeded", "schema": { "$ref": "#/definitions/ProtectionIntentResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create or Update Azure Vm Protection Intent": { "$ref": "./examples/AzureIaasVm/ProtectionIntent_CreateOrUpdate.json" } } }, "delete": { "operationId": "ProtectionIntent_Delete", "tags": [ "ProtectionIntentResources" ], "description": "Used to remove intent from an item", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "intentObjectName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete Protection intent from item": { "$ref": "./examples/AzureWorkload/BackupProtectionIntent_Delete.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/operationResults/{operationId}": { "get": { "operationId": "ProtectionContainerRefreshOperationResults_Get", "tags": [ "ProtectionContainerRefreshOperationResults" ], "description": "Provides the result of the refresh operation triggered by the BeginRefresh operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "fabricName", "in": "path", "description": "Fabric name associated with the container.", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "Operation ID associated with the operation whose result needs to be fetched.", "required": true, "type": "string" } ], "responses": { "202": { "description": "Resource operation accepted." }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Azure Vm Discovery Operation Result": { "$ref": "./examples/Common/RefreshContainers_OperationResults.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectableContainers": { "get": { "operationId": "ProtectableContainers_List", "tags": [ "ProtectableContainers" ], "description": "Lists the containers that can be registered to Recovery Services Vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "fabricName", "in": "path", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectableContainerResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List protectable items with backupManagementType filter as AzureStorage": { "$ref": "./examples/AzureStorage/ProtectableContainers_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}": { "get": { "operationId": "ProtectionContainers_Get", "tags": [ "ProtectionContainers" ], "description": "Gets details of the specific container registered to your Recovery Services Vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionContainerResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protection Container Details": { "$ref": "./examples/AzureWorkload/ProtectionContainers_Get.json" } } }, "put": { "operationId": "ProtectionContainers_Register", "tags": [ "ProtectionContainers" ], "description": "Registers the container with Recovery Services vault.\nThis is an asynchronous operation. To track the operation status, use location header to call get latest status of\nthe operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/ProtectionContainerResource" } } ], "responses": { "200": { "description": "Resource 'ProtectionContainerResource' update operation succeeded", "schema": { "$ref": "#/definitions/ProtectionContainerResource" } }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "RegisterAzure Storage ProtectionContainers": { "$ref": "./examples/AzureStorage/ProtectionContainers_Register.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location", "final-state-schema": "#/definitions/ProtectionContainerResource" }, "x-ms-long-running-operation": true }, "delete": { "operationId": "ProtectionContainers_Unregister", "tags": [ "ProtectionContainers" ], "description": "Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine\nwhether the backend service has finished processing the request, call Get Container Operation Result API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Resource deleted successfully." }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Unregister Protection Container": { "$ref": "./examples/AzureWorkload/ProtectionContainers_Unregister.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire": { "post": { "operationId": "ProtectionContainers_Inquire", "tags": [ "ProtectionContainers" ], "description": "This is an async operation and the results should be tracked using location header or Azure-async-url.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Inquire Azure Storage Protection Containers": { "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/items": { "get": { "operationId": "BackupWorkloadItems_List", "tags": [ "BackupWorkloadItems" ], "description": "Provides a pageable list of workload item of a specific container according to the query filter and the pagination\nparameters.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/WorkloadItemResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Workload Items in Container": { "$ref": "./examples/AzureWorkload/BackupWorkloadItems_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/operationResults/{operationId}": { "get": { "operationId": "ProtectionContainerOperationResults_Get", "tags": [ "ProtectionContainerOperationResults" ], "description": "Fetches the result of any operation on the container.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "backupFabrics", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "The name of the ProtectionContainerResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the ProtectionContainerResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionContainerResource" } }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Azure Storage Protection Container Operation Result": { "$ref": "./examples/AzureStorage/ProtectionContainers_Inquire_Result.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}": { "get": { "operationId": "ProtectedItems_Get", "tags": [ "ProtectedItems" ], "description": "Provides the details of the backed up item. This is an asynchronous operation. To know the status of the operation,\ncall the GetItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectedItemResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Classic Virtual Machine Details": { "$ref": "./examples/AzureIaasVm/ClassicCompute_ProtectedItem_Get.json" }, "Get Protected Virtual Machine Details": { "$ref": "./examples/AzureIaasVm/Compute_ProtectedItem_Get.json" } } }, "put": { "operationId": "ProtectedItems_CreateOrUpdate", "tags": [ "ProtectedItems" ], "description": "Enables backup of an item or to modifies the backup policy information of an already backed up item. This is an\nasynchronous operation. To know the status of the operation, call the GetItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource backed up item", "required": true, "schema": { "$ref": "#/definitions/ProtectedItemResource" } } ], "responses": { "200": { "description": "Resource 'ProtectedItemResource' update operation succeeded", "schema": { "$ref": "#/definitions/ProtectedItemResource" } }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Enable Protection on Azure IaasVm": { "$ref": "./examples/AzureIaasVm/ConfigureProtection.json" }, "Stop Protection with retain data on Azure IaasVm": { "$ref": "./examples/AzureIaasVm/StopProtection.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location", "final-state-schema": "#/definitions/ProtectedItemResource" }, "x-ms-long-running-operation": true }, "delete": { "operationId": "ProtectedItems_Delete", "tags": [ "ProtectedItems" ], "description": "Used to disable backup of an item within a container. This is an asynchronous operation. To know the status of the\nrequest, call the GetItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Resource deleted successfully." }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete Protection from Azure Virtual Machine": { "$ref": "./examples/Common/ProtectedItem_Delete.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/backup": { "post": { "operationId": "Backups_Trigger", "tags": [ "Backups" ], "description": "Triggers backup for specified backed up item. This is an asynchronous operation. To know the status of the\noperation, call GetProtectedItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource backup request", "required": true, "schema": { "$ref": "#/definitions/BackupRequestResource" } } ], "responses": { "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Backup": { "$ref": "./examples/Common/TriggerBackup_Post.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationResults/{operationId}": { "get": { "operationId": "ProtectedItemOperationResults_Get", "tags": [ "ProtectedItemOperationResults" ], "description": "Fetches the result of any operation on the backup item.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "backupFabrics", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "The name of the ProtectionContainerResource", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "The name of the ProtectedItemResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the ProtectedItemResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectedItemResource" } }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Operation Results of Protected Vm": { "$ref": "./examples/AzureIaasVm/ProtectedItemOperationResults.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/operationsStatus/{operationId}": { "get": { "operationId": "ProtectedItemOperationStatuses_Get", "tags": [ "ProtectedItemOperationStatuses" ], "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\nor failed. You can refer to the OperationStatus enum for all the possible states of the operation. Some operations\ncreate jobs. This method returns the list of jobs associated with the operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "backupFabrics", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "The name of the ProtectionContainerResource", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "The name of the ProtectedItemResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the ProtectedItemResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Operation Status of Protected Vm": { "$ref": "./examples/AzureIaasVm/ProtectedItemOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints": { "get": { "operationId": "RecoveryPoints_List", "tags": [ "RecoveryPoints" ], "description": "Lists the backup copies for the backed up item.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/RecoveryPointResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Azure Vm Recovery Points": { "$ref": "./examples/AzureIaasVm/RecoveryPoints_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}": { "get": { "operationId": "RecoveryPoints_Get", "tags": [ "RecoveryPoints" ], "description": "Provides the information of the backed up data identified using RecoveryPointID. This is an asynchronous operation.\nTo know the status of the operation, call the GetProtectedItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/RecoveryPointResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Azure Vm Recovery Point Details": { "$ref": "./examples/AzureIaasVm/RecoveryPoints_Get.json" } } }, "patch": { "operationId": "RecoveryPoints_Update", "tags": [ "RecoveryPoints" ], "description": "UpdateRecoveryPoint to update recovery point for given RecoveryPointID.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/UpdateRecoveryPointRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/RecoveryPointResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Azure Vm Recovery Point Details": { "$ref": "./examples/Common/RecoveryPoints_Update.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/move": { "post": { "operationId": "MoveRecoveryPoint", "tags": [ "RecoveryPoints" ], "description": "Move recovery point from one datastore to another store.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Move Resource Across Tiers Request", "required": true, "schema": { "$ref": "#/definitions/MoveRPAcrossTiersRequest" } } ], "responses": { "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger RP Move Operation": { "$ref": "./examples/TriggerRecoveryPointMove_Post.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/provisionInstantItemRecovery": { "post": { "operationId": "ItemLevelRecoveryConnections_Provision", "tags": [ "ItemLevelRecoveryConnections" ], "description": "Provisions a script which invokes an iSCSI connection to the backup data. Executing this script opens a file\nexplorer displaying all the recoverable files and folders. This is an asynchronous operation. To know the status of\nprovisioning, call GetProtectedItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource ILR request", "required": true, "schema": { "$ref": "#/definitions/ILRRequestResource" } } ], "responses": { "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Provision Instant Item Level Recovery for Azure Vm": { "$ref": "./examples/AzureIaasVm/Provision_Ilr.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/restore": { "post": { "operationId": "Restores_Trigger", "tags": [ "Restores" ], "description": "Restores the specified backed up data. This is an asynchronous operation. To know the status of this API call, use\nGetProtectedItemOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource restore request", "required": true, "schema": { "$ref": "#/definitions/RestoreRequestResource" } } ], "responses": { "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Restore Disks with IaasVMRestoreRequest": { "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks_IaasVMRestoreRequest.json" }, "Restore Disks with IaasVMRestoreRequest with IdentityBasedRestoreDetails": { "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks_IaasVMRestoreRequest_IdentityBasedRestoreDetails.json" }, "Restore Disks with IaasVMRestoreWithRehydrationRequest": { "$ref": "./examples/AzureIaasVm/TriggerRestore_RestoreDisks_IaasVMRestoreWithRehydrationRequest.json" }, "Restore to New Azure IaasVm with IaasVMRestoreRequest": { "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR_IaasVMRestoreRequest.json" }, "Restore to New Azure IaasVm with IaasVMRestoreRequest with identityBasedRestoreDetails": { "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR_IaasVMRestoreRequest_IdentityBasedRestoreDetails.json" }, "Restore to New Azure IaasVm with IaasVMRestoreWithRehydrationRequest": { "$ref": "./examples/AzureIaasVm/TriggerRestore_ALR_IaasVMRestoreWithRehydrationRequest.json" }, "Restore with Resource Guard Enabled": { "$ref": "./examples/AzureIaasVm/TriggerRestore_ResourceGuardEnabled.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPoints/{recoveryPointId}/revokeInstantItemRecovery": { "post": { "operationId": "ItemLevelRecoveryConnections_Revoke", "tags": [ "ItemLevelRecoveryConnections" ], "description": "Revokes an iSCSI connection which can be used to download a script. Executing this script opens a file explorer\ndisplaying all recoverable files and folders. This is an asynchronous operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "recoveryPointId", "in": "path", "description": "RecoveryPointID represents the backed up data to be fetched.", "required": true, "type": "string" } ], "responses": { "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Revoke Instant Item Level Recovery for Azure Vm": { "$ref": "./examples/AzureIaasVm/Revoke_Ilr.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/protectedItems/{protectedItemName}/recoveryPointsRecommendedForMove": { "post": { "operationId": "RecoveryPointsRecommendedForMove_List", "tags": [ "RecoveryPointsRecommendedForMove" ], "description": "Lists the recovery points recommended for move to another tier", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "fabricName", "in": "path", "description": "The name of the BackupFabricResource", "required": true, "type": "string" }, { "name": "containerName", "in": "path", "description": "Name of the container whose details need to be fetched.", "required": true, "type": "string" }, { "name": "protectedItemName", "in": "path", "description": "Backed up item name whose details are to be fetched.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "List Recovery points Recommended for Move Request", "required": true, "schema": { "$ref": "#/definitions/ListRecoveryPointsRecommendedForMoveRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/RecoveryPointResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Azure Vm Recovery Points Recommended for Move": { "$ref": "./examples/AzureIaasVm/RecoveryPointsRecommendedForMove_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/refreshContainers": { "post": { "operationId": "ProtectionContainers_Refresh", "tags": [ "ProtectionContainers" ], "description": "Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an\nasynchronous operation. To know the status of the operation, call GetRefreshOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "fabricName", "in": "path", "description": "Fabric name associated the container.", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "202": { "description": "Resource operation accepted." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Azure Vm Discovery": { "$ref": "./examples/Common/RefreshContainers.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs": { "get": { "operationId": "BackupJobs_List", "tags": [ "BackupJobs" ], "description": "Provides a pageable list of jobs.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/JobResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List All Jobs": { "$ref": "./examples/Common/ListJobs.json" }, "List Jobs With Filters": { "$ref": "./examples/Common/ListJobsWithAllSupportedFilters.json" }, "List Jobs With Time Filter": { "$ref": "./examples/Common/ListJobsWithStartTimeAndEndTimeFilters.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}": { "get": { "operationId": "JobDetails_Get", "tags": [ "JobDetails" ], "description": "Gets extended information associated with the job.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "jobName", "in": "path", "description": "Name of the job whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/JobResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Job Details": { "$ref": "./examples/Common/GetJobDetails.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/cancel": { "post": { "operationId": "JobCancellations_Trigger", "tags": [ "JobCancellations" ], "description": "Cancels a job. This is an asynchronous operation. To know the status of the cancellation, call\nGetCancelOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "jobName", "in": "path", "description": "Name of the job whose details are to be fetched.", "required": true, "type": "string" } ], "responses": { "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Cancel Job": { "$ref": "./examples/Common/TriggerCancelJob.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/{jobName}/operationResults/{operationId}": { "get": { "operationId": "JobOperationResults_Get", "tags": [ "JobOperationResults" ], "description": "Fetches the result of any operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "jobName", "in": "path", "description": "The name of the JobResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the JobResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "The request has succeeded." }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Cancel Job Operation Result": { "$ref": "./examples/Common/CancelJobOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobs/operationResults/{operationId}": { "get": { "operationId": "ExportJobsOperationResults_Get", "tags": [ "ExportJobsOperationResults" ], "description": "Gets the operation result of operation triggered by Export Jobs API. If the operation is successful, then it also\ncontains URL of a Blob and a SAS key to access the same. The blob contains exported jobs in JSON serialized format.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the JobResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationResultInfoBaseResource" } }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed.", "schema": { "$ref": "#/definitions/OperationResultInfoBaseResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Export Jobs Operation Results": { "$ref": "./examples/Common/ExportJobsOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupJobsExport": { "post": { "operationId": "Jobs_Export", "tags": [ "Jobs" ], "description": "Triggers export of jobs specified by filters and returns an OperationID to track.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "202": { "description": "Resource operation accepted." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Export Jobs": { "$ref": "./examples/Common/TriggerExportJobs.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperationResults/{operationId}": { "get": { "operationId": "BackupOperationResults_Get", "tags": [ "BackupOperationResults" ], "description": "Provides the status of the delete operations such as deleting backed up item. Once the operation has started, the\nstatus code in the response would be Accepted. It will continue to be in this state till it reaches completion. On\nsuccessful completion, the status code will be OK. This method expects OperationID as an argument. OperationID is\npart of the Location header of the operation response.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "operationId", "in": "path", "description": "OperationID which represents the operation.", "required": true, "type": "string" } ], "responses": { "200": { "description": "The request has succeeded." }, "202": { "description": "Resource operation accepted." }, "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Result for Protected Item Delete Operation": { "$ref": "./examples/Common/ProtectedItem_Delete_OperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupOperations/{operationId}": { "get": { "operationId": "BackupOperationStatuses_Get", "tags": [ "BackupOperationStatuses" ], "description": "Fetches the status of an operation such as triggering a backup, restore. The status can be in progress, completed\nor failed. You can refer to the OperationStatus enum for all the possible states of an operation. Some operations\ncreate jobs. This method returns the list of jobs when the operation is complete.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "operationId", "in": "path", "description": "OperationID which represents the operation.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Item Delete Operation Status": { "$ref": "./examples/Common/ProtectedItem_Delete_OperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies": { "get": { "operationId": "BackupPolicies_List", "tags": [ "BackupPolicies" ], "description": "Lists of backup policies associated with Recovery Services Vault. API provides pagination parameters to fetch\nscoped results.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionPolicyResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List protection policies with backupManagementType filter as AzureIaasVm": { "$ref": "./examples/AzureIaasVm/BackupPolicies_List.json" }, "List protection policies with backupManagementType filter as AzureIaasVm with both V1 and V2 policies": { "$ref": "./examples/AzureIaasVm/V2Policy/v2-List-Policies.json" }, "List protection policies with backupManagementType filter as AzureWorkload": { "$ref": "./examples/AzureWorkload/BackupPolicies_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}": { "get": { "operationId": "ProtectionPolicies_Get", "tags": [ "ProtectionPolicies" ], "description": "Provides the details of the backup policies associated to Recovery Services Vault. This is an asynchronous\noperation. Status of the operation can be fetched using GetPolicyOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "policyName", "in": "path", "description": "Backup policy information to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionPolicyResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Azure IaasVm Enhanced Protection Policy Details": { "$ref": "./examples/AzureIaasVm/V2Policy/v2-Get-Policy.json" }, "Get Azure IaasVm Protection Policy Details": { "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Get.json" }, "Get Sap Hana DB Instance Workload Protection Policy Details": { "$ref": "./examples/AzureWorkload/ProtectionPolicies_Get_SapHanaDBInstance.json" } } }, "put": { "operationId": "ProtectionPolicies_CreateOrUpdate", "tags": [ "ProtectionPolicies" ], "description": "Creates or modifies a backup policy. This is an asynchronous operation. Status of the operation can be fetched\nusing GetPolicyOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "policyName", "in": "path", "description": "Backup policy information to be fetched.", "required": true, "type": "string" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource backup policy", "required": true, "schema": { "$ref": "#/definitions/ProtectionPolicyResource" } } ], "responses": { "200": { "description": "Resource 'ProtectionPolicyResource' update operation succeeded", "schema": { "$ref": "#/definitions/ProtectionPolicyResource" } }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create or Update Azure Storage Vault Standard Protection Policy": { "$ref": "./examples/AzureStorage/ProtectionPolicies_CreateOrUpdate_Hardened.json" }, "Create or Update Daily Azure Storage Protection Policy": { "$ref": "./examples/AzureStorage/ProtectionPolicies_CreateOrUpdate_Daily.json" }, "Create or Update Enhanced Azure Vm Protection Policy with Hourly backup": { "$ref": "./examples/AzureIaasVm/V2Policy/IaaS_v2_hourly.json" }, "Create or Update Enhanced Azure Vm Protection Policy with daily backup": { "$ref": "./examples/AzureIaasVm/V2Policy/IaaS_v2_daily.json" }, "Create or Update Full Azure Vm Protection Policy": { "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Complex.json" }, "Create or Update Full Azure Workload Protection Policy": { "$ref": "./examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_Complex.json" }, "Create or Update Hourly Azure Storage Protection Policy": { "$ref": "./examples/AzureStorage/ProtectionPolicies_CreateOrUpdate_Hourly.json" }, "Create or Update Sap Hana DB Instance Workload Protection Policy": { "$ref": "./examples/AzureWorkload/ProtectionPolicies_CreateOrUpdate_SapHanaDBInstance.json" }, "Create or Update Simple Azure Vm Protection Policy": { "$ref": "./examples/AzureIaasVm/ProtectionPolicies_CreateOrUpdate_Simple.json" } } }, "delete": { "operationId": "ProtectionPolicies_Delete", "tags": [ "ProtectionPolicies" ], "description": "Deletes specified backup policy from your Recovery Services Vault. This is an asynchronous operation. Status of the\noperation can be fetched using GetProtectionPolicyOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "policyName", "in": "path", "description": "Backup policy information to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Resource deleted successfully." }, "202": { "description": "Resource deletion accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete Azure Vm Protection Policy": { "$ref": "./examples/AzureIaasVm/ProtectionPolicies_Delete.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operationResults/{operationId}": { "get": { "operationId": "ProtectionPolicyOperationResults_Get", "tags": [ "ProtectionPolicyOperationResults" ], "description": "Provides the result of an operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "policyName", "in": "path", "description": "The name of the ProtectionPolicyResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the ProtectionPolicyResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionPolicyResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protection Policy Operation Results": { "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationResults_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupPolicies/{policyName}/operations/{operationId}": { "get": { "operationId": "ProtectionPolicyOperationStatuses_Get", "tags": [ "ProtectionPolicyOperationStatuses" ], "description": "Provides the status of the asynchronous operations like backup, restore. The status can be in progress, completed\nor failed. You can refer to the Operation Status enum for all the possible states of an operation. Some operations\ncreate jobs. This method returns the list of jobs associated with operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "policyName", "in": "path", "description": "The name of the ProtectionPolicyResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the ProtectionPolicyResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protection Policy Operation Status": { "$ref": "./examples/AzureIaasVm/ProtectionPolicyOperationStatuses_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectableItems": { "get": { "operationId": "BackupProtectableItems_List", "tags": [ "BackupProtectableItems" ], "description": "Provides a pageable list of protectable objects within your subscription according to the query filter and the\npagination parameters.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/WorkloadProtectableItemResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List protectable items with backupManagementType filter as AzureIaasVm": { "$ref": "./examples/AzureIaasVm/BackupProtectableItems_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectedItems": { "get": { "operationId": "BackupProtectedItems_List", "tags": [ "BackupProtectedItems" ], "description": "Provides a pageable list of all items that are backed up within a vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectedItemResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List protected items with backupManagementType filter as AzureIaasVm": { "$ref": "./examples/AzureIaasVm/BackupProtectedItems_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionContainers": { "get": { "operationId": "BackupProtectionContainers_List", "tags": [ "BackupProtectionContainers" ], "description": "Lists the containers registered to Recovery Services Vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionContainerResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List Backup Protection Containers": { "$ref": "./examples/AzureStorage/ProtectionContainers_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents": { "get": { "operationId": "BackupProtectionIntent_List", "tags": [ "BackupProtectionIntent" ], "description": "Provides a pageable list of all intents that are present within a vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ProtectionIntentResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "List protection intent with backupManagementType filter": { "$ref": "./examples/AzureWorkload/BackupProtectionIntent_List.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupResourceGuardProxies": { "get": { "operationId": "ResourceGuardProxies_Get", "tags": [ "ResourceGuardProxies" ], "description": "List the ResourceGuardProxies under vault", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ResourceGuardProxyBaseResourceList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get VaultGuardProxies": { "$ref": "./examples/ResourceGuardProxyCRUD/ListResourceGuardProxy.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}": { "get": { "operationId": "ResourceGuardProxy_Get", "tags": [ "ResourceGuardProxy" ], "description": "Returns ResourceGuardProxy under vault and with the name referenced in request", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "resourceGuardProxyName", "in": "path", "description": "", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ResourceGuardProxyBaseResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get ResourceGuardProxy": { "$ref": "./examples/ResourceGuardProxyCRUD/GetResourceGuardProxy.json" } } }, "put": { "operationId": "ResourceGuardProxy_Put", "tags": [ "ResourceGuardProxy" ], "description": "Add or Update ResourceGuardProxy under vault\nSecures vault critical operations", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "resourceGuardProxyName", "in": "path", "description": "", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/ResourceGuardProxyBaseResource" } } ], "responses": { "200": { "description": "Resource 'ResourceGuardProxyBaseResource' update operation succeeded", "schema": { "$ref": "#/definitions/ResourceGuardProxyBaseResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Create ResourceGuardProxy": { "$ref": "./examples/ResourceGuardProxyCRUD/PutResourceGuardProxy.json" } } }, "delete": { "operationId": "ResourceGuardProxy_Delete", "tags": [ "ResourceGuardProxy" ], "description": "Delete ResourceGuardProxy under vault", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "resourceGuardProxyName", "in": "path", "description": "", "required": true, "type": "string" } ], "responses": { "200": { "description": "Resource deleted successfully." }, "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete ResourceGuardProxy": { "$ref": "./examples/ResourceGuardProxyCRUD/DeleteResourceGuardProxy.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupResourceGuardProxies/{resourceGuardProxyName}/unlockDelete": { "post": { "operationId": "ResourceGuardProxy_UnlockDelete", "tags": [ "ResourceGuardProxy" ], "description": "Secures delete ResourceGuardProxy operations.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "resourceGuardProxyName", "in": "path", "description": "", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/UnlockDeleteRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/UnlockDeleteResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "UnlockDelete ResourceGuardProxy": { "$ref": "./examples/ResourceGuardProxyCRUD/UnlockDeleteResourceGuardProxy.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupSecurityPIN": { "post": { "operationId": "SecurityPINs_Get", "tags": [ "SecurityPINs" ], "description": "Get the security PIN.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "security pin request", "required": false, "schema": { "$ref": "#/definitions/SecurityPinBase" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/TokenInformation" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Security Pin": { "$ref": "./examples/Common/BackupSecurityPin_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupTieringCost/default/fetchTieringCost": { "post": { "operationId": "FetchTieringCost_Post", "tags": [ "FetchTieringCost" ], "description": "Provides the details of the tiering related sizes and cost.\nStatus of the operation can be fetched using GetTieringCostOperationStatus API and result using GetTieringCostOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string", "minLength": 2, "maxLength": 50, "pattern": "^[A-Za-z][-A-Za-z0-9]*[A-Za-z0-9]$" }, { "name": "parameters", "in": "body", "description": "Fetch Tiering Cost Request", "required": true, "schema": { "$ref": "#/definitions/FetchTieringCostInfoRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/TieringCostInfo" } }, "202": { "description": "Accepted", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get the rehydration cost for recovery point": { "$ref": "./examples/TieringCost/FetchTieringCostForRehydrate.json" }, "Get the tiering savings cost info for policy": { "$ref": "./examples/TieringCost/FetchTieringCostForPolicy.json" }, "Get the tiering savings cost info for protected item": { "$ref": "./examples/TieringCost/FetchTieringCostForProtectedItem.json" }, "Get the tiering savings cost info for vault": { "$ref": "./examples/TieringCost/FetchTieringCostForVault.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location", "final-state-schema": "#/definitions/TieringCostInfo" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupTieringCost/default/operationResults/{operationId}": { "get": { "operationId": "GetTieringCostOperationResult_Get", "tags": [ "GetTieringCostOperationResult" ], "description": "Gets the result of async operation for tiering cost", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string", "minLength": 2, "maxLength": 50, "pattern": "^[A-Za-z][-A-Za-z0-9]*[A-Za-z0-9]$" }, { "name": "operationId", "in": "path", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/TieringCostInfo" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Fetch Tiering Cost Operation Result": { "$ref": "./examples/TieringCost/GetTieringCostOperationResult.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupTieringCost/default/operationsStatus/{operationId}": { "get": { "operationId": "TieringCostOperationStatus_Get", "tags": [ "TieringCostOperationStatus" ], "description": "Gets the status of async operations of tiering cost", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string", "minLength": 2, "maxLength": 50, "pattern": "^[A-Za-z][-A-Za-z0-9]*[A-Za-z0-9]$" }, { "name": "operationId", "in": "path", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Fetch Tiering Cost Operation Status": { "$ref": "./examples/TieringCost/GetTieringCostOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupTriggerValidateOperation": { "post": { "operationId": "ValidateOperation_Trigger", "tags": [ "ValidateOperation" ], "description": "Validate operation for specified backed up item in the form of an asynchronous operation. Returns tracking headers which can be tracked using GetValidateOperationResult API.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "parameters", "in": "body", "description": "resource validate operation request", "required": true, "schema": { "$ref": "#/definitions/ValidateOperationRequestResource" } } ], "responses": { "202": { "description": "Accepted", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Validate Operation": { "$ref": "./examples/AzureIaasVm/TriggerValidateOperation_RestoreDisk.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": { "get": { "operationId": "BackupUsageSummaries_List", "tags": [ "BackupUsageSummaries" ], "description": "Fetches the backup management usage summaries of the vault.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "$filter", "in": "query", "description": "OData filter options.", "required": false, "type": "string" }, { "name": "$skipToken", "in": "query", "description": "skipToken Filter.", "required": false, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupManagementUsageList" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Protected Containers Usages Summary": { "$ref": "./examples/Common/BackupProtectionContainers_UsageSummary_Get.json" }, "Get Protected Items Usages Summary": { "$ref": "./examples/Common/BackupProtectedItem_UsageSummary_Get.json" } }, "x-ms-pageable": { "nextLinkName": "nextLink" } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperation": { "post": { "operationId": "Operation_Validate", "tags": [ "Operation" ], "description": "Validate operation for specified backed up item. This is a synchronous operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "parameters", "in": "body", "description": "resource validate operation request", "required": true, "schema": { "$ref": "#/definitions/ValidateOperationRequestResource" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ValidateOperationsResponse" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Validate Operation": { "$ref": "./examples/AzureIaasVm/ValidateOperation_RestoreDisk.json" }, "Validate Operation with identityBasedRestoreDetails": { "$ref": "./examples/AzureIaasVm/ValidateOperation_RestoreDisk_IdentityBasedRestoreDetails.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperationResults/{operationId}": { "get": { "operationId": "ValidateOperationResults_Get", "tags": [ "ValidateOperationResults" ], "description": "Fetches the result of a triggered validate operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "operationId", "in": "path", "description": "OperationID which represents the operation whose result needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/ValidateOperationsResponse" } }, "202": { "description": "Resource operation accepted." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Operation Results of Validate Operation": { "$ref": "./examples/AzureIaasVm/ValidateOperationResults.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupValidateOperationsStatuses/{operationId}": { "get": { "operationId": "ValidateOperationStatuses_Get", "tags": [ "ValidateOperationStatuses" ], "description": "Fetches the status of a triggered validate operation. The status can be in progress, completed\nor failed. You can refer to the OperationStatus enum for all the possible states of the operation.\nIf operation has completed, this method returns the list of errors obtained while validating the operation.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "name": "operationId", "in": "path", "description": "OperationID represents the operation whose status needs to be fetched.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Operation Status of Validate Operation": { "$ref": "./examples/AzureIaasVm/ValidateOperationStatus.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupconfig/vaultconfig": { "get": { "operationId": "BackupResourceVaultConfigs_Get", "tags": [ "BackupResourceVaultConfigs" ], "description": "Fetches resource vault config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupResourceVaultConfigResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Security Config": { "$ref": "./examples/Common/BackupResourceVaultConfigs_Get.json" } } }, "put": { "operationId": "BackupResourceVaultConfigs_Put", "tags": [ "BackupResourceVaultConfigs" ], "description": "Updates vault security config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource config request", "required": true, "schema": { "$ref": "#/definitions/BackupResourceVaultConfigResource" } } ], "responses": { "200": { "description": "Resource 'BackupResourceVaultConfigResource' update operation succeeded", "schema": { "$ref": "#/definitions/BackupResourceVaultConfigResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Vault Security Config": { "$ref": "./examples/Common/BackupResourceVaultConfigs_Put.json" } } }, "patch": { "operationId": "BackupResourceVaultConfigs_Update", "tags": [ "BackupResourceVaultConfigs" ], "description": "Updates vault security config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "x-ms-authorization-auxiliary", "in": "header", "required": false, "type": "string" }, { "name": "parameters", "in": "body", "description": "resource config request", "required": true, "schema": { "$ref": "#/definitions/BackupResourceVaultConfigResource" } } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupResourceVaultConfigResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Vault Security Config": { "$ref": "./examples/Common/BackupResourceVaultConfigs_Patch.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig": { "get": { "operationId": "BackupResourceStorageConfigsNonCRR_Get", "tags": [ "BackupResourceStorageConfigsNonCRR" ], "description": "Fetches resource storage config.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/BackupResourceConfigResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get Vault Storage Configuration": { "$ref": "./examples/Common/BackupStorageConfig_Get.json" } } }, "put": { "operationId": "BackupResourceStorageConfigsNonCRR_Update", "tags": [ "BackupResourceStorageConfigsNonCRR" ], "description": "Updates vault storage model type.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Vault storage config request", "required": true, "schema": { "$ref": "#/definitions/BackupResourceConfigResource" } } ], "responses": { "200": { "description": "Resource 'BackupResourceConfigResource' update operation succeeded", "schema": { "$ref": "#/definitions/BackupResourceConfigResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Vault Storage Configuration": { "$ref": "./examples/Common/BackupStorageConfig_Put.json" } } }, "patch": { "operationId": "BackupResourceStorageConfigsNonCRR_Patch", "tags": [ "BackupResourceStorageConfigsNonCRR" ], "description": "Updates vault storage model type.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Vault storage config request", "required": true, "schema": { "$ref": "#/definitions/BackupResourceConfigResource" } } ], "responses": { "204": { "description": "Operation completed successfully." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update Vault Storage Configuration": { "$ref": "./examples/Common/BackupStorageConfig_Patch.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationResults/{operationId}": { "get": { "operationId": "BMSPrepareDataMoveOperationResult_Get", "tags": [ "BMSPrepareDataMoveOperationResult" ], "description": "Fetches operation status for data move operation on vault", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the BackupResourceConfigResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" } }, "202": { "description": "The request has been accepted for processing, but processing has not yet completed." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get operation result for PrepareDataMove": { "$ref": "./examples/BackupDataMove/PrepareDataMoveOperationResult_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/operationStatus/{operationId}": { "get": { "operationId": "GetOperationStatus", "tags": [ "BackupResourceConfigOperationStatuses" ], "description": "Fetches Operation Result for Prepare Data Move", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the BackupResourceConfigResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get OperationStatus": { "$ref": "./examples/BackupDataMove/BackupDataMoveOperationStatus_Get.json" } } } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/prepareDataMove": { "post": { "operationId": "BMSPrepareDataMove", "tags": [ "BackupResourceStorageConfigsNonCRR" ], "description": "Prepares source vault for Data Move operation", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Prepare data move request", "required": true, "schema": { "$ref": "#/definitions/PrepareDataMoveRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully." }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Prepare Data Move": { "$ref": "./examples/BackupDataMove/PrepareDataMove_Post.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupstorageconfig/vaultstorageconfig/triggerDataMove": { "post": { "operationId": "BMSTriggerDataMove", "tags": [ "BackupResourceStorageConfigsNonCRR" ], "description": "Triggers Data Move Operation on target vault", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Trigger data move request", "required": true, "schema": { "$ref": "#/definitions/TriggerDataMoveRequest" } } ], "responses": { "200": { "description": "Azure operation completed successfully." }, "202": { "description": "Resource operation accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Trigger Data Move": { "$ref": "./examples/BackupDataMove/TriggerDataMove_Post.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}": { "get": { "operationId": "PrivateEndpointConnection_Get", "tags": [ "PrivateEndpointConnectionResources" ], "description": "Get Private Endpoint Connection. This call is made by Backup Admin.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "privateEndpointConnectionName", "in": "path", "description": "The name of the private endpoint connection.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/PrivateEndpointConnectionResource" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get PrivateEndpointConnection": { "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnection.json" } } }, "put": { "operationId": "PrivateEndpointConnection_Put", "tags": [ "PrivateEndpointConnectionResources" ], "description": "Approve or Reject Private Endpoint requests. This call is made by Backup Admin.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "privateEndpointConnectionName", "in": "path", "description": "The name of the private endpoint connection.", "required": true, "type": "string" }, { "name": "parameters", "in": "body", "description": "Request body for operation", "required": true, "schema": { "$ref": "#/definitions/PrivateEndpointConnectionResource" } } ], "responses": { "200": { "description": "Resource 'PrivateEndpointConnectionResource' update operation succeeded", "schema": { "$ref": "#/definitions/PrivateEndpointConnectionResource" } }, "201": { "description": "Resource 'PrivateEndpointConnectionResource' create operation succeeded", "schema": { "$ref": "#/definitions/PrivateEndpointConnectionResource" }, "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Update PrivateEndpointConnection": { "$ref": "./examples/PrivateEndpointConnection/PutPrivateEndpointConnection.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location", "final-state-schema": "#/definitions/PrivateEndpointConnectionResource" }, "x-ms-long-running-operation": true }, "delete": { "operationId": "PrivateEndpointConnection_Delete", "tags": [ "PrivateEndpointConnectionResources" ], "description": "Delete Private Endpoint requests. This call is made by Backup Admin.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "The name of the VaultResource", "required": true, "type": "string" }, { "name": "privateEndpointConnectionName", "in": "path", "description": "The name of the private endpoint connection.", "required": true, "type": "string" } ], "responses": { "200": { "description": "Resource deleted successfully." }, "202": { "description": "Resource deletion accepted.", "headers": { "Location": { "type": "string", "description": "The Location header contains the URL where the status of the long running operation can be checked." }, "Retry-After": { "type": "integer", "format": "int32", "description": "The Retry-After header can indicate how long the client should wait before polling the operation status." } } }, "204": { "description": "Resource does not exist." }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Delete PrivateEndpointConnection": { "$ref": "./examples/PrivateEndpointConnection/DeletePrivateEndpointConnection.json" } }, "x-ms-long-running-operation-options": { "final-state-via": "location" }, "x-ms-long-running-operation": true } }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/privateEndpointConnections/{privateEndpointConnectionName}/operationsStatus/{operationId}": { "get": { "operationId": "PrivateEndpoint_GetOperationStatus", "tags": [ "PrivateEndpointOperationStatuses" ], "description": "Gets the operation status for a private endpoint connection.", "parameters": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" }, { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" }, { "name": "vaultName", "in": "path", "description": "vaults", "required": true, "type": "string" }, { "name": "privateEndpointConnectionName", "in": "path", "description": "The name of the PrivateEndpointConnectionResource", "required": true, "type": "string" }, { "name": "operationId", "in": "path", "description": "The name of the PrivateEndpointConnectionResource", "required": true, "type": "string" } ], "responses": { "200": { "description": "Azure operation completed successfully.", "schema": { "$ref": "#/definitions/OperationStatus" } }, "default": { "description": "An unexpected error response.", "schema": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" } } }, "x-ms-examples": { "Get OperationStatus": { "$ref": "./examples/PrivateEndpointConnection/GetPrivateEndpointConnectionOperationStatus.json" } } } } }, "definitions": { "AcquireStorageAccountLock": { "type": "string", "description": "Whether storage account lock is to be acquired for this container or not.", "enum": [ "Acquire", "NotAcquire" ], "x-ms-enum": { "name": "AcquireStorageAccountLock", "modelAsString": true, "values": [ { "name": "Acquire", "value": "Acquire" }, { "name": "NotAcquire", "value": "NotAcquire" } ] } }, "Azure.Core.azureLocation": { "type": "string", "description": "Represents an Azure geography region where supported resource providers live." }, "AzureBackupGoalFeatureSupportRequest": { "type": "object", "description": "Azure backup goal feature specific request.", "allOf": [ { "$ref": "#/definitions/FeatureSupportRequest" } ], "x-ms-discriminator-value": "AzureBackupGoals" }, "AzureBackupServerContainer": { "type": "object", "description": "AzureBackupServer (DPMVenus) workload-specific protection container.", "allOf": [ { "$ref": "#/definitions/DpmContainer" } ], "x-ms-discriminator-value": "AzureBackupServerContainer" }, "AzureBackupServerEngine": { "type": "object", "description": "Backup engine type when Azure Backup Server is used to manage the backups.", "allOf": [ { "$ref": "#/definitions/BackupEngineBase" } ], "x-ms-discriminator-value": "AzureBackupServerEngine" }, "AzureFileShareBackupRequest": { "type": "object", "description": "AzureFileShare workload-specific backup request.", "properties": { "recoveryPointExpiryTimeInUTC": { "type": "string", "format": "date-time", "description": "Backup copy will expire after the time specified (UTC)." } }, "allOf": [ { "$ref": "#/definitions/BackupRequest" } ], "x-ms-discriminator-value": "AzureFileShareBackupRequest" }, "AzureFileShareProtectableItem": { "type": "object", "description": "Protectable item for Azure Fileshare workloads.", "properties": { "parentContainerFabricId": { "type": "string", "description": "Full Fabric ID of container to which this protectable item belongs. For example, ARM ID." }, "parentContainerFriendlyName": { "type": "string", "description": "Friendly name of container to which this protectable item belongs." }, "azureFileShareType": { "$ref": "#/definitions/AzureFileShareType", "description": "File Share type XSync or XSMB." } }, "allOf": [ { "$ref": "#/definitions/WorkloadProtectableItem" } ], "x-ms-discriminator-value": "AzureFileShare" }, "AzureFileShareProtectionPolicy": { "type": "object", "description": "AzureStorage backup policy.", "properties": { "workLoadType": { "$ref": "#/definitions/WorkloadType", "description": "Type of workload for the backup management" }, "schedulePolicy": { "$ref": "#/definitions/SchedulePolicy", "description": "Backup schedule specified as part of backup policy." }, "retentionPolicy": { "$ref": "#/definitions/RetentionPolicy", "description": "Retention policy with the details on backup copy retention ranges." }, "vaultRetentionPolicy": { "$ref": "#/definitions/VaultRetentionPolicy", "description": "Retention policy with the details on hardened backup copy retention ranges." }, "timeZone": { "type": "string", "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "AzureStorage" }, "AzureFileShareProvisionILRRequest": { "type": "object", "description": "Update snapshot Uri with the correct friendly Name of the source Azure file share.", "properties": { "recoveryPointId": { "type": "string", "description": "Recovery point ID." }, "sourceResourceId": { "type": "string", "description": "Source Storage account ARM Id" } }, "allOf": [ { "$ref": "#/definitions/ILRRequest" } ], "x-ms-discriminator-value": "AzureFileShareProvisionILRRequest" }, "AzureFileShareRecoveryPoint": { "type": "object", "description": "Azure File Share workload specific backup copy.", "properties": { "recoveryPointType": { "type": "string", "description": "Type of the backup copy. Specifies whether it is a crash consistent backup or app consistent." }, "recoveryPointTime": { "type": "string", "format": "date-time", "description": "Time at which this backup copy was created." }, "fileShareSnapshotUri": { "type": "string", "description": "Contains Url to the snapshot of fileshare, if applicable" }, "recoveryPointSizeInGB": { "type": "integer", "format": "int32", "description": "Contains recovery point size" }, "recoveryPointProperties": { "$ref": "#/definitions/RecoveryPointProperties", "description": "Properties of Recovery Point" }, "recoveryPointTierDetails": { "type": "array", "description": "Recovery point tier information.", "items": { "$ref": "#/definitions/RecoveryPointTierInformation" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/RecoveryPoint" } ], "x-ms-discriminator-value": "AzureFileShareRecoveryPoint" }, "AzureFileShareRestoreRequest": { "type": "object", "description": "AzureFileShare Restore Request", "properties": { "recoveryType": { "$ref": "#/definitions/RecoveryType", "description": "Type of this recovery." }, "sourceResourceId": { "type": "string", "description": "Source storage account ARM Id" }, "copyOptions": { "$ref": "#/definitions/CopyOptions", "description": "Options to resolve copy conflicts." }, "restoreRequestType": { "$ref": "#/definitions/RestoreRequestType", "description": "Restore Type (FullShareRestore or ItemLevelRestore)" }, "restoreFileSpecs": { "type": "array", "description": "List of Source Files/Folders(which need to recover) and TargetFolderPath details", "items": { "$ref": "#/definitions/RestoreFileSpecs" }, "x-ms-identifiers": [] }, "targetDetails": { "$ref": "#/definitions/TargetAFSRestoreInfo", "description": "Target File Share Details" } }, "allOf": [ { "$ref": "#/definitions/RestoreRequest" } ], "x-ms-discriminator-value": "AzureFileShareRestoreRequest" }, "AzureFileShareType": { "type": "string", "description": "File Share type XSync or XSMB.", "enum": [ "Invalid", "XSMB", "XSync" ], "x-ms-enum": { "name": "AzureFileShareType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "XSMB", "value": "XSMB" }, { "name": "XSync", "value": "XSync" } ] } }, "AzureFileshareProtectedItem": { "type": "object", "description": "Azure File Share workload-specific backup item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the fileshare represented by this backup item." }, "protectionStatus": { "type": "string", "description": "Backup status of this backup item." }, "protectionState": { "$ref": "#/definitions/ProtectionState", "description": "Backup state of this backup item." }, "lastBackupStatus": { "type": "string", "description": "Last backup operation status. Possible values: Healthy, Unhealthy." }, "lastBackupTime": { "type": "string", "format": "date-time", "description": "Timestamp of the last backup operation on this backup item." }, "kpisHealths": { "type": "object", "description": "Health details of different KPIs", "additionalProperties": { "$ref": "#/definitions/KPIResourceHealthDetails" } }, "extendedInfo": { "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo", "description": "Additional information with this backup item." } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "AzureFileShareProtectedItem" }, "AzureFileshareProtectedItemExtendedInfo": { "type": "object", "description": "Additional information about Azure File Share backup item.", "properties": { "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this item in the service." }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "Number of available backup copies associated with this backup item." }, "policyState": { "type": "string", "description": "Indicates consistency of policy object and policy applied to this backup item." }, "resourceState": { "type": "string", "description": "Indicates the state of this resource. Possible values are from enum ResourceState {Invalid, Active, SoftDeleted, Deleted}", "readOnly": true }, "resourceStateSyncTime": { "type": "string", "format": "date-time", "description": "The resource state sync time for this backup item.", "readOnly": true } } }, "AzureIaaSClassicComputeVMContainer": { "type": "object", "description": "IaaS VM workload-specific backup item representing a classic virtual machine.", "allOf": [ { "$ref": "#/definitions/IaaSVMContainer" } ], "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" }, "AzureIaaSClassicComputeVMProtectableItem": { "type": "object", "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", "allOf": [ { "$ref": "#/definitions/IaaSVMProtectableItem" } ], "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" }, "AzureIaaSClassicComputeVMProtectedItem": { "type": "object", "description": "IaaS VM workload-specific backup item representing the Classic Compute VM.", "allOf": [ { "$ref": "#/definitions/AzureIaaSVMProtectedItem" } ], "x-ms-discriminator-value": "Microsoft.ClassicCompute/virtualMachines" }, "AzureIaaSComputeVMContainer": { "type": "object", "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine.", "allOf": [ { "$ref": "#/definitions/IaaSVMContainer" } ], "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" }, "AzureIaaSComputeVMProtectableItem": { "type": "object", "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", "allOf": [ { "$ref": "#/definitions/IaaSVMProtectableItem" } ], "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" }, "AzureIaaSComputeVMProtectedItem": { "type": "object", "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM.", "allOf": [ { "$ref": "#/definitions/AzureIaaSVMProtectedItem" } ], "x-ms-discriminator-value": "Microsoft.Compute/virtualMachines" }, "AzureIaaSVMErrorInfo": { "type": "object", "description": "Azure IaaS VM workload-specific error information.", "properties": { "errorCode": { "type": "integer", "format": "int32", "description": "Error code.", "readOnly": true }, "errorTitle": { "type": "string", "description": "Title: Typically, the entity that the error pertains to.", "readOnly": true }, "errorString": { "type": "string", "description": "Localized error string.", "readOnly": true }, "recommendations": { "type": "array", "description": "List of localized recommendations for above error code.", "items": { "type": "string" }, "readOnly": true } } }, "AzureIaaSVMHealthDetails": { "type": "object", "description": "Azure IaaS VM workload-specific Health Details.", "allOf": [ { "$ref": "#/definitions/ResourceHealthDetails" } ] }, "AzureIaaSVMJob": { "type": "object", "description": "Azure IaaS VM workload-specific job object.", "properties": { "duration": { "type": "string", "format": "duration", "description": "Time elapsed during the execution of this job." }, "actionsInfo": { "type": "array", "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "errorDetails": { "type": "array", "description": "Error details on execution of this job.", "items": { "$ref": "#/definitions/AzureIaaSVMErrorInfo" }, "x-ms-identifiers": [ "errorCode" ] }, "virtualMachineVersion": { "type": "string", "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM." }, "extendedInfo": { "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", "description": "Additional information for this job." }, "containerName": { "type": "string", "description": "Container name of the entity on which the current job is executing." }, "isUserTriggered": { "type": "boolean", "description": "Indicated that whether the job is adhoc(true) or scheduled(false)" } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "AzureIaaSVMJob" }, "AzureIaaSVMJobExtendedInfo": { "type": "object", "description": "Azure IaaS VM workload-specific additional information for job.", "properties": { "tasksList": { "type": "array", "description": "List of tasks associated with this job.", "items": { "$ref": "#/definitions/AzureIaaSVMJobTaskDetails" }, "x-ms-identifiers": [ "taskId" ] }, "propertyBag": { "type": "object", "description": "Job properties.", "additionalProperties": { "type": "string" } }, "internalPropertyBag": { "type": "object", "description": "Job internal properties.", "additionalProperties": { "type": "string" } }, "progressPercentage": { "type": "number", "format": "double", "description": "Indicates progress of the job. Null if it has not started or completed." }, "estimatedRemainingDuration": { "type": "string", "description": "Time remaining for execution of this job." }, "dynamicErrorMessage": { "type": "string", "description": "Non localized error message on job execution." } } }, "AzureIaaSVMJobTaskDetails": { "type": "object", "description": "Azure IaaS VM workload-specific job task details.", "properties": { "taskId": { "type": "string", "description": "The task display name." }, "startTime": { "type": "string", "format": "date-time", "description": "The start time." }, "endTime": { "type": "string", "format": "date-time", "description": "The end time." }, "instanceId": { "type": "string", "description": "The instanceId." }, "duration": { "type": "string", "format": "duration", "description": "Time elapsed for task." }, "status": { "type": "string", "description": "The status." }, "progressPercentage": { "type": "number", "format": "double", "description": "Progress of the task." }, "taskExecutionDetails": { "type": "string", "description": "Details about execution of the task.\neg: number of bytes transferred etc" } } }, "AzureIaaSVMJobV2": { "type": "object", "description": "Azure IaaS VM workload-specific job object.", "properties": { "actionsInfo": { "type": "array", "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "containerName": { "type": "string", "description": "Container name of the entity on which the current job is executing." }, "duration": { "type": "string", "format": "duration", "description": "Time elapsed during the execution of this job." }, "errorDetails": { "type": "array", "description": "Error details on execution of this job.", "items": { "$ref": "#/definitions/AzureIaaSVMErrorInfo" }, "x-ms-identifiers": [ "errorCode" ] }, "virtualMachineVersion": { "type": "string", "description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM." }, "extendedInfo": { "$ref": "#/definitions/AzureIaaSVMJobExtendedInfo", "description": "Additional information for this job." } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "AzureIaaSVMJobV2" }, "AzureIaaSVMProtectedItem": { "type": "object", "description": "IaaS VM workload-specific backup item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the VM represented by this backup item.", "readOnly": true }, "virtualMachineId": { "type": "string", "description": "Fully qualified ARM ID of the virtual machine represented by this item.", "readOnly": true }, "protectionStatus": { "type": "string", "description": "Backup status of this backup item." }, "protectionState": { "$ref": "#/definitions/ProtectionState", "description": "Backup state of this backup item." }, "healthStatus": { "$ref": "#/definitions/HealthStatus", "description": "Health status of protected item.", "readOnly": true }, "healthDetails": { "type": "array", "description": "Health details on this backup item.", "items": { "$ref": "#/definitions/AzureIaaSVMHealthDetails" }, "x-ms-identifiers": [ "code" ] }, "kpisHealths": { "type": "object", "description": "Health details of different KPIs", "additionalProperties": { "$ref": "#/definitions/KPIResourceHealthDetails" } }, "lastBackupStatus": { "type": "string", "description": "Last backup operation status." }, "lastBackupTime": { "type": "string", "format": "date-time", "description": "Timestamp of the last backup operation on this backup item.", "readOnly": true }, "protectedItemDataId": { "type": "string", "description": "Data ID of the protected item.", "readOnly": true }, "extendedInfo": { "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo", "description": "Additional information for this backup item." }, "extendedProperties": { "$ref": "#/definitions/ExtendedProperties", "description": "Extended Properties for Azure IaasVM Backup." }, "policyType": { "type": "string", "description": "Type of the policy used for protection", "readOnly": true } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "AzureIaaSVMProtectedItem" }, "AzureIaaSVMProtectedItemExtendedInfo": { "type": "object", "description": "Additional information on Azure IaaS VM specific backup item.", "properties": { "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item across all tiers." }, "oldestRecoveryPointInVault": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item in vault tier" }, "oldestRecoveryPointInArchive": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item in archive tier" }, "newestRecoveryPointInArchive": { "type": "string", "format": "date-time", "description": "The latest backup copy available for this backup item in archive tier" }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "Number of backup copies available for this backup item." }, "policyInconsistent": { "type": "boolean", "description": "Specifies if backup policy associated with the backup item is inconsistent." } } }, "AzureIaaSVMProtectionPolicy": { "type": "object", "description": "IaaS VM workload-specific backup policy.", "properties": { "instantRPDetails": { "$ref": "#/definitions/InstantRPAdditionalDetails" }, "schedulePolicy": { "$ref": "#/definitions/SchedulePolicy", "description": "Backup schedule specified as part of backup policy." }, "retentionPolicy": { "$ref": "#/definitions/RetentionPolicy", "description": "Retention policy with the details on backup copy retention ranges." }, "tieringPolicy": { "type": "object", "description": "Tiering policy to automatically move RPs to another tier\nKey is Target Tier, defined in RecoveryPointTierType enum.\nTiering policy specifies the criteria to move RP to the target tier.", "additionalProperties": { "$ref": "#/definitions/TieringPolicy" } }, "instantRpRetentionRangeInDays": { "type": "integer", "format": "int32", "description": "Instant RP retention policy range in days" }, "timeZone": { "type": "string", "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." }, "policyType": { "$ref": "#/definitions/IAASVMPolicyType" }, "snapshotConsistencyType": { "$ref": "#/definitions/IaasVMSnapshotConsistencyType" } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "AzureIaasVM" }, "AzureRecoveryServiceVaultProtectionIntent": { "type": "object", "description": "Azure Recovery Services Vault specific protection intent item.", "allOf": [ { "$ref": "#/definitions/ProtectionIntent" } ], "x-ms-discriminator-value": "RecoveryServiceVaultItem" }, "AzureResourceProtectionIntent": { "type": "object", "description": "IaaS VM specific backup protection intent item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the VM represented by this backup item." } }, "allOf": [ { "$ref": "#/definitions/ProtectionIntent" } ], "x-ms-discriminator-value": "AzureResourceItem" }, "AzureSQLAGWorkloadContainerProtectionContainer": { "type": "object", "description": "Container for SQL workloads under SQL Availability Group.", "allOf": [ { "$ref": "#/definitions/AzureWorkloadContainer" } ], "x-ms-discriminator-value": "SQLAGWorkLoadContainer" }, "AzureSqlContainer": { "type": "object", "description": "Azure Sql workload-specific container.", "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "AzureSqlContainer" }, "AzureSqlProtectedItem": { "type": "object", "description": "Azure SQL workload-specific backup item.", "properties": { "protectedItemDataId": { "type": "string", "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services." }, "protectionState": { "$ref": "#/definitions/ProtectedItemState", "description": "Backup state of the backed up item." }, "extendedInfo": { "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo", "description": "Additional information for this backup item." } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "Microsoft.Sql/servers/databases" }, "AzureSqlProtectedItemExtendedInfo": { "type": "object", "description": "Additional information on Azure Sql specific protected item.", "properties": { "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this item in the service." }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "Number of available backup copies associated with this backup item." }, "policyState": { "type": "string", "description": "State of the backup policy associated with this backup item." } } }, "AzureSqlProtectionPolicy": { "type": "object", "description": "Azure SQL workload-specific backup policy.", "properties": { "retentionPolicy": { "$ref": "#/definitions/RetentionPolicy", "description": "Retention policy details." } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "AzureSql" }, "AzureStorageContainer": { "type": "object", "description": "Azure Storage Account workload-specific container.", "properties": { "sourceResourceId": { "type": "string", "description": "Fully qualified ARM url." }, "storageAccountVersion": { "type": "string", "description": "Storage account version." }, "resourceGroup": { "type": "string", "description": "Resource group name of Recovery Services Vault." }, "protectedItemCount": { "type": "integer", "format": "int64", "description": "Number of items backed up in this container." }, "acquireStorageAccountLock": { "$ref": "#/definitions/AcquireStorageAccountLock", "description": "Whether storage account lock is to be acquired for this container or not." }, "operationType": { "$ref": "#/definitions/OperationType", "description": "Re-Do Operation" } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "StorageContainer" }, "AzureStorageErrorInfo": { "type": "object", "description": "Azure storage specific error information", "properties": { "errorCode": { "type": "integer", "format": "int32", "description": "Error code." }, "errorString": { "type": "string", "description": "Localized error string." }, "recommendations": { "type": "array", "description": "List of localized recommendations for above error code.", "items": { "type": "string" } } } }, "AzureStorageJob": { "type": "object", "description": "Azure storage specific job.", "properties": { "duration": { "type": "string", "format": "duration", "description": "Time elapsed during the execution of this job." }, "actionsInfo": { "type": "array", "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "errorDetails": { "type": "array", "description": "Error details on execution of this job.", "items": { "$ref": "#/definitions/AzureStorageErrorInfo" }, "x-ms-identifiers": [ "errorCode" ] }, "storageAccountName": { "type": "string", "description": "Specifies friendly name of the storage account." }, "storageAccountVersion": { "type": "string", "description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account." }, "extendedInfo": { "$ref": "#/definitions/AzureStorageJobExtendedInfo", "description": "Additional information about the job." }, "isUserTriggered": { "type": "boolean", "description": "Indicated that whether the job is adhoc(true) or scheduled(false)" } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "AzureStorageJob" }, "AzureStorageJobExtendedInfo": { "type": "object", "description": "Azure Storage workload-specific additional information for job.", "properties": { "tasksList": { "type": "array", "description": "List of tasks for this job", "items": { "$ref": "#/definitions/AzureStorageJobTaskDetails" }, "x-ms-identifiers": [ "taskId" ] }, "propertyBag": { "type": "object", "description": "Job properties.", "additionalProperties": { "type": "string" } }, "dynamicErrorMessage": { "type": "string", "description": "Non localized error message on job execution." } } }, "AzureStorageJobTaskDetails": { "type": "object", "description": "Azure storage workload specific job task details.", "properties": { "taskId": { "type": "string", "description": "The task display name." }, "status": { "type": "string", "description": "The status." } } }, "AzureStorageProtectableContainer": { "type": "object", "description": "Azure Storage-specific protectable containers", "allOf": [ { "$ref": "#/definitions/ProtectableContainer" } ], "x-ms-discriminator-value": "StorageContainer" }, "AzureVMAppContainerProtectableContainer": { "type": "object", "description": "Azure workload-specific container", "allOf": [ { "$ref": "#/definitions/ProtectableContainer" } ], "x-ms-discriminator-value": "VMAppContainer" }, "AzureVMAppContainerProtectionContainer": { "type": "object", "description": "Container for SQL workloads under Azure Virtual Machines.", "allOf": [ { "$ref": "#/definitions/AzureWorkloadContainer" } ], "x-ms-discriminator-value": "VMAppContainer" }, "AzureVMResourceFeatureSupportRequest": { "type": "object", "description": "AzureResource(IaaS VM) Specific feature support request", "properties": { "vmSize": { "type": "string", "description": "Size of the resource: VM size(A/D series etc) in case of IaasVM" }, "vmSku": { "type": "string", "description": "SKUs (Premium/Managed etc) in case of IaasVM" } }, "allOf": [ { "$ref": "#/definitions/FeatureSupportRequest" } ], "x-ms-discriminator-value": "AzureVMResourceBackup" }, "AzureVMResourceFeatureSupportResponse": { "type": "object", "description": "Response for feature support requests for Azure IaasVm", "properties": { "supportStatus": { "$ref": "#/definitions/SupportStatus", "description": "Support status of feature" } } }, "AzureVmWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item.", "properties": { "parentName": { "type": "string", "description": "Name for instance or AG" }, "serverName": { "type": "string", "description": "Host/Cluster Name for instance or AG" }, "isAutoProtectable": { "type": "boolean", "description": "Indicates if workload item is auto-protectable" }, "subinquireditemcount": { "type": "integer", "format": "int32", "description": "For instance or AG, indicates number of DB's present" }, "subWorkloadItemCount": { "type": "integer", "format": "int32", "description": "For instance or AG, indicates number of DB's to be protected" } }, "allOf": [ { "$ref": "#/definitions/WorkloadItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadItem" }, "AzureVmWorkloadProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item.", "properties": { "parentName": { "type": "string", "description": "Name for instance or AG" }, "parentUniqueName": { "type": "string", "description": "Parent Unique Name is added to provide the service formatted URI Name of the Parent\nOnly Applicable for data bases where the parent would be either Instance or a SQL AG." }, "serverName": { "type": "string", "description": "Host/Cluster Name for instance or AG" }, "isAutoProtectable": { "type": "boolean", "description": "Indicates if protectable item is auto-protectable" }, "isAutoProtected": { "type": "boolean", "description": "Indicates if protectable item is auto-protected" }, "subinquireditemcount": { "type": "integer", "format": "int32", "description": "For instance or AG, indicates number of DB's present" }, "subprotectableitemcount": { "type": "integer", "format": "int32", "description": "For instance or AG, indicates number of DB's to be protected" }, "prebackupvalidation": { "$ref": "#/definitions/PreBackupValidation", "description": "Pre-backup validation for protectable objects" }, "isProtectable": { "type": "boolean", "description": "Indicates if item is protectable" } }, "allOf": [ { "$ref": "#/definitions/WorkloadProtectableItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadProtectableItem" }, "AzureVmWorkloadProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the DB represented by this backup item.", "readOnly": true }, "serverName": { "type": "string", "description": "Host/Cluster Name for instance or AG" }, "parentName": { "type": "string", "description": "Parent name of the DB such as Instance or Availability Group." }, "parentType": { "type": "string", "description": "Parent type of protected item, example: for a DB, standalone server or distributed" }, "protectionStatus": { "type": "string", "description": "Backup status of this backup item.", "readOnly": true }, "protectionState": { "$ref": "#/definitions/ProtectionState", "description": "Backup state of this backup item." }, "lastBackupStatus": { "$ref": "#/definitions/LastBackupStatus", "description": "Last backup operation status. Possible values: Healthy, Unhealthy." }, "lastBackupTime": { "type": "string", "format": "date-time", "description": "Timestamp of the last backup operation on this backup item." }, "lastBackupErrorDetail": { "$ref": "#/definitions/ErrorDetail", "description": "Error details in last backup" }, "protectedItemDataSourceId": { "type": "string", "description": "Data ID of the protected item." }, "protectedItemHealthStatus": { "$ref": "#/definitions/ProtectedItemHealthStatus", "description": "Health status of the backup item, evaluated based on last heartbeat received" }, "extendedInfo": { "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo", "description": "Additional information for this backup item." }, "kpisHealths": { "type": "object", "description": "Health details of different KPIs", "additionalProperties": { "$ref": "#/definitions/KPIResourceHealthDetails" } }, "nodesList": { "type": "array", "description": "List of the nodes in case of distributed container.", "items": { "$ref": "#/definitions/DistributedNodesInfo" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadProtectedItem" }, "AzureVmWorkloadProtectedItemExtendedInfo": { "type": "object", "description": "Additional information on Azure Workload for SQL specific backup item.", "properties": { "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item across all tiers." }, "oldestRecoveryPointInVault": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item in vault tier" }, "oldestRecoveryPointInArchive": { "type": "string", "format": "date-time", "description": "The oldest backup copy available for this backup item in archive tier" }, "newestRecoveryPointInArchive": { "type": "string", "format": "date-time", "description": "The latest backup copy available for this backup item in archive tier" }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "Number of backup copies available for this backup item." }, "policyState": { "type": "string", "description": "Indicates consistency of policy object and policy applied to this backup item." }, "recoveryModel": { "type": "string", "description": "Indicates consistency of policy object and policy applied to this backup item." } } }, "AzureVmWorkloadProtectionPolicy": { "type": "object", "description": "Azure VM (Mercury) workload-specific backup policy.", "properties": { "workLoadType": { "$ref": "#/definitions/WorkloadType", "description": "Type of workload for the backup management" }, "vmWorkloadPolicyType": { "$ref": "#/definitions/VMWorkloadPolicyType", "description": "Type of the protection policy" }, "settings": { "$ref": "#/definitions/Settings", "description": "Common settings for the backup management" }, "subProtectionPolicy": { "type": "array", "description": "List of sub-protection policies which includes schedule and retention", "items": { "$ref": "#/definitions/SubProtectionPolicy" }, "x-ms-identifiers": [] }, "makePolicyConsistent": { "type": "boolean", "description": "Fix the policy inconsistency" } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "AzureWorkload" }, "AzureVmWorkloadSAPAseDatabaseProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SAP ASE Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SAPAseDatabase" }, "AzureVmWorkloadSAPAseDatabaseProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item representing SAP ASE Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadSAPAseDatabase" }, "AzureVmWorkloadSAPAseDatabaseWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SAP ASE Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SAPAseDatabase" }, "AzureVmWorkloadSAPAseSystemProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SAP ASE System.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SAPAseSystem" }, "AzureVmWorkloadSAPAseSystemWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SAP ASE System.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SAPAseSystem" }, "AzureVmWorkloadSAPHanaDBInstance": { "type": "object", "description": "Azure VM workload-specific protectable item representing SAP HANA Dbinstance.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SAPHanaDBInstance" }, "AzureVmWorkloadSAPHanaDBInstanceProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item representing SAP HANA DBInstance.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDBInstance" }, "AzureVmWorkloadSAPHanaDatabaseProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SAP HANA Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SAPHanaDatabase" }, "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item representing SAP HANA Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadSAPHanaDatabase" }, "AzureVmWorkloadSAPHanaDatabaseWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SAP HANA Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SAPHanaDatabase" }, "AzureVmWorkloadSAPHanaHSRProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing HANA HSR.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "HanaHSRContainer" }, "AzureVmWorkloadSAPHanaScaleoutProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing HANA scale out.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "HanaScaleoutContainer" }, "AzureVmWorkloadSAPHanaSystemProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SAP HANA System.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SAPHanaSystem" }, "AzureVmWorkloadSAPHanaSystemWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SAP HANA System.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SAPHanaSystem" }, "AzureVmWorkloadSQLAvailabilityGroupProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SQL Availability Group.", "properties": { "nodesList": { "type": "array", "description": "List of the nodes in case of distributed container.", "items": { "$ref": "#/definitions/DistributedNodesInfo" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SQLAvailabilityGroupContainer" }, "AzureVmWorkloadSQLDatabaseProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SQL Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SQLDataBase" }, "AzureVmWorkloadSQLDatabaseProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item representing SQL Database.", "properties": { "parentProtectedItem": { "type": "string", "description": "Name of the parent protected item (e.g., SQL Instance name) when this database is protected as part of a parent." }, "protectionLevel": { "$ref": "#/definitions/ProtectionLevel", "description": "Protection type in case protected as part of a parent." } }, "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadSQLDatabase" }, "AzureVmWorkloadSQLDatabaseWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SQL Database.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SQLDataBase" }, "AzureVmWorkloadSQLInstanceProtectableItem": { "type": "object", "description": "Azure VM workload-specific protectable item representing SQL Instance.", "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectableItem" } ], "x-ms-discriminator-value": "SQLInstance" }, "AzureVmWorkloadSQLInstanceProtectedItem": { "type": "object", "description": "Azure VM workload-specific protected item representing SQL Instance.", "properties": { "childDBNames": { "type": "array", "description": "Name of Child Dbs protected under this parent.", "items": { "type": "string" } }, "instanceProtectionReadiness": { "$ref": "#/definitions/InstanceProtectionReadiness", "description": "The state of instance protection." } }, "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadProtectedItem" } ], "x-ms-discriminator-value": "AzureVmWorkloadSQLInstance" }, "AzureVmWorkloadSQLInstanceWorkloadItem": { "type": "object", "description": "Azure VM workload-specific workload item representing SQL Instance.", "properties": { "dataDirectoryPaths": { "type": "array", "description": "Data Directory Paths for default directories", "items": { "$ref": "#/definitions/SQLDataDirectory" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/AzureVmWorkloadItem" } ], "x-ms-discriminator-value": "SQLInstance" }, "AzureWorkloadAutoProtectionIntent": { "type": "object", "description": "Azure Recovery Services Vault specific protection intent item.", "allOf": [ { "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" } ], "x-ms-discriminator-value": "AzureWorkloadAutoProtectionIntent" }, "AzureWorkloadBackupRequest": { "type": "object", "description": "AzureWorkload workload-specific backup request.", "properties": { "backupType": { "$ref": "#/definitions/BackupType", "description": "Type of backup, viz. Full, Differential, Log or CopyOnlyFull" }, "enableCompression": { "type": "boolean", "description": "Bool for Compression setting" }, "recoveryPointExpiryTimeInUTC": { "type": "string", "format": "date-time", "description": "Backup copy will expire after the time specified (UTC)." } }, "allOf": [ { "$ref": "#/definitions/BackupRequest" } ], "x-ms-discriminator-value": "AzureWorkloadBackupRequest" }, "AzureWorkloadContainer": { "type": "object", "description": "Container for the workloads running inside Azure Compute or Classic Compute.", "properties": { "sourceResourceId": { "type": "string", "description": "ARM ID of the virtual machine represented by this Azure Workload Container" }, "lastUpdatedTime": { "type": "string", "format": "date-time", "description": "Time stamp when this container was updated." }, "extendedInfo": { "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo", "description": "Additional details of a workload container." }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type for which registration was sent." }, "operationType": { "$ref": "#/definitions/OperationType", "description": "Re-Do Operation" } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "AzureWorkloadContainer" }, "AzureWorkloadContainerAutoProtectionIntent": { "type": "object", "description": "Azure workload specific protection intent item.", "allOf": [ { "$ref": "#/definitions/ProtectionIntent" } ], "x-ms-discriminator-value": "AzureWorkloadContainerAutoProtectionIntent" }, "AzureWorkloadContainerExtendedInfo": { "type": "object", "description": "Extended information of the container.", "properties": { "hostServerName": { "type": "string", "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container." }, "inquiryInfo": { "$ref": "#/definitions/InquiryInfo", "description": "Inquiry Status for the container." }, "nodesList": { "type": "array", "description": "List of the nodes in case of distributed container.", "items": { "$ref": "#/definitions/DistributedNodesInfo" }, "x-ms-identifiers": [] } } }, "AzureWorkloadErrorInfo": { "type": "object", "description": "Azure storage specific error information", "properties": { "errorCode": { "type": "integer", "format": "int32", "description": "Error code." }, "errorString": { "type": "string", "description": "Localized error string." }, "errorTitle": { "type": "string", "description": "Title: Typically, the entity that the error pertains to." }, "recommendations": { "type": "array", "description": "List of localized recommendations for above error code.", "items": { "type": "string" } }, "additionalDetails": { "type": "string", "description": "Additional details for above error code." } } }, "AzureWorkloadJob": { "type": "object", "description": "Azure storage specific job.", "properties": { "workloadType": { "type": "string", "description": "Workload type of the job" }, "duration": { "type": "string", "format": "duration", "description": "Time elapsed during the execution of this job." }, "actionsInfo": { "type": "array", "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "errorDetails": { "type": "array", "description": "Error details on execution of this job.", "items": { "$ref": "#/definitions/AzureWorkloadErrorInfo" }, "x-ms-identifiers": [ "errorCode" ] }, "extendedInfo": { "$ref": "#/definitions/AzureWorkloadJobExtendedInfo", "description": "Additional information about the job." } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "AzureWorkloadJob" }, "AzureWorkloadJobExtendedInfo": { "type": "object", "description": "Azure VM workload-specific additional information for job.", "properties": { "tasksList": { "type": "array", "description": "List of tasks for this job", "items": { "$ref": "#/definitions/AzureWorkloadJobTaskDetails" }, "x-ms-identifiers": [ "taskId" ] }, "propertyBag": { "type": "object", "description": "Job properties.", "additionalProperties": { "type": "string" } }, "dynamicErrorMessage": { "type": "string", "description": "Non localized error message on job execution." } } }, "AzureWorkloadJobTaskDetails": { "type": "object", "description": "Azure VM workload specific job task details.", "properties": { "taskId": { "type": "string", "description": "The task display name." }, "status": { "type": "string", "description": "The status." } } }, "AzureWorkloadPointInTimeRecoveryPoint": { "type": "object", "description": "Recovery point specific to PointInTime", "properties": { "timeRanges": { "type": "array", "description": "List of log ranges", "items": { "$ref": "#/definitions/PointInTimeRange" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadPointInTimeRecoveryPoint" }, "AzureWorkloadPointInTimeRestoreRequest": { "type": "object", "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", "properties": { "pointInTime": { "type": "string", "format": "date-time", "description": "PointInTime value" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadPointInTimeRestoreRequest" }, "AzureWorkloadRecoveryPoint": { "type": "object", "description": "Workload specific recovery point, specifically encapsulates full/diff recovery point", "properties": { "recoveryPointTimeInUTC": { "type": "string", "format": "date-time", "description": "UTC time at which recovery point was created" }, "type": { "$ref": "#/definitions/RestorePointType", "description": "Type of restore point" }, "recoveryPointTierDetails": { "type": "array", "description": "Recovery point tier information.", "items": { "$ref": "#/definitions/RecoveryPointTierInformationV2" }, "x-ms-identifiers": [] }, "recoveryPointMoveReadinessInfo": { "type": "object", "description": "Eligibility of RP to be moved to another tier", "additionalProperties": { "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" } }, "recoveryPointProperties": { "$ref": "#/definitions/RecoveryPointProperties", "description": "Properties of Recovery Point" } }, "allOf": [ { "$ref": "#/definitions/RecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadRecoveryPoint" }, "AzureWorkloadRestoreRequest": { "type": "object", "description": "AzureWorkload-specific restore.", "properties": { "recoveryType": { "$ref": "#/definitions/RecoveryType", "description": "Type of this recovery." }, "sourceResourceId": { "type": "string", "description": "Fully qualified ARM ID of the VM on which workload that was running is being recovered." }, "propertyBag": { "type": "object", "description": "Workload specific property bag.", "additionalProperties": { "type": "string" } }, "targetInfo": { "$ref": "#/definitions/TargetRestoreInfo", "description": "Details of target database" }, "recoveryMode": { "$ref": "#/definitions/RecoveryMode", "description": "Defines whether the current recovery mode is file restore or database restore" }, "targetResourceGroupName": { "type": "string", "description": "Defines the Resource group of the Target VM" }, "userAssignedManagedIdentityDetails": { "$ref": "#/definitions/UserAssignedManagedIdentityDetails", "description": "User Assigned managed identity details\nCurrently used for snapshot." }, "snapshotRestoreParameters": { "$ref": "#/definitions/SnapshotRestoreParameters", "description": "Additional details for snapshot recovery\nCurrently used for snapshot for SAP Hana." }, "targetVirtualMachineId": { "type": "string", "description": "This is the complete ARM Id of the target VM\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}" } }, "allOf": [ { "$ref": "#/definitions/RestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadRestoreRequest" }, "AzureWorkloadSAPAsePointInTimeRecoveryPoint": { "type": "object", "description": "Recovery point specific to PointInTime in SAPAse", "allOf": [ { "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSAPAsePointInTimeRecoveryPoint" }, "AzureWorkloadSAPAsePointInTimeRestoreRequest": { "type": "object", "description": "AzureWorkload SAP Ase-specific restore. Specifically for PointInTime/Log restore", "properties": { "pointInTime": { "type": "string", "format": "date-time", "description": "PointInTime value" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSAPAseRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPAsePointInTimeRestoreRequest" }, "AzureWorkloadSAPAseRecoveryPoint": { "type": "object", "description": "SAPAse specific recoverypoint, specifically encapsulates full/diff recoverypoints", "allOf": [ { "$ref": "#/definitions/AzureWorkloadRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSAPAseRecoveryPoint" }, "AzureWorkloadSAPAseRestoreRequest": { "type": "object", "description": "AzureWorkload SAP Ase-specific restore.", "allOf": [ { "$ref": "#/definitions/AzureWorkloadRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPAseRestoreRequest" }, "AzureWorkloadSAPHanaPointInTimeRecoveryPoint": { "type": "object", "description": "Recovery point specific to PointInTime in SAPHana", "allOf": [ { "$ref": "#/definitions/AzureWorkloadPointInTimeRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRecoveryPoint" }, "AzureWorkloadSAPHanaPointInTimeRestoreRequest": { "type": "object", "description": "AzureWorkload SAP Hana -specific restore. Specifically for PointInTime/Log restore", "properties": { "pointInTime": { "type": "string", "format": "date-time", "description": "PointInTime value" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreRequest" }, "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest": { "type": "object", "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", "properties": { "recoveryPointRehydrationInfo": { "$ref": "#/definitions/RecoveryPointRehydrationInfo", "description": "RP Rehydration Info" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSAPHanaPointInTimeRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaPointInTimeRestoreWithRehydrateRequest" }, "AzureWorkloadSAPHanaRecoveryPoint": { "type": "object", "description": "SAPHana specific recoverypoint, specifically encapsulates full/diff recoverypoints", "allOf": [ { "$ref": "#/definitions/AzureWorkloadRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaRecoveryPoint" }, "AzureWorkloadSAPHanaRestoreRequest": { "type": "object", "description": "AzureWorkload SAP Hana-specific restore.", "allOf": [ { "$ref": "#/definitions/AzureWorkloadRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreRequest" }, "AzureWorkloadSAPHanaRestoreWithRehydrateRequest": { "type": "object", "description": "AzureWorkload SAP Hana-specific restore with integrated rehydration of recovery point.", "properties": { "recoveryPointRehydrationInfo": { "$ref": "#/definitions/RecoveryPointRehydrationInfo", "description": "RP Rehydration Info" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSAPHanaRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSAPHanaRestoreWithRehydrateRequest" }, "AzureWorkloadSQLAutoProtectionIntent": { "type": "object", "description": "Azure Workload SQL Auto Protection intent item.", "properties": { "workloadItemType": { "$ref": "#/definitions/WorkloadItemType", "description": "Workload item type of the item for which intent is to be set" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" } ], "x-ms-discriminator-value": "AzureWorkloadSQLAutoProtectionIntent" }, "AzureWorkloadSQLPointInTimeRecoveryPoint": { "type": "object", "description": "Recovery point specific to PointInTime", "properties": { "timeRanges": { "type": "array", "description": "List of log ranges", "items": { "$ref": "#/definitions/PointInTimeRange" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSQLRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRecoveryPoint" }, "AzureWorkloadSQLPointInTimeRestoreRequest": { "type": "object", "description": "AzureWorkload SQL -specific restore. Specifically for PointInTime/Log restore", "properties": { "pointInTime": { "type": "string", "format": "date-time", "description": "PointInTime value" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreRequest" }, "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest": { "type": "object", "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point.", "properties": { "recoveryPointRehydrationInfo": { "$ref": "#/definitions/RecoveryPointRehydrationInfo", "description": "RP Rehydration Info" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSQLPointInTimeRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSQLPointInTimeRestoreWithRehydrateRequest" }, "AzureWorkloadSQLRecoveryPoint": { "type": "object", "description": "SQL specific recoverypoint, specifically encapsulates full/diff recoverypoint along with extended info", "properties": { "extendedInfo": { "$ref": "#/definitions/AzureWorkloadSQLRecoveryPointExtendedInfo", "description": "Extended Info that provides data directory details. Will be populated in two cases:\nWhen a specific recovery point is accessed using GetRecoveryPoint\nOr when ListRecoveryPoints is called for Log RP only with ExtendedInfo query filter" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadRecoveryPoint" } ], "x-ms-discriminator-value": "AzureWorkloadSQLRecoveryPoint" }, "AzureWorkloadSQLRecoveryPointExtendedInfo": { "type": "object", "description": "Extended info class details", "properties": { "dataDirectoryTimeInUTC": { "type": "string", "format": "date-time", "description": "UTC time at which data directory info was captured" }, "dataDirectoryPaths": { "type": "array", "description": "List of data directory paths during restore operation.", "items": { "$ref": "#/definitions/SQLDataDirectory" }, "x-ms-identifiers": [] }, "includedDatabases": { "type": "array", "description": "List of databases included in recovery point.", "items": { "$ref": "#/definitions/DatabaseInRP" }, "x-ms-identifiers": [] } } }, "AzureWorkloadSQLRestoreRequest": { "type": "object", "description": "AzureWorkload SQL -specific restore. Specifically for full/diff restore", "properties": { "shouldUseAlternateTargetLocation": { "type": "boolean", "description": "Default option set to true. If this is set to false, alternate data directory must be provided" }, "isNonRecoverable": { "type": "boolean", "description": "SQL specific property where user can chose to set no-recovery when restore operation is tried" }, "alternateDirectoryPaths": { "type": "array", "description": "Data directory details", "items": { "$ref": "#/definitions/SQLDataDirectoryMapping" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSQLRestoreRequest" }, "AzureWorkloadSQLRestoreWithRehydrateRequest": { "type": "object", "description": "AzureWorkload SQL-specific restore with integrated rehydration of recovery point", "properties": { "recoveryPointRehydrationInfo": { "$ref": "#/definitions/RecoveryPointRehydrationInfo", "description": "RP Rehydration Info" } }, "allOf": [ { "$ref": "#/definitions/AzureWorkloadSQLRestoreRequest" } ], "x-ms-discriminator-value": "AzureWorkloadSQLRestoreWithRehydrateRequest" }, "BEKDetails": { "type": "object", "description": "BEK is bitlocker encryption key.", "properties": { "secretUrl": { "type": "string", "description": "Secret is BEK." }, "secretVaultId": { "type": "string", "description": "ID of the Key Vault where this Secret is stored." }, "secretData": { "type": "string", "description": "BEK data." } } }, "BMSBackupEngineQueryObject": { "type": "object", "description": "Query parameters to fetch list of backup engines.", "properties": { "expand": { "type": "string", "description": "attribute to add extended info" } } }, "BMSBackupEnginesQueryObject": { "type": "object", "description": "Query parameters to fetch list of backup engines.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for the backup engine." }, "friendlyName": { "type": "string", "description": "Friendly name of the backup engine." }, "expand": { "type": "string", "description": "Attribute to add extended info." } } }, "BMSBackupSummariesQueryObject": { "type": "object", "description": "Query parameters to fetch backup summaries.", "properties": { "type": { "$ref": "#/definitions/Type", "description": "Backup management type for this container." } } }, "BMSContainerQueryObject": { "type": "object", "description": "The query filters that can be used with the list containers API.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for this container." }, "containerType": { "$ref": "#/definitions/ContainerType", "description": "Type of container for filter" }, "backupEngineName": { "type": "string", "description": "Backup engine name" }, "fabricName": { "type": "string", "description": "Fabric name for filter" }, "status": { "type": "string", "description": "Status of registration of this container with the Recovery Services Vault." }, "friendlyName": { "type": "string", "description": "Friendly name of this container." } }, "required": [ "backupManagementType" ] }, "BMSContainersInquiryQueryObject": { "type": "object", "description": "The query filters that can be used with the inquire container API.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for this container." }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type for this container." } } }, "BMSRefreshContainersQueryObject": { "type": "object", "description": "The query filters that can be used with the refresh container API.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for this container." } } }, "BMSWorkloadItemQueryObject": { "type": "object", "description": "Filters to list items that can be backed up.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type." }, "workloadItemType": { "$ref": "#/definitions/WorkloadItemType", "description": "Workload Item type" }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type" }, "protectionStatus": { "$ref": "#/definitions/ProtectionStatus", "description": "Backup status query parameter." } } }, "BackupEngineBase": { "type": "object", "description": "The base backup engine class. All workload specific backup engines derive from this class.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the backup engine." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the backup engine." }, "registrationStatus": { "type": "string", "description": "Registration status of the backup engine with the Recovery Services Vault." }, "backupEngineState": { "type": "string", "description": "Status of the backup engine with the Recovery Services Vault. = {Active/Deleting/DeleteFailed}" }, "healthStatus": { "type": "string", "description": "Backup status of the backup engine." }, "backupEngineType": { "$ref": "#/definitions/BackupEngineType", "description": "Type of the backup engine." }, "canReRegister": { "type": "boolean", "description": "Flag indicating if the backup engine be registered, once already registered." }, "backupEngineId": { "type": "string", "description": "ID of the backup engine." }, "dpmVersion": { "type": "string", "description": "Backup engine version" }, "azureBackupAgentVersion": { "type": "string", "description": "Backup agent version" }, "isAzureBackupAgentUpgradeAvailable": { "type": "boolean", "description": "To check if backup agent upgrade available" }, "isDpmUpgradeAvailable": { "type": "boolean", "description": "To check if backup engine upgrade available" }, "extendedInfo": { "$ref": "#/definitions/BackupEngineExtendedInfo", "description": "Extended info of the backupengine" } }, "discriminator": "backupEngineType", "required": [ "backupEngineType" ] }, "BackupEngineBaseResource": { "type": "object", "description": "The base backup engine class. All workload specific backup engines derive from this class.", "properties": { "properties": { "$ref": "#/definitions/BackupEngineBase", "description": "BackupEngineBaseResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "BackupEngineBaseResourceList": { "type": "object", "description": "List of BackupEngineBase resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/BackupEngineBaseResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "BackupEngineExtendedInfo": { "type": "object", "description": "Additional information on backup engine.", "properties": { "databaseName": { "type": "string", "description": "Database name of backup engine." }, "protectedItemsCount": { "type": "integer", "format": "int32", "description": "Number of protected items in the backup engine." }, "protectedServersCount": { "type": "integer", "format": "int32", "description": "Number of protected servers in the backup engine." }, "diskCount": { "type": "integer", "format": "int32", "description": "Number of disks in the backup engine." }, "usedDiskSpace": { "type": "number", "format": "double", "description": "Disk space used in the backup engine." }, "availableDiskSpace": { "type": "number", "format": "double", "description": "Disk space currently available in the backup engine." }, "refreshedAt": { "type": "string", "format": "date-time", "description": "Last refresh time in the backup engine." }, "azureProtectedInstances": { "type": "integer", "format": "int32", "description": "Protected instances in the backup engine." } } }, "BackupEngineType": { "type": "string", "description": "Type of the backup engine.", "enum": [ "Invalid", "DpmBackupEngine", "AzureBackupServerEngine" ], "x-ms-enum": { "name": "BackupEngineType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "DpmBackupEngine", "value": "DpmBackupEngine" }, { "name": "AzureBackupServerEngine", "value": "AzureBackupServerEngine" } ] } }, "BackupFabricResource": { "type": "object", "description": "Backup Fabric virtual resource.", "properties": { "name": { "type": "string", "description": "The name of the BackupFabricResource", "readOnly": true } }, "required": [ "name" ] }, "BackupItemType": { "type": "string", "description": "Type of backup items associated with this container.", "enum": [ "Invalid", "VM", "FileFolder", "AzureSqlDb", "SQLDB", "Exchange", "Sharepoint", "VMwareVM", "SystemState", "Client", "GenericDataSource", "SQLDataBase", "AzureFileShare", "SAPHanaDatabase", "SAPAseDatabase", "SAPHanaDBInstance" ], "x-ms-enum": { "name": "BackupItemType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "VM", "value": "VM" }, { "name": "FileFolder", "value": "FileFolder" }, { "name": "AzureSqlDb", "value": "AzureSqlDb" }, { "name": "SQLDB", "value": "SQLDB" }, { "name": "Exchange", "value": "Exchange" }, { "name": "Sharepoint", "value": "Sharepoint" }, { "name": "VMwareVM", "value": "VMwareVM" }, { "name": "SystemState", "value": "SystemState" }, { "name": "Client", "value": "Client" }, { "name": "GenericDataSource", "value": "GenericDataSource" }, { "name": "SQLDataBase", "value": "SQLDataBase" }, { "name": "AzureFileShare", "value": "AzureFileShare" }, { "name": "SAPHanaDatabase", "value": "SAPHanaDatabase" }, { "name": "SAPAseDatabase", "value": "SAPAseDatabase" }, { "name": "SAPHanaDBInstance", "value": "SAPHanaDBInstance" } ] } }, "BackupManagementType": { "type": "string", "description": "Backup management type to execute the current job.", "enum": [ "Invalid", "AzureIaasVM", "MAB", "DPM", "AzureBackupServer", "AzureSql", "AzureStorage", "AzureWorkload", "DefaultBackup" ], "x-ms-enum": { "name": "BackupManagementType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "AzureIaasVM", "value": "AzureIaasVM" }, { "name": "MAB", "value": "MAB" }, { "name": "DPM", "value": "DPM" }, { "name": "AzureBackupServer", "value": "AzureBackupServer" }, { "name": "AzureSql", "value": "AzureSql" }, { "name": "AzureStorage", "value": "AzureStorage" }, { "name": "AzureWorkload", "value": "AzureWorkload" }, { "name": "DefaultBackup", "value": "DefaultBackup" } ] } }, "BackupManagementUsage": { "type": "object", "description": "Backup management usages of a vault.", "properties": { "unit": { "$ref": "#/definitions/UsagesUnit", "description": "Unit of the usage." }, "quotaPeriod": { "type": "string", "description": "Quota period of usage." }, "nextResetTime": { "type": "string", "format": "date-time", "description": "Next reset time of usage." }, "currentValue": { "type": "integer", "format": "int64", "description": "Current value of usage." }, "limit": { "type": "integer", "format": "int64", "description": "Limit of usage." }, "name": { "$ref": "#/definitions/NameInfo", "description": "Name of usage." } } }, "BackupManagementUsageList": { "type": "object", "description": "Backup management usage for vault.", "properties": { "value": { "type": "array", "description": "The list of backup management usages for the given vault.", "items": { "$ref": "#/definitions/BackupManagementUsage" }, "x-ms-identifiers": [] } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "BackupRequest": { "type": "object", "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "BackupRequestResource": { "type": "object", "description": "Base class for backup request. Workload-specific backup requests are derived from this class.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/BackupRequest", "description": "BackupRequestResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "BackupResourceConfig": { "type": "object", "description": "The resource storage details.", "properties": { "storageModelType": { "$ref": "#/definitions/StorageType", "description": "Storage type" }, "storageType": { "$ref": "#/definitions/StorageType", "description": "Storage type." }, "storageTypeState": { "$ref": "#/definitions/StorageTypeState", "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked." }, "crossRegionRestoreFlag": { "type": "boolean", "description": "Opt in details of Cross Region Restore feature." }, "dedupState": { "$ref": "#/definitions/DedupState", "description": "Vault Dedup state" }, "xcoolState": { "$ref": "#/definitions/XcoolState", "description": "Vault x-cool state" } } }, "BackupResourceConfigResource": { "type": "object", "description": "The resource storage details.", "properties": { "properties": { "$ref": "#/definitions/BackupResourceConfig", "description": "BackupResourceConfigResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "BackupResourceEncryptionConfig": { "type": "object", "properties": { "encryptionAtRestType": { "$ref": "#/definitions/EncryptionAtRestType", "description": "Encryption At Rest Type" }, "keyUri": { "type": "string", "description": "Key Vault Key URI" }, "subscriptionId": { "type": "string", "description": "Key Vault Subscription Id" }, "lastUpdateStatus": { "$ref": "#/definitions/LastUpdateStatus" }, "infrastructureEncryptionState": { "$ref": "#/definitions/InfrastructureEncryptionState" } } }, "BackupResourceEncryptionConfigExtended": { "type": "object", "properties": { "userAssignedIdentity": { "type": "string", "description": "User Assigned Identity Id" }, "useSystemAssignedIdentity": { "type": "boolean", "description": "bool to indicate whether to use system Assigned Identity or not" } }, "allOf": [ { "$ref": "#/definitions/BackupResourceEncryptionConfig" } ] }, "BackupResourceEncryptionConfigExtendedResource": { "type": "object", "description": "", "properties": { "properties": { "$ref": "#/definitions/BackupResourceEncryptionConfigExtended", "description": "The properties of the backup resource encryption config extended resource" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "BackupResourceEncryptionConfigResource": { "type": "object", "description": "", "properties": { "properties": { "$ref": "#/definitions/BackupResourceEncryptionConfig", "description": "The properties of the backup resource encryption config" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "BackupResourceVaultConfig": { "type": "object", "description": "Backup resource vault config details.", "properties": { "storageModelType": { "$ref": "#/definitions/StorageType", "description": "Storage type." }, "storageType": { "$ref": "#/definitions/StorageType", "description": "Storage type." }, "storageTypeState": { "$ref": "#/definitions/StorageTypeState", "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked." }, "enhancedSecurityState": { "$ref": "#/definitions/EnhancedSecurityState", "description": "Enabled or Disabled." }, "softDeleteFeatureState": { "$ref": "#/definitions/SoftDeleteFeatureState", "description": "Soft Delete feature state" }, "softDeleteRetentionPeriodInDays": { "type": "integer", "format": "int32", "description": "Soft delete retention period in days" }, "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuard Operation Requests", "items": { "type": "string" } }, "isSoftDeleteFeatureStateEditable": { "type": "boolean", "description": "This flag is no longer in use. Please use 'softDeleteFeatureState' to set the soft delete state for the vault" } } }, "BackupResourceVaultConfigResource": { "type": "object", "description": "Backup resource vault config details.", "properties": { "properties": { "$ref": "#/definitions/BackupResourceVaultConfig", "description": "BackupResourceVaultConfigResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "BackupStatusRequest": { "type": "object", "description": "BackupStatus request.", "properties": { "resourceType": { "$ref": "#/definitions/DataSourceType", "description": "Container Type - VM, SQLPaaS, DPM, AzureFileShare..." }, "resourceId": { "type": "string", "description": "Entire ARM resource id of the resource" }, "poLogicalName": { "type": "string", "description": "Protectable Item Logical Name" } } }, "BackupStatusResponse": { "type": "object", "description": "BackupStatus response.", "properties": { "protectionStatus": { "$ref": "#/definitions/ProtectionStatus", "description": "Specifies whether the container is registered or not" }, "vaultId": { "type": "string", "description": "Specifies the arm resource id of the vault" }, "fabricName": { "$ref": "#/definitions/FabricName", "description": "Specifies the fabric name - Azure or AD" }, "containerName": { "type": "string", "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname." }, "protectedItemName": { "type": "string", "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname." }, "errorCode": { "type": "string", "description": "ErrorCode in case of intent failed" }, "errorMessage": { "type": "string", "description": "ErrorMessage in case of intent failed." }, "policyName": { "type": "string", "description": "Specifies the policy name which is used for protection" }, "registrationStatus": { "type": "string", "description": "Container registration status" }, "protectedItemsCount": { "type": "integer", "format": "int32", "description": "Number of protected items" }, "acquireStorageAccountLock": { "$ref": "#/definitions/AcquireStorageAccountLock", "description": "Specifies whether the storage account lock has been acquired or not" } } }, "BackupType": { "type": "string", "description": "Type of backup, viz. Full, Differential, Log or CopyOnlyFull", "enum": [ "Invalid", "Full", "Differential", "Log", "CopyOnlyFull", "Incremental", "SnapshotFull", "SnapshotCopyOnlyFull" ], "x-ms-enum": { "name": "BackupType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Full", "value": "Full" }, { "name": "Differential", "value": "Differential" }, { "name": "Log", "value": "Log" }, { "name": "CopyOnlyFull", "value": "CopyOnlyFull" }, { "name": "Incremental", "value": "Incremental" }, { "name": "SnapshotFull", "value": "SnapshotFull" }, { "name": "SnapshotCopyOnlyFull", "value": "SnapshotCopyOnlyFull" } ] } }, "BmspoQueryObject": { "type": "object", "description": "Filters to list items that can be backed up.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type." }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type" }, "containerName": { "type": "string", "description": "Full name of the container whose Protectable Objects should be returned." }, "status": { "type": "string", "description": "Backup status query parameter." }, "friendlyName": { "type": "string", "description": "Friendly name." } } }, "BmsrpQueryObject": { "type": "object", "description": "Filters to list backup copies.", "properties": { "startDate": { "type": "string", "format": "date-time", "description": "Backup copies created after this time." }, "endDate": { "type": "string", "format": "date-time", "description": "Backup copies created before this time." }, "restorePointQueryType": { "$ref": "#/definitions/RestorePointQueryType", "description": "RestorePoint type" }, "extendedInfo": { "type": "boolean", "description": "In Get Recovery Point, it tells whether extended information about recovery point is asked." }, "moveReadyRPOnly": { "type": "boolean", "description": "Whether the RP can be moved to another tier" }, "includeSoftDeletedRP": { "type": "boolean", "description": "Flag to indicate whether Soft Deleted RPs should be included/excluded from result." }, "baseSnapshotRPId": { "type": "string", "description": "Id of the base snapshot recovery point." }, "baseRPDatasourceId": { "type": "string", "description": "Id of the datasource of the base snapshot recovery point." }, "getLatestRPOnly": { "type": "boolean", "description": "Flag to indicate whether to get only the latest recovery point." } } }, "ClientDiscoveryDisplay": { "type": "object", "description": "Localized display information of an operation.", "properties": { "provider": { "type": "string", "description": "Name of the provider for display purposes" }, "resource": { "type": "string", "description": "ResourceType for which this Operation can be performed." }, "operation": { "type": "string", "description": "Operations Name itself." }, "description": { "type": "string", "description": "Description of the operation having details of what operation is about." } } }, "ClientDiscoveryForLogSpecification": { "type": "object", "description": "Class to represent shoebox log specification in json client discovery.", "properties": { "name": { "type": "string", "description": "Name for shoebox log specification." }, "displayName": { "type": "string", "description": "Localized display name" }, "blobDuration": { "type": "string", "description": "blob duration of shoebox log specification" } } }, "ClientDiscoveryForProperties": { "type": "object", "description": "Class to represent shoebox properties in json client discovery.", "properties": { "serviceSpecification": { "$ref": "#/definitions/ClientDiscoveryForServiceSpecification", "description": "Operation properties." } } }, "ClientDiscoveryForServiceSpecification": { "type": "object", "description": "Class to represent shoebox service specification in json client discovery.", "properties": { "logSpecifications": { "type": "array", "description": "List of log specifications of this operation.", "items": { "$ref": "#/definitions/ClientDiscoveryForLogSpecification" }, "x-ms-identifiers": [] } } }, "ClientDiscoveryResponse": { "type": "object", "description": "Operations List response which contains list of available APIs.", "properties": { "value": { "type": "array", "description": "List of available operations.", "items": { "$ref": "#/definitions/ClientDiscoveryValueForSingleApi" }, "x-ms-identifiers": [] }, "nextLink": { "type": "string", "description": "Link to the next chunk of Response." } } }, "ClientDiscoveryValueForSingleApi": { "type": "object", "description": "Available operation details.", "properties": { "name": { "type": "string", "description": "Name of the Operation." }, "display": { "$ref": "#/definitions/ClientDiscoveryDisplay", "description": "Contains the localized display information for this particular operation" }, "origin": { "type": "string", "description": "The intended executor of the operation;governs the display of the operation in the RBAC UX and the audit logs UX" }, "properties": { "$ref": "#/definitions/ClientDiscoveryForProperties", "description": "ShoeBox properties for the given operation." } } }, "ClientScriptForConnect": { "type": "object", "description": "Client script details for file / folder restore.", "properties": { "scriptContent": { "type": "string", "description": "File content of the client script for file / folder restore." }, "scriptExtension": { "type": "string", "description": "File extension of the client script for file / folder restore - .ps1 , .sh , etc." }, "osType": { "type": "string", "description": "OS type - Windows, Linux etc. for which this file / folder restore client script works." }, "url": { "type": "string", "description": "URL of Executable from where to source the content. If this is not null then ScriptContent should not be used" }, "scriptNameSuffix": { "type": "string", "description": "Mandatory suffix that should be added to the name of script that is given for download to user.\nIf its null or empty then , ignore it." } } }, "CloudError": { "type": "object", "description": "An error response from the Container Instance service.", "properties": { "error": { "$ref": "#/definitions/CloudErrorBody", "description": "The error object." } } }, "CloudErrorBody": { "type": "object", "description": "An error response from the Container Instance service.", "properties": { "code": { "type": "string", "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.", "readOnly": true }, "message": { "type": "string", "description": "A message describing the error, intended to be suitable for display in a user interface.", "readOnly": true }, "target": { "type": "string", "description": "The target of the particular error. For example, the name of the property in error.", "readOnly": true }, "details": { "type": "array", "description": "A list of additional details about the error.", "items": { "$ref": "#/definitions/CloudErrorBody" }, "readOnly": true, "x-ms-identifiers": [ "code" ] }, "additionalInfo": { "type": "array", "description": "The error additional info.", "items": { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorAdditionalInfo" }, "readOnly": true, "x-ms-identifiers": [] } } }, "ContainerIdentityInfo": { "type": "object", "description": "Container identity information", "properties": { "uniqueName": { "type": "string", "description": "Unique name of the container" }, "aadTenantId": { "type": "string", "description": "Protection container identity - AAD Tenant" }, "servicePrincipalClientId": { "type": "string", "description": "Protection container identity - AAD Service Principal" }, "audience": { "type": "string", "description": "Protection container identity - Audience" } } }, "ContainerType": { "type": "string", "description": "Type of container for filter", "enum": [ "Invalid", "Unknown", "IaasVMContainer", "IaasVMServiceContainer", "DPMContainer", "AzureBackupServerContainer", "MABContainer", "Cluster", "AzureSqlContainer", "Windows", "VCenter", "VMAppContainer", "SQLAGWorkLoadContainer", "StorageContainer", "GenericContainer", "HanaHSRContainer", "HanaScaleoutContainer" ], "x-ms-enum": { "name": "ContainerType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Unknown", "value": "Unknown" }, { "name": "IaasVMContainer", "value": "IaasVMContainer" }, { "name": "IaasVMServiceContainer", "value": "IaasVMServiceContainer" }, { "name": "DPMContainer", "value": "DPMContainer" }, { "name": "AzureBackupServerContainer", "value": "AzureBackupServerContainer" }, { "name": "MABContainer", "value": "MABContainer" }, { "name": "Cluster", "value": "Cluster" }, { "name": "AzureSqlContainer", "value": "AzureSqlContainer" }, { "name": "Windows", "value": "Windows" }, { "name": "VCenter", "value": "VCenter" }, { "name": "VMAppContainer", "value": "VMAppContainer" }, { "name": "SQLAGWorkLoadContainer", "value": "SQLAGWorkLoadContainer" }, { "name": "StorageContainer", "value": "StorageContainer" }, { "name": "GenericContainer", "value": "GenericContainer" }, { "name": "HanaHSRContainer", "value": "HanaHSRContainer" }, { "name": "HanaScaleoutContainer", "value": "HanaScaleoutContainer", "description": "HANA scale-out container type" } ] } }, "CopyOptions": { "type": "string", "description": "Options to resolve copy conflicts.", "enum": [ "Invalid", "CreateCopy", "Skip", "Overwrite", "FailOnConflict" ], "x-ms-enum": { "name": "CopyOptions", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "CreateCopy", "value": "CreateCopy" }, { "name": "Skip", "value": "Skip" }, { "name": "Overwrite", "value": "Overwrite" }, { "name": "FailOnConflict", "value": "FailOnConflict" } ] } }, "CreateMode": { "type": "string", "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source.", "enum": [ "Invalid", "Default", "Recover" ], "x-ms-enum": { "name": "CreateMode", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Default", "value": "Default" }, { "name": "Recover", "value": "Recover" } ] } }, "CrossTenantJobResourceList": { "type": "object", "description": "List of jobs for cross-tenant restore operations.", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/JobResource" }, "x-ms-identifiers": [] }, "nextLink": { "type": "string", "description": "The uri to fetch the next page of resources." } } }, "CrossTenantProtectedItemResourceList": { "type": "object", "description": "List of protected items for cross-tenant restore operations.", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectedItemResource" }, "x-ms-identifiers": [] }, "nextLink": { "type": "string", "description": "The uri to fetch the next page of resources." } } }, "CrossTenantRecoveryPointResourceList": { "type": "object", "description": "List of recovery points for cross-tenant restore operations.", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/RecoveryPointResource" }, "x-ms-identifiers": [] }, "nextLink": { "type": "string", "description": "The uri to fetch the next page of resources." } } }, "CrossTenantVaultMapping": { "type": "object", "description": "Cross-tenant vault mapping resource for cross-tenant restore.", "properties": { "properties": { "$ref": "#/definitions/CrossTenantVaultMappingProperties", "description": "CrossTenantVaultMapping properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "CrossTenantVaultMappingListResult": { "type": "object", "description": "The response of a CrossTenantVaultMapping list operation.", "properties": { "value": { "type": "array", "description": "The CrossTenantVaultMapping items on this page", "items": { "$ref": "#/definitions/CrossTenantVaultMapping" } }, "nextLink": { "type": "string", "format": "uri", "description": "The link to the next page of items" } }, "required": [ "value" ] }, "CrossTenantVaultMappingProperties": { "type": "object", "description": "Cross-tenant vault mapping properties for cross-tenant restore.\nRepresents the configuration linking a source vault to a target vault across tenants.", "properties": { "sourceVaultId": { "type": "string", "format": "arm-id", "description": "ARM resource ID of the source vault.", "x-ms-arm-id-details": { "allowedResources": [ { "type": "Microsoft.RecoveryServices/vaults" } ] } }, "sourceTenantId": { "type": "string", "description": "Tenant ID of the source vault for cross-tenant mapping.", "readOnly": true }, "mappingName": { "type": "string", "description": "Name of the mapping.", "readOnly": true }, "createdTime": { "type": "string", "format": "date-time", "description": "Timestamp when the mapping was created.", "readOnly": true }, "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuardOperationRequests on which LAC check will be performed.", "items": { "type": "string", "format": "arm-id", "description": "A type definition that refers the id to an Azure Resource Manager resource." } }, "provisioningState": { "type": "string", "description": "Provisioning state of the resource.", "enum": [ "Succeeded", "Failed", "Canceled", "Provisioning", "Updating", "Deleting", "Accepted" ], "x-ms-enum": { "modelAsString": false }, "readOnly": true } }, "required": [ "sourceVaultId" ] }, "CrossTenantVaultMappingStatusResponse": { "type": "object", "description": "Response for CheckVaultMappingStatus API.\nContains information about whether a source vault is mapped to a target vault.", "properties": { "mappingName": { "type": "string", "description": "Mapping name (if mapped)." }, "mappingState": { "$ref": "#/definitions/VaultMappingState", "description": "Current state of the mapping." } } }, "DPMContainerExtendedInfo": { "type": "object", "description": "Additional information of the DPMContainer.", "properties": { "lastRefreshedAt": { "type": "string", "format": "date-time", "description": "Last refresh time of the DPMContainer." } } }, "DPMProtectedItem": { "type": "object", "description": "Additional information on Backup engine specific backup item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the managed item" }, "backupEngineName": { "type": "string", "description": "Backup Management server protecting this backup item" }, "protectionState": { "$ref": "#/definitions/ProtectedItemState", "description": "Protection state of the backup engine" }, "extendedInfo": { "$ref": "#/definitions/DPMProtectedItemExtendedInfo", "description": "Extended info of the backup item." } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "DPMProtectedItem" }, "DPMProtectedItemExtendedInfo": { "type": "object", "description": "Additional information of DPM Protected item.", "properties": { "protectableObjectLoadPath": { "type": "object", "description": "Attribute to provide information on various DBs.", "additionalProperties": { "type": "string" } }, "protected": { "type": "boolean", "description": "To check if backup item is disk protected." }, "isPresentOnCloud": { "type": "boolean", "description": "To check if backup item is cloud protected." }, "lastBackupStatus": { "type": "string", "description": "Last backup status information on backup item." }, "lastRefreshedAt": { "type": "string", "format": "date-time", "description": "Last refresh time on backup item." }, "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "Oldest cloud recovery point time." }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "cloud recovery point count." }, "onPremiseOldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "Oldest disk recovery point time." }, "onPremiseLatestRecoveryPoint": { "type": "string", "format": "date-time", "description": "latest disk recovery point time." }, "onPremiseRecoveryPointCount": { "type": "integer", "format": "int32", "description": "disk recovery point count." }, "isCollocated": { "type": "boolean", "description": "To check if backup item is collocated." }, "protectionGroupName": { "type": "string", "description": "Protection group name of the backup item." }, "diskStorageUsedInBytes": { "type": "string", "description": "Used Disk storage in bytes." }, "totalDiskStorageSizeInBytes": { "type": "string", "description": "total Disk storage in bytes." } } }, "DailyRetentionFormat": { "type": "object", "description": "Daily retention format.", "properties": { "daysOfTheMonth": { "type": "array", "description": "List of days of the month.", "items": { "$ref": "#/definitions/Day" }, "x-ms-identifiers": [] } } }, "DailyRetentionSchedule": { "type": "object", "description": "Daily retention schedule.", "properties": { "retentionTimes": { "type": "array", "description": "Retention times of retention policy.", "items": { "type": "string", "format": "date-time" } }, "retentionDuration": { "$ref": "#/definitions/RetentionDuration", "description": "Retention duration of retention Policy." } } }, "DailySchedule": { "type": "object", "properties": { "scheduleRunTimes": { "type": "array", "description": "List of times of day this schedule has to be run.", "items": { "type": "string", "format": "date-time" } } } }, "DataMoveLevel": { "type": "string", "description": "DataMove Level", "enum": [ "Invalid", "Vault", "Container" ], "x-ms-enum": { "name": "DataMoveLevel", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Vault", "value": "Vault" }, { "name": "Container", "value": "Container" } ] } }, "DataSourceType": { "type": "string", "description": "Type of workload this item represents.", "enum": [ "Invalid", "VM", "FileFolder", "AzureSqlDb", "SQLDB", "Exchange", "Sharepoint", "VMwareVM", "SystemState", "Client", "GenericDataSource", "SQLDataBase", "AzureFileShare", "SAPHanaDatabase", "SAPAseDatabase", "SAPHanaDBInstance" ], "x-ms-enum": { "name": "DataSourceType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "VM", "value": "VM" }, { "name": "FileFolder", "value": "FileFolder" }, { "name": "AzureSqlDb", "value": "AzureSqlDb" }, { "name": "SQLDB", "value": "SQLDB" }, { "name": "Exchange", "value": "Exchange" }, { "name": "Sharepoint", "value": "Sharepoint" }, { "name": "VMwareVM", "value": "VMwareVM" }, { "name": "SystemState", "value": "SystemState" }, { "name": "Client", "value": "Client" }, { "name": "GenericDataSource", "value": "GenericDataSource" }, { "name": "SQLDataBase", "value": "SQLDataBase" }, { "name": "AzureFileShare", "value": "AzureFileShare" }, { "name": "SAPHanaDatabase", "value": "SAPHanaDatabase" }, { "name": "SAPAseDatabase", "value": "SAPAseDatabase" }, { "name": "SAPHanaDBInstance", "value": "SAPHanaDBInstance" } ] } }, "DatabaseInRP": { "type": "object", "description": "Database included in RP.", "properties": { "datasourceId": { "type": "string", "description": "Datasource Id for the database." }, "datasourceName": { "type": "string", "description": "Datasource name for the database." } } }, "Day": { "type": "object", "description": "Day of the week.", "properties": { "date": { "type": "integer", "format": "int32", "description": "Date of the month" }, "isLast": { "type": "boolean", "description": "Whether Date is last date of month" } } }, "DayOfWeek": { "type": "string", "enum": [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ], "x-ms-enum": { "name": "DayOfWeek", "modelAsString": false } }, "DedupState": { "type": "string", "description": "Vault Dedup state", "enum": [ "Invalid", "Enabled", "Disabled" ], "x-ms-enum": { "name": "DedupState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Enabled", "value": "Enabled" }, { "name": "Disabled", "value": "Disabled" } ] } }, "DiskExclusionProperties": { "type": "object", "properties": { "diskLunList": { "type": "array", "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection.", "items": { "type": "integer", "format": "int32" } }, "isInclusionList": { "type": "boolean", "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup." } } }, "DiskInformation": { "type": "object", "description": "Disk information", "properties": { "lun": { "type": "integer", "format": "int32" }, "name": { "type": "string" } } }, "DistributedNodesInfo": { "type": "object", "description": "This is used to represent the various nodes of the distributed container.", "properties": { "nodeName": { "type": "string", "description": "Name of the node under a distributed container." }, "status": { "type": "string", "description": "Status of this Node.\nFailed | Succeeded" }, "errorDetail": { "$ref": "#/definitions/ErrorDetail", "description": "Error Details if the Status is non-success." }, "sourceResourceId": { "type": "string", "description": "ARM resource id of the node" } } }, "DpmBackupEngine": { "type": "object", "description": "Data Protection Manager (DPM) specific backup engine.", "allOf": [ { "$ref": "#/definitions/BackupEngineBase" } ], "x-ms-discriminator-value": "DpmBackupEngine" }, "DpmContainer": { "type": "object", "description": "DPM workload-specific protection container.", "properties": { "canReRegister": { "type": "boolean", "description": "Specifies whether the container is re-registrable." }, "containerId": { "type": "string", "description": "ID of container." }, "protectedItemCount": { "type": "integer", "format": "int64", "description": "Number of protected items in the BackupEngine" }, "dpmAgentVersion": { "type": "string", "description": "Backup engine Agent version" }, "dpmServers": { "type": "array", "description": "List of BackupEngines protecting the container", "items": { "type": "string" } }, "upgradeAvailable": { "type": "boolean", "description": "To check if upgrade available" }, "protectionStatus": { "type": "string", "description": "Protection status of the container." }, "extendedInfo": { "$ref": "#/definitions/DPMContainerExtendedInfo", "description": "Extended Info of the container." } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "DPMContainer" }, "DpmErrorInfo": { "type": "object", "description": "DPM workload-specific error information.", "properties": { "errorString": { "type": "string", "description": "Localized error string." }, "recommendations": { "type": "array", "description": "List of localized recommendations for above error code.", "items": { "type": "string" } } } }, "DpmJob": { "type": "object", "description": "DPM workload-specific job object.", "properties": { "duration": { "type": "string", "format": "duration", "description": "Time elapsed for job." }, "dpmServerName": { "type": "string", "description": "DPM server name managing the backup item or backup job." }, "containerName": { "type": "string", "description": "Name of cluster/server protecting current backup item, if any." }, "containerType": { "type": "string", "description": "Type of container." }, "workloadType": { "type": "string", "description": "Type of backup item." }, "actionsInfo": { "type": "array", "description": "The state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "errorDetails": { "type": "array", "description": "The errors.", "items": { "$ref": "#/definitions/DpmErrorInfo" }, "x-ms-identifiers": [] }, "extendedInfo": { "$ref": "#/definitions/DpmJobExtendedInfo", "description": "Additional information for this job." } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "DpmJob" }, "DpmJobExtendedInfo": { "type": "object", "description": "Additional information on the DPM workload-specific job.", "properties": { "tasksList": { "type": "array", "description": "List of tasks associated with this job.", "items": { "$ref": "#/definitions/DpmJobTaskDetails" }, "x-ms-identifiers": [ "taskId" ] }, "propertyBag": { "type": "object", "description": "The job properties.", "additionalProperties": { "type": "string" } }, "dynamicErrorMessage": { "type": "string", "description": "Non localized error message on job execution." } } }, "DpmJobTaskDetails": { "type": "object", "description": "DPM workload-specific job task details.", "properties": { "taskId": { "type": "string", "description": "The task display name." }, "startTime": { "type": "string", "format": "date-time", "description": "The start time." }, "endTime": { "type": "string", "format": "date-time", "description": "The end time." }, "duration": { "type": "string", "format": "duration", "description": "Time elapsed for task." }, "status": { "type": "string", "description": "The status." } } }, "EncryptionAtRestType": { "type": "string", "description": "Encryption At Rest Type", "enum": [ "Invalid", "MicrosoftManaged", "CustomerManaged" ], "x-ms-enum": { "name": "EncryptionAtRestType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "MicrosoftManaged", "value": "MicrosoftManaged" }, { "name": "CustomerManaged", "value": "CustomerManaged" } ] } }, "EncryptionDetails": { "type": "object", "description": "Details needed if the VM was encrypted at the time of backup.", "properties": { "encryptionEnabled": { "type": "boolean", "description": "Identifies whether this backup copy represents an encrypted VM at the time of backup." }, "kekUrl": { "type": "string", "description": "Key Url." }, "secretKeyUrl": { "type": "string", "description": "Secret Url." }, "kekVaultId": { "type": "string", "description": "ID of Key Vault where KEK is stored." }, "secretKeyVaultId": { "type": "string", "description": "ID of Key Vault where Secret is stored." } } }, "EnhancedSecurityState": { "type": "string", "description": "Enabled or Disabled.", "enum": [ "Invalid", "Enabled", "Disabled" ], "x-ms-enum": { "name": "EnhancedSecurityState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Enabled", "value": "Enabled" }, { "name": "Disabled", "value": "Disabled" } ] } }, "ErrorDetail": { "type": "object", "description": "Error Detail class which encapsulates Code, Message and Recommendations.", "properties": { "code": { "type": "string", "description": "Error code.", "readOnly": true }, "message": { "type": "string", "description": "Error Message related to the Code.", "readOnly": true }, "recommendations": { "type": "array", "description": "List of recommendation strings.", "items": { "type": "string" }, "readOnly": true } } }, "ExportJobsOperationResultInfo": { "type": "object", "description": "This class is used to send blob details after exporting jobs.", "properties": { "blobUrl": { "type": "string", "description": "URL of the blob into which the serialized string of list of jobs is exported." }, "blobSasKey": { "type": "string", "description": "SAS key to access the blob. It expires in 15 mins." }, "excelFileBlobUrl": { "type": "string", "description": "URL of the blob into which the ExcelFile is uploaded." }, "excelFileBlobSasKey": { "type": "string", "description": "SAS key to access the blob. It expires in 15 mins." } }, "allOf": [ { "$ref": "#/definitions/OperationResultInfoBase" } ], "x-ms-discriminator-value": "ExportJobsOperationResultInfo" }, "ExtendedLocation": { "type": "object", "description": "The extended location of Recovery point where VM was present.", "properties": { "name": { "type": "string", "description": "Name of the extended location." }, "type": { "type": "string", "description": "Type of the extended location. Possible values include: 'EdgeZone'" } } }, "ExtendedProperties": { "type": "object", "description": "Extended Properties for Azure IaasVM Backup.", "properties": { "diskExclusionProperties": { "$ref": "#/definitions/DiskExclusionProperties", "description": "Extended Properties for Disk Exclusion." }, "linuxVmApplicationName": { "type": "string", "description": "Linux VM name" } } }, "FabricName": { "type": "string", "description": "Specifies the fabric name - Azure or AD", "enum": [ "Invalid", "Azure" ], "x-ms-enum": { "name": "FabricName", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Azure", "value": "Azure" } ] } }, "FeatureSupportRequest": { "type": "object", "description": "Base class for feature request", "properties": { "featureType": { "type": "string", "description": "backup support feature type." } }, "discriminator": "featureType", "required": [ "featureType" ] }, "FetchTieringCostInfoForRehydrationRequest": { "type": "object", "description": "Request parameters for fetching cost info of rehydration", "properties": { "containerName": { "type": "string", "description": "Name of the protected item container" }, "protectedItemName": { "type": "string", "description": "Name of the protectedItemName" }, "recoveryPointId": { "type": "string", "description": "ID of the backup copy for rehydration cost info needs to be fetched." }, "rehydrationPriority": { "$ref": "#/definitions/RehydrationPriority", "description": "Rehydration Priority" } }, "required": [ "containerName", "protectedItemName", "recoveryPointId", "rehydrationPriority" ], "allOf": [ { "$ref": "#/definitions/FetchTieringCostInfoRequest" } ], "x-ms-discriminator-value": "FetchTieringCostInfoForRehydrationRequest" }, "FetchTieringCostInfoRequest": { "type": "object", "description": "Base class for tiering cost request.\nSpecific cost request types are derived from this class.", "properties": { "sourceTierType": { "$ref": "#/definitions/RecoveryPointTierType", "description": "Source tier for the request" }, "targetTierType": { "$ref": "#/definitions/RecoveryPointTierType", "description": "target tier for the request" }, "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "sourceTierType", "targetTierType", "objectType" ] }, "FetchTieringCostSavingsInfoForPolicyRequest": { "type": "object", "description": "Request parameters for tiering cost info for policy", "properties": { "policyName": { "type": "string", "description": "Name of the backup policy for which the cost savings information is requested" } }, "required": [ "policyName" ], "allOf": [ { "$ref": "#/definitions/FetchTieringCostInfoRequest" } ], "x-ms-discriminator-value": "FetchTieringCostSavingsInfoForPolicyRequest" }, "FetchTieringCostSavingsInfoForProtectedItemRequest": { "type": "object", "description": "Request parameters for tiering cost info for protected item", "properties": { "containerName": { "type": "string", "description": "Name of the protected item container" }, "protectedItemName": { "type": "string", "description": "Name of the protectedItemName" } }, "required": [ "containerName", "protectedItemName" ], "allOf": [ { "$ref": "#/definitions/FetchTieringCostInfoRequest" } ], "x-ms-discriminator-value": "FetchTieringCostSavingsInfoForProtectedItemRequest" }, "FetchTieringCostSavingsInfoForVaultRequest": { "type": "object", "description": "Request parameters for tiering cost info for vault", "allOf": [ { "$ref": "#/definitions/FetchTieringCostInfoRequest" } ], "x-ms-discriminator-value": "FetchTieringCostSavingsInfoForVaultRequest" }, "GenericContainer": { "type": "object", "description": "Base class for generic container of backup items", "properties": { "fabricName": { "type": "string", "description": "Name of the container's fabric" }, "extendedInformation": { "$ref": "#/definitions/GenericContainerExtendedInfo", "description": "Extended information (not returned in List container API calls)" } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "GenericContainer" }, "GenericContainerExtendedInfo": { "type": "object", "description": "Container extended information", "properties": { "rawCertData": { "type": "string", "description": "Public key of container cert" }, "containerIdentityInfo": { "$ref": "#/definitions/ContainerIdentityInfo", "description": "Container identity information" }, "serviceEndpoints": { "type": "object", "description": "Azure Backup Service Endpoints for the container", "additionalProperties": { "type": "string" } } } }, "GenericProtectedItem": { "type": "object", "description": "Base class for backup items.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the container." }, "policyState": { "type": "string", "description": "Indicates consistency of policy object and policy applied to this backup item." }, "protectionState": { "$ref": "#/definitions/ProtectionState", "description": "Backup state of this backup item." }, "protectedItemId": { "type": "integer", "format": "int64", "description": "Data Plane Service ID of the protected item." }, "sourceAssociations": { "type": "object", "description": "Loosely coupled (type, value) associations (example - parent of a protected item)", "additionalProperties": { "type": "string" } }, "fabricName": { "type": "string", "description": "Name of this backup item's fabric." } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "GenericProtectedItem" }, "GenericProtectionPolicy": { "type": "object", "description": "Azure VM (Mercury) workload-specific backup policy.", "properties": { "subProtectionPolicy": { "type": "array", "description": "List of sub-protection policies which includes schedule and retention", "items": { "$ref": "#/definitions/SubProtectionPolicy" }, "x-ms-identifiers": [] }, "timeZone": { "type": "string", "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." }, "fabricName": { "type": "string", "description": "Name of this policy's fabric." } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "GenericProtectionPolicy" }, "GenericRecoveryPoint": { "type": "object", "description": "Generic backup copy.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the backup copy." }, "recoveryPointType": { "type": "string", "description": "Type of the backup copy." }, "recoveryPointTime": { "type": "string", "format": "date-time", "description": "Time at which this backup copy was created." }, "recoveryPointAdditionalInfo": { "type": "string", "description": "Additional information associated with this backup copy." }, "recoveryPointProperties": { "$ref": "#/definitions/RecoveryPointProperties", "description": "Properties of Recovery Point" } }, "allOf": [ { "$ref": "#/definitions/RecoveryPoint" } ], "x-ms-discriminator-value": "GenericRecoveryPoint" }, "GetProtectedItemQueryObject": { "type": "object", "description": "Filters to list backup items.", "properties": { "expand": { "type": "string", "description": "Specifies if the additional information should be provided for this item." } } }, "HealthState": { "type": "string", "description": "Health State for the backed up item.", "enum": [ "Passed", "ActionRequired", "ActionSuggested", "Invalid" ], "x-ms-enum": { "name": "HealthState", "modelAsString": true, "values": [ { "name": "Passed", "value": "Passed" }, { "name": "ActionRequired", "value": "ActionRequired" }, { "name": "ActionSuggested", "value": "ActionSuggested" }, { "name": "Invalid", "value": "Invalid" } ] } }, "HealthStatus": { "type": "string", "description": "Health status of protected item.", "enum": [ "Passed", "ActionRequired", "ActionSuggested", "Invalid" ], "x-ms-enum": { "name": "HealthStatus", "modelAsString": true, "values": [ { "name": "Passed", "value": "Passed" }, { "name": "ActionRequired", "value": "ActionRequired" }, { "name": "ActionSuggested", "value": "ActionSuggested" }, { "name": "Invalid", "value": "Invalid" } ] } }, "HourlySchedule": { "type": "object", "properties": { "interval": { "type": "integer", "format": "int32", "description": "Interval at which backup needs to be triggered. For hourly the value\ncan be 4/6/8/12" }, "scheduleWindowStartTime": { "type": "string", "format": "date-time", "description": "To specify start time of the backup window" }, "scheduleWindowDuration": { "type": "integer", "format": "int32", "description": "To specify duration of the backup window" } } }, "HttpStatusCode": { "type": "string", "description": "HTTP Status Code of the operation.", "enum": [ "Continue", "SwitchingProtocols", "OK", "Created", "Accepted", "NonAuthoritativeInformation", "NoContent", "ResetContent", "PartialContent", "MultipleChoices", "Ambiguous", "MovedPermanently", "Moved", "Found", "Redirect", "SeeOther", "RedirectMethod", "NotModified", "UseProxy", "Unused", "TemporaryRedirect", "RedirectKeepVerb", "BadRequest", "Unauthorized", "PaymentRequired", "Forbidden", "NotFound", "MethodNotAllowed", "NotAcceptable", "ProxyAuthenticationRequired", "RequestTimeout", "Conflict", "Gone", "LengthRequired", "PreconditionFailed", "RequestEntityTooLarge", "RequestUriTooLong", "UnsupportedMediaType", "RequestedRangeNotSatisfiable", "ExpectationFailed", "UpgradeRequired", "InternalServerError", "NotImplemented", "BadGateway", "ServiceUnavailable", "GatewayTimeout", "HttpVersionNotSupported" ], "x-ms-enum": { "name": "HttpStatusCode", "modelAsString": false } }, "IAASVMPolicyType": { "type": "string", "enum": [ "Invalid", "V1", "V2" ], "x-ms-enum": { "name": "IAASVMPolicyType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "V1", "value": "V1" }, { "name": "V2", "value": "V2" } ] } }, "ILRRequest": { "type": "object", "description": "Parameters to Provision ILR API.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "ILRRequestResource": { "type": "object", "description": "Parameters to Provision ILR API.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/ILRRequest", "description": "ILRRequestResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "IaaSVMContainer": { "type": "object", "description": "IaaS VM workload-specific container.", "properties": { "virtualMachineId": { "type": "string", "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container." }, "virtualMachineVersion": { "type": "string", "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM." }, "resourceGroup": { "type": "string", "description": "Resource group name of Recovery Services Vault." } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "IaasVMContainer" }, "IaaSVMProtectableItem": { "type": "object", "description": "IaaS VM workload-specific backup item.", "properties": { "virtualMachineId": { "type": "string", "description": "Fully qualified ARM ID of the virtual machine." }, "virtualMachineVersion": { "type": "string", "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM." }, "resourceGroup": { "type": "string", "description": "Resource group name of Recovery Services Vault." } }, "allOf": [ { "$ref": "#/definitions/WorkloadProtectableItem" } ], "x-ms-discriminator-value": "IaaSVMProtectableItem" }, "IaasVMBackupRequest": { "type": "object", "description": "IaaS VM workload-specific backup request.", "properties": { "recoveryPointExpiryTimeInUTC": { "type": "string", "format": "date-time", "description": "Backup copy will expire after the time specified (UTC)." } }, "allOf": [ { "$ref": "#/definitions/BackupRequest" } ], "x-ms-discriminator-value": "IaasVMBackupRequest" }, "IaasVMILRRegistrationRequest": { "type": "object", "description": "Restore files/folders from a backup copy of IaaS VM.", "properties": { "recoveryPointId": { "type": "string", "description": "ID of the IaaS VM backup copy from where the files/folders have to be restored." }, "virtualMachineId": { "type": "string", "description": "Fully qualified ARM ID of the virtual machine whose the files / folders have to be restored." }, "initiatorName": { "type": "string", "description": "iSCSI initiator name." }, "renewExistingRegistration": { "type": "boolean", "description": "Whether to renew existing registration with the iSCSI server." } }, "allOf": [ { "$ref": "#/definitions/ILRRequest" } ], "x-ms-discriminator-value": "IaasVMILRRegistrationRequest" }, "IaasVMRecoveryPoint": { "type": "object", "description": "IaaS VM workload specific backup copy.", "properties": { "recoveryPointType": { "type": "string", "description": "Type of the backup copy." }, "recoveryPointTime": { "type": "string", "format": "date-time", "description": "Time at which this backup copy was created." }, "recoveryPointAdditionalInfo": { "type": "string", "description": "Additional information associated with this backup copy." }, "sourceVMStorageType": { "type": "string", "description": "Storage type of the VM whose backup copy is created." }, "isSourceVMEncrypted": { "type": "boolean", "description": "Identifies whether the VM was encrypted when the backup copy is created." }, "keyAndSecret": { "$ref": "#/definitions/KeyAndSecretDetails", "description": "Required details for recovering an encrypted VM. Applicable only when IsSourceVMEncrypted is true." }, "isInstantIlrSessionActive": { "type": "boolean", "description": "Is the session to recover items from this backup copy still active." }, "recoveryPointTierDetails": { "type": "array", "description": "Recovery point tier information.", "items": { "$ref": "#/definitions/RecoveryPointTierInformationV2" }, "x-ms-identifiers": [] }, "isManagedVirtualMachine": { "type": "boolean", "description": "Whether VM is with Managed Disks" }, "virtualMachineSize": { "type": "string", "description": "Virtual Machine Size" }, "originalStorageAccountOption": { "type": "boolean", "description": "Original Storage Account Option" }, "osType": { "type": "string", "description": "OS type" }, "recoveryPointDiskConfiguration": { "$ref": "#/definitions/RecoveryPointDiskConfiguration", "description": "Disk configuration" }, "zones": { "type": "array", "description": "Identifies the zone of the VM at the time of backup. Applicable only for zone-pinned Vms", "items": { "type": "string" } }, "recoveryPointMoveReadinessInfo": { "type": "object", "description": "Eligibility of RP to be moved to another tier", "additionalProperties": { "$ref": "#/definitions/RecoveryPointMoveReadinessInfo" } }, "securityType": { "type": "string", "description": "Security Type of the Disk" }, "recoveryPointProperties": { "$ref": "#/definitions/RecoveryPointProperties", "description": "Properties of Recovery Point" }, "isPrivateAccessEnabledOnAnyDisk": { "type": "boolean", "description": "This flag denotes if any of the disks in the VM are using Private access network setting" }, "extendedLocation": { "$ref": "#/definitions/ExtendedLocation", "description": "Extended location of the VM recovery point,\nshould be null if VM is in public cloud" } }, "allOf": [ { "$ref": "#/definitions/RecoveryPoint" } ], "x-ms-discriminator-value": "IaasVMRecoveryPoint" }, "IaasVMRestoreRequest": { "type": "object", "description": "IaaS VM workload-specific restore.", "properties": { "recoveryPointId": { "type": "string", "description": "ID of the backup copy to be recovered." }, "recoveryType": { "$ref": "#/definitions/RecoveryType", "description": "Type of this recovery." }, "sourceResourceId": { "type": "string", "description": "Fully qualified ARM ID of the VM which is being recovered." }, "targetVirtualMachineId": { "type": "string", "description": "This is the complete ARM Id of the VM that will be created.\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}/provider/Microsoft.Compute/virtualmachines/{vm}" }, "targetResourceGroupId": { "type": "string", "description": "This is the ARM Id of the resource group that you want to create for this Virtual machine and other artifacts.\nFor e.g. /subscriptions/{subId}/resourcegroups/{rg}" }, "storageAccountId": { "type": "string", "description": "Fully qualified ARM ID of the storage account to which the VM has to be restored." }, "virtualNetworkId": { "type": "string", "description": "This is the virtual network Id of the vnet that will be attached to the virtual machine.\nUser will be validated for join action permissions in the linked access." }, "subnetId": { "type": "string", "description": "Subnet ID, is the subnet ID associated with the to be restored VM. For Classic VMs it would be\n{VnetID}/Subnet/{SubnetName} and, for the Azure Resource Manager VMs it would be ARM resource ID used to represent\nthe subnet." }, "targetDomainNameId": { "type": "string", "description": "Fully qualified ARM ID of the domain name to be associated to the VM being restored. This applies only to Classic\nVirtual Machines." }, "region": { "type": "string", "description": "Region in which the virtual machine is restored." }, "affinityGroup": { "type": "string", "description": "Affinity group associated to VM to be restored. Used only for Classic Compute Virtual Machines." }, "createNewCloudService": { "type": "boolean", "description": "Should a new cloud service be created while restoring the VM. If this is false, VM will be restored to the same\ncloud service as it was at the time of backup." }, "originalStorageAccountOption": { "type": "boolean", "description": "Original Storage Account Option" }, "encryptionDetails": { "$ref": "#/definitions/EncryptionDetails", "description": "Details needed if the VM was encrypted at the time of backup." }, "restoreDiskLunList": { "type": "array", "description": "List of Disk LUNs for partial restore", "items": { "type": "integer", "format": "int32" } }, "restoreWithManagedDisks": { "type": "boolean", "description": "Flag to denote of an Unmanaged disk VM should be restored with Managed disks." }, "diskEncryptionSetId": { "type": "string", "description": "DiskEncryptionSet's ID - needed if the VM needs to be encrypted at rest during restore with customer managed key." }, "zones": { "type": "array", "description": "Target zone where the VM and its disks should be restored.", "items": { "type": "string" } }, "identityInfo": { "$ref": "#/definitions/IdentityInfo", "description": "Managed Identity information required to access customer storage account." }, "identityBasedRestoreDetails": { "$ref": "#/definitions/IdentityBasedRestoreDetails", "description": "IaaS VM workload specific restore details for restores using managed identity." }, "extendedLocation": { "$ref": "#/definitions/ExtendedLocation", "description": "Target extended location where the VM should be restored,\nshould be null if restore is to be done in public cloud" }, "securedVMDetails": { "$ref": "#/definitions/SecuredVMDetails", "description": "Stores Secured VM Details" }, "targetDiskNetworkAccessSettings": { "$ref": "#/definitions/TargetDiskNetworkAccessSettings", "description": "Specifies target network access settings for disks of VM to be restored," } }, "allOf": [ { "$ref": "#/definitions/RestoreRequest" } ], "x-ms-discriminator-value": "IaasVMRestoreRequest" }, "IaasVMRestoreWithRehydrationRequest": { "type": "object", "description": "IaaS VM workload-specific restore with integrated rehydration of recovery point.", "properties": { "recoveryPointRehydrationInfo": { "$ref": "#/definitions/RecoveryPointRehydrationInfo", "description": "RP Rehydration Info" } }, "allOf": [ { "$ref": "#/definitions/IaasVMRestoreRequest" } ], "x-ms-discriminator-value": "IaasVMRestoreWithRehydrationRequest" }, "IaasVMSnapshotConsistencyType": { "type": "string", "enum": [ "OnlyCrashConsistent" ], "x-ms-enum": { "name": "IaasVMSnapshotConsistencyType", "modelAsString": true, "values": [ { "name": "OnlyCrashConsistent", "value": "OnlyCrashConsistent" } ] } }, "IdentityBasedRestoreDetails": { "type": "object", "description": "IaaS VM workload specific restore details for restores using managed identity", "properties": { "objectType": { "type": "string", "description": "Gets the class type." }, "targetStorageAccountId": { "type": "string", "description": "Fully qualified ARM ID of the target storage account." } } }, "IdentityInfo": { "type": "object", "description": "Encapsulates Managed Identity related information", "properties": { "isSystemAssignedIdentity": { "type": "boolean", "description": "To differentiate if the managed identity is system assigned or user assigned" }, "managedIdentityResourceId": { "type": "string", "description": "Managed Identity Resource Id\nOptional: Might not be required in the case of system assigned managed identity" } } }, "InfrastructureEncryptionState": { "type": "string", "enum": [ "Invalid", "Disabled", "Enabled" ], "x-ms-enum": { "name": "InfrastructureEncryptionState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Disabled", "value": "Disabled" }, { "name": "Enabled", "value": "Enabled" } ] } }, "InquiryInfo": { "type": "object", "description": "Details about inquired protectable items under a given container.", "properties": { "status": { "type": "string", "description": "Inquiry Status for this container such as\nInProgress | Failed | Succeeded" }, "errorDetail": { "$ref": "#/definitions/ErrorDetail", "description": "Error Details if the Status is non-success." }, "inquiryDetails": { "type": "array", "description": "Inquiry Details which will have workload specific details.\nFor e.g. - For SQL and oracle this will contain different details.", "items": { "$ref": "#/definitions/WorkloadInquiryDetails" }, "x-ms-identifiers": [] } } }, "InquiryStatus": { "type": "string", "description": "Status of protectable item, i.e. InProgress,Succeeded,Failed", "enum": [ "Invalid", "Success", "Failed" ], "x-ms-enum": { "name": "InquiryStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Success", "value": "Success" }, { "name": "Failed", "value": "Failed" } ] } }, "InquiryValidation": { "type": "object", "description": "Validation for inquired protectable items under a given container.", "properties": { "status": { "type": "string", "description": "Status for the Inquiry Validation." }, "errorDetail": { "$ref": "#/definitions/ErrorDetail", "description": "Error Detail in case the status is non-success." }, "additionalDetail": { "type": "string", "description": "Error Additional Detail in case the status is non-success.", "readOnly": true }, "protectableItemCount": { "description": "Dictionary to store the count of ProtectableItems with key POType.", "readOnly": true } } }, "InstanceProtectionReadiness": { "type": "string", "description": "The state of instance protection.", "enum": [ "Unknown", "Ready", "ScheduleDisabled", "PartialProtection", "ProtectionError" ], "x-ms-enum": { "name": "InstanceProtectionReadiness", "modelAsString": true, "values": [ { "name": "Unknown", "value": "Unknown", "description": "Instance protection readiness is unknown" }, { "name": "Ready", "value": "Ready", "description": "Instance is ready for protection" }, { "name": "ScheduleDisabled", "value": "ScheduleDisabled", "description": "Backup schedule is disabled for this instance" }, { "name": "PartialProtection", "value": "PartialProtection", "description": "Instance is partially protected" }, { "name": "ProtectionError", "value": "ProtectionError", "description": "Instance protection encountered an error" } ] } }, "InstantItemRecoveryTarget": { "type": "object", "description": "Target details for file / folder restore.", "properties": { "clientScripts": { "type": "array", "description": "List of client scripts.", "items": { "$ref": "#/definitions/ClientScriptForConnect" }, "x-ms-identifiers": [] } } }, "InstantRPAdditionalDetails": { "type": "object", "properties": { "azureBackupRGNamePrefix": { "type": "string" }, "azureBackupRGNameSuffix": { "type": "string" } } }, "IntentItemType": { "type": "string", "description": "Type of workload this item represents", "enum": [ "Invalid", "SQLInstance", "SQLAvailabilityGroupContainer" ], "x-ms-enum": { "name": "IntentItemType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "SQLInstance", "value": "SQLInstance" }, { "name": "SQLAvailabilityGroupContainer", "value": "SQLAvailabilityGroupContainer" } ] } }, "Job": { "type": "object", "description": "Defines workload agnostic properties for a job.", "properties": { "entityFriendlyName": { "type": "string", "description": "Friendly name of the entity on which the current job is executing." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type to execute the current job." }, "operation": { "type": "string", "description": "The operation name." }, "status": { "type": "string", "description": "Job status." }, "startTime": { "type": "string", "format": "date-time", "description": "The start time." }, "endTime": { "type": "string", "format": "date-time", "description": "The end time." }, "activityId": { "type": "string", "description": "ActivityId of job." }, "jobType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "jobType", "required": [ "jobType" ] }, "JobOperationType": { "type": "string", "description": "Type of operation.", "enum": [ "Invalid", "Register", "UnRegister", "ConfigureBackup", "Backup", "Restore", "DisableBackup", "DeleteBackupData", "CrossRegionRestore", "Undelete", "UpdateCustomerManagedKey" ], "x-ms-enum": { "name": "JobOperationType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Register", "value": "Register" }, { "name": "UnRegister", "value": "UnRegister" }, { "name": "ConfigureBackup", "value": "ConfigureBackup" }, { "name": "Backup", "value": "Backup" }, { "name": "Restore", "value": "Restore" }, { "name": "DisableBackup", "value": "DisableBackup" }, { "name": "DeleteBackupData", "value": "DeleteBackupData" }, { "name": "CrossRegionRestore", "value": "CrossRegionRestore" }, { "name": "Undelete", "value": "Undelete" }, { "name": "UpdateCustomerManagedKey", "value": "UpdateCustomerManagedKey" } ] } }, "JobQueryObject": { "type": "object", "description": "Filters to list the jobs.", "properties": { "status": { "$ref": "#/definitions/JobStatus", "description": "Status of the job." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the job." }, "operation": { "$ref": "#/definitions/JobOperationType", "description": "Type of operation." }, "jobId": { "type": "string", "description": "JobID represents the job uniquely." }, "startTime": { "type": "string", "format": "date-time", "description": "Job has started at this time. Value is in UTC." }, "endTime": { "type": "string", "format": "date-time", "description": "Job has ended at this time. Value is in UTC." } } }, "JobResource": { "type": "object", "description": "Defines workload agnostic properties for a job.", "properties": { "properties": { "$ref": "#/definitions/Job", "description": "JobResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "JobResourceList": { "type": "object", "description": "List of Job resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/JobResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "JobStatus": { "type": "string", "description": "Status of the job.", "enum": [ "Invalid", "InProgress", "Completed", "Failed", "CompletedWithWarnings", "Cancelled", "Cancelling" ], "x-ms-enum": { "name": "JobStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "InProgress", "value": "InProgress" }, { "name": "Completed", "value": "Completed" }, { "name": "Failed", "value": "Failed" }, { "name": "CompletedWithWarnings", "value": "CompletedWithWarnings" }, { "name": "Cancelled", "value": "Cancelled" }, { "name": "Cancelling", "value": "Cancelling" } ] } }, "JobSupportedAction": { "type": "string", "enum": [ "Invalid", "Cancellable", "Retriable" ], "x-ms-enum": { "name": "JobSupportedAction", "modelAsString": false } }, "KEKDetails": { "type": "object", "description": "KEK is encryption key for BEK.", "properties": { "keyUrl": { "type": "string", "description": "Key is KEK." }, "keyVaultId": { "type": "string", "description": "Key Vault ID where this Key is stored." }, "keyBackupData": { "type": "string", "description": "KEK data." } } }, "KPIResourceHealthDetails": { "type": "object", "description": "KPI Resource Health Details", "properties": { "resourceHealthStatus": { "$ref": "#/definitions/ResourceHealthStatus", "description": "Resource Health Status" }, "resourceHealthDetails": { "type": "array", "description": "Resource Health Status", "items": { "$ref": "#/definitions/ResourceHealthDetails" }, "x-ms-identifiers": [ "code" ] } } }, "KeyAndSecretDetails": { "type": "object", "description": "BEK is bitlocker key.\nKEK is encryption key for BEK\nIf the VM was encrypted then we will store following details :\n1. Secret(BEK) - Url + Backup Data + vaultId.\n2. Key(KEK) - Url + Backup Data + vaultId.\n3. EncryptionMechanism\nBEK and KEK can potentially have different vault ids.", "properties": { "kekDetails": { "$ref": "#/definitions/KEKDetails", "description": "KEK is encryption key for BEK." }, "bekDetails": { "$ref": "#/definitions/BEKDetails", "description": "BEK is bitlocker encryption key." }, "encryptionMechanism": { "type": "string", "description": "Encryption mechanism: None/ SinglePass/ DoublePass" } } }, "LastBackupStatus": { "type": "string", "description": "Last backup operation status. Possible values: Healthy, Unhealthy.", "enum": [ "Invalid", "Healthy", "Unhealthy", "IRPending" ], "x-ms-enum": { "name": "LastBackupStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Healthy", "value": "Healthy" }, { "name": "Unhealthy", "value": "Unhealthy" }, { "name": "IRPending", "value": "IRPending" } ] } }, "LastUpdateStatus": { "type": "string", "enum": [ "Invalid", "NotEnabled", "PartiallySucceeded", "PartiallyFailed", "Failed", "Succeeded", "Initialized", "FirstInitialization" ], "x-ms-enum": { "name": "LastUpdateStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "NotEnabled", "value": "NotEnabled" }, { "name": "PartiallySucceeded", "value": "PartiallySucceeded" }, { "name": "PartiallyFailed", "value": "PartiallyFailed" }, { "name": "Failed", "value": "Failed" }, { "name": "Succeeded", "value": "Succeeded" }, { "name": "Initialized", "value": "Initialized" }, { "name": "FirstInitialization", "value": "FirstInitialization" } ] } }, "ListRecoveryPointsRecommendedForMoveRequest": { "type": "object", "description": "ListRecoveryPointsRecommendedForMoveRequest Request", "properties": { "objectType": { "type": "string", "description": "Gets the class type." }, "excludedRPList": { "type": "array", "description": "List of Recovery Points excluded from Move", "items": { "type": "string" } } } }, "LogSchedulePolicy": { "type": "object", "description": "Log policy schedule.", "properties": { "scheduleFrequencyInMins": { "type": "integer", "format": "int32", "description": "Frequency of the log schedule operation of this policy in minutes." } }, "allOf": [ { "$ref": "#/definitions/SchedulePolicy" } ], "x-ms-discriminator-value": "LogSchedulePolicy" }, "LongTermRetentionPolicy": { "type": "object", "description": "Long term retention policy.", "properties": { "dailySchedule": { "$ref": "#/definitions/DailyRetentionSchedule", "description": "Daily retention schedule of the protection policy." }, "weeklySchedule": { "$ref": "#/definitions/WeeklyRetentionSchedule", "description": "Weekly retention schedule of the protection policy." }, "monthlySchedule": { "$ref": "#/definitions/MonthlyRetentionSchedule", "description": "Monthly retention schedule of the protection policy." }, "yearlySchedule": { "$ref": "#/definitions/YearlyRetentionSchedule", "description": "Yearly retention schedule of the protection policy." } }, "allOf": [ { "$ref": "#/definitions/RetentionPolicy" } ], "x-ms-discriminator-value": "LongTermRetentionPolicy" }, "LongTermSchedulePolicy": { "type": "object", "description": "Long term policy schedule.", "allOf": [ { "$ref": "#/definitions/SchedulePolicy" } ], "x-ms-discriminator-value": "LongTermSchedulePolicy" }, "MABContainerHealthDetails": { "type": "object", "description": "MAB workload-specific Health Details.", "properties": { "code": { "type": "integer", "format": "int32", "description": "Health Code" }, "title": { "type": "string", "description": "Health Title" }, "message": { "type": "string", "description": "Health Message" }, "recommendations": { "type": "array", "description": "Health Recommended Actions", "items": { "type": "string" } } } }, "MabContainer": { "type": "object", "description": "Container with items backed up using MAB backup engine.", "properties": { "canReRegister": { "type": "boolean", "description": "Can the container be registered one more time." }, "containerId": { "type": "integer", "format": "int64", "description": "ContainerID represents the container." }, "protectedItemCount": { "type": "integer", "format": "int64", "description": "Number of items backed up in this container." }, "agentVersion": { "type": "string", "description": "Agent version of this container." }, "extendedInfo": { "$ref": "#/definitions/MabContainerExtendedInfo", "description": "Additional information for this container" }, "mabContainerHealthDetails": { "type": "array", "description": "Health details on this mab container.", "items": { "$ref": "#/definitions/MABContainerHealthDetails" }, "x-ms-identifiers": [ "code" ] }, "containerHealthState": { "type": "string", "description": "Health state of mab container." } }, "allOf": [ { "$ref": "#/definitions/ProtectionContainer" } ], "x-ms-discriminator-value": "Windows" }, "MabContainerExtendedInfo": { "type": "object", "description": "Additional information of the container.", "properties": { "lastRefreshedAt": { "type": "string", "format": "date-time", "description": "Time stamp when this container was refreshed." }, "backupItemType": { "$ref": "#/definitions/BackupItemType", "description": "Type of backup items associated with this container." }, "backupItems": { "type": "array", "description": "List of backup items associated with this container.", "items": { "type": "string" } }, "policyName": { "type": "string", "description": "Backup policy associated with this container." }, "lastBackupStatus": { "type": "string", "description": "Latest backup status of this container." } } }, "MabErrorInfo": { "type": "object", "description": "MAB workload-specific error information.", "properties": { "errorString": { "type": "string", "description": "Localized error string.", "readOnly": true }, "recommendations": { "type": "array", "description": "List of localized recommendations.", "items": { "type": "string" }, "readOnly": true } } }, "MabFileFolderProtectedItem": { "type": "object", "description": "MAB workload-specific backup item.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of this backup item." }, "computerName": { "type": "string", "description": "Name of the computer associated with this backup item." }, "lastBackupStatus": { "type": "string", "description": "Status of last backup operation." }, "lastBackupTime": { "type": "string", "format": "date-time", "description": "Timestamp of the last backup operation on this backup item." }, "protectionState": { "type": "string", "description": "Protected, ProtectionStopped, IRPending or ProtectionError" }, "deferredDeleteSyncTimeInUTC": { "type": "integer", "format": "int64", "description": "Sync time for deferred deletion in UTC" }, "extendedInfo": { "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo", "description": "Additional information with this backup item." } }, "allOf": [ { "$ref": "#/definitions/ProtectedItem" } ], "x-ms-discriminator-value": "MabFileFolderProtectedItem" }, "MabFileFolderProtectedItemExtendedInfo": { "type": "object", "description": "Additional information on the backed up item.", "properties": { "lastRefreshedAt": { "type": "string", "format": "date-time", "description": "Last time when the agent data synced to service." }, "oldestRecoveryPoint": { "type": "string", "format": "date-time", "description": "The oldest backup copy available." }, "recoveryPointCount": { "type": "integer", "format": "int32", "description": "Number of backup copies associated with the backup item." } } }, "MabJob": { "type": "object", "description": "MAB workload-specific job.", "properties": { "duration": { "type": "string", "format": "duration", "description": "Time taken by job to run." }, "actionsInfo": { "type": "array", "description": "The state/actions applicable on jobs like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "mabServerName": { "type": "string", "description": "Name of server protecting the DS." }, "mabServerType": { "$ref": "#/definitions/MabServerType", "description": "Server type of MAB container." }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type of backup item." }, "errorDetails": { "type": "array", "description": "The errors.", "items": { "$ref": "#/definitions/MabErrorInfo" }, "x-ms-identifiers": [] }, "extendedInfo": { "$ref": "#/definitions/MabJobExtendedInfo", "description": "Additional information on the job." } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "MabJob" }, "MabJobExtendedInfo": { "type": "object", "description": "Additional information for the MAB workload-specific job.", "properties": { "tasksList": { "type": "array", "description": "List of tasks for this job.", "items": { "$ref": "#/definitions/MabJobTaskDetails" }, "x-ms-identifiers": [ "taskId" ] }, "propertyBag": { "type": "object", "description": "The job properties.", "additionalProperties": { "type": "string" } }, "dynamicErrorMessage": { "type": "string", "description": "Non localized error message specific to this job." } } }, "MabJobTaskDetails": { "type": "object", "description": "MAB workload-specific job task details.", "properties": { "taskId": { "type": "string", "description": "The task display name." }, "startTime": { "type": "string", "format": "date-time", "description": "The start time." }, "endTime": { "type": "string", "format": "date-time", "description": "The end time." }, "duration": { "type": "string", "format": "duration", "description": "Time elapsed for task." }, "status": { "type": "string", "description": "The status." } } }, "MabProtectionPolicy": { "type": "object", "description": "Mab container-specific backup policy.", "properties": { "schedulePolicy": { "$ref": "#/definitions/SchedulePolicy", "description": "Backup schedule of backup policy." }, "retentionPolicy": { "$ref": "#/definitions/RetentionPolicy", "description": "Retention policy details." } }, "allOf": [ { "$ref": "#/definitions/ProtectionPolicy" } ], "x-ms-discriminator-value": "MAB" }, "MabServerType": { "type": "string", "description": "Server type of MAB container.", "enum": [ "Invalid", "Unknown", "IaasVMContainer", "IaasVMServiceContainer", "DPMContainer", "AzureBackupServerContainer", "MABContainer", "Cluster", "AzureSqlContainer", "Windows", "VCenter", "VMAppContainer", "SQLAGWorkLoadContainer", "StorageContainer", "GenericContainer" ], "x-ms-enum": { "name": "MabServerType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Unknown", "value": "Unknown" }, { "name": "IaasVMContainer", "value": "IaasVMContainer" }, { "name": "IaasVMServiceContainer", "value": "IaasVMServiceContainer" }, { "name": "DPMContainer", "value": "DPMContainer" }, { "name": "AzureBackupServerContainer", "value": "AzureBackupServerContainer" }, { "name": "MABContainer", "value": "MABContainer" }, { "name": "Cluster", "value": "Cluster" }, { "name": "AzureSqlContainer", "value": "AzureSqlContainer" }, { "name": "Windows", "value": "Windows" }, { "name": "VCenter", "value": "VCenter" }, { "name": "VMAppContainer", "value": "VMAppContainer" }, { "name": "SQLAGWorkLoadContainer", "value": "SQLAGWorkLoadContainer" }, { "name": "StorageContainer", "value": "StorageContainer" }, { "name": "GenericContainer", "value": "GenericContainer" } ] } }, "MonthOfYear": { "type": "string", "enum": [ "Invalid", "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" ], "x-ms-enum": { "name": "MonthOfYear", "modelAsString": false } }, "MonthlyRetentionSchedule": { "type": "object", "description": "Monthly retention schedule.", "properties": { "retentionScheduleFormatType": { "$ref": "#/definitions/RetentionScheduleFormat", "description": "Retention schedule format type for monthly retention policy." }, "retentionScheduleDaily": { "$ref": "#/definitions/DailyRetentionFormat", "description": "Daily retention format for monthly retention policy." }, "retentionScheduleWeekly": { "$ref": "#/definitions/WeeklyRetentionFormat", "description": "Weekly retention format for monthly retention policy." }, "retentionTimes": { "type": "array", "description": "Retention times of retention policy.", "items": { "type": "string", "format": "date-time" } }, "retentionDuration": { "$ref": "#/definitions/RetentionDuration", "description": "Retention duration of retention Policy." } } }, "MoveRPAcrossTiersRequest": { "type": "object", "properties": { "objectType": { "type": "string", "description": "Gets the class type." }, "sourceTierType": { "$ref": "#/definitions/RecoveryPointTierType", "description": "Source tier from where RP needs to be moved" }, "targetTierType": { "$ref": "#/definitions/RecoveryPointTierType", "description": "Target tier where RP needs to be moved" } } }, "NameInfo": { "type": "object", "description": "The name of usage.", "properties": { "value": { "type": "string", "description": "Value of usage." }, "localizedValue": { "type": "string", "description": "Localized value of usage." } } }, "OperationResultInfo": { "type": "object", "description": "Operation result info.", "properties": { "jobList": { "type": "array", "description": "List of jobs created by this operation.", "items": { "type": "string" } } }, "allOf": [ { "$ref": "#/definitions/OperationResultInfoBase" } ], "x-ms-discriminator-value": "OperationResultInfo" }, "OperationResultInfoBase": { "type": "object", "description": "Base class for operation result info.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "OperationResultInfoBaseResource": { "type": "object", "description": "Base class for operation result info.", "properties": { "operation": { "$ref": "#/definitions/OperationResultInfoBase", "description": "OperationResultInfoBaseResource operation" } }, "allOf": [ { "$ref": "#/definitions/OperationWorkerResponse" } ] }, "OperationStatus": { "type": "object", "description": "Operation status.", "properties": { "id": { "type": "string", "description": "ID of the operation." }, "name": { "type": "string", "description": "Name of the operation." }, "status": { "$ref": "#/definitions/OperationStatusValues", "description": "Operation status." }, "startTime": { "type": "string", "format": "date-time", "description": "Operation start time. Format: ISO-8601." }, "endTime": { "type": "string", "format": "date-time", "description": "Operation end time. Format: ISO-8601." }, "error": { "$ref": "#/definitions/OperationStatusError", "description": "Error information related to this operation." }, "properties": { "$ref": "#/definitions/OperationStatusExtendedInfo", "description": "Additional information associated with this operation." } } }, "OperationStatusError": { "type": "object", "description": "Error information associated with operation status call.", "properties": { "code": { "type": "string", "description": "Error code of the operation failure." }, "message": { "type": "string", "description": "Error message displayed if the operation failure." } } }, "OperationStatusExtendedInfo": { "type": "object", "description": "Base class for additional information of operation status.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "OperationStatusJobExtendedInfo": { "type": "object", "description": "Operation status job extended info.", "properties": { "jobId": { "type": "string", "description": "ID of the job created for this protected item." } }, "allOf": [ { "$ref": "#/definitions/OperationStatusExtendedInfo" } ], "x-ms-discriminator-value": "OperationStatusJobExtendedInfo" }, "OperationStatusJobsExtendedInfo": { "type": "object", "description": "Operation status extended info for list of jobs.", "properties": { "jobIds": { "type": "array", "description": "IDs of the jobs created for the protected item.", "items": { "type": "string" } }, "failedJobsError": { "type": "object", "description": "Stores all the failed jobs along with the corresponding error codes.", "additionalProperties": { "type": "string" } } }, "allOf": [ { "$ref": "#/definitions/OperationStatusExtendedInfo" } ], "x-ms-discriminator-value": "OperationStatusJobsExtendedInfo" }, "OperationStatusProvisionILRExtendedInfo": { "type": "object", "description": "Operation status extended info for ILR provision action.", "properties": { "recoveryTarget": { "$ref": "#/definitions/InstantItemRecoveryTarget", "description": "Target details for file / folder restore." } }, "allOf": [ { "$ref": "#/definitions/OperationStatusExtendedInfo" } ], "x-ms-discriminator-value": "OperationStatusProvisionILRExtendedInfo" }, "OperationStatusValidateOperationExtendedInfo": { "type": "object", "description": "Operation status extended info for ValidateOperation action.", "properties": { "validateOperationResponse": { "$ref": "#/definitions/ValidateOperationResponse", "description": "Gets the validation operation response" } }, "allOf": [ { "$ref": "#/definitions/OperationStatusExtendedInfo" } ], "x-ms-discriminator-value": "OperationStatusValidateOperationExtendedInfo" }, "OperationStatusValues": { "type": "string", "description": "Operation status.", "enum": [ "Invalid", "InProgress", "Succeeded", "Failed", "Canceled" ], "x-ms-enum": { "name": "OperationStatusValues", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "InProgress", "value": "InProgress" }, { "name": "Succeeded", "value": "Succeeded" }, { "name": "Failed", "value": "Failed" }, { "name": "Canceled", "value": "Canceled" } ] } }, "OperationType": { "type": "string", "description": "Re-Do Operation", "enum": [ "Invalid", "Register", "Reregister", "Rehydrate" ], "x-ms-enum": { "name": "OperationType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Register", "value": "Register" }, { "name": "Reregister", "value": "Reregister" }, { "name": "Rehydrate", "value": "Rehydrate" } ] } }, "OperationWorkerResponse": { "type": "object", "description": "This is the base class for operation result responses.", "properties": { "statusCode": { "$ref": "#/definitions/HttpStatusCode", "description": "HTTP Status Code of the operation." }, "headers": { "type": "object", "description": "HTTP headers associated with this operation.", "additionalProperties": { "items": { "type": "string" }, "type": "array" } } } }, "OverwriteOptions": { "type": "string", "description": "Can Overwrite if Target DataBase already exists", "enum": [ "Invalid", "FailOnConflict", "Overwrite" ], "x-ms-enum": { "name": "OverwriteOptions", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "FailOnConflict", "value": "FailOnConflict" }, { "name": "Overwrite", "value": "Overwrite" } ] } }, "PatchRecoveryPointInput": { "type": "object", "description": "Recovery Point Contract for Update Recovery Point API.", "properties": { "recoveryPointProperties": { "$ref": "#/definitions/PatchRecoveryPointPropertiesInput", "description": "Properties of Recovery Point" } } }, "PatchRecoveryPointPropertiesInput": { "type": "object", "description": "Recovery Point Properties Contract for Update Recovery Point API.", "properties": { "expiryTime": { "type": "string", "format": "date-time", "description": "Expiry time of Recovery Point in UTC." } } }, "PointInTimeRange": { "type": "object", "description": "Provides details for log ranges", "properties": { "startTime": { "type": "string", "format": "date-time", "description": "Start time of the time range for log recovery." }, "endTime": { "type": "string", "format": "date-time", "description": "End time of the time range for log recovery." } } }, "PolicyType": { "type": "string", "description": "Type of backup policy type", "enum": [ "Invalid", "Full", "Differential", "Log", "CopyOnlyFull", "Incremental", "SnapshotFull", "SnapshotCopyOnlyFull" ], "x-ms-enum": { "name": "PolicyType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Full", "value": "Full" }, { "name": "Differential", "value": "Differential" }, { "name": "Log", "value": "Log" }, { "name": "CopyOnlyFull", "value": "CopyOnlyFull" }, { "name": "Incremental", "value": "Incremental" }, { "name": "SnapshotFull", "value": "SnapshotFull" }, { "name": "SnapshotCopyOnlyFull", "value": "SnapshotCopyOnlyFull" } ] } }, "PreBackupValidation": { "type": "object", "description": "Pre-backup validation for Azure VM Workload provider.", "properties": { "status": { "$ref": "#/definitions/InquiryStatus", "description": "Status of protectable item, i.e. InProgress,Succeeded,Failed" }, "code": { "type": "string", "description": "Error code of protectable item" }, "message": { "type": "string", "description": "Message corresponding to the error code for the protectable item" } } }, "PreValidateEnableBackupRequest": { "type": "object", "description": "Contract to validate if backup can be enabled on the given resource in a given vault and given configuration.\nIt will validate followings\n1. Vault capacity\n2. VM is already protected\n3. Any VM related configuration passed in properties.", "properties": { "resourceType": { "$ref": "#/definitions/DataSourceType", "description": "ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc" }, "resourceId": { "type": "string", "description": "ARM Virtual Machine Id" }, "vaultId": { "type": "string", "description": "ARM id of the Recovery Services Vault" }, "properties": { "type": "string", "description": "Configuration of VM if any needs to be validated like OS type etc" } } }, "PreValidateEnableBackupResponse": { "type": "object", "description": "Response contract for enable backup validation request", "properties": { "status": { "$ref": "#/definitions/ValidationStatus", "description": "Validation Status" }, "errorCode": { "type": "string", "description": "Response error code" }, "errorMessage": { "type": "string", "description": "Response error message" }, "recommendation": { "type": "string", "description": "Recommended action for user" }, "containerName": { "type": "string", "description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required\nfor portal" }, "protectedItemName": { "type": "string", "description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal" } } }, "PrepareDataMoveRequest": { "type": "object", "description": "Prepare DataMove Request", "properties": { "targetResourceId": { "type": "string", "description": "ARM Id of target vault" }, "targetRegion": { "type": "string", "description": "Target Region" }, "dataMoveLevel": { "$ref": "#/definitions/DataMoveLevel", "description": "DataMove Level" }, "sourceContainerArmIds": { "type": "array", "description": "Source Container ArmIds\nThis needs to be populated only if DataMoveLevel is set to container", "items": { "type": "string" } }, "ignoreMoved": { "type": "boolean", "description": "Ignore the artifacts which are already moved." } }, "required": [ "targetResourceId", "targetRegion", "dataMoveLevel" ] }, "PrepareDataMoveResponse": { "type": "object", "description": "Prepare DataMove Response", "properties": { "correlationId": { "type": "string", "description": "Co-relationId for move operation" }, "sourceVaultProperties": { "type": "object", "description": "Source Vault Properties", "additionalProperties": { "type": "string" } } }, "allOf": [ { "$ref": "#/definitions/VaultStorageConfigOperationResultResponse" } ], "x-ms-discriminator-value": "PrepareDataMoveResponse" }, "PrivateEndpoint": { "type": "object", "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection", "properties": { "id": { "type": "string", "description": "Gets or sets id" } } }, "PrivateEndpointConnection": { "type": "object", "description": "Private Endpoint Connection Response Properties", "properties": { "provisioningState": { "$ref": "#/definitions/ProvisioningState", "description": "Gets or sets provisioning state of the private endpoint connection" }, "privateEndpoint": { "$ref": "#/definitions/PrivateEndpoint", "description": "Gets or sets private endpoint associated with the private endpoint connection" }, "groupIds": { "type": "array", "description": "Group Ids for the Private Endpoint", "items": { "$ref": "#/definitions/VaultSubResourceType" } }, "privateLinkServiceConnectionState": { "$ref": "#/definitions/PrivateLinkServiceConnectionState", "description": "Gets or sets private link service connection state" } } }, "PrivateEndpointConnectionResource": { "type": "object", "description": "Private Endpoint Connection Response Properties", "properties": { "properties": { "$ref": "#/definitions/PrivateEndpointConnection", "description": "PrivateEndpointConnectionResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "PrivateEndpointConnectionStatus": { "type": "string", "description": "Gets or sets the status", "enum": [ "Pending", "Approved", "Rejected", "Disconnected" ], "x-ms-enum": { "name": "PrivateEndpointConnectionStatus", "modelAsString": true, "values": [ { "name": "Pending", "value": "Pending" }, { "name": "Approved", "value": "Approved" }, { "name": "Rejected", "value": "Rejected" }, { "name": "Disconnected", "value": "Disconnected" } ] } }, "PrivateLinkServiceConnectionState": { "type": "object", "description": "Private Link Service Connection State", "properties": { "status": { "$ref": "#/definitions/PrivateEndpointConnectionStatus", "description": "Gets or sets the status" }, "description": { "type": "string", "description": "Gets or sets description" }, "actionsRequired": { "type": "string", "description": "Gets or sets actions required" } } }, "ProtectableContainer": { "type": "object", "description": "Protectable Container Class.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the container." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the container." }, "protectableContainerType": { "$ref": "#/definitions/ProtectableContainerType", "description": "Type of the container. The value of this property for\n1. Compute Azure VM is Microsoft.Compute/virtualMachines\n2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines" }, "healthStatus": { "type": "string", "description": "Status of health of the container." }, "containerId": { "type": "string", "description": "Fabric Id of the container such as ARM Id." } }, "discriminator": "protectableContainerType", "required": [ "protectableContainerType" ] }, "ProtectableContainerResource": { "type": "object", "description": "Protectable Container Class.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/ProtectableContainer", "description": "ProtectableContainerResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "ProtectableContainerResourceList": { "type": "object", "description": "List of ProtectableContainer resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectableContainerResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ProtectableContainerType": { "type": "string", "description": "Type of the container. The value of this property for\n1. Compute Azure VM is Microsoft.Compute/virtualMachines\n2. Classic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines", "enum": [ "Invalid", "Unknown", "IaasVMContainer", "IaasVMServiceContainer", "DPMContainer", "AzureBackupServerContainer", "MABContainer", "Cluster", "AzureSqlContainer", "Windows", "VCenter", "VMAppContainer", "SQLAGWorkLoadContainer", "StorageContainer", "GenericContainer", "Microsoft.ClassicCompute/virtualMachines", "Microsoft.Compute/virtualMachines", "AzureWorkloadContainer" ], "x-ms-enum": { "name": "ProtectableContainerType", "modelAsString": false } }, "ProtectedItem": { "type": "object", "description": "Base class for backup items.", "properties": { "protectedItemType": { "type": "string", "description": "backup item type." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the backed up item.", "readOnly": true }, "workloadType": { "$ref": "#/definitions/DataSourceType", "description": "Type of workload this item represents.", "readOnly": true }, "containerName": { "type": "string", "description": "Unique name of container" }, "sourceResourceId": { "type": "string", "description": "ARM ID of the resource to be backed up." }, "policyId": { "type": "string", "description": "ID of the backup policy with which this item is backed up." }, "lastRecoveryPoint": { "type": "string", "format": "date-time", "description": "Timestamp when the last (latest) backup copy was created for this backup item." }, "backupSetName": { "type": "string", "description": "Name of the backup set the backup item belongs to" }, "createMode": { "$ref": "#/definitions/CreateMode", "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source." }, "deferredDeleteTimeInUTC": { "type": "string", "format": "date-time", "description": "Time for deferred deletion in UTC" }, "isScheduledForDeferredDelete": { "type": "boolean", "description": "Flag to identify whether the DS is scheduled for deferred delete" }, "deferredDeleteTimeRemaining": { "type": "string", "description": "Time remaining before the DS marked for deferred delete is permanently deleted" }, "isDeferredDeleteScheduleUpcoming": { "type": "boolean", "description": "Flag to identify whether the deferred deleted DS is to be purged soon" }, "isRehydrate": { "type": "boolean", "description": "Flag to identify that deferred deleted DS is to be moved into Pause state" }, "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuardOperationRequests on which LAC check will be performed", "items": { "type": "string" } }, "isArchiveEnabled": { "type": "boolean", "description": "Flag to identify whether datasource is protected in archive" }, "policyName": { "type": "string", "description": "Name of the policy used for protection" }, "softDeleteRetentionPeriodInDays": { "type": "integer", "format": "int32", "description": "Soft delete retention period in days" }, "vaultId": { "type": "string", "description": "ID of the vault which protects this item", "readOnly": true }, "sourceSideScanInfo": { "$ref": "#/definitions/SourceSideScanInfo", "description": "Source side threat information" } }, "discriminator": "protectedItemType", "required": [ "protectedItemType" ] }, "ProtectedItemHealthStatus": { "type": "string", "description": "Health status of the backup item, evaluated based on last heartbeat received", "enum": [ "Invalid", "Healthy", "Unhealthy", "NotReachable", "IRPending" ], "x-ms-enum": { "name": "ProtectedItemHealthStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Healthy", "value": "Healthy" }, { "name": "Unhealthy", "value": "Unhealthy" }, { "name": "NotReachable", "value": "NotReachable" }, { "name": "IRPending", "value": "IRPending" } ] } }, "ProtectedItemQueryObject": { "type": "object", "description": "Filters to list backup items.", "properties": { "healthState": { "$ref": "#/definitions/HealthState", "description": "Health State for the backed up item." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for the backed up item." }, "itemType": { "$ref": "#/definitions/DataSourceType", "description": "Type of workload this item represents." }, "policyName": { "type": "string", "description": "Backup policy name associated with the backup item." }, "containerName": { "type": "string", "description": "Name of the container." }, "backupEngineName": { "type": "string", "description": "Backup Engine name" }, "friendlyName": { "type": "string", "description": "Friendly name of protected item" }, "fabricName": { "type": "string", "description": "Name of the fabric." }, "backupSetName": { "type": "string", "description": "Name of the backup set." } } }, "ProtectedItemResource": { "type": "object", "description": "Base class for backup items.", "properties": { "properties": { "$ref": "#/definitions/ProtectedItem", "description": "ProtectedItemResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "ProtectedItemResourceList": { "type": "object", "description": "List of ProtectedItem resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectedItemResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ProtectedItemState": { "type": "string", "description": "Backup state of the backed up item.", "enum": [ "Invalid", "IRPending", "Protected", "ProtectionError", "ProtectionStopped", "ProtectionPaused", "BackupsSuspended" ], "x-ms-enum": { "name": "ProtectedItemState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "IRPending", "value": "IRPending" }, { "name": "Protected", "value": "Protected" }, { "name": "ProtectionError", "value": "ProtectionError" }, { "name": "ProtectionStopped", "value": "ProtectionStopped" }, { "name": "ProtectionPaused", "value": "ProtectionPaused" }, { "name": "BackupsSuspended", "value": "BackupsSuspended" } ] } }, "ProtectionContainer": { "type": "object", "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", "properties": { "friendlyName": { "type": "string", "description": "Friendly name of the container." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the container." }, "registrationStatus": { "type": "string", "description": "Status of registration of the container with the Recovery Services Vault." }, "healthStatus": { "type": "string", "description": "Status of health of the container." }, "containerType": { "$ref": "#/definitions/ProtectableContainerType", "description": "Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.\nClassic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is\nWindows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload\nBackup is VMAppContainer" }, "protectableObjectType": { "type": "string", "description": "Type of the protectable object associated with this container" } }, "discriminator": "containerType", "required": [ "containerType" ] }, "ProtectionContainerResource": { "type": "object", "description": "Base class for container with backup items. Containers with specific workloads are derived from this class.", "properties": { "properties": { "$ref": "#/definitions/ProtectionContainer", "description": "ProtectionContainerResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "ProtectionContainerResourceList": { "type": "object", "description": "List of ProtectionContainer resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectionContainerResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ProtectionIntent": { "type": "object", "description": "Base class for backup ProtectionIntent.", "properties": { "protectionIntentItemType": { "$ref": "#/definitions/ProtectionIntentItemType", "description": "backup protectionIntent type." }, "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Type of backup management for the backed up item." }, "sourceResourceId": { "type": "string", "description": "ARM ID of the resource to be backed up." }, "itemId": { "type": "string", "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId" }, "policyId": { "type": "string", "description": "ID of the backup policy with which this item is backed up." }, "protectionState": { "$ref": "#/definitions/ProtectionStatus", "description": "Backup state of this backup item." } }, "discriminator": "protectionIntentItemType", "required": [ "protectionIntentItemType" ] }, "ProtectionIntentItemType": { "type": "string", "description": "backup protectionIntent type.", "enum": [ "Invalid", "AzureResourceItem", "RecoveryServiceVaultItem", "AzureWorkloadContainerAutoProtectionIntent", "AzureWorkloadAutoProtectionIntent", "AzureWorkloadSQLAutoProtectionIntent" ], "x-ms-enum": { "name": "ProtectionIntentItemType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "AzureResourceItem", "value": "AzureResourceItem" }, { "name": "RecoveryServiceVaultItem", "value": "RecoveryServiceVaultItem" }, { "name": "AzureWorkloadContainerAutoProtectionIntent", "value": "AzureWorkloadContainerAutoProtectionIntent" }, { "name": "AzureWorkloadAutoProtectionIntent", "value": "AzureWorkloadAutoProtectionIntent" }, { "name": "AzureWorkloadSQLAutoProtectionIntent", "value": "AzureWorkloadSQLAutoProtectionIntent" } ] } }, "ProtectionIntentQueryObject": { "type": "object", "description": "Filters to list protection intent.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for the backed up item" }, "itemType": { "$ref": "#/definitions/IntentItemType", "description": "Type of workload this item represents" }, "parentName": { "type": "string", "description": "Parent name of the intent" }, "itemName": { "type": "string", "description": "Item name of the intent" } } }, "ProtectionIntentResource": { "type": "object", "description": "Base class for backup ProtectionIntent.", "properties": { "properties": { "$ref": "#/definitions/ProtectionIntent", "description": "ProtectionIntentResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "ProtectionIntentResourceList": { "type": "object", "description": "List of ProtectionIntent resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectionIntentResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ProtectionLevel": { "type": "string", "description": "Protection type in case protected as part of a parent.", "enum": [ "Database", "DatabaseUnderInstance" ], "x-ms-enum": { "name": "ProtectionLevel", "modelAsString": true, "values": [ { "name": "Database", "value": "Database", "description": "Protected at database level" }, { "name": "DatabaseUnderInstance", "value": "DatabaseUnderInstance", "description": "Database protected under an instance" } ] } }, "ProtectionPolicy": { "type": "object", "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", "properties": { "protectedItemsCount": { "type": "integer", "format": "int32", "description": "Number of items associated with this policy." }, "backupManagementType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." }, "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuard Operation Requests", "items": { "type": "string" } } }, "discriminator": "backupManagementType", "required": [ "backupManagementType" ] }, "ProtectionPolicyQueryObject": { "type": "object", "description": "Filters the list backup policies API.", "properties": { "backupManagementType": { "$ref": "#/definitions/BackupManagementType", "description": "Backup management type for the backup policy." }, "fabricName": { "type": "string", "description": "Fabric name for filter" }, "workloadType": { "$ref": "#/definitions/WorkloadType", "description": "Workload type for the backup policy." } } }, "ProtectionPolicyResource": { "type": "object", "description": "Base class for backup policy. Workload-specific backup policies are derived from this class.", "properties": { "properties": { "$ref": "#/definitions/ProtectionPolicy", "description": "ProtectionPolicyResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "ProtectionPolicyResourceList": { "type": "object", "description": "List of ProtectionPolicy resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ProtectionPolicyResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ProtectionState": { "type": "string", "description": "Backup state of this backup item.", "enum": [ "Invalid", "IRPending", "Protected", "ProtectionError", "ProtectionStopped", "ProtectionPaused", "BackupsSuspended" ], "x-ms-enum": { "name": "ProtectionState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "IRPending", "value": "IRPending" }, { "name": "Protected", "value": "Protected" }, { "name": "ProtectionError", "value": "ProtectionError" }, { "name": "ProtectionStopped", "value": "ProtectionStopped" }, { "name": "ProtectionPaused", "value": "ProtectionPaused" }, { "name": "BackupsSuspended", "value": "BackupsSuspended" } ] } }, "ProtectionStatus": { "type": "string", "description": "Specifies whether the container is registered or not", "enum": [ "Invalid", "NotProtected", "Protecting", "Protected", "ProtectionFailed" ], "x-ms-enum": { "name": "ProtectionStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "NotProtected", "value": "NotProtected" }, { "name": "Protecting", "value": "Protecting" }, { "name": "Protected", "value": "Protected" }, { "name": "ProtectionFailed", "value": "ProtectionFailed" } ] } }, "ProvisioningState": { "type": "string", "description": "Gets or sets provisioning state of the private endpoint connection", "enum": [ "Succeeded", "Deleting", "Failed", "Pending" ], "x-ms-enum": { "name": "ProvisioningState", "modelAsString": true, "values": [ { "name": "Succeeded", "value": "Succeeded" }, { "name": "Deleting", "value": "Deleting" }, { "name": "Failed", "value": "Failed" }, { "name": "Pending", "value": "Pending" } ] } }, "RecoveryMode": { "type": "string", "description": "Defines whether the current recovery mode is file restore or database restore", "enum": [ "Invalid", "FileRecovery", "WorkloadRecovery", "SnapshotAttach", "RecoveryUsingSnapshot", "SnapshotAttachAndRecover" ], "x-ms-enum": { "name": "RecoveryMode", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "FileRecovery", "value": "FileRecovery" }, { "name": "WorkloadRecovery", "value": "WorkloadRecovery" }, { "name": "SnapshotAttach", "value": "SnapshotAttach" }, { "name": "RecoveryUsingSnapshot", "value": "RecoveryUsingSnapshot" }, { "name": "SnapshotAttachAndRecover", "value": "SnapshotAttachAndRecover" } ] } }, "RecoveryPoint": { "type": "object", "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." }, "threatStatus": { "$ref": "#/definitions/ThreatStatus", "description": "Threat status of the recovery point" }, "threatInfo": { "type": "array", "description": "Recovery point threat information.", "items": { "$ref": "#/definitions/ThreatInfo" }, "x-ms-identifiers": [] } }, "discriminator": "objectType", "required": [ "objectType" ] }, "RecoveryPointDiskConfiguration": { "type": "object", "description": "Disk configuration", "properties": { "numberOfDisksIncludedInBackup": { "type": "integer", "format": "int32", "description": "Number of disks included in backup" }, "numberOfDisksAttachedToVm": { "type": "integer", "format": "int32", "description": "Number of disks attached to the VM" }, "includedDiskList": { "type": "array", "description": "Information of disks included in backup", "items": { "$ref": "#/definitions/DiskInformation" }, "x-ms-identifiers": [] }, "excludedDiskList": { "type": "array", "description": "Information of disks excluded from backup", "items": { "$ref": "#/definitions/DiskInformation" }, "x-ms-identifiers": [] } } }, "RecoveryPointMoveReadinessInfo": { "type": "object", "properties": { "isReadyForMove": { "type": "boolean" }, "additionalInfo": { "type": "string" } } }, "RecoveryPointProperties": { "type": "object", "description": "Properties of Recovery Point", "properties": { "expiryTime": { "type": "string", "description": "Expiry time of Recovery Point in UTC." }, "ruleName": { "type": "string", "description": "Rule name tagged on Recovery Point that governs life cycle" }, "isSoftDeleted": { "type": "boolean", "description": "Bool to indicate whether RP is in soft delete state or not" } } }, "RecoveryPointRehydrationInfo": { "type": "object", "description": "RP Rehydration Info", "properties": { "rehydrationRetentionDuration": { "type": "string", "description": "How long the rehydrated RP should be kept\nShould be ISO8601 Duration format e.g. \"P7D\"" }, "rehydrationPriority": { "$ref": "#/definitions/RehydrationPriority", "description": "Rehydration Priority" } } }, "RecoveryPointResource": { "type": "object", "description": "Base class for backup copies. Workload-specific backup copies are derived from this class.", "properties": { "properties": { "$ref": "#/definitions/RecoveryPoint", "description": "RecoveryPointResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "RecoveryPointResourceList": { "type": "object", "description": "List of RecoveryPoint resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/RecoveryPointResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "RecoveryPointTierInformation": { "type": "object", "description": "Recovery point tier information.", "properties": { "type": { "$ref": "#/definitions/RecoveryPointTierType", "description": "Recovery point tier type." }, "status": { "$ref": "#/definitions/RecoveryPointTierStatus", "description": "Recovery point tier status." }, "extendedInfo": { "type": "object", "description": "Recovery point tier status.", "additionalProperties": { "type": "string" } } } }, "RecoveryPointTierInformationV2": { "type": "object", "description": "RecoveryPoint Tier Information V2", "properties": { "type": { "$ref": "#/definitions/RecoveryPointTierType", "description": "Recovery point tier type." }, "status": { "$ref": "#/definitions/RecoveryPointTierStatus", "description": "Recovery point tier status." } }, "allOf": [ { "$ref": "#/definitions/RecoveryPointTierInformation" } ] }, "RecoveryPointTierStatus": { "type": "string", "description": "Recovery point tier status.", "enum": [ "Invalid", "Valid", "Disabled", "Deleted", "Rehydrated" ], "x-ms-enum": { "name": "RecoveryPointTierStatus", "modelAsString": true } }, "RecoveryPointTierType": { "type": "string", "description": "Recovery point tier type.", "enum": [ "Invalid", "InstantRP", "HardenedRP", "ArchivedRP" ], "x-ms-enum": { "name": "RecoveryPointTierType", "modelAsString": false } }, "RecoveryType": { "type": "string", "description": "Type of this recovery.", "enum": [ "Invalid", "OriginalLocation", "AlternateLocation", "RestoreDisks", "Offline" ], "x-ms-enum": { "name": "RecoveryType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "OriginalLocation", "value": "OriginalLocation" }, { "name": "AlternateLocation", "value": "AlternateLocation" }, { "name": "RestoreDisks", "value": "RestoreDisks" }, { "name": "Offline", "value": "Offline" } ] } }, "RehydrationPriority": { "type": "string", "description": "Rehydration Priority", "enum": [ "Standard", "High" ], "x-ms-enum": { "name": "RehydrationPriority", "modelAsString": true, "values": [ { "name": "Standard", "value": "Standard" }, { "name": "High", "value": "High" } ] } }, "RemoveCrossTenantVaultMappingRequest": { "type": "object", "description": "Request to remove a cross-tenant vault mapping for cross-tenant restore.", "properties": { "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuardOperationRequests on which LAC check will be performed.", "items": { "type": "string", "format": "arm-id", "description": "A type definition that refers the id to an Azure Resource Manager resource." } } } }, "ResourceGuardOperationDetail": { "type": "object", "properties": { "vaultCriticalOperation": { "type": "string" }, "defaultResourceRequest": { "type": "string" } } }, "ResourceGuardProxyBase": { "type": "object", "properties": { "resourceGuardResourceId": { "type": "string" }, "resourceGuardOperationDetails": { "type": "array", "items": { "$ref": "#/definitions/ResourceGuardOperationDetail" }, "x-ms-identifiers": [] }, "lastUpdatedTime": { "type": "string" }, "description": { "type": "string" } }, "required": [ "resourceGuardResourceId" ] }, "ResourceGuardProxyBaseResource": { "type": "object", "description": "", "properties": { "properties": { "$ref": "#/definitions/ResourceGuardProxyBase", "description": "ResourceGuardProxyBaseResource properties" }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "The geo-location where the resource lives", "x-ms-mutability": [ "read", "create" ] }, "eTag": { "type": "string", "description": "Optional ETag." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "ResourceGuardProxyBaseResourceList": { "type": "object", "description": "List of ResourceGuardProxyBase resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/ResourceGuardProxyBaseResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "ResourceHealthDetails": { "type": "object", "description": "Health Details for backup items.", "properties": { "code": { "type": "integer", "format": "int32", "description": "Health Code", "readOnly": true }, "title": { "type": "string", "description": "Health Title", "readOnly": true }, "message": { "type": "string", "description": "Health Message", "readOnly": true }, "recommendations": { "type": "array", "description": "Health Recommended Actions", "items": { "type": "string" }, "readOnly": true } } }, "ResourceHealthStatus": { "type": "string", "description": "Resource Health Status", "enum": [ "Healthy", "TransientDegraded", "PersistentDegraded", "TransientUnhealthy", "PersistentUnhealthy", "Invalid" ], "x-ms-enum": { "name": "ResourceHealthStatus", "modelAsString": true, "values": [ { "name": "Healthy", "value": "Healthy" }, { "name": "TransientDegraded", "value": "TransientDegraded" }, { "name": "PersistentDegraded", "value": "PersistentDegraded" }, { "name": "TransientUnhealthy", "value": "TransientUnhealthy" }, { "name": "PersistentUnhealthy", "value": "PersistentUnhealthy" }, { "name": "Invalid", "value": "Invalid" } ] } }, "ResourceList": { "type": "object", "description": "Base for all lists of resources.", "properties": { "nextLink": { "type": "string", "description": "The URI to fetch the next page of resources, with each API call returning up to 200 resources per page. Use ListNext() to fetch the next page if the total number of resources exceeds 200." } } }, "RestoreFileSpecs": { "type": "object", "description": "Restore file specs like file path, type and target folder path info.", "properties": { "path": { "type": "string", "description": "Source File/Folder path" }, "fileSpecType": { "type": "string", "description": "Indicates what the Path variable stands for" }, "targetFolderPath": { "type": "string", "description": "Destination folder path in target FileShare" } } }, "RestorePointQueryType": { "type": "string", "description": "RestorePoint type", "enum": [ "Invalid", "Full", "Log", "Differential", "FullAndDifferential", "All", "Incremental", "SnapshotFull", "SnapshotCopyOnlyFull", "Snapshot", "FullDifferentialAndSnapshot" ], "x-ms-enum": { "name": "RestorePointQueryType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Full", "value": "Full" }, { "name": "Log", "value": "Log" }, { "name": "Differential", "value": "Differential" }, { "name": "FullAndDifferential", "value": "FullAndDifferential" }, { "name": "All", "value": "All" }, { "name": "Incremental", "value": "Incremental" }, { "name": "SnapshotFull", "value": "SnapshotFull" }, { "name": "SnapshotCopyOnlyFull", "value": "SnapshotCopyOnlyFull" }, { "name": "Snapshot", "value": "Snapshot", "description": "Snapshot restore point type" }, { "name": "FullDifferentialAndSnapshot", "value": "FullDifferentialAndSnapshot", "description": "Full, differential, and snapshot restore point types" } ] } }, "RestorePointType": { "type": "string", "description": "Type of restore point", "enum": [ "Invalid", "Full", "Log", "Differential", "Incremental", "SnapshotFull", "SnapshotCopyOnlyFull" ], "x-ms-enum": { "name": "RestorePointType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Full", "value": "Full" }, { "name": "Log", "value": "Log" }, { "name": "Differential", "value": "Differential" }, { "name": "Incremental", "value": "Incremental" }, { "name": "SnapshotFull", "value": "SnapshotFull" }, { "name": "SnapshotCopyOnlyFull", "value": "SnapshotCopyOnlyFull" } ] } }, "RestoreRequest": { "type": "object", "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." }, "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuardOperationRequests on which LAC check will be performed", "items": { "type": "string" } } }, "discriminator": "objectType", "required": [ "objectType" ] }, "RestoreRequestResource": { "type": "object", "description": "Base class for restore request. Workload-specific restore requests are derived from this class.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/RestoreRequest", "description": "RestoreRequestResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "RestoreRequestType": { "type": "string", "description": "Restore Type (FullShareRestore or ItemLevelRestore)", "enum": [ "Invalid", "FullShareRestore", "ItemLevelRestore" ], "x-ms-enum": { "name": "RestoreRequestType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "FullShareRestore", "value": "FullShareRestore" }, { "name": "ItemLevelRestore", "value": "ItemLevelRestore" } ] } }, "RetentionDuration": { "type": "object", "description": "Retention duration.", "properties": { "count": { "type": "integer", "format": "int32", "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks." }, "durationType": { "$ref": "#/definitions/RetentionDurationType", "description": "Retention duration type of retention policy." } } }, "RetentionDurationType": { "type": "string", "description": "Retention duration type of retention policy.", "enum": [ "Invalid", "Days", "Weeks", "Months", "Years" ], "x-ms-enum": { "name": "RetentionDurationType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Days", "value": "Days" }, { "name": "Weeks", "value": "Weeks" }, { "name": "Months", "value": "Months" }, { "name": "Years", "value": "Years" } ] } }, "RetentionPolicy": { "type": "object", "description": "Base class for retention policy.", "properties": { "retentionPolicyType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "retentionPolicyType", "required": [ "retentionPolicyType" ] }, "RetentionScheduleFormat": { "type": "string", "description": "Retention schedule format type for monthly retention policy.", "enum": [ "Invalid", "Daily", "Weekly" ], "x-ms-enum": { "name": "RetentionScheduleFormat", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Daily", "value": "Daily" }, { "name": "Weekly", "value": "Weekly" } ] } }, "SQLDataDirectory": { "type": "object", "description": "SQLDataDirectory info", "properties": { "type": { "$ref": "#/definitions/SQLDataDirectoryType", "description": "Type of data directory mapping" }, "path": { "type": "string", "description": "File path" }, "logicalName": { "type": "string", "description": "Logical name of the file" } } }, "SQLDataDirectoryMapping": { "type": "object", "description": "Encapsulates information regarding data directory", "properties": { "mappingType": { "$ref": "#/definitions/SQLDataDirectoryType", "description": "Type of data directory mapping" }, "sourceLogicalName": { "type": "string", "description": "Restore source logical name path" }, "sourcePath": { "type": "string", "description": "Restore source path" }, "targetPath": { "type": "string", "description": "Target path" } } }, "SQLDataDirectoryType": { "type": "string", "description": "Type of data directory mapping", "enum": [ "Invalid", "Data", "Log" ], "x-ms-enum": { "name": "SQLDataDirectoryType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Data", "value": "Data" }, { "name": "Log", "value": "Log" } ] } }, "SchedulePolicy": { "type": "object", "description": "Base class for backup schedule.", "properties": { "schedulePolicyType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "schedulePolicyType", "required": [ "schedulePolicyType" ] }, "ScheduleRunType": { "type": "string", "description": "Frequency of the schedule operation of this policy.", "enum": [ "Invalid", "Daily", "Weekly", "Hourly" ], "x-ms-enum": { "name": "ScheduleRunType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Daily", "value": "Daily" }, { "name": "Weekly", "value": "Weekly" }, { "name": "Hourly", "value": "Hourly" } ] } }, "SecuredVMDetails": { "type": "object", "description": "Restore request parameters for Secured VMs", "properties": { "securedVMOsDiskEncryptionSetId": { "type": "string", "description": "Gets or Sets Disk Encryption Set Id for Secured VM OS Disk" } } }, "SecurityPinBase": { "type": "object", "description": "Base class for get security pin request body", "properties": { "resourceGuardOperationRequests": { "type": "array", "description": "ResourceGuard Operation Requests", "items": { "type": "string" } } } }, "Settings": { "type": "object", "description": "Common settings field for backup management", "properties": { "timeZone": { "type": "string", "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." }, "issqlcompression": { "type": "boolean", "description": "SQL compression flag" }, "isCompression": { "type": "boolean", "description": "Workload compression flag. This has been added so that 'isSqlCompression'\nwill be deprecated once clients upgrade to consider this flag." } } }, "SimpleRetentionPolicy": { "type": "object", "description": "Simple policy retention.", "properties": { "retentionDuration": { "$ref": "#/definitions/RetentionDuration", "description": "Retention duration of the protection policy." } }, "allOf": [ { "$ref": "#/definitions/RetentionPolicy" } ], "x-ms-discriminator-value": "SimpleRetentionPolicy" }, "SimpleSchedulePolicy": { "type": "object", "description": "Simple policy schedule.", "properties": { "scheduleRunFrequency": { "$ref": "#/definitions/ScheduleRunType", "description": "Frequency of the schedule operation of this policy." }, "scheduleRunDays": { "type": "array", "description": "List of days of week this schedule has to be run.", "items": { "$ref": "#/definitions/DayOfWeek" } }, "scheduleRunTimes": { "type": "array", "description": "List of times of day this schedule has to be run.", "items": { "type": "string", "format": "date-time" } }, "hourlySchedule": { "$ref": "#/definitions/HourlySchedule", "description": "Hourly Schedule of this Policy" }, "scheduleWeeklyFrequency": { "type": "integer", "format": "int32", "description": "At every number weeks this schedule has to be run." } }, "allOf": [ { "$ref": "#/definitions/SchedulePolicy" } ], "x-ms-discriminator-value": "SimpleSchedulePolicy" }, "SimpleSchedulePolicyV2": { "type": "object", "description": "The V2 policy schedule for IaaS that supports hourly backups.", "properties": { "scheduleRunFrequency": { "$ref": "#/definitions/ScheduleRunType", "description": "Frequency of the schedule operation of this policy." }, "hourlySchedule": { "$ref": "#/definitions/HourlySchedule", "description": "hourly schedule of this policy" }, "dailySchedule": { "$ref": "#/definitions/DailySchedule", "description": "Daily schedule of this policy" }, "weeklySchedule": { "$ref": "#/definitions/WeeklySchedule", "description": "Weekly schedule of this policy" } }, "allOf": [ { "$ref": "#/definitions/SchedulePolicy" } ], "x-ms-discriminator-value": "SimpleSchedulePolicyV2" }, "SnapshotBackupAdditionalDetails": { "type": "object", "description": "Snapshot Backup related fields for WorkloadType SaPHanaSystem", "properties": { "instantRpRetentionRangeInDays": { "type": "integer", "format": "int32" }, "instantRPDetails": { "type": "string" }, "userAssignedManagedIdentityDetails": { "$ref": "#/definitions/UserAssignedManagedIdentityDetails", "description": "User assigned managed identity details" } } }, "SnapshotRestoreParameters": { "type": "object", "description": "Encapsulates information regarding snapshot recovery for SAP Hana", "properties": { "skipAttachAndMount": { "type": "boolean" }, "logPointInTimeForDBRecovery": { "type": "string" } } }, "SoftDeleteFeatureState": { "type": "string", "description": "Soft Delete feature state", "enum": [ "Invalid", "Enabled", "Disabled", "AlwaysON" ], "x-ms-enum": { "name": "SoftDeleteFeatureState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Enabled", "value": "Enabled" }, { "name": "Disabled", "value": "Disabled" }, { "name": "AlwaysON", "value": "AlwaysON" } ] } }, "SourceSideScanInfo": { "type": "object", "description": "Source side threat information", "properties": { "sourceSideScanStatus": { "$ref": "#/definitions/SourceSideScanStatus", "description": "Threat status of the container" }, "sourceSideScanSummary": { "$ref": "#/definitions/SourceSideScanSummary", "description": "Threat summary for the container" } } }, "SourceSideScanStatus": { "type": "string", "description": "Threat status of the container", "enum": [ "Configured", "NotConfigured", "NotApplicable" ], "x-ms-enum": { "name": "SourceSideScanStatus", "modelAsString": true, "values": [ { "name": "Configured", "value": "Configured", "description": "Source side scan is configured" }, { "name": "NotConfigured", "value": "NotConfigured", "description": "Source side scan is not configured" }, { "name": "NotApplicable", "value": "NotApplicable", "description": "Source side scan is not applicable" } ] } }, "SourceSideScanSummary": { "type": "string", "description": "Threat summary for the container", "enum": [ "Unknown", "NotApplicable", "Suspicious", "Healthy" ], "x-ms-enum": { "name": "SourceSideScanSummary", "modelAsString": true, "values": [ { "name": "Unknown", "value": "Unknown", "description": "Scan summary is unknown" }, { "name": "NotApplicable", "value": "NotApplicable", "description": "Scan summary is not applicable" }, { "name": "Suspicious", "value": "Suspicious", "description": "Scan summary is suspicious" }, { "name": "Healthy", "value": "Healthy", "description": "Scan summary indicates healthy state" } ] } }, "StorageType": { "type": "string", "description": "Storage type", "enum": [ "Invalid", "GeoRedundant", "LocallyRedundant", "ZoneRedundant", "ReadAccessGeoZoneRedundant" ], "x-ms-enum": { "name": "StorageType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "GeoRedundant", "value": "GeoRedundant" }, { "name": "LocallyRedundant", "value": "LocallyRedundant" }, { "name": "ZoneRedundant", "value": "ZoneRedundant" }, { "name": "ReadAccessGeoZoneRedundant", "value": "ReadAccessGeoZoneRedundant" } ] } }, "StorageTypeState": { "type": "string", "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked.", "enum": [ "Invalid", "Locked", "Unlocked" ], "x-ms-enum": { "name": "StorageTypeState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Locked", "value": "Locked" }, { "name": "Unlocked", "value": "Unlocked" } ] } }, "SubProtectionPolicy": { "type": "object", "description": "Sub-protection policy which includes schedule and retention", "properties": { "policyType": { "$ref": "#/definitions/PolicyType", "description": "Type of backup policy type" }, "schedulePolicy": { "$ref": "#/definitions/SchedulePolicy", "description": "Backup schedule specified as part of backup policy." }, "retentionPolicy": { "$ref": "#/definitions/RetentionPolicy", "description": "Retention policy with the details on backup copy retention ranges." }, "tieringPolicy": { "type": "object", "description": "Tiering policy to automatically move RPs to another tier.\nKey is Target Tier, defined in RecoveryPointTierType enum.\nTiering policy specifies the criteria to move RP to the target tier.", "additionalProperties": { "$ref": "#/definitions/TieringPolicy" } }, "snapshotBackupAdditionalDetails": { "$ref": "#/definitions/SnapshotBackupAdditionalDetails", "description": "Snapshot Backup related fields for WorkloadType SaPHanaSystem" } } }, "SupportStatus": { "type": "string", "description": "Support status of feature", "enum": [ "Invalid", "Supported", "DefaultOFF", "DefaultON", "NotSupported" ], "x-ms-enum": { "name": "SupportStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Supported", "value": "Supported" }, { "name": "DefaultOFF", "value": "DefaultOFF" }, { "name": "DefaultON", "value": "DefaultON" }, { "name": "NotSupported", "value": "NotSupported" } ] } }, "TargetAFSRestoreInfo": { "type": "object", "description": "Target Azure File Share Info.", "properties": { "name": { "type": "string", "description": "File share name" }, "targetResourceId": { "type": "string", "description": "Target file share resource ARM ID" } } }, "TargetDiskNetworkAccessOption": { "type": "string", "description": "Network access settings to be used for restored disks", "enum": [ "SameAsOnSourceDisks", "EnablePrivateAccessForAllDisks", "EnablePublicAccessForAllDisks" ], "x-ms-enum": { "name": "TargetDiskNetworkAccessOption", "modelAsString": false } }, "TargetDiskNetworkAccessSettings": { "type": "object", "description": "Specifies target network access settings for disks of VM to be restored.", "properties": { "targetDiskNetworkAccessOption": { "$ref": "#/definitions/TargetDiskNetworkAccessOption", "description": "Network access settings to be used for restored disks" }, "targetDiskAccessId": { "type": "string", "description": "Gets or sets the ARM resource ID of the target disk access to be used when TargetDiskNetworkAccessOption is set to TargetDiskNetworkAccessOption.UseNew" } } }, "TargetRestoreInfo": { "type": "object", "description": "Details about target workload during restore operation.", "properties": { "overwriteOption": { "$ref": "#/definitions/OverwriteOptions", "description": "Can Overwrite if Target DataBase already exists" }, "containerId": { "type": "string", "description": "Resource Id name of the container in which Target DataBase resides" }, "databaseName": { "type": "string", "description": "Database name InstanceName/DataBaseName for SQL or System/DbName for SAP Hana" }, "targetDirectoryForFileRestore": { "type": "string", "description": "Target directory location for restore as files." } } }, "ThreatInfo": { "type": "object", "description": "Recovery Point Threat information", "properties": { "threatTitle": { "type": "string", "description": "Threat Subject", "readOnly": true }, "threatDescription": { "type": "string", "description": "Threat Description", "readOnly": true }, "lastUpdatedTime": { "type": "string", "format": "date-time", "description": "Timestamp when the last (latest)threat information was sent", "readOnly": true }, "threatState": { "$ref": "#/definitions/ThreatState", "description": "Threat Status Types" }, "threatStartTime": { "type": "string", "format": "date-time", "description": "Start timestamp of the threat", "readOnly": true }, "threatEndTime": { "type": "string", "format": "date-time", "description": "End timestamp of the threat", "readOnly": true }, "threatURI": { "type": "string", "format": "uri", "description": "threat details link", "readOnly": true }, "threatSeverity": { "$ref": "#/definitions/ThreatSeverity", "description": "Threat Severity Types" } } }, "ThreatSeverity": { "type": "string", "description": "Threat Severity Types", "enum": [ "Critical", "High", "Warning", "Informational" ], "x-ms-enum": { "name": "ThreatSeverity", "modelAsString": true, "values": [ { "name": "Critical", "value": "Critical", "description": "Critical severity level" }, { "name": "High", "value": "High", "description": "High severity level" }, { "name": "Warning", "value": "Warning", "description": "Warning severity level" }, { "name": "Informational", "value": "Informational", "description": "Informational severity level" } ] } }, "ThreatState": { "type": "string", "description": "Threat Status Types", "enum": [ "Active", "InProgress", "Ignored", "Resolved" ], "x-ms-enum": { "name": "ThreatState", "modelAsString": true, "values": [ { "name": "Active", "value": "Active", "description": "Threat is active" }, { "name": "InProgress", "value": "InProgress", "description": "Threat remediation is in progress" }, { "name": "Ignored", "value": "Ignored", "description": "Threat has been ignored" }, { "name": "Resolved", "value": "Resolved", "description": "Threat has been resolved" } ] } }, "ThreatStatus": { "type": "string", "description": "Threat status of the recovery point", "enum": [ "Unknown", "Healthy", "UnHealthy", "Warning", "NotAvailable" ], "x-ms-enum": { "name": "ThreatStatus", "modelAsString": true, "values": [ { "name": "Unknown", "value": "Unknown", "description": "Threat status is unknown" }, { "name": "Healthy", "value": "Healthy", "description": "Recovery point is healthy" }, { "name": "UnHealthy", "value": "UnHealthy", "description": "Recovery point is unhealthy" }, { "name": "Warning", "value": "Warning", "description": "Recovery point has warning-level threats" }, { "name": "NotAvailable", "value": "NotAvailable", "description": "Threat status is not available" } ] } }, "TieringCostInfo": { "type": "object", "description": "Base class for tiering cost response", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "TieringCostRehydrationInfo": { "type": "object", "description": "Response parameters for tiering cost info for rehydration", "properties": { "rehydrationSizeInBytes": { "type": "integer", "format": "int64", "description": "Rehydration size in bytes" }, "retailRehydrationCostPerGBPerMonth": { "type": "number", "format": "double", "description": "Source tier to target tier rehydration cost per GB per month" } }, "required": [ "rehydrationSizeInBytes", "retailRehydrationCostPerGBPerMonth" ], "allOf": [ { "$ref": "#/definitions/TieringCostInfo" } ], "x-ms-discriminator-value": "TieringCostRehydrationInfo" }, "TieringCostSavingInfo": { "type": "object", "description": "Response parameters for tiering cost info for savings", "properties": { "sourceTierSizeReductionInBytes": { "type": "integer", "format": "int64", "description": "Source tier size reduction in bytes after moving all the recommended backup points to target tier" }, "targetTierSizeIncreaseInBytes": { "type": "integer", "format": "int64", "description": "Target tier size increase in bytes after moving all the recommended backup points to target tier" }, "retailSourceTierCostPerGBPerMonth": { "type": "number", "format": "double", "description": "Source tier retail cost per GB per month" }, "retailTargetTierCostPerGBPerMonth": { "type": "number", "format": "double", "description": "Target tier retail cost per GB per month" } }, "required": [ "sourceTierSizeReductionInBytes", "targetTierSizeIncreaseInBytes", "retailSourceTierCostPerGBPerMonth", "retailTargetTierCostPerGBPerMonth" ], "allOf": [ { "$ref": "#/definitions/TieringCostInfo" } ], "x-ms-discriminator-value": "TieringCostSavingInfo" }, "TieringMode": { "type": "string", "description": "Tiering Mode to control automatic tiering of recovery points. Supported values are:\n1. TierRecommended: Tier all recovery points recommended to be tiered\n2. TierAfter: Tier all recovery points after a fixed period, as specified in duration + durationType below.\n3. DoNotTier: Do not tier any recovery points", "enum": [ "Invalid", "TierRecommended", "TierAfter", "DoNotTier" ], "x-ms-enum": { "name": "TieringMode", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "TierRecommended", "value": "TierRecommended" }, { "name": "TierAfter", "value": "TierAfter" }, { "name": "DoNotTier", "value": "DoNotTier" } ] } }, "TieringPolicy": { "type": "object", "description": "Tiering Policy for a target tier.\nIf the policy is not specified for a given target tier, service retains the existing configured tiering policy for that tier", "properties": { "tieringMode": { "$ref": "#/definitions/TieringMode", "description": "Tiering Mode to control automatic tiering of recovery points. Supported values are:\n1. TierRecommended: Tier all recovery points recommended to be tiered\n2. TierAfter: Tier all recovery points after a fixed period, as specified in duration + durationType below.\n3. DoNotTier: Do not tier any recovery points" }, "duration": { "type": "integer", "format": "int32", "description": "Number of days/weeks/months/years to retain backups in current tier before tiering.\nUsed only if TieringMode is set to TierAfter" }, "durationType": { "$ref": "#/definitions/RetentionDurationType", "description": "Retention duration type: days/weeks/months/years\nUsed only if TieringMode is set to TierAfter" } } }, "TokenInformation": { "type": "object", "description": "The token information details.", "properties": { "token": { "type": "string", "description": "Token value." }, "expiryTimeInUtcTicks": { "type": "integer", "format": "int64", "description": "Expiry time of token." }, "securityPIN": { "type": "string", "description": "Security PIN" } } }, "TriggerDataMoveRequest": { "type": "object", "description": "Trigger DataMove Request", "properties": { "sourceResourceId": { "type": "string", "description": "ARM Id of source vault" }, "sourceRegion": { "type": "string", "description": "Source Region" }, "dataMoveLevel": { "$ref": "#/definitions/DataMoveLevel", "description": "DataMove Level" }, "correlationId": { "type": "string", "description": "Correlation Id" }, "sourceContainerArmIds": { "type": "array", "description": "Source Container ArmIds", "items": { "type": "string" } }, "pauseGC": { "type": "boolean", "description": "Pause GC" } }, "required": [ "sourceResourceId", "sourceRegion", "dataMoveLevel", "correlationId" ] }, "Type": { "type": "string", "description": "Backup management type for this container.", "enum": [ "Invalid", "BackupProtectedItemCountSummary", "BackupProtectionContainerCountSummary" ], "x-ms-enum": { "name": "Type", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "BackupProtectedItemCountSummary", "value": "BackupProtectedItemCountSummary" }, { "name": "BackupProtectionContainerCountSummary", "value": "BackupProtectionContainerCountSummary" } ] } }, "UnlockDeleteRequest": { "type": "object", "description": "Request body of unlock delete API.", "properties": { "resourceGuardOperationRequests": { "type": "array", "items": { "type": "string" } }, "resourceToBeDeleted": { "type": "string" } } }, "UnlockDeleteResponse": { "type": "object", "description": "Response of Unlock Delete API.", "properties": { "unlockDeleteExpiryTime": { "type": "string", "description": "This is the time when unlock delete privileges will get expired." } } }, "UpdateRecoveryPointRequest": { "type": "object", "description": "Patch Request content to update recovery point for given RecoveryPointId", "properties": { "properties": { "$ref": "#/definitions/PatchRecoveryPointInput", "description": "Resource properties." } } }, "UsagesUnit": { "type": "string", "description": "Unit of the usage.", "enum": [ "Count", "Bytes", "Seconds", "Percent", "CountPerSecond", "BytesPerSecond" ], "x-ms-enum": { "name": "UsagesUnit", "modelAsString": true, "values": [ { "name": "Count", "value": "Count" }, { "name": "Bytes", "value": "Bytes" }, { "name": "Seconds", "value": "Seconds" }, { "name": "Percent", "value": "Percent" }, { "name": "CountPerSecond", "value": "CountPerSecond" }, { "name": "BytesPerSecond", "value": "BytesPerSecond" } ] } }, "UserAssignedIdentityProperties": { "type": "object", "description": "User assigned managed identity properties", "properties": { "clientId": { "type": "string", "description": "The client ID of the assigned identity." }, "principalId": { "type": "string", "description": "The principal ID of the assigned identity." } } }, "UserAssignedManagedIdentityDetails": { "type": "object", "description": "User assigned managed identity details", "properties": { "identityArmId": { "type": "string", "description": "The ARM id of the assigned identity." }, "identityName": { "type": "string", "description": "The name of the assigned identity." }, "userAssignedIdentityProperties": { "$ref": "#/definitions/UserAssignedIdentityProperties", "description": "User assigned managed identity properties" } } }, "VMWorkloadPolicyType": { "type": "string", "description": "Type of the protection policy", "enum": [ "Invalid", "SnapshotV1", "SnapshotV2", "Streaming" ], "x-ms-enum": { "name": "VMWorkloadPolicyType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid", "description": "Invalid policy type" }, { "name": "SnapshotV1", "value": "SnapshotV1", "description": "Snapshot V1 policy type" }, { "name": "SnapshotV2", "value": "SnapshotV2", "description": "Snapshot V2 policy type" }, { "name": "Streaming", "value": "Streaming", "description": "Streaming policy type" } ] } }, "ValidateIaasVMRestoreOperationRequest": { "type": "object", "description": "AzureRestoreValidation request.", "allOf": [ { "$ref": "#/definitions/ValidateRestoreOperationRequest" } ], "x-ms-discriminator-value": "ValidateIaasVMRestoreOperationRequest" }, "ValidateOperationRequest": { "type": "object", "description": "Base class for validate operation request.", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "ValidateOperationRequestResource": { "type": "object", "description": "Base class for validate operation request.", "properties": { "id": { "type": "string", "description": "Recovery point ID." }, "properties": { "$ref": "#/definitions/ValidateOperationRequest", "description": "ValidateOperationRequestResource properties" } }, "required": [ "id", "properties" ] }, "ValidateOperationResponse": { "type": "object", "description": "Base class for validate operation response.", "properties": { "validationResults": { "type": "array", "description": "Gets the validation result", "items": { "$ref": "#/definitions/ErrorDetail" }, "x-ms-identifiers": [ "code" ] } } }, "ValidateOperationsResponse": { "type": "object", "properties": { "validateOperationResponse": { "$ref": "#/definitions/ValidateOperationResponse", "description": "Base class for validate operation response." } } }, "ValidateRestoreOperationRequest": { "type": "object", "description": "AzureRestoreValidation request.", "properties": { "restoreRequest": { "$ref": "#/definitions/RestoreRequest", "description": "Sets restore request to be validated" } }, "allOf": [ { "$ref": "#/definitions/ValidateOperationRequest" } ], "x-ms-discriminator-value": "ValidateRestoreOperationRequest" }, "ValidationStatus": { "type": "string", "description": "Validation Status", "enum": [ "Invalid", "Succeeded", "Failed" ], "x-ms-enum": { "name": "ValidationStatus", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Succeeded", "value": "Succeeded" }, { "name": "Failed", "value": "Failed" } ] } }, "VaultCredentialCertificateCreateOptions": { "type": "object", "description": "Options for self-signed certificate generation.", "properties": { "validityInHours": { "type": "integer", "format": "int32", "description": "Validity period of the generated certificate in hours." } } }, "VaultCredentialCertificateProperties": { "type": "object", "description": "Properties of the vault credential certificate including the certificate data\nand AAD service principal identity details required by MARS agent.", "properties": { "authType": { "type": "string", "description": "Authentication type." }, "certificate": { "type": "string", "description": "Base64-encoded certificate data." }, "resourceId": { "type": "integer", "format": "int64", "description": "IDM resource ID of the vault." }, "serviceResourceId": { "type": "string", "description": "String form of the IDM resource ID." }, "aadAuthority": { "type": "string", "description": "AAD authority URL." }, "aadTenantId": { "type": "string", "description": "AAD tenant ID of the source vault." }, "servicePrincipalClientId": { "type": "string", "description": "Service principal client ID for the vault." }, "servicePrincipalObjectId": { "type": "string", "description": "Service principal object ID for the vault." }, "azureManagementEndpointAudience": { "type": "string", "description": "Azure management endpoint audience." }, "aadAudience": { "type": "string", "description": "AAD audience URI for the vault." }, "subject": { "type": "string", "description": "Certificate subject." }, "issuer": { "type": "string", "description": "Certificate issuer." }, "thumbprint": { "type": "string", "description": "Certificate thumbprint." }, "validFrom": { "type": "string", "format": "date-time", "description": "Certificate validity start date." }, "validTo": { "type": "string", "format": "date-time", "description": "Certificate validity end date." }, "friendlyName": { "type": "string", "description": "Certificate friendly name." }, "provisioningState": { "type": "string", "description": "Provisioning state of the vault credential certificate.", "enum": [ "Succeeded", "Failed", "Canceled", "Provisioning", "Updating", "Deleting", "Accepted" ], "x-ms-enum": { "modelAsString": false }, "readOnly": true } } }, "VaultCredentialCertificateRequest": { "type": "object", "description": "Request to generate a vault credential certificate for cross-tenant restore.", "properties": { "certificateCreateOptions": { "$ref": "#/definitions/VaultCredentialCertificateCreateOptions", "description": "Options for certificate generation." } } }, "VaultCredentialCertificateResponse": { "type": "object", "description": "Response containing the generated vault credential certificate\nand associated AAD identity details for MARS agent registration.", "properties": { "properties": { "$ref": "#/definitions/VaultCredentialCertificateProperties", "description": "The resource-specific properties for this resource." } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" } ] }, "VaultJob": { "type": "object", "description": "Vault level Job", "properties": { "duration": { "type": "string", "format": "duration", "description": "Time elapsed during the execution of this job." }, "actionsInfo": { "type": "array", "description": "Gets or sets the state/actions applicable on this job like cancel/retry.", "items": { "$ref": "#/definitions/JobSupportedAction" } }, "errorDetails": { "type": "array", "description": "Error details on execution of this job.", "items": { "$ref": "#/definitions/VaultJobErrorInfo" }, "x-ms-identifiers": [ "errorCode" ] }, "extendedInfo": { "$ref": "#/definitions/VaultJobExtendedInfo", "description": "Additional information about the job." } }, "allOf": [ { "$ref": "#/definitions/Job" } ], "x-ms-discriminator-value": "VaultJob" }, "VaultJobErrorInfo": { "type": "object", "description": "Vault Job specific error information", "properties": { "errorCode": { "type": "integer", "format": "int32", "description": "Error code." }, "errorString": { "type": "string", "description": "Localized error string." }, "recommendations": { "type": "array", "description": "List of localized recommendations for above error code.", "items": { "type": "string" } } } }, "VaultJobExtendedInfo": { "type": "object", "description": "Vault Job for CMK - has CMK specific info.", "properties": { "propertyBag": { "type": "object", "description": "Job properties.", "additionalProperties": { "type": "string" } } } }, "VaultMappingState": { "type": "string", "description": "State of a vault mapping.", "enum": [ "Active", "Inactive" ], "x-ms-enum": { "name": "VaultMappingState", "modelAsString": true, "values": [ { "name": "Active", "value": "Active", "description": "The mapping is active." }, { "name": "Inactive", "value": "Inactive", "description": "The mapping is inactive." } ] } }, "VaultResource": { "type": "object", "description": "Vault resource in Recovery Service.", "properties": { "name": { "type": "string", "description": "The name of the VaultResource", "readOnly": true } }, "required": [ "name" ] }, "VaultRetentionPolicy": { "type": "object", "description": "Vault retention policy for AzureFileShare", "properties": { "vaultRetention": { "$ref": "#/definitions/RetentionPolicy", "description": "Base class for retention policy." }, "snapshotRetentionInDays": { "type": "integer", "format": "int32" } }, "required": [ "vaultRetention", "snapshotRetentionInDays" ] }, "VaultStorageConfigOperationResultResponse": { "type": "object", "description": "Operation result response for Vault Storage Config", "properties": { "objectType": { "type": "string", "description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types." } }, "discriminator": "objectType", "required": [ "objectType" ] }, "VaultSubResourceType": { "type": "string", "description": "GroupId for the PrivateEndpointConnection - AzureBackup, AzureBackup_secondary or AzureSiteRecovery", "enum": [ "AzureBackup", "AzureBackup_secondary", "AzureSiteRecovery" ], "x-ms-enum": { "name": "VaultSubResourceType", "modelAsString": true, "values": [ { "name": "AzureBackup", "value": "AzureBackup" }, { "name": "AzureBackup_secondary", "value": "AzureBackup_secondary" }, { "name": "AzureSiteRecovery", "value": "AzureSiteRecovery" } ] } }, "WeekOfMonth": { "type": "string", "enum": [ "First", "Second", "Third", "Fourth", "Last", "Invalid" ], "x-ms-enum": { "name": "WeekOfMonth", "modelAsString": false } }, "WeeklyRetentionFormat": { "type": "object", "description": "Weekly retention format.", "properties": { "daysOfTheWeek": { "type": "array", "description": "List of days of the week.", "items": { "$ref": "#/definitions/DayOfWeek" } }, "weeksOfTheMonth": { "type": "array", "description": "List of weeks of month.", "items": { "$ref": "#/definitions/WeekOfMonth" } } } }, "WeeklyRetentionSchedule": { "type": "object", "description": "Weekly retention schedule.", "properties": { "daysOfTheWeek": { "type": "array", "description": "List of days of week for weekly retention policy.", "items": { "$ref": "#/definitions/DayOfWeek" } }, "retentionTimes": { "type": "array", "description": "Retention times of retention policy.", "items": { "type": "string", "format": "date-time" } }, "retentionDuration": { "$ref": "#/definitions/RetentionDuration", "description": "Retention duration of retention Policy." } } }, "WeeklySchedule": { "type": "object", "properties": { "scheduleRunDays": { "type": "array", "items": { "$ref": "#/definitions/DayOfWeek" } }, "scheduleRunTimes": { "type": "array", "description": "List of times of day this schedule has to be run.", "items": { "type": "string", "format": "date-time" } } } }, "WorkloadInquiryDetails": { "type": "object", "description": "Details of an inquired protectable item.", "properties": { "type": { "type": "string", "description": "Type of the Workload such as SQL, Oracle etc." }, "itemCount": { "type": "integer", "format": "int64", "description": "Contains the protectable item Count inside this Container." }, "inquiryValidation": { "$ref": "#/definitions/InquiryValidation", "description": "Inquiry validation such as permissions and other backup validations." } } }, "WorkloadItem": { "type": "object", "description": "Base class for backup item. Workload-specific backup items are derived from this class.", "properties": { "backupManagementType": { "type": "string", "description": "Type of backup management to backup an item." }, "workloadType": { "type": "string", "description": "Type of workload for the backup management" }, "workloadItemType": { "type": "string", "description": "Type of the backup item." }, "friendlyName": { "type": "string", "description": "Friendly name of the backup item." }, "protectionState": { "$ref": "#/definitions/ProtectionStatus", "description": "State of the back up item." } }, "discriminator": "workloadItemType", "required": [ "workloadItemType" ] }, "WorkloadItemResource": { "type": "object", "description": "Base class for backup item. Workload-specific backup items are derived from this class.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/WorkloadItem", "description": "WorkloadItemResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "WorkloadItemResourceList": { "type": "object", "description": "List of WorkloadItem resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/WorkloadItemResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "WorkloadItemType": { "type": "string", "description": "Workload item type of the item for which intent is to be set", "enum": [ "Invalid", "SQLInstance", "SQLDataBase", "SAPHanaSystem", "SAPHanaDatabase", "SAPAseSystem", "SAPAseDatabase", "SAPHanaDBInstance" ], "x-ms-enum": { "name": "WorkloadItemType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "SQLInstance", "value": "SQLInstance" }, { "name": "SQLDataBase", "value": "SQLDataBase" }, { "name": "SAPHanaSystem", "value": "SAPHanaSystem" }, { "name": "SAPHanaDatabase", "value": "SAPHanaDatabase" }, { "name": "SAPAseSystem", "value": "SAPAseSystem" }, { "name": "SAPAseDatabase", "value": "SAPAseDatabase" }, { "name": "SAPHanaDBInstance", "value": "SAPHanaDBInstance" } ] } }, "WorkloadProtectableItem": { "type": "object", "description": "Base class for backup item. Workload-specific backup items are derived from this class.", "properties": { "backupManagementType": { "type": "string", "description": "Type of backup management to backup an item." }, "workloadType": { "type": "string", "description": "Type of workload for the backup management" }, "protectableItemType": { "type": "string", "description": "Type of the backup item." }, "friendlyName": { "type": "string", "description": "Friendly name of the backup item." }, "protectionState": { "$ref": "#/definitions/ProtectionStatus", "description": "State of the back up item." } }, "discriminator": "protectableItemType", "required": [ "protectableItemType" ] }, "WorkloadProtectableItemResource": { "type": "object", "description": "Base class for backup item. Workload-specific backup items are derived from this class.", "properties": { "location": { "$ref": "#/definitions/Azure.Core.azureLocation", "description": "Resource location." }, "tags": { "type": "object", "description": "Resource tags.", "additionalProperties": { "type": "string" } }, "eTag": { "type": "string", "description": "Optional ETag." }, "properties": { "$ref": "#/definitions/WorkloadProtectableItem", "description": "WorkloadProtectableItemResource properties" } }, "allOf": [ { "$ref": "../../../../../../common-types/resource-management/v3/types.json#/definitions/Resource" } ] }, "WorkloadProtectableItemResourceList": { "type": "object", "description": "List of WorkloadProtectableItem resources", "properties": { "value": { "type": "array", "description": "List of resources.", "items": { "$ref": "#/definitions/WorkloadProtectableItemResource" } } }, "allOf": [ { "$ref": "#/definitions/ResourceList" } ] }, "WorkloadType": { "type": "string", "description": "Type of workload for the backup management", "enum": [ "Invalid", "VM", "FileFolder", "AzureSqlDb", "SQLDB", "Exchange", "Sharepoint", "VMwareVM", "SystemState", "Client", "GenericDataSource", "SQLDataBase", "AzureFileShare", "SAPHanaDatabase", "SAPAseDatabase", "SAPHanaDBInstance" ], "x-ms-enum": { "name": "WorkloadType", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "VM", "value": "VM" }, { "name": "FileFolder", "value": "FileFolder" }, { "name": "AzureSqlDb", "value": "AzureSqlDb" }, { "name": "SQLDB", "value": "SQLDB" }, { "name": "Exchange", "value": "Exchange" }, { "name": "Sharepoint", "value": "Sharepoint" }, { "name": "VMwareVM", "value": "VMwareVM" }, { "name": "SystemState", "value": "SystemState" }, { "name": "Client", "value": "Client" }, { "name": "GenericDataSource", "value": "GenericDataSource" }, { "name": "SQLDataBase", "value": "SQLDataBase" }, { "name": "AzureFileShare", "value": "AzureFileShare" }, { "name": "SAPHanaDatabase", "value": "SAPHanaDatabase" }, { "name": "SAPAseDatabase", "value": "SAPAseDatabase" }, { "name": "SAPHanaDBInstance", "value": "SAPHanaDBInstance" } ] } }, "XcoolState": { "type": "string", "description": "Vault x-cool state", "enum": [ "Invalid", "Enabled", "Disabled" ], "x-ms-enum": { "name": "XcoolState", "modelAsString": true, "values": [ { "name": "Invalid", "value": "Invalid" }, { "name": "Enabled", "value": "Enabled" }, { "name": "Disabled", "value": "Disabled" } ] } }, "YearlyRetentionSchedule": { "type": "object", "description": "Yearly retention schedule.", "properties": { "retentionScheduleFormatType": { "$ref": "#/definitions/RetentionScheduleFormat", "description": "Retention schedule format for yearly retention policy." }, "monthsOfYear": { "type": "array", "description": "List of months of year of yearly retention policy.", "items": { "$ref": "#/definitions/MonthOfYear" } }, "retentionScheduleDaily": { "$ref": "#/definitions/DailyRetentionFormat", "description": "Daily retention format for yearly retention policy." }, "retentionScheduleWeekly": { "$ref": "#/definitions/WeeklyRetentionFormat", "description": "Weekly retention format for yearly retention policy." }, "retentionTimes": { "type": "array", "description": "Retention times of retention policy.", "items": { "type": "string", "format": "date-time" } }, "retentionDuration": { "$ref": "#/definitions/RetentionDuration", "description": "Retention duration of retention Policy." } } } }, "parameters": { "CrossTenantContainerParentParameters.containerName": { "name": "containerName", "in": "path", "description": "Container name associated with the backed up items.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "CrossTenantContainerParentParameters.fabricName": { "name": "fabricName", "in": "path", "description": "Fabric name associated with the backed up items.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "CrossTenantProtectedItemParentParameters.protectedItemName": { "name": "protectedItemName", "in": "path", "description": "Backed up item name.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "CrossTenantVaultCredentialParentParameters.certificateName": { "name": "certificateName", "in": "path", "description": "Name identifier for the certificate.", "required": true, "type": "string", "x-ms-parameter-location": "method" }, "CrossTenantVaultMappingParentParameters.crossTenantVaultMappingName": { "name": "crossTenantVaultMappingName", "in": "path", "description": "Cross-tenant vault mapping name.", "required": true, "type": "string", "pattern": "^[A-Za-z][A-Za-z0-9]{1,99}$", "x-ms-parameter-location": "method" }, "CrossTenantVaultMappingParentParameters.vaultName": { "name": "vaultName", "in": "path", "description": "The name of the recovery services vault.", "required": true, "type": "string", "x-ms-parameter-location": "method" } } }