Share via


Replication Protection Intents - Create

Create protection intent Resource.
The operation to create an ASR replication protection intent item.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.RecoveryServices/vaults/{resourceName}/replicationProtectionIntents/{intentObjectName}?api-version=2025-08-01

URI Parameters

Name In Required Type Description
intentObjectName
path True

string

Replication protection intent name.

resourceGroupName
path True

string

minLength: 1
maxLength: 90

The name of the resource group. The name is case insensitive.

resourceName
path True

string

The name of the Vault

subscriptionId
path True

string (uuid)

The ID of the target subscription. The value must be an UUID.

api-version
query True

string

minLength: 1

The API version to use for this operation.

Request Body

Name Type Description
properties

CreateProtectionIntentProperties

Create protection intent input properties.

Responses

Name Type Description
200 OK

ReplicationProtectionIntent

Resource 'ReplicationProtectionIntent' update operation succeeded

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

Create protection intent Resource.

Sample request

PUT https://management.azure.com/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationProtectionIntents/vm1?api-version=2025-08-01

{
  "properties": {
    "providerSpecificDetails": {
      "fabricObjectId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne/providers/Microsoft.Compute/virtualMachines/vmPpgAv5",
      "instanceType": "A2A",
      "primaryLocation": "eastUs2",
      "recoveryAvailabilityType": "Single",
      "recoveryLocation": "westus2",
      "recoveryResourceGroupId": "/subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/removeOne-asr",
      "recoverySubscriptionId": "ed5bcdf6-d61e-47bd-8ea9-f2bd379a2640"
    }
  }
}

Sample response

Azure-AsyncOperation: https://management.azure.com/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/resourceGroupPS1/providers/Microsoft.RecoveryServices/vaults/vault1/replicationOperationStatus/a93f3cd5-9035-4b1e-a2c9-b16df6d5d34b?api-version=2025-08-01
{
  "name": "vm1",
  "type": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents",
  "id": "/Subscriptions/509099b2-9d2c-4636-b43e-bd5cafb6be69/resourceGroups/2007vttp/providers/Microsoft.RecoveryServices/vaults/tp2007vt/replicationProtectionIntents/vm1",
  "properties": {
    "friendlyName": "vm1",
    "jobId": "/Subscriptions/d90d145a-4cdd-45a3-b2c4-971d69775278/resourceGroups/a2acl-rg-vault-prod-gip-ccy/providers/Microsoft.RecoveryServices/vaults/a2acl-vault-prod-gip-ccy/replicationJobs/02004ea7-d498-4bb4-bdeb-cdb611706867",
    "jobState": "InProgress",
    "providerSpecificDetails": {
      "instanceType": "A2A",
      "recoveryAvailabilityType": "Single"
    }
  }
}

Definitions

Name Description
A2ACreateProtectionIntentInput

A2A create protection intent input.

A2AProtectionIntentDiskInputDetails

Azure VM unmanaged disk input details.

A2AProtectionIntentManagedDiskInputDetails

Azure VM managed disk input details.

A2ARecoveryAvailabilityType

The recovery availability type of the virtual machine.

A2AReplicationIntentDetails

A2A provider specific settings.

AgentAutoUpdateStatus

A value indicating whether the auto update is enabled.

AutomationAccountAuthenticationType

A value indicating the type authentication to use for automation Account.

AutoProtectionOfDataDisk

A value indicating whether the auto protection is enabled.

createdByType

The type of identity that created the resource.

CreateProtectionIntentInput

Create protection intent input.

CreateProtectionIntentProperties

Create protection intent input properties.

DiskEncryptionInfo

Recovery disk encryption info (BEK and KEK).

DiskEncryptionKeyInfo

Disk Encryption Key Information (BitLocker Encryption Key (BEK) on Windows).

ExistingProtectionProfile

Existing storage account input.

ExistingRecoveryAvailabilitySet

Existing recovery availability set input.

ExistingRecoveryProximityPlacementGroup

Existing recovery proximity placement group input.

