Microsoft.DataProtection backupVaults/backupPolicies 2022-02-01-preview

Bicep resource definition

The backupVaults/backupPolicies resource type can be deployed to:

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@2022-02-01-preview' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    datasourceTypes: [
      'string'
    ]
    objectType: 'string'
    // For remaining properties, see BaseBackupPolicy objects
  }
}

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
    }
  ]

BasePolicyRule objects

Set the objectType property to specify the type of object.

For AzureBackupRule, use:

  objectType: 'AzureBackupRule'
  backupParameters: {
    objectType: 'string'
    // For remaining properties, see BackupParameters objects
  }
  dataStore: {
    dataStoreType: 'string'
    objectType: 'string'
  }
  trigger: {
    objectType: 'string'
    // For remaining properties, see TriggerContext objects
  }

For AzureRetentionRule, use:

  objectType: 'AzureRetentionRule'
  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'
          }
        }
      ]
    }
  ]

BackupParameters objects

Set the objectType property to specify the type of object.

For AzureBackupParams, use:

  objectType: 'AzureBackupParams'
  backupType: 'string'

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'
      }
    }
  ]

BackupCriteria objects

Set the objectType property to specify the type of object.

For ScheduleBasedBackupCriteria, use:

  objectType: 'ScheduleBasedBackupCriteria'
  absoluteCriteria: [
    'string'
  ]
  daysOfMonth: [
    {
      date: int
      isLast: bool
    }
  ]
  daysOfTheWeek: [
    'string'
  ]
  monthsOfYear: [
    'string'
  ]
  scheduleTimes: [
    'string'
  ]
  weeksOfTheMonth: [
    'string'
  ]

DeleteOption objects

Set the objectType property to specify the type of object.

For AbsoluteDeleteOption, use:

  objectType: 'AbsoluteDeleteOption'

CopyOption objects

Set the objectType property to specify the type of object.

For CopyOnExpiryOption, use:

  objectType: 'CopyOnExpiryOption'

For CustomCopyOption, use:

  objectType: 'CustomCopyOption'
  duration: 'string'

For ImmediateCopyOption, use:

  objectType: 'ImmediateCopyOption'

Property values

backupVaults/backupPolicies

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
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

BaseBackupPolicy

Name Description Value
datasourceTypes Type of datasource for the backup management string[] (required)
objectType Set the object type BackupPolicy (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)

BasePolicyRule

Name Description Value
name string (required)
objectType Set the object type AzureBackupRule
AzureRetentionRule (required)

AzureBackupRule

Name Description Value
objectType 'AzureBackupRule' (required)
backupParameters BackupParameters base BackupParameters
dataStore DataStoreInfo base DataStoreInfoBase (required)
trigger Trigger context TriggerContext (required)

BackupParameters

Name Description Value
objectType Set the object type AzureBackupParams (required)

AzureBackupParams

Name Description Value
objectType Type of the specific object - used for deserializing 'AzureBackupParams' (required)
backupType BackupType ; Full/Incremental etc string (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)

TriggerContext

Name Description Value
objectType Set the object type AdhocBasedTriggerContext
ScheduleBasedTriggerContext (required)

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)

AdhocBasedTaggingCriteria

Name Description Value
tagInfo Retention tag information RetentionTag

RetentionTag

Name Description Value
tagName Retention Tag Name to relate it to retention rule. string (required)

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)

BackupSchedule

Name Description Value
repeatingTimeIntervals ISO 8601 repeating time interval format string[] (required)
timeZone Time zone for a schedule. Example: Pacific Standard Time string

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)

BackupCriteria

Name Description Value
objectType Set the object type ScheduleBasedBackupCriteria (required)

ScheduleBasedBackupCriteria

Name Description Value
objectType Type of the specific object - used for deserializing 'ScheduleBasedBackupCriteria' (required)
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'
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'

Day

Name Description Value
date Date of the month int
isLast Whether Date is last date of month bool

AzureRetentionRule

Name Description Value
objectType 'AzureRetentionRule' (required)
isDefault bool
lifecycles SourceLifeCycle[] (required)

SourceLifeCycle

