swagger: '2.0'
info:
version: 2020-08-01-preview
title: Microsoft Azure AccessControlClient AccessConnector ProtectionContainers API
schemes:
- https
tags:
- name: ProtectionContainers
paths:
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}
: get:
tags:
- ProtectionContainers
description: Gets details of the specific container registered to your Recovery Services Vault.
operationId: microsoftAzureProtectioncontainersGet
produces:
- application/json
parameters:
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/VaultName'
- $ref: '#/parameters/ResourceGroupName'
- $ref: '#/parameters/SubscriptionId'
- name: fabricName
in: path
description: Name of the fabric where the container belongs.
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: OK
schema:
$ref: '#/definitions/ProtectionContainerResource'
default:
description: Error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-examples:
Get Protection Container Details:
$ref: ./examples/AzureWorkload/ProtectionContainers_Get.json
summary: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Recoveryservices Vaults Vaultname Backupfabrics Fabricname Protectioncontainers Containername
put:
tags:
- ProtectionContainers
description: Registers the container with Recovery Services vault.
This is an asynchronous operation. To track the operation status, use location header to call get latest status of
the operation.
operationId: microsoftAzureProtectioncontainersRegister
produces:
- application/json
parameters:
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/VaultName'
- $ref: '#/parameters/ResourceGroupName'
- $ref: '#/parameters/SubscriptionId'
- name: fabricName
in: path
description: Fabric name associated with the container.
required: true
type: string
- name: containerName
in: path
description: Name of the container to be registered.
required: true
type: string
- name: parameters
in: body
description: Request body for operation
required: true
schema:
$ref: '#/definitions/ProtectionContainerResource'
responses:
'200':
description: OK
schema:
$ref: '#/definitions/ProtectionContainerResource'
'202':
description: Accepted
default:
description: Error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-examples:
RegisterAzure Storage ProtectionContainers:
$ref: ./examples/AzureStorage/ProtectionContainers_Register.json
summary: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Recoveryservices Vaults Vaultname Backupfabrics Fabricname Protectioncontainers Containername
delete:
tags:
- ProtectionContainers
description: Unregisters the given container from your Recovery Services Vault. This is an asynchronous operation. To determine
whether the backend service has finished processing the request, call Get Container Operation Result API.
operationId: microsoftAzureProtectioncontainersUnregister
produces:
- application/json
parameters:
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/VaultName'
- $ref: '#/parameters/ResourceGroupName'
- $ref: '#/parameters/SubscriptionId'
- name: fabricName
in: path
description: Name of the fabric where the container belongs.
required: true
type: string
- name: containerName
in: path
description: Name of the container which needs to be unregistered from the Recovery Services Vault.
required: true
type: string
responses:
'200':
description: OK
'202':
description: Accepted
'204':
description: NoContent
default:
description: Error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-examples:
Unregister Protection Container:
$ref: ./examples/AzureWorkload/ProtectionContainers_Unregister.json
summary: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Recoveryservices Vaults Vaultname Backupfabrics Fabricname Protectioncontainers Containername
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{vaultName}/backupFabrics/{fabricName}/protectionContainers/{containerName}/inquire
: post:
tags:
- ProtectionContainers
summary: Microsoft Azure Inquires All The Protectable Items Under The Given Container
description: This is an async operation and the results should be tracked using location header or Azure-async-url.
operationId: microsoftAzureProtectioncontainersInquire
produces:
- application/json
parameters:
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/VaultName'
- $ref: '#/parameters/ResourceGroupName'
- $ref: '#/parameters/SubscriptionId'
- name: fabricName
in: path
description: Fabric Name associated with the container.
required: true
type: string
- name: containerName
in: path
description: Name of the container in which inquiry needs to be triggered.
required: true
type: string
- name: $filter
in: query
description: OData filter options.
required: false
type: string
responses:
'202':
description: Accepted
default:
description: Error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-odata: '#/definitions/BMSContainersInquiryQueryObject'
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}/refreshContainers
: post:
tags:
- ProtectionContainers
description: Discovers all the containers in the subscription that can be backed up to Recovery Services Vault. This is an
asynchronous operation. To know the status of the operation, call GetRefreshOperationResult API.
operationId: microsoftAzureProtectioncontainersRefresh
produces:
- application/json
parameters:
- $ref: '#/parameters/ApiVersion'
- $ref: '#/parameters/VaultName'
- $ref: '#/parameters/ResourceGroupName'
- $ref: '#/parameters/SubscriptionId'
- 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: Accepted
default:
description: Error response describing why the operation failed.
schema:
$ref: '#/definitions/CloudError'
x-ms-odata: '#/definitions/BMSRefreshContainersQueryObject'
x-ms-examples:
Trigger Azure Vm Discovery:
$ref: ./examples/Common/RefreshContainers.json
summary: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Recoveryservices Vaults Vaultname Backupfabrics Fabricname Refreshcontainers
definitions:
Resource:
description: ARM Resource.
type: object
properties:
id:
description: Resource Id represents the complete path to the resource.
type: string
readOnly: true
name:
description: Resource name associated with the resource.
type: string
readOnly: true
type:
description: Resource type represents the complete path of the form Namespace/ResourceType/ResourceType/...
type: string
readOnly: true
location:
description: Resource location.
type: string
tags:
description: Resource tags.
type: object
additionalProperties:
type: string
eTag:
description: Optional ETag.
type: string
x-ms-azure-resource: true
CloudError:
x-ms-external: true
properties:
error:
type: object
$ref: '#/definitions/CloudErrorBody'
description: The error object.
description: An error response from the Container Instance service.
CloudErrorBody:
x-ms-external: true
properties:
code:
readOnly: true
type: string
description: An identifier for the error. Codes are invariant and are intended to be consumed programmatically.
message:
readOnly: true
type: string
description: A message describing the error, intended to be suitable for display in a user interface.
target:
readOnly: true
type: string
description: The target of the particular error. For example, the name of the property in error.
details:
readOnly: true
type: array
items:
$ref: '#/definitions/CloudErrorBody'
x-ms-identifiers:
- code
description: A list of additional details about the error.
additionalInfo:
readOnly: true
type: array
items:
$ref: ../../../../../common-types/resource-management/v1/types.json#/definitions/ErrorAdditionalInfo
x-ms-identifiers: []
description: The error additional info.
description: An error response from the Container Instance service.
ProtectionContainer:
description: Base class for container with backup items. Containers with specific workloads are derived from this class.
type: object
required:
- containerType
properties:
friendlyName:
description: Friendly name of the container.
type: string
backupManagementType:
description: Type of backup management for the container.
enum:
- Invalid
- AzureIaasVM
- MAB
- DPM
- AzureBackupServer
- AzureSql
- AzureStorage
- AzureWorkload
- DefaultBackup
type: string
x-ms-enum:
name: BackupManagementType
modelAsString: true
registrationStatus:
description: Status of registration of the container with the Recovery Services Vault.
type: string
healthStatus:
description: Status of health of the container.
type: string
containerType:
description: "Type of the container. The value of this property for: 1. Compute Azure VM is Microsoft.Compute/virtualMachines 2.\r\nClassic Compute Azure VM is Microsoft.ClassicCompute/virtualMachines 3. Windows machines (like MAB, DPM etc) is\r\nWindows 4. Azure SQL instance is AzureSqlContainer. 5. Storage containers is StorageContainer. 6. Azure workload\r\nBackup is VMAppContainer"
enum:
- Invalid
- Unknown
- IaasVMContainer
- IaasVMServiceContainer
- DPMContainer
- AzureBackupServerContainer
- MABContainer
- Cluster
- AzureSqlContainer
- Windows
- VCenter
- VMAppContainer
- SQLAGWorkLoadContainer
- StorageContainer
- GenericContainer
- Microsoft.ClassicCompute/virtualMachines
- Microsoft.Compute/virtualMachines
- AzureWorkloadContainer
type: string
x-ms-enum:
name: protectableContainerType
modelAsString: true
protectableObjectType:
description: Type of the protectable object associated with this container
type: string
discriminator: containerType
ProtectionContainerResource:
description: Base class for container with backup items. Containers with specific workloads are derived from this class.
allOf:
- $ref: '#/definitions/Resource'
properties:
properties:
$ref: '#/definitions/ProtectionContainer'
description: ProtectionContainerResource properties
parameters:
ResourceGroupName:
name: resourceGroupName
in: path
description: The name of the resource group where the recovery services vault is present.
required: true
type: string
x-ms-parameter-location: method
VaultName:
name: vaultName
in: path
description: The name of the recovery services vault.
required: true
type: string
x-ms-parameter-location: method
ApiVersion:
name: api-version
in: query
description: Client Api Version.
required: true
type: string
SubscriptionId:
name: subscriptionId
in: path
description: The subscription Id.
required: true
type: string
x-ms-parameterized-host:
hostTemplate: '{endpoint}'
useSchemePrefix: false
parameters:
- $ref: '#/parameters/Endpoint'