ExistingRecoveryRecoveryResourceGroup

Existing recovery resource group input.

ExistingRecoveryVirtualNetwork

Existing recovery virtual network input.

ExistingStorageAccount

Existing storage account input.

KeyEncryptionKeyInfo

Key Encryption Key (KEK) information.

NewProtectionProfile

New Protection profile input.

NewRecoveryVirtualNetwork

Recovery virtual network input to create new virtual network from given source network.

ReplicationProtectionIntent

Replication protection intent.

ReplicationProtectionIntentProperties

Replication protection intent custom data details.

SetMultiVmSyncStatus

A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.

systemData

Metadata pertaining to creation and last modification of the resource.

A2ACreateProtectionIntentInput

A2A create protection intent input.

Name Type Default value Description
agentAutoUpdateStatus

AgentAutoUpdateStatus

A value indicating whether the auto update is enabled.

autoProtectionOfDataDisk

AutoProtectionOfDataDisk

A value indicating whether the auto protection is enabled.

automationAccountArmId

string

The automation account arm id.

automationAccountAuthenticationType

AutomationAccountAuthenticationType

RunAsAccount

A value indicating the authentication type for automation account. The default value is "RunAsAccount".

diskEncryptionInfo

DiskEncryptionInfo

The recovery disk encryption information (for two pass flows).

fabricObjectId

string

The fabric specific object Id of the virtual machine.

instanceType string:

A2A

The class type.

multiVmGroupId

string

The multi vm group id.

multiVmGroupName

string

The multi vm group name.

primaryLocation

string

The primary location for the virtual machine.

primaryStagingStorageAccountCustomInput StorageAccountCustomDetails:

ExistingStorageAccount

The primary staging storage account input.

protectionProfileCustomInput ProtectionProfileCustomDetails:

The protection profile custom inputs.

recoveryAvailabilitySetCustomInput RecoveryAvailabilitySetCustomDetails:

ExistingRecoveryAvailabilitySet

The recovery availability set input.

recoveryAvailabilityType

A2ARecoveryAvailabilityType

The recovery availability type of the virtual machine.

recoveryAvailabilityZone

string

The recovery availability zone.

recoveryBootDiagStorageAccount StorageAccountCustomDetails:

ExistingStorageAccount

The boot diagnostic storage account.

recoveryLocation

string

The recovery location for the virtual machine.

recoveryProximityPlacementGroupCustomInput RecoveryProximityPlacementGroupCustomDetails:

ExistingRecoveryProximityPlacementGroup

The recovery proximity placement group custom input.

recoveryResourceGroupId

string

The recovery resource group Id. Valid for V2 scenarios.

recoverySubscriptionId

string

The recovery subscription Id of the virtual machine.

recoveryVirtualNetworkCustomInput RecoveryVirtualNetworkCustomDetails:

The recovery virtual network input.

vmDisks

A2AProtectionIntentDiskInputDetails[]

The list of vm disk inputs.

vmManagedDisks

A2AProtectionIntentManagedDiskInputDetails[]

The list of vm managed disk inputs.

A2AProtectionIntentDiskInputDetails

Azure VM unmanaged disk input details.

Name Type Description
diskUri

string

The disk Uri.

primaryStagingStorageAccountCustomInput StorageAccountCustomDetails:

ExistingStorageAccount

The primary staging storage account input.

recoveryAzureStorageAccountCustomInput StorageAccountCustomDetails:

ExistingStorageAccount

The recovery VHD storage account input.

A2AProtectionIntentManagedDiskInputDetails

Azure VM managed disk input details.

Name Type Description
diskEncryptionInfo

DiskEncryptionInfo

The recovery disk encryption information (for one / single pass flows).

diskId

string

The disk Id.

primaryStagingStorageAccountCustomInput StorageAccountCustomDetails:

ExistingStorageAccount

The primary staging storage account input.

recoveryDiskEncryptionSetId

string

The recovery disk encryption set Id.

recoveryReplicaDiskAccountType

string

