- About Veeam Backup for Microsoft Azure REST API
- Overview
- How To
- Changelog
- Authorization
- Availability Sets
- Availability Zones
- Asynchronous Operations
- Azure Key Vaults
- Azure Network Security Groups
- Azure Regions
- Azure Resource Groups
- Service Accounts
- getGet Collection of Service Accounts
- getGet Service Account Data
- delRemove Service Account
- postVerify Service Account Permissions
- postExport Service Account Required Permissions
- postExport Permissions by Application
- postExport Permissions by Token
- postExport Collection of Service Accounts
- postGet List of Tenants by Token
- postGet List of Subscriptions by Application
- postGet List of Microsoft Entra Groups
- postValidate User
- postAdd Service Account Using Existing Application
- putEdit Service Account Created Using Existing Application
- putValidate Editing of Service Account Created Using Existing Application
- getGet Service Accounts Suitable for Worker Management
- putSpecify Service Account for Worker Management
- Azure SQL Elastic Pools
- Azure Storage Accounts
- Azure Subscriptions
- Azure Tags
- Microsoft Entra Tenants
- Azure Virtual Networks
- Azure VM Schedule-Based Backup Policies
- getGet Collection of Azure VM Schedule-Based Backup Policies
- postCreate Backup Policy
- getGet Backup Policy Data
- putModify Backup Policy
- delRemove Backup Policy
- getGet Resources Selected for Backup Policy
- getGet Azure Regions Specified in Policy Settings
- getGet Resources Excluded from Backup Policy
- postSet Backup Policy Priority
- postEnable Backup Policy
- postDisable Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postResets Backup Policy CBT
- postExport Backup Policies
- getGet Collection of Protected Items
- getGet Resources Protected by Backup Policy
- Azure VM SLA-Based Backup Policies
- getGet Collection of SLA-Based Backup Policies
- postCreate SLA-Based Backup Policy
- postExport Collection of SLA-Based Backup Policies
- getGet SLA-Based Backup Policy Data
- putModify SLA-Based Backup Policy
- delRemove SLA-Based Backup Policy
- getGet SLA Compliance Information
- getGet Resources Protected by SLA-Based Backup Policy
- getGet Azure Regions Specified in SLA-Based Backup Policy Settings
- getGet Resources Excluded from SLA-Based Backup Policy
- postSet SLA-Based Backup Policy Priority
- postEnable SLA-Based Backup Policy
- postDisable SLA-Based Backup Policy
- getGet Collection of Protected Items
- getGet Resources Protected by SLA-Based Backup Policy
- postCalculate Estimated Cost of SLA-Based Backup Policy
- postExport Estimation Cost Report
- Azure VM Policy Cost Estimation
- Azure VMs
- Azure VM Sizes
- Azure VMs Protected by Veeam Backup for Microsoft Azure
- getGet Collection of Protected Azure VMs
- getGet Protected Azure VM Data
- postExport Collection of Protected Azure VMs
- postRemove Backups of Protected Azure VM
- postRemove Snapshots of Protected Azure VM
- postRemove Backups of Protected Azure VMs
- postRemove Snapshots of Protected Azure VMs
- postRemove Manual Snapshots of Protected Azure VMs
- postRemove Manual Snapshots of Protected Azure VM
- Azure VM Restore Points
- getGet Azure VM Restore Points
- getGet Azure VM Restore Point Data
- delRemove Azure VM Restore Point
- postPerform Virtual Disk Restore
- postPerform Azure VM Restore
- postPerform Azure VM File-Level Restore
- postRetrieve Data from Archive
- postExtend Data Availability Period
- getGet Collection of Virtual Disk Snapshots
- postVirtual Disk Snapshots Rescan
- getGet Collection of Azure VM Snapshots
- Backup Repositories
- getGet Collection of Backup Repositories
- postAdd Backup Repository
- getGet Backup Repository Data
- putModify Backup Repository Settings
- delRemove Backup Repository
- postGet Backup Repository Metadata
- postVerify Backup Repository Password
- postExport Collection of Backup Repositories
- getValidate Repository Deletion
- Configuration
- Configuration Backup
- getGet Backup Appliance Statistics
- postCreate Configuration Backup
- getGet Configuration Backup Settings
- putModify Configuration Backup Settings
- postStart Configuration Backup Export
- getCheck Status of Configuration Backup Export
- postDownload Configuration Backup File
- getGet Configuration Backup Restore Points
- getGet Configuration Backup Restore Point Data
- delRemove Configuration Backup Restore Point
- Cosmos DB Accounts
- Cosmos DB Account Point-in-Time Restore Information
- Cosmos DB Accounts Protected by Veeam Backup for Microsoft Azure
- getGet Collection of Protected Cosmos DB Accounts
- getGet Protected Cosmos DB Account Data
- postExport Collection of Protected Cosmos DB Accounts
- postRemove Backups of Protected Cosmos DB Account
- postRemove Manual Backups of Protected Cosmos DB Account
- postRemove Continuous Backups of Protected Cosmos DB Account
- postPerform Cosmos DB Account Point-in-time Restore
- Cosmos DB Backup Policies
- getGet Collection of Cosmos DB Backup Policies
- postCreate Backup Policy
- getGet Backup Policy Data
- putModify Backup Policy
- delRemove Backup Policy
- getGet Resources Selected for Backup Policy
- getGet Azure Regions Specified in Policy Settings
- getGet Resources Excluded from Backup Policy
- postSet Backup Policy Priority
- postEnable Backup Policy
- postDisable Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postExport Backup Policies
- getGet Collection of Protected Items
- getGet Resources Protected by Backup Policy
- Cosmos DB Policy Cost Estimation
- Cosmos DB Restore Points
- File-Level Recovery
- File Share Backup Policies
- getGet Collection of File Share Backup Policies
- postCreate Backup Policy
- getGet Backup Policy Data
- putModify Backup Policy
- delRemove Backup Policy
- getGet Resources Selected for Backup Policy
- getGet Azure Regions Specified in Policy Settings
- getGet Resources Excluded from Backup Policy
- postSet Backup Policy Priority
- postEnable Backup Policy
- postDisable Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postExport Backup Policies
- getGet Collection of Protected Items
- getGet Resources Protected by Backup Policy
- File Share Policy Cost Estimation
- File Share Restore Points
- File Shares
- File Shares Protected by Veeam Backup for Microsoft Azure
- Job Sessions
- getGet Collection of Sessions
- getGet Retention Session Data
- getGet Backup Session Data
- getGet Health Check Session Data
- getGet Restore Session Data
- getGet SQL Restore Session Data
- getGet Azure VM File-Level Restore Session Data
- getGet File Share File-Level Restore Session Data
- getGet Virtual Network Configuration Restore Session Data
- getGet Session Data
- getGet Session Log Details
- postStop Session
- postExport Collection of Sessions
- getGet Cosmos DB Restore Session Data
- License
- License Agreements
- Overview
- Retention Settings
- Security Certificates
- SLA Details
- SLA Templates
- SMTP and Database Accounts
- Storage Templates
- SQL Backup Policies
- getGet Collection of SQL Backup Policies
- postCreate Backup Policy
- getGet Backup Policy Data
- putModify Backup Policy
- delRemove Backup Policy
- getGet Resources Selected for Backup Policy
- getGet Azure Regions Specified in Policy Settings
- getGet Resources Excluded from Backup Policy
- postSet Backup Policy Priority
- postCheck Configuration of Backup Policy
- postEnable Backup Policy
- postDisable Backup Policy
- postStart Backup Policy
- postStop Backup Policy
- postExport Backup Policies
- getGet Collection of Protected Items
- getGet Resources Protected by Backup Policy
- SQL Databases
- SQL Databases Protected by Veeam Backup for Microsoft Azure
- SQL Policy Cost Estimation
- SQL Restore Points
- SQL Servers
- SSO Settings
- System
- Users
- Virtual Network Configuration Backup Policy
- getGet Virtual Network Configuration Backup Policy
- putModify Virtual Network Configuration Backup Policy
- postStart Virtual Network Configuration Backup Policy
- postStop Virtual Network Configuration Backup Policy
- postEnable Virtual Network Configuration Backup Policy
- postDisable Virtual Network Configuration Backup Policy
- postExport Virtual Network Configuration Backup Policy
- Virtual Network Configuration Protected by Veeam Backup for Microsoft Azure
- Virtual Network Configuration Restore Points
- Workers
- getGet Collection of Worker Instances
- delRemove Worker Instance
- postExport Collection of Worker Instances
- getGet Worker Instance Statistics
- getGet Collection of Worker Configurations
- postAdd Worker Configuration
- getGet Worker Configuration Data
- putModify Worker Configuration
- delRemove Worker Configuration
- postExport Worker Configurations
- postSpecify Worker Location and Service Account
- getGet Collection of Worker Profiles
- postAdd Worker Profiles
- getGet Worker Profiles for Region
- putModify Worker Profiles
- delRemove Worker Profiles
- postExport Worker Profiles
- getGet Worker Custom Tags
- putModify Worker Custom Tags
The /databases
resource collection represents SQL databases that reside in Azure regions selected in backup policy settings and can be protected by Veeam Backup for Microsoft Azure.
Get Collection of SQL Databases
The HTTP GET request to the /databases
endpoint retrieves all SQL databases that can be protected by Veeam Backup for Microsoft Azure.
query Parameters
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 |
SubscriptionId | string or null <uuid> Returns only SQL databases available in a subscription with the specified ID. x-veeam-parameter-group: DatabaseOptions |
TenantId | string or null <uuid> Returns only SQL databases available for a tenant with the specified ID. x-veeam-parameter-group: DatabaseOptions |
ServiceAccountId | string Returns only SQL databases to which a service account with the specified ID has access. x-veeam-parameter-group: DatabaseOptions |
SearchPattern | string or null Returns only those items of a resource collection whose names match the specified search pattern in the parameter value. x-veeam-parameter-group: DatabaseOptions |
CredentialsState | string or null (CredentialsStateFilterOptions) Returns only SQL databases that have the specified credentials state. x-veeam-parameter-group: DatabaseOptions |
AssignableBySqlAccountId | integer or null <int64> Returns only SQL databases that are associated with an Azure SQL account with the specified ID. x-veeam-parameter-group: DatabaseOptions |
RegionIds | Array of strings or null Returns only SQL databases that reside in Azure regions with the specified IDs. x-veeam-parameter-group: DatabaseOptions |
ProtectionStatus | Array of strings or null (ProtectionStatus) Returns only SQL databases with the specified protection status. x-veeam-parameter-group: DatabaseOptions |
BackupDestination | Array of strings or null (SqlBackupDestinationFilterOptions) Returns only SQL databases with the specified backup type. x-veeam-parameter-group: DatabaseOptions |
DbFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only SQL databases that reside in regions protected by backup policies. x-veeam-parameter-group: DatabaseOptions |
OK
Bad Request
Unauthorized
Forbidden
- curl
curl -i -X GET \ 'https://123.123.123.123/api/v8/databases?Offset=0&Limit=-1&SubscriptionId=497f6eca-6276-4993-bfeb-53cbbbba6f08&TenantId=497f6eca-6276-4993-bfeb-53cbbbba6f08&ServiceAccountId=string&SearchPattern=string&CredentialsState=OnlyWithCredentials&AssignableBySqlAccountId=0&RegionIds=string&ProtectionStatus=Unprotected&BackupDestination=AzureBlob&DbFromProtectedRegions=true' \ -H 'Authorization: YOUR_API_KEY_HERE'
- 200
- 400
- 401
- 403
{- "offset": 0,
- "limit": 0,
- "totalCount": 0,
- "_links": {
}, - "results": [
- {
- "id": "string",
- "resourceId": "string",
- "name": "string",
- "serverName": "string",
- "serverId": "string",
- "resourceGroupName": "string",
- "sizeInMb": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "hasElasticPool": true,
- "status": "Other",
- "databaseType": "Managed",
}
]
}
Get SQL Database Data
The HTTP GET request to the /databases/{databaseId}
endpoint retrieves information on a SQL database with the specified ID.
path Parameters
databaseId required | string Specifies a system ID assigned in the Veeam Backup for Microsoft Azure REST API to the SQL database. |
query Parameters
sync | boolean or null Defines whether to force rescanning of the Microsoft Azure infrastructure before the response. |
OK
Accepted
Bad Request
Unauthorized
Forbidden
Not Found
- curl
curl -i -X GET \ 'https://123.123.123.123/api/v8/databases/{databaseId}?sync=true' \ -H 'Authorization: YOUR_API_KEY_HERE'
- 200
- 202
- 400
- 401
- 403
- 404
{- "id": "string",
- "resourceId": "string",
- "name": "string",
- "serverName": "string",
- "serverId": "string",
- "resourceGroupName": "string",
- "sizeInMb": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "hasElasticPool": true,
- "status": "Other",
- "databaseType": "Managed",
}
SQL Databases Rescan
The HTTP POST requests to the /databases/rescan
endpoint launches a rescan operation for SQL databases in Microsoft Azure environment.
query Parameters
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/jsonrequired
subscriptionId | string or null <uuid> Returns only SQL databases available in a subscription with the specified ID. |
tenantId | string or null <uuid> Returns only SQL databases available for a tenant with the specified ID. |
serviceAccountId | string Returns only SQL databases to which a service account with the specified ID has access. |
searchPattern | string or null Returns only those items of a resource collection whose names match the specified search pattern in the parameter value. |
credentialsState | string or null (CredentialsStateFilterOptions) Enum: "OnlyWithCredentials" "OnlyWithoutCredentials" "All" |
assignableBySqlAccountId | integer or null <int64> Returns only SQL databases that are associated with an Azure SQL account with the specified ID. |
regionIds | Array of strings or null Returns only SQL databases that reside in Azure regions with the specified IDs. |
protectionStatus | Array of strings or null (ProtectionStatus) Returns only SQL databases with the specified protection status. |
backupDestination | Array of strings or null (SqlBackupDestinationFilterOptions) Returns only SQL databases with the specified backup type. |
dbFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only SQL databases that reside in regions protected by backup policies. |
Accepted
Bad Request
Unauthorized
Forbidden
- Payload
- curl
{- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "string",
- "searchPattern": "string",
- "credentialsState": "OnlyWithCredentials",
- "assignableBySqlAccountId": 0,
- "regionIds": [
- "string"
], - "protectionStatus": [
- "Unprotected"
], - "backupDestination": [
- "AzureBlob"
], - "dbFromProtectedRegions": true
}
- 202
- 400
- 401
- 403
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "startTime": "2019-08-24T14:15:22Z",
- "status": "Canceled",
- "error": {
- "type": "string",
- "title": "string",
- "status": 0,
- "detail": "string",
- "instance": "string",
- "extensions": {
- "property1": { },
- "property2": { }
}
}, - "_links": {
}, - "result": {
- "offset": 0,
- "limit": 0,
- "totalCount": 0,
- "_links": {
}, - "results": [
- {
- "id": "string",
- "resourceId": "string",
- "name": "string",
- "serverName": "string",
- "serverId": "string",
- "resourceGroupName": "string",
- "sizeInMb": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "hasElasticPool": true,
- "status": "Other",
- "databaseType": "Managed",
}
]
}
}
Export Collection of SQL Databases
The HTTP POST request to the /databases/export
endpoint exports a list of Azure SQL databases to a .CSV or an .XML file.
header Parameters
Accept | string or null Specifies a media type of representation of the exported data. The default value is text/csv media type. |
Request Body schema: application/jsonrequired
databaseIds | Array of strings or null Specifies the system IDs assigned in the Veeam Backup for Microsoft Azure REST API to the Azure SQL databases whose data will be exported. |
subscriptionId | string or null <uuid> Returns only SQL databases available in a subscription with the specified ID. |
tenantId | string or null <uuid> Returns only SQL databases available for a tenant with the specified ID. |
serviceAccountId | string or null Returns only SQL databases to which a service account with the specified ID has access. |
searchPattern | string or null Returns only those items of a resource collection whose names match the specified search pattern in the parameter value. |
credentialsState | string or null (CredentialsStateFilterOptions) Enum: "OnlyWithCredentials" "OnlyWithoutCredentials" "All" |
assignableBySqlAccountId | integer or null <int64> Returns only SQL databases that are associated with an Azure SQL account with the specified ID. |
regionIds | Array of strings or null Returns only SQL databases that reside in Azure regions with the specified IDs. |
protectionStatus | Array of strings or null (ProtectionStatus) Returns only SQL databases with the specified protection status. |
backupDestination | Array of strings or null (SqlBackupDestinationFilterOptions) Returns only SQL databases with the specified backup type. |
dbFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only SQL databases that reside in regions protected by backup policies. |
OK
Bad Request
Unauthorized
Forbidden
Conflict
- Payload
- curl
{- "databaseIds": [
- "string"
], - "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "string",
- "searchPattern": "string",
- "credentialsState": "OnlyWithCredentials",
- "assignableBySqlAccountId": 0,
- "regionIds": [
- "string"
], - "protectionStatus": [
- "Unprotected"
], - "backupDestination": [
- "AzureBlob"
], - "dbFromProtectedRegions": true
}
- 400
- 401
- 403
- 409
{- "extensions": { },
- "status": 0,
- "title": "string",
- "detail": "string",
- "type": "string"
}
Create Backups of SQL Databases
The HTTP POST request to the /databases/startManualBackup
endpoint launches a backup operation for the specified databases.
Request Body schema: application/jsonrequired
databaseIds required | Array of strings non-empty Specifies the system IDs assigned to the Azure SQL databases in the Veeam Backup for Microsoft Azure REST API. |
repositoryId required | string non-empty Specifies the system ID assigned to the target repository in the Veeam Backup for Microsoft Azure REST API. |
tenantId required | string or null <uuid> Specifies the Microsoft Azure ID assigned to the tenant associated with a service account whose permissions will be used to manage Azure SQL databases. |
serviceAccountId required | 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 manage Azure SQL databases. |
managedStagingServerId | string or null Specifies the Microsoft Azure ID assigned to a staging server configured for the unmanaged instances. |
stagingServerId | string or null Specifies the Microsoft Azure ID assigned to a staging server configured for the managed instances. |
Accepted
Bad Request
Unauthorized
Forbidden
Not Found
Client Error
- Payload
- curl
{- "databaseIds": [
- "string"
], - "repositoryId": "string",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "managedStagingServerId": "string",
- "stagingServerId": "string"
}
- 202
- 400
- 401
- 403
- 404
- 415
{- "id": "string",
- "type": "BackupRetention",
- "localizedType": "string",
- "executionStartTime": "2019-08-24T14:15:22Z",
- "executionStopTime": "2019-08-24T14:15:22Z",
- "executionDuration": "string",
- "status": "Canceled",
- "backupJobInfo": {
- "policyId": "2f5573e6-5ba4-48f2-a75d-df99c936463b",
- "policyName": "string",
- "policyType": "VirtualMachines",
- "protectedInstancesCount": 0,
- "policyRemoved": true
}, - "healthCheckJobInfo": {
- "policyId": "2f5573e6-5ba4-48f2-a75d-df99c936463b",
- "policyName": "string",
- "checkedInstancesCount": 0,
- "policyRemoved": true
}, - "restoreJobInfo": {
- "reason": "string",
- "backupPolicyDisplayName": "string"
}, - "fileLevelRestoreJobInfo": {
- "initiator": "string",
- "reason": "string",
- "flrLink": {
- "url": "string",
- "thumbprint": "string"
}, - "vmId": "string",
- "vmName": "string",
- "backupPolicyDisplayName": "string",
- "restorePointCreatedDateUtc": "2019-08-24T14:15:22Z",
- "isFlrSessionReady": true
}, - "fileShareFileLevelRestoreJobInfo": {
- "initiator": "string",
- "reason": "string",
- "flrLink": {
- "url": "string",
- "thumbprint": "string"
}, - "fileShareId": "string",
- "fileShareName": "string",
- "backupPolicyDisplayName": "string",
- "restorePointCreatedDateUtc": "2019-08-24T14:15:22Z"
}, - "repositoryJobInfo": {
- "repositoryId": "string",
- "repositoryName": "string",
- "repositoryRemoved": true
}, - "restorePointDataRetrievalJobInfo": {
- "restorePointId": "8c843d10-6d0f-4abe-b898-e1ba18b94f68",
- "sqlRestorePointId": "859c4224-81c0-43b0-8c6a-f09eb203fa33",
- "cosmosDbRestorePointId": "10233446-f8f4-4379-8a69-f08231b4f7b6",
- "initiator": "string",
- "instanceName": "string",
- "daysToKeep": 0,
- "dataRetrievalPriority": "Normal"
}, - "retentionJobInfo": {
- "deletedRestorePointsCount": 0
},
}