Skip to main content

protection_intent

Creates, updates, deletes, gets or lists a protection_intent resource.

Overview

Nameprotection_intent
TypeResource
Idazure.recovery_services_backup.protection_intent

Fields

The following fields are returned by SELECT queries:

NameDatatypeDescription
idstringFully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}.
namestringThe name of the resource.
backupManagementTypestringType of backup management for the backed up item. Known values are: "Invalid", "AzureIaasVM", "MAB", "DPM", "AzureBackupServer", "AzureSql", "AzureStorage", "AzureWorkload", and "DefaultBackup". (Invalid, AzureIaasVM, MAB, DPM, AzureBackupServer, AzureSql, AzureStorage, AzureWorkload, DefaultBackup)
eTagstringOptional ETag.
itemIdstringID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId.
locationstringThe geo-location where the resource lives.
policyIdstringID of the backup policy with which this item is backed up.
protectionIntentItemTypestringbackup protectionIntent type. Required. Known values are: "Invalid", "AzureResourceItem", "RecoveryServiceVaultItem", "AzureWorkloadContainerAutoProtectionIntent", "AzureWorkloadAutoProtectionIntent", and "AzureWorkloadSQLAutoProtectionIntent".
protectionStatestringBackup state of this backup item. Known values are: "Invalid", "NotProtected", "Protecting", "Protected", and "ProtectionFailed". (Invalid, NotProtected, Protecting, Protected, ProtectionFailed)
sourceResourceIdstringARM ID of the resource to be backed up.
systemDataobjectAzure Resource Manager metadata containing createdBy and modifiedBy information.
tagsobjectResource tags.
typestringThe type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts".

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
getselectvault_name, resource_group_name, fabric_name, intent_object_name, subscription_idProvides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation, call the GetItemOperationResult API.
create_or_updateinsertvault_name, resource_group_name, fabric_name, intent_object_name, subscription_idCreate Intent for Enabling backup of an item. This is a synchronous operation.
create_or_updatereplacevault_name, resource_group_name, fabric_name, intent_object_name, subscription_idCreate Intent for Enabling backup of an item. This is a synchronous operation.
deletedeletevault_name, resource_group_name, fabric_name, intent_object_name, subscription_idUsed to remove intent from an item.
validateexecazure_region, subscription_idIt will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties. It will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
azure_regionstringAzure region to hit Api. Required.
fabric_namestringThe name of the BackupFabricResource. Required.
intent_object_namestringBacked up item name whose details are to be fetched. Required.
resource_group_namestringThe name of the resource group. The name is case insensitive. Required.
subscription_idstring
vault_namestringThe name of the VaultResource. Required.

SELECT examples

Provides the details of the protection intent up item. This is an asynchronous operation. To know the status of the operation, call the GetItemOperationResult API.

SELECT
id,
name,
backupManagementType,
eTag,
itemId,
location,
policyId,
protectionIntentItemType,
protectionState,
sourceResourceId,
systemData,
tags,
type
FROM azure.recovery_services_backup.protection_intent
WHERE vault_name = '{{ vault_name }}' -- required
AND resource_group_name = '{{ resource_group_name }}' -- required
AND fabric_name = '{{ fabric_name }}' -- required
AND intent_object_name = '{{ intent_object_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;

INSERT examples

Create Intent for Enabling backup of an item. This is a synchronous operation.

INSERT INTO azure.recovery_services_backup.protection_intent (
properties,
tags,
location,
eTag,
vault_name,
resource_group_name,
fabric_name,
intent_object_name,
subscription_id
)
SELECT
'{{ properties }}',
'{{ tags }}',
'{{ location }}',
'{{ eTag }}',
'{{ vault_name }}',
'{{ resource_group_name }}',
'{{ fabric_name }}',
'{{ intent_object_name }}',
'{{ subscription_id }}'
RETURNING
id,
name,
eTag,
location,
properties,
systemData,
tags,
type
;

REPLACE examples

Create Intent for Enabling backup of an item. This is a synchronous operation.

REPLACE azure.recovery_services_backup.protection_intent
SET
properties = '{{ properties }}',
tags = '{{ tags }}',
location = '{{ location }}',
eTag = '{{ eTag }}'
WHERE
vault_name = '{{ vault_name }}' --required
AND resource_group_name = '{{ resource_group_name }}' --required
AND fabric_name = '{{ fabric_name }}' --required
AND intent_object_name = '{{ intent_object_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
RETURNING
id,
name,
eTag,
location,
properties,
systemData,
tags,
type;

DELETE examples

Used to remove intent from an item.

DELETE FROM azure.recovery_services_backup.protection_intent
WHERE vault_name = '{{ vault_name }}' --required
AND resource_group_name = '{{ resource_group_name }}' --required
AND fabric_name = '{{ fabric_name }}' --required
AND intent_object_name = '{{ intent_object_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
;

Lifecycle Methods

It will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties. It will validate followings 1. Vault capacity 2. VM is already protected 3. Any VM related configuration passed in properties.

EXEC azure.recovery_services_backup.protection_intent.validate 
@azure_region='{{ azure_region }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"resourceType": "{{ resourceType }}",
"resourceId": "{{ resourceId }}",
"vaultId": "{{ vaultId }}",
"properties": "{{ properties }}"
}'
;