The replica disk type. Its an optional value and will be same as source disk type if not user provided.

recoveryResourceGroupCustomInput RecoveryResourceGroupCustomDetails:

ExistingRecoveryRecoveryResourceGroup

The recovery resource group input.

recoveryTargetDiskAccountType

string

The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.

A2ARecoveryAvailabilityType

The recovery availability type of the virtual machine.

Value Description
Single

Single

AvailabilitySet

AvailabilitySet

AvailabilityZone

AvailabilityZone

A2AReplicationIntentDetails

A2A provider specific settings.

Name Type Default value Description
agentAutoUpdateStatus

AgentAutoUpdateStatus

A value indicating whether the auto update is enabled.

autoProtectionOfDataDisk

AutoProtectionOfDataDisk

A value indicating whether the auto protection is enabled.

automationAccountArmId

string

The automation account arm id.

automationAccountAuthenticationType

AutomationAccountAuthenticationType

RunAsAccount

A value indicating the type authentication to use for automation Account.

diskEncryptionInfo

DiskEncryptionInfo

The recovery disk encryption information (for two pass flows).

fabricObjectId

string

The fabric specific object Id of the virtual machine.

instanceType string:

A2A

Gets the Instance type.

multiVmGroupId

string

The multi vm group id.

multiVmGroupName

string

The multi vm group name.

primaryLocation

string

The primary location for the virtual machine.

primaryStagingStorageAccount StorageAccountCustomDetails:

ExistingStorageAccount

The primary staging storage account details.

protectionProfile ProtectionProfileCustomDetails:

The protection profile custom details.

recoveryAvailabilitySet RecoveryAvailabilitySetCustomDetails:

ExistingRecoveryAvailabilitySet

The recovery availability set details.

recoveryAvailabilityType

string

The recovery availability type of the virtual machine.

recoveryAvailabilityZone

string

The recovery availability zone.

recoveryBootDiagStorageAccount StorageAccountCustomDetails:

ExistingStorageAccount

The boot diagnostic storage account.

recoveryLocation

string

The recovery location for the virtual machine.

recoveryProximityPlacementGroup RecoveryProximityPlacementGroupCustomDetails:

ExistingRecoveryProximityPlacementGroup

The recovery proximity placement group custom details.

recoveryResourceGroupId

string

The recovery resource group id.

recoverySubscriptionId

string

The recovery subscription Id of the virtual machine.

recoveryVirtualNetwork RecoveryVirtualNetworkCustomDetails:

The recovery virtual network details.

vmDisks

A2AProtectionIntentDiskInputDetails[]

The list of vm disk details.

vmManagedDisks

A2AProtectionIntentManagedDiskInputDetails[]

The list of vm managed disk details.

AgentAutoUpdateStatus

A value indicating whether the auto update is enabled.

Value Description
Disabled

Disabled

Enabled

Enabled

AutomationAccountAuthenticationType

A value indicating the type authentication to use for automation Account.

Value Description
RunAsAccount

RunAsAccount

SystemAssignedIdentity

SystemAssignedIdentity

AutoProtectionOfDataDisk

A value indicating whether the auto protection is enabled.

Value Description
Disabled

Disabled

Enabled

Enabled

createdByType

The type of identity that created the resource.

Value Description
User
Application
ManagedIdentity
Key

CreateProtectionIntentInput

Create protection intent input.

Name Type Description
properties

CreateProtectionIntentProperties

Create protection intent input properties.

CreateProtectionIntentProperties

Create protection intent input properties.

Name Type Description
providerSpecificDetails CreateProtectionIntentProviderSpecificDetails:

A2ACreateProtectionIntentInput

The ReplicationProviderInput. For A2A provider, it will be A2ACreateProtectionIntentInput object.

DiskEncryptionInfo

Recovery disk encryption info (BEK and KEK).

Name Type Description
diskEncryptionKeyInfo

DiskEncryptionKeyInfo

The recovery KeyVault reference for secret.

keyEncryptionKeyInfo

KeyEncryptionKeyInfo

