Azure Site Recovery Replication Protection Containers API
The ReplicationProtectionContainers API from Azure Site Recovery — 7 operation(s) for replicationprotectioncontainers.
The ReplicationProtectionContainers API from Azure Site Recovery — 7 operation(s) for replicationprotectioncontainers.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/microsoft-azure-site-recovery:microsoft-azure-site-recovery-replicationprotectioncontainers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Microsoft Azure Site Recovery Replication Protection…
version: '2026-11-01'
x-typespec-generated:
- emitter: '@azure-tools/typespec-autorest'
description: 'Operations tagged ReplicationProtectionContainers across 2 of this provider''s published API definitions: microsoft-azure-site-recovery-service-2026-11-01.json, microsoft-azure-site-recovery-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://management.azure.com
security:
- azure_auth:
- user_impersonation
tags:
- name: ReplicationProtectionContainers
paths:
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers
: get:
operationId: ReplicationProtectionContainers_ListByReplicationFabrics
tags:
- ReplicationProtectionContainers
summary: Gets the list of protection container for a fabric
description: Lists the protection containers in the specified fabric.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
responses:
'200':
description: Azure operation completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainerCollection'
x-ms-examples:
Gets the list of protection container for a fabric.:
$ref: ./examples/ReplicationProtectionContainers_ListByReplicationFabrics.json
x-ms-pageable:
nextLinkName: nextLink
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}
: get:
operationId: ReplicationProtectionContainers_Get
tags:
- ReplicationProtectionContainers
summary: Gets the protection container details
description: Gets the details of a protection container.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
responses:
'200':
description: Azure operation completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainer'
x-ms-examples:
Gets the protection container details.:
$ref: ./examples/ReplicationProtectionContainers_Get.json
put:
operationId: ReplicationProtectionContainers_Create
tags:
- ReplicationProtectionContainers
summary: Create a protection container
description: Operation to create a protection container.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
responses:
'200':
description: Resource 'ProtectionContainer' update operation succeeded
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainer'
'202':
description: Resource operation accepted.
headers:
Location:
description: The Location header contains the URL where the status of the long running operation can be checked.
schema:
type: string
Retry-After:
description: The Retry-After header can indicate how long the client should wait before polling the operation status.
schema:
type: integer
format: int32
x-ms-examples:
Create a protection container.:
$ref: ./examples/ReplicationProtectionContainers_Create.json
x-ms-long-running-operation-options:
final-state-via: location
final-state-schema: '#/definitions/ProtectionContainer'
x-ms-long-running-operation: true
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CreateProtectionContainerInput'
description: Creation input.
required: true
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/discoverProtectableItem
: post:
operationId: ReplicationProtectionContainers_DiscoverProtectableItem
tags:
- ReplicationProtectionContainers
summary: Adds a protectable item to the replication protection container
description: The operation to a add a protectable item to a protection container(Add physical server).
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
responses:
'200':
description: Azure operation completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainer'
'202':
description: Resource operation accepted.
headers:
Location:
description: The Location header contains the URL where the status of the long running operation can be checked.
schema:
type: string
Retry-After:
description: The Retry-After header can indicate how long the client should wait before polling the operation status.
schema:
type: integer
format: int32
x-ms-examples:
Adds a protectable item to the replication protection container.:
$ref: ./examples/ReplicationProtectionContainers_DiscoverProtectableItem.json
x-ms-long-running-operation-options:
final-state-via: location
final-state-schema: '#/definitions/ProtectionContainer'
x-ms-long-running-operation: true
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/DiscoverProtectableItemRequest'
description: The request object to add a protectable item.
required: true
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/remove
: post:
operationId: ReplicationProtectionContainers_Delete
tags:
- ReplicationProtectionContainers
summary: Removes a protection container
description: Operation to remove a protection container.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
responses:
'202':
description: Resource operation accepted.
headers:
Location:
description: The Location header contains the URL where the status of the long running operation can be checked.
schema:
type: string
Retry-After:
description: The Retry-After header can indicate how long the client should wait before polling the operation status.
schema:
type: integer
format: int32
'204':
description: There is no content to send for this request, but the headers may be useful.
x-ms-examples:
Removes a protection container.:
$ref: ./examples/ReplicationProtectionContainers_Delete.json
x-ms-long-running-operation-options:
final-state-via: location
x-ms-long-running-operation: true
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchClusterProtection
: post:
operationId: ReplicationProtectionContainers_SwitchClusterProtection
tags:
- ReplicationProtectionContainers
summary: Switches protection from one container to another
description: Operation to switch protection from one container to another.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the recovery services vault.
required: true
schema:
type: string
pattern: ^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
pattern: ^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
pattern: ^[A-Za-z0-9][A-Za-z0-9-]*[A-Za-z0-9]$
responses:
'200':
description: Azure operation completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainer'
'202':
description: Resource operation accepted.
headers:
Azure-AsyncOperation:
description: A link to the status monitor
schema:
type: string
Location:
description: The Location header contains the URL where the status of the long running operation can be checked.
schema:
type: string
Retry-After:
description: The Retry-After header can indicate how long the client should wait before polling the operation status.
schema:
type: integer
format: int32
default:
description: An unexpected error response.
content:
application/json:
schema:
$ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse
x-ms-examples:
Switches protection from one container to another or one replication provider to another.:
$ref: ./examples/ReplicationProtectionContainers_SwitchClusterProtection.json
x-ms-long-running-operation-options:
final-state-via: location
final-state-schema: '#/definitions/ProtectionContainer'
x-ms-long-running-operation: true
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SwitchClusterProtectionInput'
description: Switch protection input.
required: true
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationFabrics/{fabricName}/replicationProtectionContainers/{protectionContainerName}/switchprotection
: post:
operationId: ReplicationProtectionContainers_SwitchProtection
tags:
- ReplicationProtectionContainers
summary: Switches protection from one container to another or one replication provider…
description: Operation to switch protection from one container to another or one replication provider to another.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the Vault
required: true
schema:
type: string
- name: fabricName
in: path
description: Fabric name.
required: true
schema:
type: string
- name: protectionContainerName
in: path
description: Protection container name.
required: true
schema:
type: string
responses:
'200':
description: Azure operation completed successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainer'
'202':
description: Resource operation accepted.
headers:
Azure-AsyncOperation:
description: A link to the status monitor
schema:
type: string
Location:
description: The Location header contains the URL where the status of the long running operation can be checked.
schema:
type: string
Retry-After:
description: The Retry-After header can indicate how long the client should wait before polling the operation status.
schema:
type: integer
format: int32
x-ms-examples:
Switches protection from one container to another or one replication provider to another.:
$ref: ./examples/ReplicationProtectionContainers_SwitchProtection.json
x-ms-long-running-operation-options:
final-state-via: location
final-state-schema: '#/definitions/ProtectionContainer'
x-ms-long-running-operation: true
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SwitchProtectionInput'
description: Switch protection input.
required: true
servers:
- url: https://management.azure.com
? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionContainers
: get:
operationId: ReplicationProtectionContainers_List
tags:
- ReplicationProtectionContainers
summary: Gets the list of all protection containers in a vault
description: Lists the protection containers in a vault.
parameters:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/parameters/ResourceGroupNameParameter
- name: resourceName
in: path
description: The name of the recovery services vault.
required: true
schema:
type: string
responses:
'200':
description: The request has succeeded.
content:
application/json:
schema:
$ref: '#/components/schemas/ProtectionContainerCollection'
x-ms-examples:
Gets the list of all protection containers in a vault.:
$ref: ./examples/ReplicationProtectionContainers_List.json
x-ms-pageable:
nextLinkName: nextLink
servers:
- url: https://management.azure.com
components:
schemas:
ProtectionContainerFabricSpecificDetails:
type: object
description: Base class for fabric specific details of container.
properties:
instanceType:
type: string
description: Gets the class type. Overridden in derived classes.
readOnly: true
CreateProtectionContainerInputProperties:
type: object
description: Create protection container input properties.
properties:
providerSpecificInput:
type: array
description: Provider specific inputs for container creation.
items:
$ref: '#/components/schemas/ReplicationProviderSpecificContainerCreationInput'
ReplicationProviderSpecificContainerCreationInput:
type: object
description: Provider specific input for container creation operation.
properties:
instanceType:
type: string
description: The class type.
discriminator:
propertyName: instanceType
required:
- instanceType
DiscoverProtectableItemRequestProperties:
type: object
description: Discover protectable item properties.
properties:
friendlyName:
type: string
description: The friendly name of the physical machine.
ipAddress:
type: string
description: The IP address of the physical machine to be discovered.
osType:
type: string
description: The OS type on the physical machine.
DiscoverProtectableItemRequest:
type: object
description: Request to add a physical machine as a protectable item in a container.
properties:
properties:
$ref: '#/components/schemas/DiscoverProtectableItemRequestProperties'
description: The properties of a discover protectable item request.
ProtectionContainerCollection:
type: object
description: Protection Container collection.
properties:
value:
type: array
description: The ProtectionContainer items on this page
items:
$ref: '#/components/schemas/ProtectionContainer'
nextLink:
type: string
format: uri
description: The link to the next page of items
required:
- value
SwitchClusterProtectionInput:
type: object
description: Switch cluster protection input.
properties:
properties:
$ref: '#/components/schemas/SwitchClusterProtectionInputProperties'
description: Switch cluster protection properties.
SwitchClusterProtectionInputProperties:
type: object
description: Switch cluster protection input properties.
properties:
replicationProtectionClusterName:
type: string
description: The unique replication protection cluster name.
providerSpecificDetails:
$ref: '#/components/schemas/SwitchClusterProtectionProviderSpecificInput'
description: Provider specific switch protection input.
SwitchProtectionInput:
type: object
description: Switch protection input.
properties:
properties:
$ref: '#/components/schemas/SwitchProtectionInputProperties'
description: Switch protection properties.
SwitchProtectionInputProperties:
type: object
description: Switch protection input properties.
properties:
replicationProtectedItemName:
type: string
description: The unique replication protected item name.
providerSpecificDetails:
$ref: '#/components/schemas/SwitchProtectionProviderSpecificInput'
description: Provider specific switch protection input.
ProtectionContainer:
type: object
description: Protection container details.
properties:
properties:
$ref: '#/components/schemas/ProtectionContainerProperties'
description: The custom data.
location:
type: string
description: Resource Location
allOf:
- $ref: ../../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource
SwitchProtectionProviderSpecificInput:
type: object
description: Provider specific switch protection input.
properties:
instanceType:
type: string
description: Gets the Instance type.
discriminator:
propertyName: instanceType
required:
- instanceType
ProtectionContainerProperties:
type: object
description: Protection profile custom data details.
properties:
fabricFriendlyName:
type: string
description: Fabric friendly name.
friendlyName:
type: string
description: The name.
fabricType:
type: string
description: The fabric type.
protectedItemCount:
type: integer
format: int32
description: Number of protected PEs.
pairingStatus:
type: string
description: The pairing status of this cloud.
role:
type: string
description: The role of this cloud.
fabricSpecificDetails:
$ref: '#/components/schemas/ProtectionContainerFabricSpecificDetails'
description: Fabric specific details.
CreateProtectionContainerInput:
type: object
description: Create protection container input.
properties:
properties:
$ref: '#/components/schemas/CreateProtectionContainerInputProperties'
description: Create protection container input properties.
SwitchClusterProtectionProviderSpecificInput:
type: object
description: Provider specific switch cluster protection input.
properties:
instanceType:
type: string
description: Gets the Instance type.
discriminator:
propertyName: instanceType
required:
- instanceType
securitySchemes:
azure_auth:
type: oauth2
flows:
implicit:
scopes:
user_impersonation: impersonate your user account
authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
description: Azure Active Directory OAuth2 Flow.
x-refined-from:
- microsoft-azure-site-recovery-service-2026-11-01.json
- microsoft-azure-site-recovery-openapi.yml