Azure VM Policy Cost Estimation

The /policies/virtualMachines/costEstimation resource collection allows you to calculate the estimated monthly cost of using Microsoft Azure resources to protect Azure VMs. The estimated cost is available if you specified the backup schedule in backup policy settings.

Calculate Estimated Cost of Azure VM Schedule-Based Backup Policy

The HTTP POST request to the /policies/virtualMachines/estimateCost endpoint calculates the estimated monthly cost for protecting resources by a backup policy per Azure VM.

SecurityBearer
Request
query Parameters
VirtualMachineNameFilter
string or null

Returns only costs for protecting an Azure VM with the specified name.

x-veeam-parameter-group: CostEstimationOptions
Offset
integer <int32> >= 0

Specifies the first N items of a resource collection that will be excluded from the response.

x-veeam-parameter-group: Veeam.Azure.REST.RequestQuery.V2.PageProperties
Limit
integer <int32> >= -1

Specifies the maximum number of items of a resource collection that will be returned in the response.

x-veeam-parameter-group: Veeam.Azure.REST.RequestQuery.V2.PageProperties
Request Body schema: application/json
required
priority
integer <int64>

Specifies the priority ordinal number of the backup policy.

tenantId
string or null

Specifies the tenant ID for which the policy is created.

serviceAccountId
string <uuid>

Specifies the system ID assigned in the Veeam Backup for Microsoft Azure REST API to a service account whose permissions will be used to access Microsoft Azure resources.

Array of objects or null (PolicyRegionFromClient)

Specifies Azure regions where the protected resources reside.

object or null (PolicyBackupItemsFromClient)

[Applies if the SelectedItems value is specified for the backupType parameter] Specifies Azure resources to protect by the backup policy.

object or null (PolicyExcludedItemsFromClient)

Specifies Azure tags to identify the resources that should be excluded from the backup scope.

name
string or null

Specifies a name of the backup policy.

description
string or null

Specifies a description of the backup policy.

object or null (RetrySettings)

Specifies the retry settings for the backup policy.

object or null (PolicyNotificationSettings)

Specifies the notification settings for the backup policy.

isEnabled
boolean or null

Defines whether the policy is enabled.

backupType
string or null (BackupTypeNullable)

Defines whether you want to include to the backup scope all resources residing in the specified Azure regions and to which the specified service account has access.

Enum: "AllSubscriptions" "SelectedItems" "Unknown"
x-external-type: Veeam.Azure.REST.Latest.BackupType
object (SnapshotSettings)

Specifies cloud-native snapshot settings for the backup policy.

x-veeam-namespace: Veeam.Azure.REST.Representation.V2
object or null (DailySchedule)

Specifies the daily schedule settings for the backup policy.

object or null (WeeklySchedule)

Specifies the weekly schedule settings for the backup policy.

object or null (MonthlySchedule)

Specifies the monthly schedule settings for the backup policy.

object or null (YearlySchedule)

Specifies the yearly schedule settings for the backup policy.

object or null (HealthCheckSchedule)

[Applies if backup creation is enabled for the backup policy] Specifies the health check schedule settings.

object or null (CostEstimationAssumptionFromClient)

[Optional assumptions about protected items] Specifies average daily churn and expected disk occupy ratio.

Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

415

Client Error

post/api/v8/policies/virtualMachines/estimateCost
Request samples
application/json
{
  • "priority": 0,
  • "tenantId": "string",
  • "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
  • "regions": [
    ],
  • "selectedItems": {
    },
  • "excludedItems": {
    },
  • "name": "string",
  • "description": "string",
  • "retrySettings": {
    },
  • "policyNotificationSettings": {
    },
  • "isEnabled": true,
  • "backupType": "AllSubscriptions",
  • "snapshotSettings": {
    },
  • "dailySchedule": {
    },
  • "weeklySchedule": {
    },
  • "monthlySchedule": {
    },
  • "yearlySchedule": {
    },
  • "healthCheckSchedule": {
    },
  • "costEstimationAssumption": {
    }
}
Response samples
application/json
{
  • "offset": 0,
  • "limit": 0,
  • "totalCount": 0,
  • "_links": {},
  • "results": [
    ],
  • "metadata": {
    }
}

Export Estimation Cost Report

The HTTP POST request to the /policies/virtualMachines/estimateCost/export endpoint exports the estimation cost report to a .CSV or an .XML file.

x-veeam-custom-response: true
SecurityBearer
Request
header Parameters
Accept
string or null

Specifies a media type of representation of the exported data. The default value is text/csv media type.

x-position: 2
Request Body schema: application/json
required
priority
integer <int64>

Specifies the priority ordinal number of the backup policy.

tenantId
string or null

Specifies the tenant ID for which the policy is created.

serviceAccountId
string <uuid>

Specifies the system ID assigned in the Veeam Backup for Microsoft Azure REST API to a service account whose permissions will be used to access Microsoft Azure resources.

Array of objects or null (PolicyRegionFromClient)

Specifies Azure regions where the protected resources reside.

object or null (PolicyBackupItemsFromClient)

[Applies if the SelectedItems value is specified for the backupType parameter] Specifies Azure resources to protect by the backup policy.

object or null (PolicyExcludedItemsFromClient)

Specifies Azure tags to identify the resources that should be excluded from the backup scope.

name
string or null

Specifies a name of the backup policy.

description
string or null

Specifies a description of the backup policy.

object or null (RetrySettings)

Specifies the retry settings for the backup policy.

object or null (PolicyNotificationSettings)

Specifies the notification settings for the backup policy.

isEnabled
boolean or null

Defines whether the policy is enabled.

backupType
string or null (BackupTypeNullable)

Defines whether you want to include to the backup scope all resources residing in the specified Azure regions and to which the specified service account has access.

Enum: "AllSubscriptions" "SelectedItems" "Unknown"
x-external-type: Veeam.Azure.REST.Latest.BackupType
object (SnapshotSettings)

Specifies cloud-native snapshot settings for the backup policy.

x-veeam-namespace: Veeam.Azure.REST.Representation.V2
object or null (DailySchedule)

Specifies the daily schedule settings for the backup policy.

object or null (WeeklySchedule)

Specifies the weekly schedule settings for the backup policy.

object or null (MonthlySchedule)

Specifies the monthly schedule settings for the backup policy.

object or null (YearlySchedule)

Specifies the yearly schedule settings for the backup policy.

object or null (HealthCheckSchedule)

[Applies if backup creation is enabled for the backup policy] Specifies the health check schedule settings.

object or null (CostEstimationAssumptionFromClient)

[Optional assumptions about protected items] Specifies average daily churn and expected disk occupy ratio.

Responses
200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

415

Client Error

post/api/v8/policies/virtualMachines/estimateCost/export
Request samples
application/json
{
  • "priority": 0,
  • "tenantId": "string",
  • "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
  • "regions": [
    ],
  • "selectedItems": {
    },
  • "excludedItems": {
    },
  • "name": "string",
  • "description": "string",
  • "retrySettings": {
    },
  • "policyNotificationSettings": {
    },
  • "isEnabled": true,
  • "backupType": "AllSubscriptions",
  • "snapshotSettings": {
    },
  • "dailySchedule": {
    },
  • "weeklySchedule": {
    },
  • "monthlySchedule": {
    },
  • "yearlySchedule": {
    },
  • "healthCheckSchedule": {
    },
  • "costEstimationAssumption": {
    }
}
Response samples
application/problem+json
{
  • "extensions": { },
  • "status": 0,
  • "title": "string",
  • "detail": "string",
  • "type": "string"
}