Name Description Value
deleteAfter Delete Option DeleteOption (required)
sourceDataStore DataStoreInfo base DataStoreInfoBase (required)
targetDataStoreCopySettings TargetCopySetting[]

DeleteOption

Name Description Value
duration Duration of deletion after given timespan string (required)
objectType Set the object type AbsoluteDeleteOption (required)

AbsoluteDeleteOption

Name Description Value
objectType Type of the specific object - used for deserializing 'AbsoluteDeleteOption' (required)

TargetCopySetting

Name Description Value
copyAfter It can be CustomCopyOption or ImmediateCopyOption. CopyOption (required)
dataStore Info of target datastore DataStoreInfoBase (required)

CopyOption

Name Description Value
objectType Set the object type CopyOnExpiryOption
CustomCopyOption
ImmediateCopyOption (required)

CopyOnExpiryOption

Name Description Value
objectType Type of the specific object - used for deserializing 'CopyOnExpiryOption' (required)

CustomCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing 'CustomCopyOption' (required)
duration Data copied after given timespan string

ImmediateCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing 'ImmediateCopyOption' (required)

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Disk & enable protection via Backup Vault

Deploy to Azure
Template that creates a disk and enables protection via Backup Vault
Create Storage Account & enable protection via Backup Vault

Deploy to Azure
Template that creates storage account and enable protection via Backup Vault

ARM template resource definition

The backupVaults/backupPolicies resource type can be deployed to:

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": "2022-02-01-preview",
  "name": "string",
  "properties": {
    "datasourceTypes": [ "string" ],
    "objectType": "string"
    // For remaining properties, see BaseBackupPolicy objects
  }
}

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
    }
  ]

BasePolicyRule objects

Set the objectType property to specify the type of object.

For AzureBackupRule, use:

  "objectType": "AzureBackupRule",
  "backupParameters": {
    "objectType": "string"
    // For remaining properties, see BackupParameters objects
  },
  "dataStore": {
    "dataStoreType": "string",
    "objectType": "string"
  },
  "trigger": {
    "objectType": "string"
    // For remaining properties, see TriggerContext objects
  }

For AzureRetentionRule, use:

  "objectType": "AzureRetentionRule",
  "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"
          }
        }
      ]
    }
  ]

BackupParameters objects

Set the objectType property to specify the type of object.

For AzureBackupParams, use:

  "objectType": "AzureBackupParams",
  "backupType": "string"

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"
      }
    }
  ]

BackupCriteria objects

Set the objectType property to specify the type of object.

For ScheduleBasedBackupCriteria, use:

  "objectType": "ScheduleBasedBackupCriteria",
  "absoluteCriteria": [ "string" ],
  "daysOfMonth": [
    {
      "date": "int",
      "isLast": "bool"
    }
  ],
  "daysOfTheWeek": [ "string" ],
  "monthsOfYear": [ "string" ],
  "scheduleTimes": [ "string" ],
  "weeksOfTheMonth": [ "string" ]

DeleteOption objects

Set the objectType property to specify the type of object.

For AbsoluteDeleteOption, use:

  "objectType": "AbsoluteDeleteOption"

CopyOption objects

Set the objectType property to specify the type of object.

For CopyOnExpiryOption, use:

  "objectType": "CopyOnExpiryOption"

For CustomCopyOption, use:

  "objectType": "CustomCopyOption",
  "duration": "string"

For ImmediateCopyOption, use:

  "objectType": "ImmediateCopyOption"

Property values

backupVaults/backupPolicies

Name Description Value
type The resource type 'Microsoft.DataProtection/backupVaults/backupPolicies'
apiVersion The resource api version '2022-02-01-preview'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
properties BaseBackupPolicyResource properties BaseBackupPolicy

BaseBackupPolicy

Name Description Value
datasourceTypes Type of datasource for the backup management string[] (required)
objectType Set the object type BackupPolicy (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)

BasePolicyRule

Name Description Value
name string (required)
objectType Set the object type AzureBackupRule
AzureRetentionRule (required)

AzureBackupRule

