RecoveryServicesBackupClient
Connect to RecoveryServicesBackupClient with 1 MCP tools for AI-powered API automation.
COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
"swagger": "2.0",
"schemes": [
"https"
],
"host": "management.azure.com",
"info": {
"title": "RecoveryServicesBackupClient",
"version": "2017-07-01",
"x-apisguru-categories": [
"cloud"
],
"x-logo": {
"url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
},
"x-origin": [
{
"format": "swagger",
"url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/recoveryservicesbackup/resource-manager/Microsoft.RecoveryServices/stable/2017-07-01/bms.json",
"version": "2.0"
}
],
"x-preferred": true,
"x-providerName": "azure.com",
"x-serviceName": "recoveryservicesbackup-bms",
"x-tags": [
"Azure",
"Microsoft"
]
},
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"securityDefinitions": {
"azure_auth": {
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
"description": "Azure Active Directory OAuth2 Flow",
"flow": "implicit",
"scopes": {
"user_impersonation": "impersonate your user account."
},
"type": "oauth2"
}
},
"security": [
{
"azure_auth": [
"user_impersonation"
]
}
],
"parameters": {
"ApiVersion": {
"description": "Client Api Version.",
"in": "query",
"name": "api-version",
"required": true,
"type": "string"
},
"AzureRegion": {
"description": "Azure region to hit Api",
"in": "path",
"name": "azureRegion",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
},
"ResourceGroupName": {
"description": "The name of the resource group where the recovery services vault is present.",
"in": "path",
"name": "resourceGroupName",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
},
"SubscriptionId": {
"description": "The subscription Id.",
"in": "path",
"name": "subscriptionId",
"required": true,
"type": "string"
},
"VaultName": {
"description": "The name of the recovery services vault.",
"in": "path",
"name": "vaultName",
"required": true,
"type": "string",
"x-ms-parameter-location": "method"
}
},
"paths": {
"/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupPreValidateProtection": {
"post": {
"operationId": "ProtectionIntent_Validate",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/AzureRegion"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Enable backup validation request on Virtual Machine",
"in": "body",
"name": "parameters",
"required": true,
"schema": {
"$ref": "#/definitions/PreValidateEnableBackupRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/PreValidateEnableBackupResponse"
}
}
},
"summary": "It will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.",
"tags": [
"ProtectionIntent"
],
"x-ms-examples": {
"Validate Enable Protection on Azure Vm": {
"parameters": {
"api-version": "2017-07-01",
"azureRegion": "southeastasia",
"parameters": {
"properties": "",
"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/arunaupgrade/providers/Microsoft.Compute/VirtualMachines/upgrade1",
"resourceType": "VM",
"vaultId": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/Vaults/myVault"
},
"subscriptionId": "00000000-0000-0000-0000-000000000000"
},
"responses": {
"200": {
"body": {
"containerName": "iaasvmcontainer;iaasvmcontainerv2;arunaupgrade;upgrade1",
"errorCode": "VirtualMachineAlreadyProtected",
"errorMessage": "Virtual machine with same name and same resource group is already protected. Please select `Disable' choice above for backup and go to backup item corresponding to this VM in the vault",
"protectedItemName": "vm;iaasvmcontainerv2;arunaupgrade;upgrade1",
"recommendation": "Please do not enable protection again.",
"status": "Failed"
}
}
}
}
}
}
},
"/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupStatus": {
"post": {
"operationId": "BackupStatus_Get",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/AzureRegion"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Container Backup Status Request",
"in": "body",
"name": "parameters",
"required": true,
"schema": {
"$ref": "#/definitions/BackupStatusRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/BackupStatusResponse"
}
}
},
"summary": "Get the container backup status",
"tags": [
"BackupStatus"
],
"x-ms-examples": {
"Get Azure Virtual Machine Backup Status": {
"parameters": {
"api-version": "2017-07-01",
"azureRegion": "southeastasia",
"parameters": {
"resourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.Compute/VirtualMachines/testVm",
"resourceType": "VM"
},
"subscriptionId": "00000000-0000-0000-0000-000000000000"
},
"responses": {
"200": {
"body": {
"containerName": "iaasvmcontainer;iaasvmcontainerv2;testRg;testVm",
"errorCode": "Success",
"errorMessage": "ErrorMessage",
"fabricName": "Azure",
"policyName": "myPolicy",
"protectedItemName": "vm;iaasvmcontainerv2;testRg;testVm",
"protectionStatus": "Protected",
"vaultId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRg/providers/Microsoft.RecoveryServices/Vaults/testVault"
}
}
}
}
}
}
},
"/Subscriptions/{subscriptionId}/providers/Microsoft.RecoveryServices/locations/{azureRegion}/backupValidateFeatures": {
"post": {
"operationId": "FeatureSupport_Validate",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/AzureRegion"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Feature support request object",
"in": "body",
"name": "parameters",
"required": true,
"schema": {
"$ref": "#/definitions/FeatureSupportRequest"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/AzureVMResourceFeatureSupportResponse"
}
}
},
"summary": "It will validate if given feature with resource properties is supported in service",
"tags": [
"FeatureSupport"
],
"x-ms-examples": {
"Check Azure Vm Backup Feature Support": {
"parameters": {
"api-version": "2017-07-01",
"azureRegion": "southeastasia",
"parameters": {
"featureType": "AzureVMResourceBackup",
"vmSize": "Basic_A0",
"vmSku": "Premium"
},
"subscriptionId": "00000000-0000-0000-0000-000000000000"
},
"responses": {
"200": {
"body": {
"supportStatus": "DefaultOFF"
}
}
}
}
}
}
},
"/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/backupProtectionIntent/{intentObjectName}": {
"delete": {
"description": "Used to remove intent from an item",
"operationId": "ProtectionIntent_Delete",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/VaultName"
},
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Fabric name associated with the intent.",
"in": "path",
"name": "fabricName",
"required": true,
"type": "string"
},
{
"description": "Intent to be deleted.",
"in": "path",
"name": "intentObjectName",
"required": true,
"type": "string"
}
],
"responses": {
"204": {
"description": "NoContent"
}
},
"tags": [
"ProtectionIntent"
],
"x-ms-examples": {
"Delete Protection intent from item": {
"parameters": {
"api-version": "2017-07-01",
"fabricName": "Azure",
"intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E",
"parameters": {},
"resourceGroupName": "myRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "myVault"
},
"responses": {
"204": {}
}
}
}
},
"get": {
"description": "Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation,\r\ncall the GetItemOperationResult API.",
"operationId": "ProtectionIntent_Get",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/VaultName"
},
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Fabric name associated with the backed up item.",
"in": "path",
"name": "fabricName",
"required": true,
"type": "string"
},
{
"description": "Backed up item name whose details are to be fetched.",
"in": "path",
"name": "intentObjectName",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProtectionIntentResource"
}
}
},
"tags": [
"ProtectionIntent"
],
"x-ms-examples": {
"Get ProtectionIntent for an item": {
"parameters": {
"api-version": "2017-07-01",
"fabricName": "Azure",
"intentObjectName": "249D9B07-D2EF-4202-AA64-65F35418564E",
"parameters": {},
"resourceGroupName": "myRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "myVault"
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E",
"name": "249D9B07-D2EF-4202-AA64-65F35418564E",
"properties": {
"backupManagementType": "AzureWorkload",
"itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER",
"policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy"
},
"type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent"
}
}
}
}
}
},
"put": {
"description": "Create Intent for Enabling backup of an item. This is a synchronous operation.",
"operationId": "ProtectionIntent_CreateOrUpdate",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/VaultName"
},
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "Fabric name associated with the backup item.",
"in": "path",
"name": "fabricName",
"required": true,
"type": "string"
},
{
"description": "Intent object name.",
"in": "path",
"name": "intentObjectName",
"required": true,
"type": "string"
},
{
"description": "resource backed up item",
"in": "body",
"name": "parameters",
"required": true,
"schema": {
"$ref": "#/definitions/ProtectionIntentResource"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProtectionIntentResource"
}
}
},
"tags": [
"ProtectionIntent"
],
"x-ms-examples": {
"Create or Update Azure Vm Protection Intent": {
"parameters": {
"api-version": "2017-07-01",
"fabricName": "Azure",
"intentObjectName": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel",
"parameters": {
"properties": {
"policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy",
"protectionIntentItemType": "AzureResourceItem",
"sourceResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/chamsrgtest/providers/Microsoft.Compute/virtualMachines/chamscandel"
}
},
"resourceGroupName": "myRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "myVault"
},
"responses": {
"200": {
"body": {
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/vm;iaasvmcontainerv2;chamsrgtest;chamscandel",
"name": "vm;iaasvmcontainerv2;chamsrgtest;chamscandel",
"properties": {
"backupManagementType": "AzureIaasVM",
"policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy",
"protectionState": "Protected"
},
"type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent"
}
}
}
}
}
}
},
"/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupProtectionIntents": {
"get": {
"description": "Provides a pageable list of all intents that are present within a vault.",
"operationId": "BackupProtectionIntent_List",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/VaultName"
},
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "OData filter options.",
"in": "query",
"name": "$filter",
"required": false,
"type": "string"
},
{
"description": "skipToken Filter.",
"in": "query",
"name": "$skipToken",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/ProtectionIntentResourceList"
}
}
},
"tags": [
"BackupProtectionIntent"
],
"x-ms-examples": {
"List protection intent with backupManagementType filter": {
"parameters": {
"api-version": "2017-07-01",
"parameters": {},
"resourceGroupName": "myRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "myVault"
},
"responses": {
"200": {
"body": {
"value": [
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupFabrics/Azure/backupProtectionIntent/249D9B07-D2EF-4202-AA64-65F35418564E",
"name": "249D9B07-D2EF-4202-AA64-65F35418564E",
"properties": {
"backupManagementType": "AzureWorkload",
"itemId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupProtectionContainer/VMAppContainer;Compute;testVmName/backupProtectableItems/SQLInstance;MSSQLSERVER",
"policyId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/testRG/providers/Microsoft.RecoveryServices/vaults/myVault/backupPolicies/myPolicy"
},
"type": "Microsoft.RecoveryServices/vaults/backupProtectionIntent"
}
]
}
}
}
}
},
"x-ms-odata": "#/definitions/ProtectionIntentQueryObject",
"x-ms-pageable": {
"nextLinkName": "nextLink"
}
}
},
"/Subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupUsageSummaries": {
"get": {
"description": "Fetches the backup management usage summaries of the vault.",
"operationId": "BackupUsageSummaries_List",
"parameters": [
{
"$ref": "#/parameters/ApiVersion"
},
{
"$ref": "#/parameters/VaultName"
},
{
"$ref": "#/parameters/ResourceGroupName"
},
{
"$ref": "#/parameters/SubscriptionId"
},
{
"description": "OData filter options.",
"in": "query",
"name": "$filter",
"required": false,
"type": "string"
},
{
"description": "skipToken Filter.",
"in": "query",
"name": "$skipToken",
"required": false,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/BackupManagementUsageList"
}
}
},
"tags": [
"BackupUsageSummaries"
],
"x-ms-examples": {
"Get Protected Containers Usages Summary": {
"parameters": {
"$filter": "type eq 'BackupProtectionContainerCountSummary'",
"api-version": "2017-07-01",
"resourceGroupName": "testRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "testVault"
},
"responses": {
"200": {
"body": {
"value": [
{
"currentValue": 2,
"limit": -1,
"name": {
"localizedValue": "Azure Backup Server",
"value": "AzureBackupServer"
},
"unit": "Count"
},
{
"currentValue": 3,
"limit": -1,
"name": {
"localizedValue": "Azure Backup Agent",
"value": "MAB"
},
"unit": "Count"
},
{
"currentValue": 1,
"limit": -1,
"name": {
"localizedValue": "SQL in Azure VM",
"value": "AzureWorkload"
},
"unit": "Count"
}
]
}
}
}
},
"Get Protected Items Usages Summary": {
"parameters": {
"$filter": "type eq 'BackupProtectedItemCountSummary'",
"api-version": "2017-07-01",
"resourceGroupName": "testRG",
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"vaultName": "testVault"
},
"responses": {
"200": {
"body": {
"value": [
{
"currentValue": 7,
"limit": -1,
"name": {
"localizedValue": "Azure Virtual Machine",
"value": "AzureIaasVM"
},
"unit": "Count"
},
{
"currentValue": 3,
"limit": -1,
"name": {
"localizedValue": "Azure Backup Agent",
"value": "MAB"
},
"unit": "Count"
},
{
"currentValue": 1,
"limit": -1,
"name": {
"localizedValue": "Azure Backup Server",
"value": "AzureBackupServer"
},
"unit": "Count"
},
{
"currentValue": 2,
"limit": -1,
"name": {
"localizedValue": "Azure Storage (Azure Files)",
"value": "AzureStorage"
},
"unit": "Count"
},
{
"currentValue": 2,
"limit": -1,
"name": {
"localizedValue": "SQL in Azure VM",
"value": "AzureWorkload"
},
"unit": "Count"
}
]
}
}
}
}
},
"x-ms-odata": "#/definitions/BMSBackupSummariesQueryObject",
"x-ms-pageable": {
"nextLinkName": null
}
}
}
},
"definitions": {
"AzureBackupGoalFeatureSupportRequest": {
"allOf": [
{
"$ref": "#/definitions/FeatureSupportRequest"
}
],
"description": "Azure backup goal feature specific request.",
"type": "object",
"x-ms-discriminator-value": "AzureBackupGoals"
},
"AzureIaaSVMErrorInfo": {
"description": "Azure IaaS VM workload-specific error information.",
"properties": {
"errorCode": {
"description": "Error code.",
"format": "int32",
"readOnly": true,
"type": "integer"
},
"errorString": {
"description": "Localized error string.",
"readOnly": true,
"type": "string"
},
"errorTitle": {
"description": "Title: Typically, the entity that the error pertains to.",
"readOnly": true,
"type": "string"
},
"recommendations": {
"description": "List of localized recommendations for above error code.",
"items": {
"type": "string"
},
"readOnly": true,
"type": "array"
}
},
"type": "object"
},
"AzureIaaSVMJob": {
"allOf": [
{
"$ref": "#/definitions/Job"
}
],
"description": "Azure IaaS VM workload-specific job object.",
"properties": {
"actionsInfo": {
"description": "Gets or sets the state/actions applicable on this job like cancel/retry.",
"items": {
"enum": [
"Invalid",
"Cancellable",
"Retriable"
],
"type": "string",
"x-ms-enum": {
"modelAsString": false,
"name": "JobSupportedAction"
}
},
"type": "array"
},
"duration": {
"description": "Time elapsed during the execution of this job.",
"format": "duration",
"type": "string"
},
"errorDetails": {
"description": "Error details on execution of this job.",
"items": {
"$ref": "#/definitions/AzureIaaSVMErrorInfo"
},
"type": "array"
},
"extendedInfo": {
"$ref": "#/definitions/AzureIaaSVMJobExtendedInfo",
"description": "Additional information for this job."
},
"virtualMachineVersion": {
"description": "Specifies whether the backup item is a Classic or an Azure Resource Manager VM.",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "AzureIaaSVMJob"
},
"AzureIaaSVMJobExtendedInfo": {
"description": "Azure IaaS VM workload-specific additional information for job.",
"properties": {
"dynamicErrorMessage": {
"description": "Non localized error message on job execution.",
"type": "string"
},
"estimatedRemainingDuration": {
"description": "Time remaining for execution of this job.",
"type": "string"
},
"internalPropertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "Job internal properties.",
"type": "object"
},
"progressPercentage": {
"description": "Indicates progress of the job. Null if it has not started or completed.",
"format": "double",
"type": "number"
},
"propertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "Job properties.",
"type": "object"
},
"tasksList": {
"description": "List of tasks associated with this job.",
"items": {
"$ref": "#/definitions/AzureIaaSVMJobTaskDetails"
},
"type": "array"
}
},
"type": "object"
},
"AzureIaaSVMJobTaskDetails": {
"description": "Azure IaaS VM workload-specific job task details.",
"properties": {
"duration": {
"description": "Time elapsed for task.",
"format": "duration",
"type": "string"
},
"endTime": {
"description": "The end time.",
"format": "date-time",
"type": "string"
},
"instanceId": {
"description": "The instanceId.",
"type": "string"
},
"progressPercentage": {
"description": "Progress of the task.",
"format": "double",
"type": "number"
},
"startTime": {
"description": "The start time.",
"format": "date-time",
"type": "string"
},
"status": {
"description": "The status.",
"type": "string"
},
"taskExecutionDetails": {
"description": "Details about execution of the task.\r\neg: number of bytes transferred etc",
"type": "string"
},
"taskId": {
"description": "The task display name.",
"type": "string"
}
},
"type": "object"
},
"AzureRecoveryServiceVaultProtectionIntent": {
"allOf": [
{
"$ref": "#/definitions/ProtectionIntent"
}
],
"description": "Azure Recovery Services Vault specific protection intent item.",
"type": "object",
"x-ms-discriminator-value": "RecoveryServiceVaultItem"
},
"AzureResourceProtectionIntent": {
"allOf": [
{
"$ref": "#/definitions/ProtectionIntent"
}
],
"description": "IaaS VM specific backup protection intent item.",
"properties": {
"friendlyName": {
"description": "Friendly name of the VM represented by this backup item.",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "AzureResourceItem"
},
"AzureStorageErrorInfo": {
"description": "Azure storage specific error information",
"properties": {
"errorCode": {
"description": "Error code.",
"format": "int32",
"type": "integer"
},
"errorString": {
"description": "Localized error string.",
"type": "string"
},
"recommendations": {
"description": "List of localized recommendations for above error code.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"AzureStorageJob": {
"allOf": [
{
"$ref": "#/definitions/Job"
}
],
"description": "Azure storage specific job.",
"properties": {
"actionsInfo": {
"description": "Gets or sets the state/actions applicable on this job like cancel/retry.",
"items": {
"enum": [
"Invalid",
"Cancellable",
"Retriable"
],
"type": "string",
"x-ms-enum": {
"modelAsString": false,
"name": "JobSupportedAction"
}
},
"type": "array"
},
"duration": {
"description": "Time elapsed during the execution of this job.",
"format": "duration",
"type": "string"
},
"errorDetails": {
"description": "Error details on execution of this job.",
"items": {
"$ref": "#/definitions/AzureStorageErrorInfo"
},
"type": "array"
},
"extendedInfo": {
"$ref": "#/definitions/AzureStorageJobExtendedInfo",
"description": "Additional information about the job."
},
"storageAccountName": {
"description": "Specifies friendly name of the storage account.",
"type": "string"
},
"storageAccountVersion": {
"description": "Specifies whether the Storage account is a Classic or an Azure Resource Manager Storage account.",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "AzureStorageJob"
},
"AzureStorageJobExtendedInfo": {
"description": "Azure Storage workload-specific additional information for job.",
"properties": {
"dynamicErrorMessage": {
"description": "Non localized error message on job execution.",
"type": "string"
},
"propertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "Job properties.",
"type": "object"
},
"tasksList": {
"description": "List of tasks for this job",
"items": {
"$ref": "#/definitions/AzureStorageJobTaskDetails"
},
"type": "array"
}
},
"type": "object"
},
"AzureStorageJobTaskDetails": {
"description": "Azure storage workload specific job task details.",
"properties": {
"status": {
"description": "The status.",
"type": "string"
},
"taskId": {
"description": "The task display name.",
"type": "string"
}
},
"type": "object"
},
"AzureVMResourceFeatureSupportRequest": {
"allOf": [
{
"$ref": "#/definitions/FeatureSupportRequest"
}
],
"description": "AzureResource(IaaS VM) Specific feature support request",
"properties": {
"vmSize": {
"description": "Size of the resource: VM size(A/D series etc) in case of IaasVM",
"type": "string"
},
"vmSku": {
"description": "SKUs (Premium/Managed etc) in case of IaasVM",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "AzureVMResourceBackup"
},
"AzureVMResourceFeatureSupportResponse": {
"description": "Response for feature support requests for Azure IaasVm",
"properties": {
"supportStatus": {
"description": "Support status of feature",
"enum": [
"Invalid",
"Supported",
"DefaultOFF",
"DefaultON",
"NotSupported"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "SupportStatus"
}
}
},
"type": "object"
},
"AzureWorkloadAutoProtectionIntent": {
"allOf": [
{
"$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent"
}
],
"description": "Azure Recovery Services Vault specific protection intent item.",
"type": "object",
"x-ms-discriminator-value": "AzureWorkloadAutoProtectionIntent"
},
"AzureWorkloadErrorInfo": {
"description": "Azure storage specific error information",
"properties": {
"additionalDetails": {
"description": "Additional details for above error code.",
"type": "string"
},
"errorCode": {
"description": "Error code.",
"format": "int32",
"type": "integer"
},
"errorString": {
"description": "Localized error string.",
"type": "string"
},
"errorTitle": {
"description": "Title: Typically, the entity that the error pertains to.",
"type": "string"
},
"recommendations": {
"description": "List of localized recommendations for above error code.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"AzureWorkloadJob": {
"allOf": [
{
"$ref": "#/definitions/Job"
}
],
"description": "Azure storage specific job.",
"properties": {
"actionsInfo": {
"description": "Gets or sets the state/actions applicable on this job like cancel/retry.",
"items": {
"enum": [
"Invalid",
"Cancellable",
"Retriable"
],
"type": "string",
"x-ms-enum": {
"modelAsString": false,
"name": "JobSupportedAction"
}
},
"type": "array"
},
"duration": {
"description": "Time elapsed during the execution of this job.",
"format": "duration",
"type": "string"
},
"errorDetails": {
"description": "Error details on execution of this job.",
"items": {
"$ref": "#/definitions/AzureWorkloadErrorInfo"
},
"type": "array"
},
"extendedInfo": {
"$ref": "#/definitions/AzureWorkloadJobExtendedInfo",
"description": "Additional information about the job."
},
"workloadType": {
"description": "Workload type of the job",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "AzureWorkloadJob"
},
"AzureWorkloadJobExtendedInfo": {
"description": "Azure VM workload-specific additional information for job.",
"properties": {
"dynamicErrorMessage": {
"description": "Non localized error message on job execution.",
"type": "string"
},
"propertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "Job properties.",
"type": "object"
},
"tasksList": {
"description": "List of tasks for this job",
"items": {
"$ref": "#/definitions/AzureWorkloadJobTaskDetails"
},
"type": "array"
}
},
"type": "object"
},
"AzureWorkloadJobTaskDetails": {
"description": "Azure VM workload specific job task details.",
"properties": {
"status": {
"description": "The status.",
"type": "string"
},
"taskId": {
"description": "The task display name.",
"type": "string"
}
},
"type": "object"
},
"AzureWorkloadSQLAutoProtectionIntent": {
"allOf": [
{
"$ref": "#/definitions/AzureWorkloadAutoProtectionIntent"
}
],
"description": "Azure Workload SQL Auto Protection intent item.",
"properties": {
"workloadItemType": {
"description": "Workload item type of the item for which intent is to be set",
"enum": [
"Invalid",
"SQLInstance",
"SQLDataBase",
"SAPHanaSystem",
"SAPHanaDatabase",
"SAPAseSystem",
"SAPAseDatabase"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "WorkloadItemType"
}
}
},
"type": "object",
"x-ms-discriminator-value": "AzureWorkloadSQLAutoProtectionIntent"
},
"BMSBackupSummariesQueryObject": {
"description": "Query parameters to fetch backup summaries.",
"properties": {
"type": {
"description": "Backup management type for this container.",
"enum": [
"Invalid",
"BackupProtectedItemCountSummary",
"BackupProtectionContainerCountSummary"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "Type"
}
}
},
"type": "object"
},
"BackupManagementUsage": {
"description": "Backup management usages of a vault.",
"properties": {
"currentValue": {
"description": "Current value of usage.",
"format": "int64",
"type": "integer"
},
"limit": {
"description": "Limit of usage.",
"format": "int64",
"type": "integer"
},
"name": {
"$ref": "#/definitions/NameInfo",
"description": "Name of usage."
},
"nextResetTime": {
"description": "Next reset time of usage.",
"format": "date-time",
"type": "string"
},
"quotaPeriod": {
"description": "Quota period of usage.",
"type": "string"
},
"unit": {
"description": "Unit of the usage.",
"enum": [
"Count",
"Bytes",
"Seconds",
"Percent",
"CountPerSecond",
"BytesPerSecond"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "UsagesUnit"
}
}
},
"type": "object"
},
"BackupManagementUsageList": {
"description": "Backup management usage for vault.",
"properties": {
"value": {
"description": "The list of backup management usages for the given vault.",
"items": {
"$ref": "#/definitions/BackupManagementUsage"
},
"type": "array"
}
},
"type": "object"
},
"BackupStatusRequest": {
"description": "BackupStatus request.",
"properties": {
"poLogicalName": {
"description": "Protectable Item Logical Name",
"type": "string"
},
"resourceId": {
"description": "Entire ARM resource id of the resource",
"type": "string"
},
"resourceType": {
"description": "Container Type - VM, SQLPaaS, DPM, AzureFileShare...",
"enum": [
"Invalid",
"VM",
"FileFolder",
"AzureSqlDb",
"SQLDB",
"Exchange",
"Sharepoint",
"VMwareVM",
"SystemState",
"Client",
"GenericDataSource",
"SQLDataBase",
"AzureFileShare",
"SAPHanaDatabase",
"SAPAseDatabase"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "DataSourceType"
}
}
},
"type": "object"
},
"BackupStatusResponse": {
"description": "BackupStatus response.",
"properties": {
"containerName": {
"description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;csname;vmname.",
"type": "string"
},
"errorCode": {
"description": "ErrorCode in case of intent failed",
"type": "string"
},
"errorMessage": {
"description": "ErrorMessage in case of intent failed.",
"type": "string"
},
"fabricName": {
"description": "Specifies the fabric name - Azure or AD",
"enum": [
"Invalid",
"Azure"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "FabricName"
}
},
"policyName": {
"description": "Specifies the policy name which is used for protection",
"type": "string"
},
"protectedItemName": {
"description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;csname;vmname.",
"type": "string"
},
"protectionStatus": {
"description": "Specifies whether the container is registered or not",
"enum": [
"Invalid",
"NotProtected",
"Protecting",
"Protected",
"ProtectionFailed"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "ProtectionStatus"
}
},
"registrationStatus": {
"description": "Container registration status",
"type": "string"
},
"vaultId": {
"description": "Specifies the arm resource id of the vault",
"type": "string"
}
},
"type": "object"
},
"DpmErrorInfo": {
"description": "DPM workload-specific error information.",
"properties": {
"errorString": {
"description": "Localized error string.",
"type": "string"
},
"recommendations": {
"description": "List of localized recommendations for above error code.",
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"DpmJob": {
"allOf": [
{
"$ref": "#/definitions/Job"
}
],
"description": "DPM workload-specific job object.",
"properties": {
"actionsInfo": {
"description": "The state/actions applicable on this job like cancel/retry.",
"items": {
"enum": [
"Invalid",
"Cancellable",
"Retriable"
],
"type": "string",
"x-ms-enum": {
"modelAsString": false,
"name": "JobSupportedAction"
}
},
"type": "array"
},
"containerName": {
"description": "Name of cluster/server protecting current backup item, if any.",
"type": "string"
},
"containerType": {
"description": "Type of container.",
"type": "string"
},
"dpmServerName": {
"description": "DPM server name managing the backup item or backup job.",
"type": "string"
},
"duration": {
"description": "Time elapsed for job.",
"format": "duration",
"type": "string"
},
"errorDetails": {
"description": "The errors.",
"items": {
"$ref": "#/definitions/DpmErrorInfo"
},
"type": "array"
},
"extendedInfo": {
"$ref": "#/definitions/DpmJobExtendedInfo",
"description": "Additional information for this job."
},
"workloadType": {
"description": "Type of backup item.",
"type": "string"
}
},
"type": "object",
"x-ms-discriminator-value": "DpmJob"
},
"DpmJobExtendedInfo": {
"description": "Additional information on the DPM workload-specific job.",
"properties": {
"dynamicErrorMessage": {
"description": "Non localized error message on job execution.",
"type": "string"
},
"propertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "The job properties.",
"type": "object"
},
"tasksList": {
"description": "List of tasks associated with this job.",
"items": {
"$ref": "#/definitions/DpmJobTaskDetails"
},
"type": "array"
}
},
"type": "object"
},
"DpmJobTaskDetails": {
"description": "DPM workload-specific job task details.",
"properties": {
"duration": {
"description": "Time elapsed for task.",
"format": "duration",
"type": "string"
},
"endTime": {
"description": "The end time.",
"format": "date-time",
"type": "string"
},
"startTime": {
"description": "The start time.",
"format": "date-time",
"type": "string"
},
"status": {
"description": "The status.",
"type": "string"
},
"taskId": {
"description": "The task display name.",
"type": "string"
}
},
"type": "object"
},
"FeatureSupportRequest": {
"description": "Base class for feature request",
"discriminator": "featureType",
"properties": {
"featureType": {
"description": "backup support feature type.",
"type": "string"
}
},
"type": "object"
},
"InstantRPAdditionalDetails": {
"properties": {
"azureBackupRGNamePrefix": {
"type": "string"
},
"azureBackupRGNameSuffix": {
"type": "string"
}
},
"type": "object"
},
"Job": {
"description": "Defines workload agnostic properties for a job.",
"discriminator": "jobType",
"properties": {
"activityId": {
"description": "ActivityId of job.",
"type": "string"
},
"backupManagementType": {
"description": "Backup management type to execute the current job.",
"enum": [
"Invalid",
"AzureIaasVM",
"MAB",
"DPM",
"AzureBackupServer",
"AzureSql",
"AzureStorage",
"AzureWorkload",
"DefaultBackup"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "BackupManagementType"
}
},
"endTime": {
"description": "The end time.",
"format": "date-time",
"type": "string"
},
"entityFriendlyName": {
"description": "Friendly name of the entity on which the current job is executing.",
"type": "string"
},
"jobType": {
"description": "This property will be used as the discriminator for deciding the specific types in the polymorphic chain of types.",
"type": "string"
},
"operation": {
"description": "The operation name.",
"type": "string"
},
"startTime": {
"description": "The start time.",
"format": "date-time",
"type": "string"
},
"status": {
"description": "Job status.",
"type": "string"
}
},
"required": [
"jobType"
],
"type": "object"
},
"JobResource": {
"allOf": [
{
"$ref": "#/definitions/Resource"
}
],
"description": "Defines workload agnostic properties for a job.",
"properties": {
"properties": {
"$ref": "#/definitions/Job",
"description": "JobResource properties"
}
}
},
"MabErrorInfo": {
"description": "MAB workload-specific error information.",
"properties": {
"errorString": {
"description": "Localized error string.",
"readOnly": true,
"type": "string"
},
"recommendations": {
"description": "List of localized recommendations.",
"items": {
"type": "string"
},
"readOnly": true,
"type": "array"
}
},
"type": "object"
},
"MabJob": {
"allOf": [
{
"$ref": "#/definitions/Job"
}
],
"description": "MAB workload-specific job.",
"properties": {
"actionsInfo": {
"description": "The state/actions applicable on jobs like cancel/retry.",
"items": {
"enum": [
"Invalid",
"Cancellable",
"Retriable"
],
"type": "string",
"x-ms-enum": {
"modelAsString": false,
"name": "JobSupportedAction"
}
},
"type": "array"
},
"duration": {
"description": "Time taken by job to run.",
"format": "duration",
"type": "string"
},
"errorDetails": {
"description": "The errors.",
"items": {
"$ref": "#/definitions/MabErrorInfo"
},
"type": "array"
},
"extendedInfo": {
"$ref": "#/definitions/MabJobExtendedInfo",
"description": "Additional information on the job."
},
"mabServerName": {
"description": "Name of server protecting the DS.",
"type": "string"
},
"mabServerType": {
"description": "Server type of MAB container.",
"enum": [
"Invalid",
"Unknown",
"IaasVMContainer",
"IaasVMServiceContainer",
"DPMContainer",
"AzureBackupServerContainer",
"MABContainer",
"Cluster",
"AzureSqlContainer",
"Windows",
"VCenter",
"VMAppContainer",
"SQLAGWorkLoadContainer",
"StorageContainer",
"GenericContainer"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "MabServerType"
}
},
"workloadType": {
"description": "Workload type of backup item.",
"enum": [
"Invalid",
"VM",
"FileFolder",
"AzureSqlDb",
"SQLDB",
"Exchange",
"Sharepoint",
"VMwareVM",
"SystemState",
"Client",
"GenericDataSource",
"SQLDataBase",
"AzureFileShare",
"SAPHanaDatabase",
"SAPAseDatabase"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "WorkloadType"
}
}
},
"type": "object",
"x-ms-discriminator-value": "MabJob"
},
"MabJobExtendedInfo": {
"description": "Additional information for the MAB workload-specific job.",
"properties": {
"dynamicErrorMessage": {
"description": "Non localized error message specific to this job.",
"type": "string"
},
"propertyBag": {
"additionalProperties": {
"type": "string"
},
"description": "The job properties.",
"type": "object"
},
"tasksList": {
"description": "List of tasks for this job.",
"items": {
"$ref": "#/definitions/MabJobTaskDetails"
},
"type": "array"
}
},
"type": "object"
},
"MabJobTaskDetails": {
"description": "MAB workload-specific job task details.",
"properties": {
"duration": {
"description": "Time elapsed for task.",
"format": "duration",
"type": "string"
},
"endTime": {
"description": "The end time.",
"format": "date-time",
"type": "string"
},
"startTime": {
"description": "The start time.",
"format": "date-time",
"type": "string"
},
"status": {
"description": "The status.",
"type": "string"
},
"taskId": {
"description": "The task display name.",
"type": "string"
}
},
"type": "object"
},
"NameInfo": {
"description": "The name of usage.",
"properties": {
"localizedValue": {
"description": "Localized value of usage.",
"type": "string"
},
"value": {
"description": "Value of usage.",
"type": "string"
}
},
"type": "object"
},
"PreValidateEnableBackupRequest": {
"description": "Contract to validate if backup can be enabled on the given resource in a given vault and given configuration.\r\nIt will validate followings\r\n1. Vault capacity\r\n2. VM is already protected\r\n3. Any VM related configuration passed in properties.",
"properties": {
"properties": {
"description": "Configuration of VM if any needs to be validated like OS type etc",
"type": "string"
},
"resourceId": {
"description": "ARM Virtual Machine Id",
"type": "string"
},
"resourceType": {
"description": "ProtectedItem Type- VM, SqlDataBase, AzureFileShare etc",
"enum": [
"Invalid",
"VM",
"FileFolder",
"AzureSqlDb",
"SQLDB",
"Exchange",
"Sharepoint",
"VMwareVM",
"SystemState",
"Client",
"GenericDataSource",
"SQLDataBase",
"AzureFileShare",
"SAPHanaDatabase",
"SAPAseDatabase"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "DataSourceType"
}
},
"vaultId": {
"description": "ARM id of the Recovery Services Vault",
"type": "string"
}
},
"type": "object"
},
"PreValidateEnableBackupResponse": {
"description": "Response contract for enable backup validation request",
"properties": {
"containerName": {
"description": "Specifies the product specific container name. E.g. iaasvmcontainer;iaasvmcontainer;rgname;vmname. This is required\r\nfor portal",
"type": "string"
},
"errorCode": {
"description": "Response error code",
"type": "string"
},
"errorMessage": {
"description": "Response error message",
"type": "string"
},
"protectedItemName": {
"description": "Specifies the product specific ds name. E.g. vm;iaasvmcontainer;rgname;vmname. This is required for portal",
"type": "string"
},
"recommendation": {
"description": "Recommended action for user",
"type": "string"
},
"status": {
"description": "Validation Status",
"enum": [
"Invalid",
"Succeeded",
"Failed"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "ValidationStatus"
}
}
},
"type": "object"
},
"ProtectionIntent": {
"description": "Base class for backup ProtectionIntent.",
"discriminator": "protectionIntentItemType",
"properties": {
"backupManagementType": {
"description": "Type of backup management for the backed up item.",
"enum": [
"Invalid",
"AzureIaasVM",
"MAB",
"DPM",
"AzureBackupServer",
"AzureSql",
"AzureStorage",
"AzureWorkload",
"DefaultBackup"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "BackupManagementType"
}
},
"itemId": {
"description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId",
"type": "string"
},
"policyId": {
"description": "ID of the backup policy with which this item is backed up.",
"type": "string"
},
"protectionIntentItemType": {
"description": "backup protectionIntent type.",
"type": "string"
},
"protectionState": {
"description": "Backup state of this backup item.",
"enum": [
"Invalid",
"NotProtected",
"Protecting",
"Protected",
"ProtectionFailed"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "ProtectionStatus"
}
},
"sourceResourceId": {
"description": "ARM ID of the resource to be backed up.",
"type": "string"
}
},
"type": "object"
},
"ProtectionIntentQueryObject": {
"description": "Filters to list protection intent.",
"properties": {
"backupManagementType": {
"description": "Backup management type for the backed up item",
"enum": [
"Invalid",
"AzureIaasVM",
"MAB",
"DPM",
"AzureBackupServer",
"AzureSql",
"AzureStorage",
"AzureWorkload",
"DefaultBackup"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "BackupManagementType"
}
},
"itemName": {
"description": "Item name of the intent",
"type": "string"
},
"itemType": {
"description": "Type of workload this item represents",
"enum": [
"Invalid",
"SQLInstance",
"SQLAvailabilityGroupContainer"
],
"type": "string",
"x-ms-enum": {
"modelAsString": true,
"name": "IntentItemType"
}
},
"parentName": {
"description": "Parent name of the intent",
"type": "string"
}
},
"type": "object"
},
"ProtectionIntentResource": {
"allOf": [
{
"$ref": "#/definitions/Resource"
}
],
"description": "Base class for backup ProtectionIntent.",
"properties": {
"properties": {
"$ref": "#/definitions/ProtectionIntent",
"description": "ProtectionIntentResource properties"
}
}
},
"ProtectionIntentResourceList": {
"allOf": [
{
"$ref": "#/definitions/ResourceList"
}
],
"description": "List of ProtectionIntent resources",
"properties": {
"value": {
"description": "List of resources.",
"items": {
"$ref": "#/definitions/ProtectionIntentResource"
},
"type": "array"
}
},
"type": "object"
},
"Resource": {
"description": "ARM Resource.",
"properties": {
"eTag": {
"description": "Optional ETag.",
"type": "string"
},
"id": {
"description": "Resource Id represents the complete path to the resource.",
"readOnly": true,
"type": "string"
},
"location": {
"description": "Resource location.",
"type": "string"
},
"name": {
"description": "Resource name associated with the resource.",
"readOnly": true,
"type": "string"
},
"tags": {
"additionalProperties": {
"type": "string"
},
"description": "Resource tags.",
"type": "object"
},
"type": {
"description": "Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...",
"readOnly": true,
"type": "string"
}
},
"type": "object",
"x-ms-azure-resource": true
},
"ResourceList": {
"description": "Base for all lists of resources.",
"properties": {
"nextLink": {
"description": "The uri to fetch the next page of resources. Call ListNext() fetches next page of resources.",
"type": "string"
}
},
"type": "object"
}
}
}