Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Bicep resource definition
The backupVaults/backupPolicies resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DataProtection/backupVaults/backupPolicies resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.DataProtection/backupVaults/backupPolicies@2025-02-01' = {
parent: resourceSymbolicName
name: 'string'
properties: {
datasourceTypes: [
'string'
]
objectType: 'string'
// For remaining properties, see BaseBackupPolicy objects
}
}
DeleteOption objects
Set the objectType property to specify the type of object.
For AbsoluteDeleteOption, use:
{
objectType: 'AbsoluteDeleteOption'
}
BackupParameters objects
Set the objectType property to specify the type of object.
For AzureBackupParams, use:
{
backupType: 'string'
objectType: 'AzureBackupParams'
}
CopyOption objects
Set the objectType property to specify the type of object.
For CopyOnExpiryOption, use:
{
objectType: 'CopyOnExpiryOption'
}
For CustomCopyOption, use:
{
duration: 'string'
objectType: 'CustomCopyOption'
}
For ImmediateCopyOption, use:
{
objectType: 'ImmediateCopyOption'
}
BasePolicyRule objects
Set the objectType property to specify the type of object.
For AzureBackupRule, use:
{
backupParameters: {
objectType: 'string'
// For remaining properties, see BackupParameters objects
}
dataStore: {
dataStoreType: 'string'
objectType: 'string'
}
objectType: 'AzureBackupRule'
trigger: {
objectType: 'string'
// For remaining properties, see TriggerContext objects
}
}
For AzureRetentionRule, use:
{
isDefault: bool
lifecycles: [
{
deleteAfter: {
duration: 'string'
objectType: 'string'
// For remaining properties, see DeleteOption objects
}
sourceDataStore: {
dataStoreType: 'string'
objectType: 'string'
}
targetDataStoreCopySettings: [
{
copyAfter: {
objectType: 'string'
// For remaining properties, see CopyOption objects
}
dataStore: {
dataStoreType: 'string'
objectType: 'string'
}
}
]
}
]
objectType: 'AzureRetentionRule'
}
TriggerContext objects
Set the objectType property to specify the type of object.
For AdhocBasedTriggerContext, use:
{
objectType: 'AdhocBasedTriggerContext'
taggingCriteria: {
tagInfo: {
tagName: 'string'
}
}
}
For ScheduleBasedTriggerContext, use:
{
objectType: 'ScheduleBasedTriggerContext'
schedule: {
repeatingTimeIntervals: [
'string'
]
timeZone: 'string'
}
taggingCriteria: [
{
criteria: [
{
objectType: 'string'
// For remaining properties, see BackupCriteria objects
}
]
isDefault: bool
taggingPriority: int
tagInfo: {
tagName: 'string'
}
}
]
}
BaseBackupPolicy objects
Set the objectType property to specify the type of object.
For BackupPolicy, use:
{
objectType: 'BackupPolicy'
policyRules: [
{
name: 'string'
objectType: 'string'
// For remaining properties, see BasePolicyRule objects
}
]
}
BackupCriteria objects
Set the objectType property to specify the type of object.
For ScheduleBasedBackupCriteria, use:
{
absoluteCriteria: [
'string'
]
daysOfMonth: [
{
date: int
isLast: bool
}
]
daysOfTheWeek: [
'string'
]
monthsOfYear: [
'string'
]
objectType: 'ScheduleBasedBackupCriteria'
scheduleTimes: [
'string'
]
weeksOfTheMonth: [
'string'
]
}
Property Values
AbsoluteDeleteOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AbsoluteDeleteOption' (required) |
AdhocBasedTaggingCriteria
Name | Description | Value |
---|---|---|
tagInfo | Retention tag information | RetentionTag |
AdhocBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AdhocBasedTriggerContext' (required) |
taggingCriteria | Tagging Criteria containing retention tag for adhoc backup. | AdhocBasedTaggingCriteria (required) |
AzureBackupParams
Name | Description | Value |
---|---|---|
backupType | BackupType ; Full/Incremental etc | string (required) |
objectType | Type of the specific object - used for deserializing | 'AzureBackupParams' (required) |
AzureBackupRule
Name | Description | Value |
---|---|---|
backupParameters | BackupParameters base | BackupParameters |
dataStore | DataStoreInfo base | DataStoreInfoBase (required) |
objectType | 'AzureBackupRule' (required) | |
trigger | Trigger context | TriggerContext (required) |
AzureRetentionRule
Name | Description | Value |
---|---|---|
isDefault | bool | |
lifecycles | SourceLifeCycle[] (required) | |
objectType | 'AzureRetentionRule' (required) |
BackupCriteria
Name | Description | Value |
---|---|---|
objectType | Set to 'ScheduleBasedBackupCriteria' for type ScheduleBasedBackupCriteria. | 'ScheduleBasedBackupCriteria' (required) |
BackupParameters
Name | Description | Value |
---|---|---|
objectType | Set to 'AzureBackupParams' for type AzureBackupParams. | 'AzureBackupParams' (required) |
BackupPolicy
Name | Description | Value |
---|---|---|
objectType | 'BackupPolicy' (required) | |
policyRules | Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc | BasePolicyRule[] (required) |
BackupSchedule
Name | Description | Value |
---|---|---|
repeatingTimeIntervals | ISO 8601 repeating time interval format | string[] (required) |
timeZone | Time zone for a schedule. Example: Pacific Standard Time | string |
BaseBackupPolicy
Name | Description | Value |
---|---|---|
datasourceTypes | Type of datasource for the backup management | string[] (required) |
objectType | Set to 'BackupPolicy' for type BackupPolicy. | 'BackupPolicy' (required) |
BasePolicyRule
Name | Description | Value |
---|---|---|
name | string (required) | |
objectType | Set to 'AzureBackupRule' for type AzureBackupRule. Set to 'AzureRetentionRule' for type AzureRetentionRule. | 'AzureBackupRule' 'AzureRetentionRule' (required) |
CopyOnExpiryOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'CopyOnExpiryOption' (required) |
CopyOption
Name | Description | Value |
---|---|---|
objectType | Set to 'CopyOnExpiryOption' for type CopyOnExpiryOption. Set to 'CustomCopyOption' for type CustomCopyOption. Set to 'ImmediateCopyOption' for type ImmediateCopyOption. | 'CopyOnExpiryOption' 'CustomCopyOption' 'ImmediateCopyOption' (required) |
CustomCopyOption
Name | Description | Value |
---|---|---|
duration | Data copied after given timespan | string |
objectType | Type of the specific object - used for deserializing | 'CustomCopyOption' (required) |
DataStoreInfoBase
Name | Description | Value |
---|---|---|
dataStoreType | type of datastore; Operational/Vault/Archive | 'ArchiveStore' 'OperationalStore' 'VaultStore' (required) |
objectType | Type of Datasource object, used to initialize the right inherited type | string (required) |
Day
Name | Description | Value |
---|---|---|
date | Date of the month | int |
isLast | Whether Date is last date of month | bool |
DeleteOption
Name | Description | Value |
---|---|---|
duration | Duration of deletion after given timespan | string (required) |
objectType | Set to 'AbsoluteDeleteOption' for type AbsoluteDeleteOption. | 'AbsoluteDeleteOption' (required) |
ImmediateCopyOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ImmediateCopyOption' (required) |
Microsoft.DataProtection/backupVaults/backupPolicies
Name | Description | Value |
---|---|---|
name | The resource name | string (required) |
parent | In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource. For more information, see Child resource outside parent resource. |
Symbolic name for resource of type: backupVaults |
properties | BaseBackupPolicyResource properties | BaseBackupPolicy |
RetentionTag
Name | Description | Value |
---|---|---|
tagName | Retention Tag Name to relate it to retention rule. | string (required) |
ScheduleBasedBackupCriteria
Name | Description | Value |
---|---|---|
absoluteCriteria | it contains absolute values like "AllBackup" / "FirstOfDay" / "FirstOfWeek" / "FirstOfMonth" and should be part of AbsoluteMarker enum |
String array containing any of: 'AllBackup' 'FirstOfDay' 'FirstOfMonth' 'FirstOfWeek' 'FirstOfYear' |
daysOfMonth | This is day of the month from 1 to 28 other wise last of month | Day[] |
daysOfTheWeek | It should be Sunday/Monday/T..../Saturday | String array containing any of: 'Friday' 'Monday' 'Saturday' 'Sunday' 'Thursday' 'Tuesday' 'Wednesday' |
monthsOfYear | It should be January/February/....../December | String array containing any of: 'April' 'August' 'December' 'February' 'January' 'July' 'June' 'March' 'May' 'November' 'October' 'September' |
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedBackupCriteria' (required) |
scheduleTimes | List of schedule times for backup | string[] |
weeksOfTheMonth | It should be First/Second/Third/Fourth/Last | String array containing any of: 'First' 'Fourth' 'Last' 'Second' 'Third' |
ScheduleBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedTriggerContext' (required) |
schedule | Schedule for this backup | BackupSchedule (required) |
taggingCriteria | List of tags that can be applicable for given schedule. | TaggingCriteria[] (required) |
SourceLifeCycle
Name | Description | Value |
---|---|---|
deleteAfter | Delete Option | DeleteOption (required) |
sourceDataStore | DataStoreInfo base | DataStoreInfoBase (required) |
targetDataStoreCopySettings | TargetCopySetting[] |
TaggingCriteria
Name | Description | Value |
---|---|---|
criteria | Criteria which decides whether the tag can be applied to a triggered backup. | BackupCriteria[] |
isDefault | Specifies if tag is default. | bool (required) |
taggingPriority | Retention Tag priority. | int (required) |
tagInfo | Retention tag information | RetentionTag (required) |
TargetCopySetting
Name | Description | Value |
---|---|---|
copyAfter | It can be CustomCopyOption or ImmediateCopyOption. | CopyOption (required) |
dataStore | Info of target datastore | DataStoreInfoBase (required) |
TriggerContext
Name | Description | Value |
---|---|---|
objectType | Set to 'AdhocBasedTriggerContext' for type AdhocBasedTriggerContext. Set to 'ScheduleBasedTriggerContext' for type ScheduleBasedTriggerContext. | 'AdhocBasedTriggerContext' 'ScheduleBasedTriggerContext' (required) |
Usage Examples
Azure Quickstart Samples
The following Azure Quickstart templates contain Bicep samples for deploying this resource type.
Bicep File | Description |
---|---|
Create Disk & enable protection via Backup Vault | Template that creates a disk and enables protection via Backup Vault |
Create MySqlFlex server & enable protection via Backup Vault | Template that creates a MySQL Flexible Server and enables protection via Backup Vault |
Create PgFlex server & enable protection via Backup Vault | Template that creates a PostgreSQL Flexible Server and enables protection via Backup Vault |
Create Storage Account & enable protection via Backup Vault | Template that creates storage account and enable operational and vaulted backup via Backup Vault |
ARM template resource definition
The backupVaults/backupPolicies resource type can be deployed with operations that target:
- Resource groups - See resource group deployment commands
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DataProtection/backupVaults/backupPolicies resource, add the following JSON to your template.
{
"type": "Microsoft.DataProtection/backupVaults/backupPolicies",
"apiVersion": "2025-02-01",
"name": "string",
"properties": {
"datasourceTypes": [ "string" ],
"objectType": "string"
// For remaining properties, see BaseBackupPolicy objects
}
}
DeleteOption objects
Set the objectType property to specify the type of object.
For AbsoluteDeleteOption, use:
{
"objectType": "AbsoluteDeleteOption"
}
BackupParameters objects
Set the objectType property to specify the type of object.
For AzureBackupParams, use:
{
"backupType": "string",
"objectType": "AzureBackupParams"
}
CopyOption objects
Set the objectType property to specify the type of object.
For CopyOnExpiryOption, use:
{
"objectType": "CopyOnExpiryOption"
}
For CustomCopyOption, use:
{
"duration": "string",
"objectType": "CustomCopyOption"
}
For ImmediateCopyOption, use:
{
"objectType": "ImmediateCopyOption"
}
BasePolicyRule objects
Set the objectType property to specify the type of object.
For AzureBackupRule, use:
{
"backupParameters": {
"objectType": "string"
// For remaining properties, see BackupParameters objects
},
"dataStore": {
"dataStoreType": "string",
"objectType": "string"
},
"objectType": "AzureBackupRule",
"trigger": {
"objectType": "string"
// For remaining properties, see TriggerContext objects
}
}
For AzureRetentionRule, use:
{
"isDefault": "bool",
"lifecycles": [
{
"deleteAfter": {
"duration": "string",
"objectType": "string"
// For remaining properties, see DeleteOption objects
},
"sourceDataStore": {
"dataStoreType": "string",
"objectType": "string"
},
"targetDataStoreCopySettings": [
{
"copyAfter": {
"objectType": "string"
// For remaining properties, see CopyOption objects
},
"dataStore": {
"dataStoreType": "string",
"objectType": "string"
}
}
]
}
],
"objectType": "AzureRetentionRule"
}
TriggerContext objects
Set the objectType property to specify the type of object.
For AdhocBasedTriggerContext, use:
{
"objectType": "AdhocBasedTriggerContext",
"taggingCriteria": {
"tagInfo": {
"tagName": "string"
}
}
}
For ScheduleBasedTriggerContext, use:
{
"objectType": "ScheduleBasedTriggerContext",
"schedule": {
"repeatingTimeIntervals": [ "string" ],
"timeZone": "string"
},
"taggingCriteria": [
{
"criteria": [ {
"objectType": "string"
// For remaining properties, see BackupCriteria objects
} ],
"isDefault": "bool",
"taggingPriority": "int",
"tagInfo": {
"tagName": "string"
}
}
]
}
BaseBackupPolicy objects
Set the objectType property to specify the type of object.
For BackupPolicy, use:
{
"objectType": "BackupPolicy",
"policyRules": [ {
"name": "string",
"objectType": "string"
// For remaining properties, see BasePolicyRule objects
} ]
}
BackupCriteria objects
Set the objectType property to specify the type of object.
For ScheduleBasedBackupCriteria, use:
{
"absoluteCriteria": [ "string" ],
"daysOfMonth": [
{
"date": "int",
"isLast": "bool"
}
],
"daysOfTheWeek": [ "string" ],
"monthsOfYear": [ "string" ],
"objectType": "ScheduleBasedBackupCriteria",
"scheduleTimes": [ "string" ],
"weeksOfTheMonth": [ "string" ]
}
Property Values
AbsoluteDeleteOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AbsoluteDeleteOption' (required) |
AdhocBasedTaggingCriteria
Name | Description | Value |
---|---|---|
tagInfo | Retention tag information | RetentionTag |
AdhocBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AdhocBasedTriggerContext' (required) |
taggingCriteria | Tagging Criteria containing retention tag for adhoc backup. | AdhocBasedTaggingCriteria (required) |
AzureBackupParams
Name | Description | Value |
---|---|---|
backupType | BackupType ; Full/Incremental etc | string (required) |
objectType | Type of the specific object - used for deserializing | 'AzureBackupParams' (required) |
AzureBackupRule
Name | Description | Value |
---|---|---|
backupParameters | BackupParameters base | BackupParameters |
dataStore | DataStoreInfo base | DataStoreInfoBase (required) |
objectType | 'AzureBackupRule' (required) | |
trigger | Trigger context | TriggerContext (required) |
AzureRetentionRule
Name | Description | Value |
---|---|---|
isDefault | bool | |
lifecycles | SourceLifeCycle[] (required) | |
objectType | 'AzureRetentionRule' (required) |
BackupCriteria
Name | Description | Value |
---|---|---|
objectType | Set to 'ScheduleBasedBackupCriteria' for type ScheduleBasedBackupCriteria. | 'ScheduleBasedBackupCriteria' (required) |
BackupParameters
Name | Description | Value |
---|---|---|
objectType | Set to 'AzureBackupParams' for type AzureBackupParams. | 'AzureBackupParams' (required) |
BackupPolicy
Name | Description | Value |
---|---|---|
objectType | 'BackupPolicy' (required) | |
policyRules | Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc | BasePolicyRule[] (required) |
BackupSchedule
Name | Description | Value |
---|---|---|
repeatingTimeIntervals | ISO 8601 repeating time interval format | string[] (required) |
timeZone | Time zone for a schedule. Example: Pacific Standard Time | string |
BaseBackupPolicy
Name | Description | Value |
---|---|---|
datasourceTypes | Type of datasource for the backup management | string[] (required) |
objectType | Set to 'BackupPolicy' for type BackupPolicy. | 'BackupPolicy' (required) |
BasePolicyRule
Name | Description | Value |
---|---|---|
name | string (required) | |
objectType | Set to 'AzureBackupRule' for type AzureBackupRule. Set to 'AzureRetentionRule' for type AzureRetentionRule. | 'AzureBackupRule' 'AzureRetentionRule' (required) |
CopyOnExpiryOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'CopyOnExpiryOption' (required) |
CopyOption
Name | Description | Value |
---|---|---|
objectType | Set to 'CopyOnExpiryOption' for type CopyOnExpiryOption. Set to 'CustomCopyOption' for type CustomCopyOption. Set to 'ImmediateCopyOption' for type ImmediateCopyOption. | 'CopyOnExpiryOption' 'CustomCopyOption' 'ImmediateCopyOption' (required) |
CustomCopyOption
Name | Description | Value |
---|---|---|
duration | Data copied after given timespan | string |
objectType | Type of the specific object - used for deserializing | 'CustomCopyOption' (required) |
DataStoreInfoBase
Name | Description | Value |
---|---|---|
dataStoreType | type of datastore; Operational/Vault/Archive | 'ArchiveStore' 'OperationalStore' 'VaultStore' (required) |
objectType | Type of Datasource object, used to initialize the right inherited type | string (required) |
Day
Name | Description | Value |
---|---|---|
date | Date of the month | int |
isLast | Whether Date is last date of month | bool |
DeleteOption
Name | Description | Value |
---|---|---|
duration | Duration of deletion after given timespan | string (required) |
objectType | Set to 'AbsoluteDeleteOption' for type AbsoluteDeleteOption. | 'AbsoluteDeleteOption' (required) |
ImmediateCopyOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ImmediateCopyOption' (required) |
Microsoft.DataProtection/backupVaults/backupPolicies
Name | Description | Value |
---|---|---|
apiVersion | The api version | '2025-02-01' |
name | The resource name | string (required) |
properties | BaseBackupPolicyResource properties | BaseBackupPolicy |
type | The resource type | 'Microsoft.DataProtection/backupVaults/backupPolicies' |
RetentionTag
Name | Description | Value |
---|---|---|
tagName | Retention Tag Name to relate it to retention rule. | string (required) |
ScheduleBasedBackupCriteria
Name | Description | Value |
---|---|---|
absoluteCriteria | it contains absolute values like "AllBackup" / "FirstOfDay" / "FirstOfWeek" / "FirstOfMonth" and should be part of AbsoluteMarker enum |
String array containing any of: 'AllBackup' 'FirstOfDay' 'FirstOfMonth' 'FirstOfWeek' 'FirstOfYear' |
daysOfMonth | This is day of the month from 1 to 28 other wise last of month | Day[] |
daysOfTheWeek | It should be Sunday/Monday/T..../Saturday | String array containing any of: 'Friday' 'Monday' 'Saturday' 'Sunday' 'Thursday' 'Tuesday' 'Wednesday' |
monthsOfYear | It should be January/February/....../December | String array containing any of: 'April' 'August' 'December' 'February' 'January' 'July' 'June' 'March' 'May' 'November' 'October' 'September' |
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedBackupCriteria' (required) |
scheduleTimes | List of schedule times for backup | string[] |
weeksOfTheMonth | It should be First/Second/Third/Fourth/Last | String array containing any of: 'First' 'Fourth' 'Last' 'Second' 'Third' |
ScheduleBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedTriggerContext' (required) |
schedule | Schedule for this backup | BackupSchedule (required) |
taggingCriteria | List of tags that can be applicable for given schedule. | TaggingCriteria[] (required) |
SourceLifeCycle
Name | Description | Value |
---|---|---|
deleteAfter | Delete Option | DeleteOption (required) |
sourceDataStore | DataStoreInfo base | DataStoreInfoBase (required) |
targetDataStoreCopySettings | TargetCopySetting[] |
TaggingCriteria
Name | Description | Value |
---|---|---|
criteria | Criteria which decides whether the tag can be applied to a triggered backup. | BackupCriteria[] |
isDefault | Specifies if tag is default. | bool (required) |
taggingPriority | Retention Tag priority. | int (required) |
tagInfo | Retention tag information | RetentionTag (required) |
TargetCopySetting
Name | Description | Value |
---|---|---|
copyAfter | It can be CustomCopyOption or ImmediateCopyOption. | CopyOption (required) |
dataStore | Info of target datastore | DataStoreInfoBase (required) |
TriggerContext
Name | Description | Value |
---|---|---|
objectType | Set to 'AdhocBasedTriggerContext' for type AdhocBasedTriggerContext. Set to 'ScheduleBasedTriggerContext' for type ScheduleBasedTriggerContext. | 'AdhocBasedTriggerContext' 'ScheduleBasedTriggerContext' (required) |
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
Template | Description |
---|---|
Create Disk & enable protection via Backup Vault |
Template that creates a disk and enables protection via Backup Vault |
Create MySqlFlex server & enable protection via Backup Vault |
Template that creates a MySQL Flexible Server and enables protection via Backup Vault |
Create PgFlex server & enable protection via Backup Vault |
Template that creates a PostgreSQL Flexible Server and enables protection via Backup Vault |
Create Storage Account & enable protection via Backup Vault |
Template that creates storage account and enable operational and vaulted backup via Backup Vault |
Terraform (AzAPI provider) resource definition
The backupVaults/backupPolicies resource type can be deployed with operations that target:
- Resource groups
For a list of changed properties in each API version, see change log.
Resource format
To create a Microsoft.DataProtection/backupVaults/backupPolicies resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.DataProtection/backupVaults/backupPolicies@2025-02-01"
name = "string"
body = {
properties = {
datasourceTypes = [
"string"
]
objectType = "string"
// For remaining properties, see BaseBackupPolicy objects
}
}
}
DeleteOption objects
Set the objectType property to specify the type of object.
For AbsoluteDeleteOption, use:
{
objectType = "AbsoluteDeleteOption"
}
BackupParameters objects
Set the objectType property to specify the type of object.
For AzureBackupParams, use:
{
backupType = "string"
objectType = "AzureBackupParams"
}
CopyOption objects
Set the objectType property to specify the type of object.
For CopyOnExpiryOption, use:
{
objectType = "CopyOnExpiryOption"
}
For CustomCopyOption, use:
{
duration = "string"
objectType = "CustomCopyOption"
}
For ImmediateCopyOption, use:
{
objectType = "ImmediateCopyOption"
}
BasePolicyRule objects
Set the objectType property to specify the type of object.
For AzureBackupRule, use:
{
backupParameters = {
objectType = "string"
// For remaining properties, see BackupParameters objects
}
dataStore = {
dataStoreType = "string"
objectType = "string"
}
objectType = "AzureBackupRule"
trigger = {
objectType = "string"
// For remaining properties, see TriggerContext objects
}
}
For AzureRetentionRule, use:
{
isDefault = bool
lifecycles = [
{
deleteAfter = {
duration = "string"
objectType = "string"
// For remaining properties, see DeleteOption objects
}
sourceDataStore = {
dataStoreType = "string"
objectType = "string"
}
targetDataStoreCopySettings = [
{
copyAfter = {
objectType = "string"
// For remaining properties, see CopyOption objects
}
dataStore = {
dataStoreType = "string"
objectType = "string"
}
}
]
}
]
objectType = "AzureRetentionRule"
}
TriggerContext objects
Set the objectType property to specify the type of object.
For AdhocBasedTriggerContext, use:
{
objectType = "AdhocBasedTriggerContext"
taggingCriteria = {
tagInfo = {
tagName = "string"
}
}
}
For ScheduleBasedTriggerContext, use:
{
objectType = "ScheduleBasedTriggerContext"
schedule = {
repeatingTimeIntervals = [
"string"
]
timeZone = "string"
}
taggingCriteria = [
{
criteria = [
{
objectType = "string"
// For remaining properties, see BackupCriteria objects
}
]
isDefault = bool
taggingPriority = int
tagInfo = {
tagName = "string"
}
}
]
}
BaseBackupPolicy objects
Set the objectType property to specify the type of object.
For BackupPolicy, use:
{
objectType = "BackupPolicy"
policyRules = [
{
name = "string"
objectType = "string"
// For remaining properties, see BasePolicyRule objects
}
]
}
BackupCriteria objects
Set the objectType property to specify the type of object.
For ScheduleBasedBackupCriteria, use:
{
absoluteCriteria = [
"string"
]
daysOfMonth = [
{
date = int
isLast = bool
}
]
daysOfTheWeek = [
"string"
]
monthsOfYear = [
"string"
]
objectType = "ScheduleBasedBackupCriteria"
scheduleTimes = [
"string"
]
weeksOfTheMonth = [
"string"
]
}
Property Values
AbsoluteDeleteOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AbsoluteDeleteOption' (required) |
AdhocBasedTaggingCriteria
Name | Description | Value |
---|---|---|
tagInfo | Retention tag information | RetentionTag |
AdhocBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'AdhocBasedTriggerContext' (required) |
taggingCriteria | Tagging Criteria containing retention tag for adhoc backup. | AdhocBasedTaggingCriteria (required) |
AzureBackupParams
Name | Description | Value |
---|---|---|
backupType | BackupType ; Full/Incremental etc | string (required) |
objectType | Type of the specific object - used for deserializing | 'AzureBackupParams' (required) |
AzureBackupRule
Name | Description | Value |
---|---|---|
backupParameters | BackupParameters base | BackupParameters |
dataStore | DataStoreInfo base | DataStoreInfoBase (required) |
objectType | 'AzureBackupRule' (required) | |
trigger | Trigger context | TriggerContext (required) |
AzureRetentionRule
Name | Description | Value |
---|---|---|
isDefault | bool | |
lifecycles | SourceLifeCycle[] (required) | |
objectType | 'AzureRetentionRule' (required) |
BackupCriteria
Name | Description | Value |
---|---|---|
objectType | Set to 'ScheduleBasedBackupCriteria' for type ScheduleBasedBackupCriteria. | 'ScheduleBasedBackupCriteria' (required) |
BackupParameters
Name | Description | Value |
---|---|---|
objectType | Set to 'AzureBackupParams' for type AzureBackupParams. | 'AzureBackupParams' (required) |
BackupPolicy
Name | Description | Value |
---|---|---|
objectType | 'BackupPolicy' (required) | |
policyRules | Policy rule dictionary that contains rules for each backuptype i.e Full/Incremental/Logs etc | BasePolicyRule[] (required) |
BackupSchedule
Name | Description | Value |
---|---|---|
repeatingTimeIntervals | ISO 8601 repeating time interval format | string[] (required) |
timeZone | Time zone for a schedule. Example: Pacific Standard Time | string |
BaseBackupPolicy
Name | Description | Value |
---|---|---|
datasourceTypes | Type of datasource for the backup management | string[] (required) |
objectType | Set to 'BackupPolicy' for type BackupPolicy. | 'BackupPolicy' (required) |
BasePolicyRule
Name | Description | Value |
---|---|---|
name | string (required) | |
objectType | Set to 'AzureBackupRule' for type AzureBackupRule. Set to 'AzureRetentionRule' for type AzureRetentionRule. | 'AzureBackupRule' 'AzureRetentionRule' (required) |
CopyOnExpiryOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'CopyOnExpiryOption' (required) |
CopyOption
Name | Description | Value |
---|---|---|
objectType | Set to 'CopyOnExpiryOption' for type CopyOnExpiryOption. Set to 'CustomCopyOption' for type CustomCopyOption. Set to 'ImmediateCopyOption' for type ImmediateCopyOption. | 'CopyOnExpiryOption' 'CustomCopyOption' 'ImmediateCopyOption' (required) |
CustomCopyOption
Name | Description | Value |
---|---|---|
duration | Data copied after given timespan | string |
objectType | Type of the specific object - used for deserializing | 'CustomCopyOption' (required) |
DataStoreInfoBase
Name | Description | Value |
---|---|---|
dataStoreType | type of datastore; Operational/Vault/Archive | 'ArchiveStore' 'OperationalStore' 'VaultStore' (required) |
objectType | Type of Datasource object, used to initialize the right inherited type | string (required) |
Day
Name | Description | Value |
---|---|---|
date | Date of the month | int |
isLast | Whether Date is last date of month | bool |
DeleteOption
Name | Description | Value |
---|---|---|
duration | Duration of deletion after given timespan | string (required) |
objectType | Set to 'AbsoluteDeleteOption' for type AbsoluteDeleteOption. | 'AbsoluteDeleteOption' (required) |
ImmediateCopyOption
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ImmediateCopyOption' (required) |
Microsoft.DataProtection/backupVaults/backupPolicies
Name | Description | Value |
---|---|---|
name | The resource name | string (required) |
parent_id | The ID of the resource that is the parent for this resource. | ID for resource of type: backupVaults |
properties | BaseBackupPolicyResource properties | BaseBackupPolicy |
type | The resource type | "Microsoft.DataProtection/backupVaults/backupPolicies@2025-02-01" |
RetentionTag
Name | Description | Value |
---|---|---|
tagName | Retention Tag Name to relate it to retention rule. | string (required) |
ScheduleBasedBackupCriteria
Name | Description | Value |
---|---|---|
absoluteCriteria | it contains absolute values like "AllBackup" / "FirstOfDay" / "FirstOfWeek" / "FirstOfMonth" and should be part of AbsoluteMarker enum |
String array containing any of: 'AllBackup' 'FirstOfDay' 'FirstOfMonth' 'FirstOfWeek' 'FirstOfYear' |
daysOfMonth | This is day of the month from 1 to 28 other wise last of month | Day[] |
daysOfTheWeek | It should be Sunday/Monday/T..../Saturday | String array containing any of: 'Friday' 'Monday' 'Saturday' 'Sunday' 'Thursday' 'Tuesday' 'Wednesday' |
monthsOfYear | It should be January/February/....../December | String array containing any of: 'April' 'August' 'December' 'February' 'January' 'July' 'June' 'March' 'May' 'November' 'October' 'September' |
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedBackupCriteria' (required) |
scheduleTimes | List of schedule times for backup | string[] |
weeksOfTheMonth | It should be First/Second/Third/Fourth/Last | String array containing any of: 'First' 'Fourth' 'Last' 'Second' 'Third' |
ScheduleBasedTriggerContext
Name | Description | Value |
---|---|---|
objectType | Type of the specific object - used for deserializing | 'ScheduleBasedTriggerContext' (required) |
schedule | Schedule for this backup | BackupSchedule (required) |
taggingCriteria | List of tags that can be applicable for given schedule. | TaggingCriteria[] (required) |
SourceLifeCycle
Name | Description | Value |
---|---|---|
deleteAfter | Delete Option | DeleteOption (required) |
sourceDataStore | DataStoreInfo base | DataStoreInfoBase (required) |
targetDataStoreCopySettings | TargetCopySetting[] |
TaggingCriteria
Name | Description | Value |
---|---|---|
criteria | Criteria which decides whether the tag can be applied to a triggered backup. | BackupCriteria[] |
isDefault | Specifies if tag is default. | bool (required) |
taggingPriority | Retention Tag priority. | int (required) |
tagInfo | Retention tag information | RetentionTag (required) |
TargetCopySetting
Name | Description | Value |
---|---|---|
copyAfter | It can be CustomCopyOption or ImmediateCopyOption. | CopyOption (required) |
dataStore | Info of target datastore | DataStoreInfoBase (required) |
TriggerContext
Name | Description | Value |
---|---|---|
objectType | Set to 'AdhocBasedTriggerContext' for type AdhocBasedTriggerContext. Set to 'ScheduleBasedTriggerContext' for type ScheduleBasedTriggerContext. | 'AdhocBasedTriggerContext' 'ScheduleBasedTriggerContext' (required) |