- About Veeam Backup for Google Cloud REST API
- Overview
- Authorization
- Cloud Infrastructure
- getGet Infrastructure Objects
- postAdd Folder
- getGet Service Account Permissions To Folder
- putModify Service Account Permissions To Folder
- delRemove Folder
- postAdd Project
- getGet Service Account Permissions To Project
- putModify Service Account Permissions To Project
- delRemove Project
- postGenerate Permissions Script
- getGet Subfolders
- Cloud Spanner Instances
- Cloud Spanner Instance Backup Policies
- getGet Collection of Backup Policies
- postCreate Backup Policy
- postGenerate Permissions Script
- getGet Backup Policy Data
- putModify Backup Policy
- delDelete Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postEnable Backup Policy
- postDisable Backup Policy
- postSet Backup Policy Priority
- postCalculate Estimated Cost for Backup Policy
- postCalculate Estimated Cost for Modified Backup Policy
- getGet Backup Policy Status
- getGet Backup Policy Schedule
- getGet Backup Policy Sessions Data
- getGet Google Cloud Resources Protected by Backup Policy
- Cloud Spanner Instance Restore Points
- Cloud SQL Accounts
- Configuration Backup
- postCreate Configuration Backup
- postEnable Configuration Backup Schedule
- postDisable Configuration Backup Schedule
- getGet Configuration Backup Settings
- putModify Configuration Backup Settings
- getGet Configuration Backup Restore Points
- getGet Configuration Backup Restore Point Data
- delRemove Configuration Backup Restore Point
- postImport Configuration Backup File
- postStart Configuration Backup Export
- postCheck Status of Configuration Backup Export
- postDownload Configuration Backup File
- postCheck Imported Backup File
- General Settings
- Google Cloud Regions
- Licensing
- Networks
- Overview
- Product Version
- Projects
- getGet Collection of Projects
- postAdd Project
- getGet Project Data
- putModify Project
- delRemove Project
- getGet Collection of CMEKs for Project
- getGet Collection of CMEKs for Region
- getGet Collection of Regions
- getGet Instance Types Available in Regions
- getGet Region Availability Zones
- getGet Instance Types Available in Availability Zone
- getGet Cloud SQL Instance Types Available in Availability Zone
- getGet Cloud Spanner Instance Configurations
- getGet Collection of Service Accounts for Project
- postCreate HMAC Key
- getGet Collection of HMAC Keys
- postAdd Existing HMAC Key
- postGenerate Permissions Script
- Repositories
- Security Certificates
- Service
- Service Accounts
- Sessions
- SMTP Accounts
- SQL Backup Policies
- getGet Collection of Backup Policies
- postCreate Backup Policy
- postGenerate Permissions Script
- getGet Backup Policy Data
- putModify Backup Policy
- delDelete Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postEnable Backup Policy
- postDisable Backup Policy
- postSet Backup Policy Priority
- postCalculate Estimated Cost for Backup Policy
- postCalculate Estimated Cost for Modified Backup Policy
- getGet Backup Policy Status
- getGet Backup Policy Schedule
- getGet Backup Policy Sessions Data
- getGet Google Cloud Resources Protected by Backup Policy
- SQL Instances
- getGet Collection of Cloud SQL Instances
- getGet Cloud SQL Instance Data
- getGet Cloud SQL Instance Restore Points
- delRemove Cloud SQL Instance Restore Points
- getGet Collection of Cloud SQL Instance Sessions
- postCreate Snapshot of Cloud SQL Instance
- getGet Collection of Cloud SQL Databases
- postInfrastructure Rescan for Cloud SQL Instances
- SQL Restore Points
- Storage Buckets
- System Logs
- System Notifications
- User Accounts
- VM Instances
- VM Instance Backup Policies
- getGet Collection of Backup Policies
- postCreate Backup Policy
- postGenerate Permissions Script
- getGet Backup Policy Data
- putModify Backup Policy
- delDelete Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postEnable Backup Policy
- postDisable Backup Policy
- postSet Backup Policy Priority
- postCalculate Estimated Cost of Backup Policy
- postCalculate Estimated Cost for Modified Backup Policy
- getGet Backup Policy Status
- getGet Backup Policy Schedule
- getGet Backup Policy Sessions Data
- getGet Google Cloud Resources Protected by Backup Policy
- VM Instance Restore Points
- Workers
- getGet Worker Custom Labels
- putModify Worker Custom Labels
- getGet Project Selected for Worker Instances
- putChange Project for Worker Instances
- getGet Worker Configurations
- postAdd Worker Configuration
- getGet Worker Configuration Data
- putModify Worker Configuration
- delRemove Worker Configuration
- getGet Worker Profiles
- postAdd Worker Profiles
- getGet Default Worker Profiles
- getGet Worker Profiles for Region
- putModify Worker Profiles
- delRemove Worker Profiles
The /vmInstance/policies resource collection represents VM backup policies created in Veeam Backup for Google Cloud.
Get Collection of Backup Policies
The HTTP GET request to the /vmInstance/policies endpoint retrieves a list of all VM backup policies created in Veeam Backup for Google Cloud.
query Parameters
| filter | string Returns only specific items of a resource collection in the response. To learn how to use the |
| orderby | string Specifies the order of items in the response. For more information, see the Veeam Backup for Google Cloud REST API Reference Overview, section Orderby Parameter. |
| offset | integer <int32> Specifies the first N items of a resource collection that will be excluded from the response. |
| limit | integer <int32> Specifies the maximum number of items of a resource collection that will be returned in the response. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
{- "data": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "priority": 0,
- "isEnabled": true,
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "createdBy": "string",
- "modifiedBy": "string",
- "creationTime": "2019-08-24T14:15:22Z",
- "modificationTime": "2019-08-24T14:15:22Z",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "displayName": "string"
}
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- null
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- null
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- null
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- null
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- null
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- null
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "offset": 0
}
}Create Backup Policy
The HTTP POST request to the /vmInstance/policies endpoint creates a new VM backup policy.
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
| name required | string Specifies a name for a backup policy. |
| infrastructureObjectType required | string (ECloudInfrastructureObjectType) Specifies the type of an infrastructure object (folder or project). |
| infrastructureObjectId required | string Specifies the Google Cloud ID assigned to the infrastructure object. |
| serviceAccountId required | string <uuid> System ID assigned in the Veeam Backup for Google Cloud REST API to a service account used to access a project where the resources protected by the policy belong. |
required | object (PolicySourceOptionsSpecV2) Specifies Google Cloud resources that must be protected by the backup policy. |
required | object (SnapshotOptionsModel) Specifies cloud-native snapshot settings for the backup policy. |
| backupOptionsEnabled required | boolean Defines whether a backup policy is enabled. |
required | object (PolicyScheduleModel) Backup schedule specified for the backup policy. |
| description | string <= 512 characters Specifies a description for the backup policy. |
object (BackupOptionsSpec) [Applies if backup creation is enabled for the backup policy] Specifies image-level backup settings for the backup policy. | |
object (RetryOptionsModel) Specifies the retry settings configured for the backup session. | |
object (NotificationOptionsModel) Notification settings configured for the backup policy. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "name": "string",
- "description": "string",
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- "string"
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}- 200
- 400
- 401
- 403
- 500
{- "policy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "priority": 0,
- "isEnabled": true,
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "createdBy": "string",
- "modifiedBy": "string",
- "creationTime": "2019-08-24T14:15:22Z",
- "modificationTime": "2019-08-24T14:15:22Z",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "displayName": "string"
}
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}, - "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Generate Permissions Script
The HTTP POST request to the /vmInstance/policies/downloadGrantPermissionsScript endpoint generates a script that you can further use in Google Cloud console to assign to the specified service account the permissions required to perform backup operations.
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
| serviceAccountId required | string <uuid> Specifies the Google Cloud ID assigned to a service account that will be used to access Google Cloud resources. |
| repositories required | Array of strings <uuid> Specifies the list of System IDs assigned in the Veeam Backup for Google Cloud REST API to the target backup repositories where backup files will be stored. |
| projectId | string Specifies the Google Cloud ID assigned to a project that manages resources protected by the policy. |
| folderId | string Specifies the Google Cloud ID assigned to a folder that contains resources protected by the policy. |
| organizationId | string Specifies the Google Cloud ID assigned to an organization of resources protected by the policy. For more information, see Google Cloud Documentation. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "projectId": "string",
- "folderId": "string",
- "organizationId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "repositories": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}- 200
- 400
- 401
- 403
- 500
"string"Get Backup Policy Data
The HTTP GET request to the vmInstance/policies/{policyId} endpoint retrieves settings of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "priority": 0,
- "isEnabled": true,
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "createdBy": "string",
- "modifiedBy": "string",
- "creationTime": "2019-08-24T14:15:22Z",
- "modificationTime": "2019-08-24T14:15:22Z",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "displayName": "string"
}
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}Modify Backup Policy
The HTTP PUT request to the vmInstance/policies/{policyId} endpoint updates settings of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
| name required | string Specifies a name for a backup policy. |
| infrastructureObjectType required | string (ECloudInfrastructureObjectType) Specifies the type of an infrastructure object (folder or project). |
| infrastructureObjectId required | string Specifies the Google Cloud ID assigned to the infrastructure object. |
| serviceAccountId required | string <uuid> System ID assigned in the Veeam Backup for Google Cloud REST API to a service account used to access a project where the resources protected by the policy belong. |
required | object (PolicySourceOptionsSpecV2) Specifies Google Cloud resources that must be protected by the backup policy. |
required | object (SnapshotOptionsModel) Specifies cloud-native snapshot settings for the backup policy. |
| backupOptionsEnabled required | boolean Defines whether a backup policy is enabled. |
required | object (PolicyScheduleModel) Backup schedule specified for the backup policy. |
| description | string <= 512 characters Specifies a description for the backup policy. |
object (BackupOptionsSpec) [Applies if backup creation is enabled for the backup policy] Specifies image-level backup settings for the backup policy. | |
object (RetryOptionsModel) Specifies the retry settings configured for the backup session. | |
object (NotificationOptionsModel) Notification settings configured for the backup policy. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "name": "string",
- "description": "string",
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- "string"
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}- 200
- 400
- 401
- 403
- 404
- 500
{- "policy": {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "priority": 0,
- "isEnabled": true,
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "createdBy": "string",
- "modifiedBy": "string",
- "creationTime": "2019-08-24T14:15:22Z",
- "modificationTime": "2019-08-24T14:15:22Z",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "id": "string",
- "name": "string",
- "projectId": "string",
- "regionId": "a29f01e1-8a8d-451e-b685-f8b0b4ec4767"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "displayName": "string"
}
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}, - "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Delete Backup Policy
The HTTP DELETE request to the vmInstance/policies/{policyId} endpoint deletes a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
No Content
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 204
- 400
- 401
- 403
- 404
- 500
{ }Start Backup Policy
The HTTP POST request to the vmInstance/policies/{policyId}/start endpoint launches a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionIds": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Stop Backup Policy
The HTTP POST request to the /vmInstance/policies/{policyId}/stop endpoint stops execution of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "success": true,
- "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Enable Backup Policy
The HTTP POST request to the /vmInstance/policies/{policyId}/enable endpoint enables a disabled VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "success": true,
- "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Disable Backup Policy
The HTTP POST request to the /vmInstance/policies/{policyId}/disable endpoint disables an enabled VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> System ID assigned to a VM backup policy in the Veeam Backup for Google Cloud REST API. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "success": true,
- "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Set Backup Policy Priority
The HTTP POST request to the /vmInstance/policies/changePriority sets the priority order for VM backup policies.
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
required | Array of objects (PolicyPrioritySpecV2) Specifies priority order for backup policies. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Not Found. One or more resources specified in the request could not be found in the specified resource collection.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "priorities": [
- {
- "policyId": "2f5573e6-5ba4-48f2-a75d-df99c936463b"
}
]
}- 200
- 400
- 401
- 403
- 404
- 500
{- "success": true,
- "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Calculate Estimated Cost of Backup Policy
The HTTP POST request to the /vmInstance/policies/calculateCost endpoint allows you to calculate the estimated monthly cost for a VM backup policy with the specific settings.
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
| name required | string Specifies a name for a backup policy. |
| infrastructureObjectType required | string (ECloudInfrastructureObjectType) Specifies the type of an infrastructure object (folder or project). |
| infrastructureObjectId required | string Specifies the Google Cloud ID assigned to the infrastructure object. |
| serviceAccountId required | string <uuid> System ID assigned in the Veeam Backup for Google Cloud REST API to a service account used to access a project where the resources protected by the policy belong. |
required | object (PolicySourceOptionsSpecV2) Specifies Google Cloud resources that must be protected by the backup policy. |
required | object (SnapshotOptionsModel) Specifies cloud-native snapshot settings for the backup policy. |
| backupOptionsEnabled required | boolean Defines whether a backup policy is enabled. |
required | object (PolicyScheduleModel) Backup schedule specified for the backup policy. |
| description | string <= 512 characters Specifies a description for the backup policy. |
object (BackupOptionsSpec) [Applies if backup creation is enabled for the backup policy] Specifies image-level backup settings for the backup policy. | |
object (RetryOptionsModel) Specifies the retry settings configured for the backup session. | |
object (NotificationOptionsModel) Notification settings configured for the backup policy. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "name": "string",
- "description": "string",
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- "string"
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}- 200
- 400
- 401
- 403
- 500
{- "policyCost": {
- "instancesCosts": [
- {
- "instanceName": "string",
- "instanceId": "string",
- "snapshotCost": 0,
- "backupCost": 0,
- "archiveCost": 0,
- "trafficCost": 0,
- "transactionCost": 0,
- "protectedByAnotherPolicy": true,
- "totalCost": 0
}
], - "isEmpty": true,
- "totalSnapshotCost": 0,
- "totalBackupCost": 0,
- "totalArchiveCost": 0,
- "totalTrafficCost": 0,
- "totalTransactionCost": 0,
- "totalCost": 0
}, - "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Calculate Estimated Cost for Modified Backup Policy
The HTTP POST request to the vmInstance/policies/{policyId}/calculateCost endpoint allows you to calculate the estimated monthly cost that will be consumed if you change the settings of an existing VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a VM backup policy. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
Request Body schema: application/jsonrequired
| name required | string Specifies a name for a backup policy. |
| infrastructureObjectType required | string (ECloudInfrastructureObjectType) Specifies the type of an infrastructure object (folder or project). |
| infrastructureObjectId required | string Specifies the Google Cloud ID assigned to the infrastructure object. |
| serviceAccountId required | string <uuid> System ID assigned in the Veeam Backup for Google Cloud REST API to a service account used to access a project where the resources protected by the policy belong. |
required | object (PolicySourceOptionsSpecV2) Specifies Google Cloud resources that must be protected by the backup policy. |
required | object (SnapshotOptionsModel) Specifies cloud-native snapshot settings for the backup policy. |
| backupOptionsEnabled required | boolean Defines whether a backup policy is enabled. |
required | object (PolicyScheduleModel) Backup schedule specified for the backup policy. |
| description | string <= 512 characters Specifies a description for the backup policy. |
object (BackupOptionsSpec) [Applies if backup creation is enabled for the backup policy] Specifies image-level backup settings for the backup policy. | |
object (RetryOptionsModel) Specifies the retry settings configured for the backup session. | |
object (NotificationOptionsModel) Notification settings configured for the backup policy. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "name": "string",
- "description": "string",
- "infrastructureObjectType": "folder",
- "infrastructureObjectId": "string",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "sourceOptions": {
- "backupAllItems": true,
- "selectedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "selectedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedVmInstances": [
- {
- "instanceId": "string",
- "projectId": "string"
}
], - "excludedLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "excludedFolders": [
- "string"
], - "excludedProjects": [
- "string"
], - "selectedRegions": [
- "string"
]
}, - "snapshotOptions": {
- "additionalLabels": [
- {
- "key": "string",
- "value": "string"
}
], - "copyTagsFromVolumeEnabled": true,
- "locationType": "multiRegional",
- "location": "sourceDisk",
- "region": "string"
}, - "backupOptionsEnabled": true,
- "backupOptions": {
- "archiveEnabled": true,
- "repositoryId": "5aa3e9fa-2d0a-4c21-ad54-43217e2bc9c0",
- "archiveRepositoryId": "f3ebb0f4-ec66-436e-8a34-1a0ebdb28cbc",
- "healthCheckEnabled": true
}, - "scheduleOptions": {
- "dailyScheduleEnabled": true,
- "dailySchedule": {
- "kind": "Everyday",
- "runsPerHour": 1,
- "days": [
- "Sunday"
], - "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "hours": [
- 23
]
}
}
}, - "weeklyScheduleEnabled": true,
- "weeklySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "days": [
- "Sunday"
]
}
}
}, - "monthlyScheduleEnabled": true,
- "monthlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "snapshotOptions": {
- "retention": {
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}
}, - "backupOptions": {
- "retention": {
- "type": "Days",
- "count": 0
}, - "schedule": {
- "months": [
- "January"
]
}, - "isArchive": true
}
}, - "yearlyScheduleEnabled": true,
- "yearlySchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "dayOfWeek": "Sunday",
- "dayOfMonth": 0,
- "month": "January",
- "retention": {
- "count": 0,
- "type": "Years"
}, - "isArchive": true
}, - "healthCheckSchedule": {
- "timeLocal": "2019-08-24T14:15:22Z",
- "dayNumberInMonth": "First",
- "daysOfWeek": [
- "Sunday"
], - "dayOfMonth": 0,
- "months": [
- "January"
]
}
}, - "retryOptions": {
- "retryTimes": 0
}, - "notificationOptions": {
- "email": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnFailure": true,
- "supressNotificationsUntilLastRetry": true
}
}- 200
- 400
- 401
- 403
- 500
{- "policyCost": {
- "instancesCosts": [
- {
- "instanceName": "string",
- "instanceId": "string",
- "snapshotCost": 0,
- "backupCost": 0,
- "archiveCost": 0,
- "trafficCost": 0,
- "transactionCost": 0,
- "protectedByAnotherPolicy": true,
- "totalCost": 0
}
], - "isEmpty": true,
- "totalSnapshotCost": 0,
- "totalBackupCost": 0,
- "totalArchiveCost": 0,
- "totalTrafficCost": 0,
- "totalTransactionCost": 0,
- "totalCost": 0
}, - "issues": [
- {
- "description": "string",
- "severity": "Error"
}
]
}Get Backup Policy Status
The HTTP GET request to the vmInstance/policies/{policyId}/status endpoint retrieves status of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a VM backup policy. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
{- "policyId": "2f5573e6-5ba4-48f2-a75d-df99c936463b",
- "currentStatus": "Success",
- "latestSnapshotStatus": "Success",
- "latestBackupStatus": "Success",
- "latestArchiveStatus": "Success"
}Get Backup Policy Schedule
The HTTP GET request to the vmInstance/policies/{policyId}/schedule endpoint retrieves a schedule of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a VM backup policy. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
{- "policyId": "2f5573e6-5ba4-48f2-a75d-df99c936463b",
- "latestRunTimeUtc": "2019-08-24T14:15:22Z",
- "nextRunTimeUtc": "2019-08-24T14:15:22Z"
}Get Backup Policy Sessions Data
The HTTP GET request to the vmInstance/policies/{policyId}/sessions endpoint retrieves session data of a VM backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a VM backup policy. |
query Parameters
| filter | string Returns only specific items of a resource collection in the response. To learn how to use the |
| orderby | string Specifies the order of items in the response. For more information, see the Veeam Backup for Google Cloud REST API Reference Overview, section Orderby Parameter. |
| offset | integer <int32> Specifies the first N items of a resource collection that will be excluded from the response. |
| limit | integer <int32> Specifies the maximum number of items of a resource collection that will be returned in the response. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
{- "data": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "startTimeUtc": "2019-08-24T14:15:22Z",
- "sessionType": "Unknown"
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "offset": 0
}
}Get Google Cloud Resources Protected by Backup Policy
The HTTP GET request to the /vmInstance/policies/{policyId}/instances endpoint retrieves information on all VM instances that must be protected by a backup policy with the specified ID.
path Parameters
| policyId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Google Cloud REST API to a VM backup policy. |
query Parameters
| filter | string Returns only specific items of a resource collection in the response. To learn how to use the |
| orderby | string Specifies the order of items in the response. For more information, see the Veeam Backup for Google Cloud REST API Reference Overview, section Orderby Parameter. |
| offset | integer <int32> Specifies the first N items of a resource collection that will be excluded from the response. |
| limit | integer <int32> Specifies the maximum number of items of a resource collection that will be returned in the response. |
header Parameters
| x-api-version required | string Default: 1.4-rev0 Specifies the current revision of the Veeam Backup for Google Cloud REST API. |
OK
Bad Request. The request body is malformed, incomplete or otherwise invalid
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending a request does not have adequate privileges to access one or more objects specified in the request.
Internal Server Error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
{- "data": [
- {
- "id": "string",
- "name": "string"
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "offset": 0
}
}