The recovery KeyVault reference for key.

DiskEncryptionKeyInfo

Disk Encryption Key Information (BitLocker Encryption Key (BEK) on Windows).

Name Type Description
keyVaultResourceArmId

string

The KeyVault resource ARM id for secret.

secretIdentifier

string

The secret url / identifier.

ExistingProtectionProfile

Existing storage account input.

Name Type Description
protectionProfileId

string

The protection profile Arm Id. Throw error, if resource does not exists.

resourceType string:

Existing

The class type.

ExistingRecoveryAvailabilitySet

Existing recovery availability set input.

Name Type Description
recoveryAvailabilitySetId

string

The recovery availability set Id. Will throw error, if resource does not exist.

resourceType string:

Existing

The class type.

ExistingRecoveryProximityPlacementGroup

Existing recovery proximity placement group input.

Name Type Description
recoveryProximityPlacementGroupId

string

The recovery proximity placement group Id. Will throw error, if resource does not exist.

resourceType string:

Existing

The class type.

ExistingRecoveryRecoveryResourceGroup

Existing recovery resource group input.

Name Type Description
recoveryResourceGroupId

string

The recovery resource group Id. Valid for V2 scenarios.

resourceType string:

Existing

The class type.

ExistingRecoveryVirtualNetwork

Existing recovery virtual network input.

Name Type Description
recoverySubnetName

string

The recovery subnet name.

recoveryVirtualNetworkId

string

The recovery virtual network Id. Will throw error, if resource does not exist.

resourceType string:

Existing

The class type.

ExistingStorageAccount

Existing storage account input.

Name Type Description
azureStorageAccountId

string

The storage account Arm Id. Throw error, if resource does not exists.

resourceType string:

Existing

The class type.

KeyEncryptionKeyInfo

Key Encryption Key (KEK) information.

Name Type Description
keyIdentifier

string

The key URL / identifier.

keyVaultResourceArmId

string

The KeyVault resource ARM Id for key.

NewProtectionProfile

New Protection profile input.

Name Type Description
appConsistentFrequencyInMinutes

integer (int32)

The app consistent snapshot frequency (in minutes).

crashConsistentFrequencyInMinutes

integer (int32)

The crash consistent snapshot frequency (in minutes).

multiVmSyncStatus

SetMultiVmSyncStatus

A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.

policyName

string

The protection profile input.

recoveryPointHistory

integer (int32)

The duration in minutes until which the recovery points need to be stored.

resourceType string:

New

The class type.

NewRecoveryVirtualNetwork

Recovery virtual network input to create new virtual network from given source network.

Name Type Description
recoveryVirtualNetworkName

string

The recovery virtual network name.

recoveryVirtualNetworkResourceGroupName

string

The name of the resource group to be used to create the recovery virtual network. If absent, target network would be created in the same resource group as target VM.

resourceType string:

New

The class type.

ReplicationProtectionIntent

Replication protection intent.

Name Type Description
id

string (arm-id)

Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"

location

string

Resource Location

name

string

The name of the resource

properties

ReplicationProtectionIntentProperties

The custom data.

systemData

systemData

Azure Resource Manager metadata containing createdBy and modifiedBy information.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

ReplicationProtectionIntentProperties

Replication protection intent custom data details.

Name Type Description
creationTimeUTC

string

The creation time in UTC.

friendlyName

string

The name.

isActive

boolean

A value indicating whether the intent object is active.

jobId

string

The job Id.

jobState

string

The job state.

providerSpecificDetails ReplicationProtectionIntentProviderSpecificSettings:

A2AReplicationIntentDetails

The Replication provider custom settings.

SetMultiVmSyncStatus

A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.

Value Description
Enable

Enable

Disable

Disable

systemData

Metadata pertaining to creation and last modification of the resource.

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC).

createdBy

string

The identity that created the resource.

createdByType

createdByType

The type of identity that created the resource.

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

The identity that last modified the resource.

lastModifiedByType

createdByType

The type of identity that last modified the resource.