Name Description Value
objectType 'AzureBackupRule' (required)
backupParameters BackupParameters base BackupParameters
dataStore DataStoreInfo base DataStoreInfoBase (required)
trigger Trigger context TriggerContext (required)

BackupParameters

Name Description Value
objectType Set the object type AzureBackupParams (required)

AzureBackupParams

Name Description Value
objectType Type of the specific object - used for deserializing 'AzureBackupParams' (required)
backupType BackupType ; Full/Incremental etc string (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)

TriggerContext

Name Description Value
objectType Set the object type AdhocBasedTriggerContext
ScheduleBasedTriggerContext (required)

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)

AdhocBasedTaggingCriteria

Name Description Value
tagInfo Retention tag information RetentionTag

RetentionTag

Name Description Value
tagName Retention Tag Name to relate it to retention rule. string (required)

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)

BackupSchedule

Name Description Value
repeatingTimeIntervals ISO 8601 repeating time interval format string[] (required)
timeZone Time zone for a schedule. Example: Pacific Standard Time string

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)

BackupCriteria

Name Description Value
objectType Set the object type ScheduleBasedBackupCriteria (required)

ScheduleBasedBackupCriteria

Name Description Value
objectType Type of the specific object - used for deserializing 'ScheduleBasedBackupCriteria' (required)
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'
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'

Day

Name Description Value
date Date of the month int
isLast Whether Date is last date of month bool

AzureRetentionRule

Name Description Value
objectType 'AzureRetentionRule' (required)
isDefault bool
lifecycles SourceLifeCycle[] (required)

SourceLifeCycle

Name Description Value
deleteAfter Delete Option DeleteOption (required)
sourceDataStore DataStoreInfo base DataStoreInfoBase (required)
targetDataStoreCopySettings TargetCopySetting[]

DeleteOption

Name Description Value
duration Duration of deletion after given timespan string (required)
objectType Set the object type AbsoluteDeleteOption (required)

AbsoluteDeleteOption

Name Description Value
objectType Type of the specific object - used for deserializing 'AbsoluteDeleteOption' (required)

TargetCopySetting

Name Description Value
copyAfter It can be CustomCopyOption or ImmediateCopyOption. CopyOption (required)
dataStore Info of target datastore DataStoreInfoBase (required)

CopyOption

Name Description Value
objectType Set the object type CopyOnExpiryOption
CustomCopyOption
ImmediateCopyOption (required)

CopyOnExpiryOption

Name Description Value
objectType Type of the specific object - used for deserializing 'CopyOnExpiryOption' (required)

CustomCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing 'CustomCopyOption' (required)
duration Data copied after given timespan string

ImmediateCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing 'ImmediateCopyOption' (required)

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create Disk & enable protection via Backup Vault

Deploy to Azure
Template that creates a disk and enables protection via Backup Vault
Create Storage Account & enable protection via Backup Vault

Deploy to Azure
Template that creates storage account and enable protection via Backup Vault

Terraform (AzAPI provider) resource definition

The backupVaults/backupPolicies resource type can be deployed to:

  • 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@2022-02-01-preview"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      datasourceTypes = [
        "string"
      ]
      objectType = "string"
      // For remaining properties, see BaseBackupPolicy objects
    }
  })
}

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
    }
  ]

BasePolicyRule objects

Set the objectType property to specify the type of object.

For AzureBackupRule, use:

  objectType = "AzureBackupRule"
  backupParameters = {
    objectType = "string"
    // For remaining properties, see BackupParameters objects
  }
  dataStore = {
    dataStoreType = "string"
    objectType = "string"
  }
  trigger = {
    objectType = "string"
    // For remaining properties, see TriggerContext objects
  }

For AzureRetentionRule, use:

  objectType = "AzureRetentionRule"
  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"
          }
        }
      ]
    }
  ]

BackupParameters objects

Set the objectType property to specify the type of object.

For AzureBackupParams, use:

  objectType = "AzureBackupParams"
  backupType = "string"

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"
      }
    }
  ]

BackupCriteria objects

Set the objectType property to specify the type of object.

