- 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 /cosmosDb
resource collection represents Cosmos DB accounts that reside in Azure regions selected in backup policy settings and can be protected by Veeam Backup for Microsoft Azure.
Get Collection of Cosmos DB Accounts
The HTTP GET request to the /cosmosDb
endpoint retrieves all Cosmos DB accounts that can be protected by Veeam Backup for Microsoft Azure.
query Parameters
SubscriptionId | string or null <uuid> Returns only Cosmos DB accounts managed by a subscription with the specified ID. x-veeam-parameter-group: CosmosDbOptions |
TenantId | string or null <uuid> Returns only Cosmos DB accounts that belong to a tenant with the specified ID. x-veeam-parameter-group: CosmosDbOptions |
ServiceAccountId | string Returns only Cosmos DB accounts to which a service account with the specified ID has access. x-veeam-parameter-group: CosmosDbOptions |
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: CosmosDbOptions |
RegionIds | Array of strings or null Returns only Cosmos DB accounts that reside in Azure regions with the specified IDs. x-veeam-parameter-group: CosmosDbOptions |
AccountTypes | Array of strings or null (CosmosDbAccountTypeFromClient) Returns only Cosmos DB accounts of selected kinds. x-veeam-parameter-group: CosmosDbOptions |
SoftDeleted | boolean or null Defines whether to include deleted Cosmos DB accounts into the response. x-veeam-parameter-group: CosmosDbOptions |
CosmosDbAccountsFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only Cosmos DB accounts that reside in regions protected by backup policies. x-veeam-parameter-group: CosmosDbOptions |
ProtectionStatus | Array of strings or null (ProtectionStatus) Returns only Cosmos DB accounts with the specified protection statuses. x-veeam-parameter-group: CosmosDbOptions |
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 |
BackupDestination | Array of strings or null (CosmosBackupDestinationFilterOptions) Returns only Cosmos DB accounts with the specified backup types. x-veeam-parameter-group: CosmosDbOptions |
OK
Bad Request
Unauthorized
Forbidden
- curl
curl -i -X GET \ 'https://123.123.123.123/api/v8/cosmosDb?SubscriptionId=497f6eca-6276-4993-bfeb-53cbbbba6f08&TenantId=497f6eca-6276-4993-bfeb-53cbbbba6f08&ServiceAccountId=string&SearchPattern=string&RegionIds=string&AccountTypes=NoSql&SoftDeleted=true&CosmosDbAccountsFromProtectedRegions=true&ProtectionStatus=Unprotected&Offset=0&Limit=-1&BackupDestination=ContinuousBackup' \ -H 'Authorization: YOUR_API_KEY_HERE'
- 200
- 400
- 401
- 403
{- "offset": 0,
- "limit": 0,
- "totalCount": 0,
- "_links": {
}, - "results": [
- {
- "id": "string",
- "azureId": "string",
- "name": "string",
- "status": "Online",
- "accountType": "NoSql",
- "latestRestorableTimestamp": "2019-08-24T14:15:22Z",
- "sourceSizeBytes": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "resourceGroupName": "string",
- "postgresVersion": "string",
- "mongoDbServerVersion": "string",
- "isDeleted": true,
- "capacityMode": "None",
}
]
}
Get Cosmos DB Account Data
The HTTP GET request to the /cosmosDb/{cosmosDbAccountId}
endpoint retrieves information on a Cosmos DB account with the specified ID.
path Parameters
cosmosDbAccountId required | string or null Specifies the Cosmos DB account ID in Microsoft Azure. |
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/cosmosDb/{cosmosDbAccountId}?sync=true' \ -H 'Authorization: YOUR_API_KEY_HERE'
- 200
- 202
- 400
- 401
- 403
- 404
{- "id": "string",
- "azureId": "string",
- "name": "string",
- "status": "Online",
- "accountType": "NoSql",
- "latestRestorableTimestamp": "2019-08-24T14:15:22Z",
- "sourceSizeBytes": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "resourceGroupName": "string",
- "postgresVersion": "string",
- "mongoDbServerVersion": "string",
- "isDeleted": true,
- "capacityMode": "None",
}
Rescan Cosmos DB Accounts
The HTTP POST request to the /cosmosDb/rescan
endpoint launches a rescan operation for Cosmos DB accounts 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/json
subscriptionId | string or null <uuid> Returns only Cosmos DB accounts managed by a subscription with the specified ID. |
tenantId | string or null <uuid> Returns only Cosmos DB accounts that belong to a tenant with the specified ID. |
serviceAccountId | string Returns only Cosmos DB accounts 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. |
regionIds | Array of strings or null Returns only Cosmos DB accounts that reside in Azure regions with the specified IDs. |
accountTypes | Array of strings or null (CosmosDbAccountTypeFromClient) Returns only Cosmos DB accounts of selected types. |
softDeleted | boolean or null Defines whether to include deleted Cosmos DB accounts into the response. |
cosmosDbAccountsFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only Cosmos DB accounts that reside in regions protected by backup policies. |
protectionStatus | Array of strings or null (ProtectionStatus) Returns only Cosmos DB accounts with the specified protection statuses. |
backupDestination | Array of strings or null (CosmosBackupDestinationFilterOptions) Returns only Cosmos DB accounts with the specified backup types. |
Accepted
Bad Request
Unauthorized
Forbidden
- Payload
- curl
{- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "string",
- "searchPattern": "string",
- "regionIds": [
- "string"
], - "accountTypes": [
- "NoSql"
], - "softDeleted": true,
- "cosmosDbAccountsFromProtectedRegions": true,
- "protectionStatus": [
- "Unprotected"
], - "backupDestination": [
- "ContinuousBackup"
]
}
- 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",
- "azureId": "string",
- "name": "string",
- "status": "Online",
- "accountType": "NoSql",
- "latestRestorableTimestamp": "2019-08-24T14:15:22Z",
- "sourceSizeBytes": 0,
- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "regionId": "string",
- "regionName": "string",
- "resourceGroupName": "string",
- "postgresVersion": "string",
- "mongoDbServerVersion": "string",
- "isDeleted": true,
- "capacityMode": "None",
}
]
}
}
Export Collection of Cosmos DB Accounts
The HTTP POST request to the /cosmosDb/export
endpoint exports a list of Cosmos DB accounts 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/json
subscriptionId | string or null <uuid> Returns only Cosmos DB accounts managed by a subscription with the specified ID. |
tenantId | string or null <uuid> Returns only Cosmos DB accounts that belong to a tenant with the specified ID. |
serviceAccountId | string or null Returns only Cosmos DB accounts 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. |
regionIds | Array of strings or null Returns only Cosmos DB accounts that reside in Azure regions with the specified IDs. |
cosmosDbAccountIds | Array of strings or null Specifies Microsoft Azure IDs assigned to Cosmos DB accounts whose data will be exported. |
accountTypes | Array of strings or null (CosmosDbAccountTypeFromClient) Returns only Cosmos DB accounts of selected types. |
softDeleted | boolean or null Defines whether to include deleted Cosmos DB accounts into the response. |
cosmosDbAccountsFromProtectedRegions | boolean Defines whether Veeam Backup for Microsoft Azure must return only Cosmos DB accounts that reside in regions protected by backup policies. |
protectionStatus | Array of strings or null (ProtectionStatus) Returns only Cosmos DB accounts with the specified protection statuses. |
OK
Bad Request
Unauthorized
Forbidden
Conflict
- Payload
- curl
{- "subscriptionId": "d079718b-ff63-45dd-947b-4950c023750f",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "string",
- "searchPattern": "string",
- "regionIds": [
- "string"
], - "cosmosDbAccountIds": [
- "string"
], - "accountTypes": [
- "NoSql"
], - "softDeleted": true,
- "cosmosDbAccountsFromProtectedRegions": true,
- "protectionStatus": [
- "Unprotected"
]
}
- 400
- 401
- 403
- 409
{- "extensions": { },
- "status": 0,
- "title": "string",
- "detail": "string",
- "type": "string"
}
Create Cosmos DB Backups
The HTTP POST request to the /cosmosDb/startManualBackup
endpoint launches a backup operation for the specified Cosmos DB accounts.
This operation can be performed to Cosmos DB for PostgreSQL accounts only.
Request Body schema: application/jsonrequired
cosmosDbAccountIds required | Array of strings non-empty Specifies Microsoft Azure IDs assigned to Cosmos DB accounts that will be backed up. |
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 a Microsoft Azure ID assigned to a tenant to which the protected Cosmos DB accounts belong. |
serviceAccountId required | string <uuid> Specifies the system ID assigned in the Veeam Backup for Microsoft Azure REST API to the service account whose permissions will be used to protect Cosmos DB accounts. |
object or null (CosmosDbProcessingCredentials) Specifies a list of credentials that will be used to connect to the databases of the specified Cosmos DB accounts. |
Accepted
Bad Request
Unauthorized
Forbidden
Not Found
Client Error
- Payload
- curl
{- "cosmosDbAccountIds": [
- "string"
], - "repositoryId": "string",
- "tenantId": "f97df110-f4de-492e-8849-4a6af68026b0",
- "serviceAccountId": "a814cf67-aaac-43ae-acb4-8d34e82a4b4c",
- "credentialsList": {
- "property1": "string",
- "property2": "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
},
}
]