For ScheduleBasedBackupCriteria, use:

  objectType = "ScheduleBasedBackupCriteria"
  absoluteCriteria = [
    "string"
  ]
  daysOfMonth = [
    {
      date = int
      isLast = bool
    }
  ]
  daysOfTheWeek = [
    "string"
  ]
  monthsOfYear = [
    "string"
  ]
  scheduleTimes = [
    "string"
  ]
  weeksOfTheMonth = [
    "string"
  ]

DeleteOption objects

Set the objectType property to specify the type of object.

For AbsoluteDeleteOption, use:

  objectType = "AbsoluteDeleteOption"

CopyOption objects

Set the objectType property to specify the type of object.

For CopyOnExpiryOption, use:

  objectType = "CopyOnExpiryOption"

For CustomCopyOption, use:

  objectType = "CustomCopyOption"
  duration = "string"

For ImmediateCopyOption, use:

  objectType = "ImmediateCopyOption"

Property values

backupVaults/backupPolicies

Name Description Value
type The resource type "Microsoft.DataProtection/backupVaults/backupPolicies@2022-02-01-preview"
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

BaseBackupPolicy

Name Description Value
datasourceTypes Type of datasource for the backup management string[] (required)
objectType Set the object type BackupPolicy (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)

BasePolicyRule

Name Description Value
name string (required)
objectType Set the object type AzureBackupRule
AzureRetentionRule (required)

AzureBackupRule

Name Description Value
objectType "AzureBackupRule" (required)
backupParameters BackupParameters base BackupParameters
dataStore DataStoreInfo base DataStoreInfoBase (required)
trigger Trigger context TriggerContext (required)

BackupParameters

Name Description Value
objectType Set the object type AzureBackupParams (required)

AzureBackupParams

Name Description Value
objectType Type of the specific object - used for deserializing "AzureBackupParams" (required)
backupType BackupType ; Full/Incremental etc string (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)

TriggerContext

Name Description Value
objectType Set the object type AdhocBasedTriggerContext
ScheduleBasedTriggerContext (required)

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)

AdhocBasedTaggingCriteria

Name Description Value
tagInfo Retention tag information RetentionTag

RetentionTag

Name Description Value
tagName Retention Tag Name to relate it to retention rule. string (required)

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)

BackupSchedule

Name Description Value
repeatingTimeIntervals ISO 8601 repeating time interval format string[] (required)
timeZone Time zone for a schedule. Example: Pacific Standard Time string

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)

BackupCriteria

Name Description Value
objectType Set the object type ScheduleBasedBackupCriteria (required)

ScheduleBasedBackupCriteria

Name Description Value
objectType Type of the specific object - used for deserializing "ScheduleBasedBackupCriteria" (required)
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"
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"

Day

Name Description Value
date Date of the month int
isLast Whether Date is last date of month bool

AzureRetentionRule

Name Description Value
objectType "AzureRetentionRule" (required)
isDefault bool
lifecycles SourceLifeCycle[] (required)

SourceLifeCycle

Name Description Value
deleteAfter Delete Option DeleteOption (required)
sourceDataStore DataStoreInfo base DataStoreInfoBase (required)
targetDataStoreCopySettings TargetCopySetting[]

DeleteOption

Name Description Value
duration Duration of deletion after given timespan string (required)
objectType Set the object type AbsoluteDeleteOption (required)

AbsoluteDeleteOption

Name Description Value
objectType Type of the specific object - used for deserializing "AbsoluteDeleteOption" (required)

TargetCopySetting

Name Description Value
copyAfter It can be CustomCopyOption or ImmediateCopyOption. CopyOption (required)
dataStore Info of target datastore DataStoreInfoBase (required)

CopyOption

Name Description Value
objectType Set the object type CopyOnExpiryOption
CustomCopyOption
ImmediateCopyOption (required)

CopyOnExpiryOption

Name Description Value
objectType Type of the specific object - used for deserializing "CopyOnExpiryOption" (required)

CustomCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing "CustomCopyOption" (required)
duration Data copied after given timespan string

ImmediateCopyOption

Name Description Value
objectType Type of the specific object - used for deserializing "ImmediateCopyOption" (required)