Create or update a backup instance in a backup vault
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataProtection/backupVaults/{vaultName}/backupInstances/{backupInstanceName}?api-version=2026-03-01
URI Parameters
| Name |
In |
Required |
Type |
Description |
|
backupInstanceName
|
path |
True
|
string
|
The name of the BackupInstanceResource
|
|
resourceGroupName
|
path |
True
|
string
minLength: 1 maxLength: 90
|
The name of the resource group. The name is case insensitive.
|
|
subscriptionId
|
path |
True
|
string
(uuid)
|
The ID of the target subscription. The value must be an UUID.
|
|
vaultName
|
path |
True
|
string
minLength: 2 maxLength: 50 pattern: ^[A-Za-z][-A-Za-z0-9]*[A-Za-z0-9]$
|
The name of the backup vault.
|
|
api-version
|
query |
True
|
string
minLength: 1
|
The API version to use for this operation.
|
| Name |
Required |
Type |
Description |
|
x-ms-authorization-auxiliary
|
|
string
|
|
Request Body
| Name |
Type |
Description |
|
properties
|
BackupInstance
|
BackupInstanceResource properties
|
|
tags
|
object
|
Proxy Resource tags.
|
Responses
| Name |
Type |
Description |
|
200 OK
|
BackupInstanceResource
|
Resource 'BackupInstanceResource' update operation succeeded
|
|
201 Created
|
BackupInstanceResource
|
Resource 'BackupInstanceResource' create operation succeeded
Headers
- Location: string
- Retry-After: integer
|
|
202 Accepted
|
|
Resource operation accepted.
Headers
- Azure-AsyncOperation: string
- Location: string
|
|
Other Status Codes
|
CloudError
|
An unexpected error response.
|
Security
azure_auth
Azure Active Directory OAuth2 Flow.
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
| Name |
Description |
|
user_impersonation
|
impersonate your user account
|
Examples
Create BackupInstance
Sample request
PUT https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/testInstance1?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "Microsoft.DBforPostgreSQL/servers",
"resourceUri": ""
},
"datasourceAuthCredentials": {
"objectType": "SecretStoreBasedAuthCredentials",
"secretStoreResource": {
"secretStoreType": "AzureKeyVault",
"uri": "https://samplevault.vault.azure.net/secrets/credentials"
}
},
"friendlyName": "harshitbi2",
"identityDetails": {
"useSystemAssignedIdentity": false,
"userAssignedIdentityArmUrl": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUami"
},
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
}
},
"validationType": "ShallowValidation"
}
}
import com.azure.resourcemanager.dataprotection.models.AzureOperationalStoreParameters;
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.DataStoreTypes;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.IdentityDetails;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import com.azure.resourcemanager.dataprotection.models.SecretStoreBasedAuthCredentials;
import com.azure.resourcemanager.dataprotection.models.SecretStoreResource;
import com.azure.resourcemanager.dataprotection.models.SecretStoreType;
import com.azure.resourcemanager.dataprotection.models.ValidationType;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance.json
*/
/**
* Sample code: Create BackupInstance.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstance(com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("testInstance1")
.withExistingBackupVault("000pikumar", "PratikPrivatePreviewVault1")
.withProperties(new BackupInstance().withFriendlyName("harshitbi2").withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.DBforPostgreSQL/servers/databases").withObjectType("Datasource")
.withResourceId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb")
.withResourceLocation("").withResourceName("testdb")
.withResourceType("Microsoft.DBforPostgreSQL/servers/databases").withResourceUri(""))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.DBforPostgreSQL/servers/databases").withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest")
.withResourceLocation("").withResourceName("viveksipgtest")
.withResourceType("Microsoft.DBforPostgreSQL/servers").withResourceUri(""))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1")
.withPolicyParameters(new PolicyParameters()
.withDataStoreParametersList(Arrays.asList(new AzureOperationalStoreParameters()
.withDataStoreType(DataStoreTypes.OPERATIONAL_STORE).withResourceGroupId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest")))))
.withDatasourceAuthCredentials(new SecretStoreBasedAuthCredentials().withSecretStoreResource(
new SecretStoreResource().withUri("https://samplevault.vault.azure.net/secrets/credentials")
.withSecretStoreType(SecretStoreType.AZURE_KEY_VAULT)))
.withValidationType(ValidationType.SHALLOW_VALIDATION)
.withIdentityDetails(
new IdentityDetails().withUseSystemAssignedIdentity(false).withUserAssignedIdentityArmUrl(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourcegroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUami"))
.withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="000pikumar",
vault_name="PratikPrivatePreviewVault1",
backup_instance_name="testInstance1",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"resourceUri": "",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "Microsoft.DBforPostgreSQL/servers",
"resourceUri": "",
},
"datasourceAuthCredentials": {
"objectType": "SecretStoreBasedAuthCredentials",
"secretStoreResource": {
"secretStoreType": "AzureKeyVault",
"uri": "https://samplevault.vault.azure.net/secrets/credentials",
},
},
"friendlyName": "harshitbi2",
"identityDetails": {
"useSystemAssignedIdentity": False,
"userAssignedIdentityArmUrl": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourcegroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUami",
},
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest",
}
]
},
},
"validationType": "ShallowValidation",
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstance() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "000pikumar", "PratikPrivatePreviewVault1", "testInstance1", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb"),
ResourceLocation: to.Ptr(""),
ResourceName: to.Ptr("testdb"),
ResourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ResourceURI: to.Ptr(""),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest"),
ResourceLocation: to.Ptr(""),
ResourceName: to.Ptr("viveksipgtest"),
ResourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers"),
ResourceURI: to.Ptr(""),
},
DatasourceAuthCredentials: &armdataprotection.SecretStoreBasedAuthCredentials{
ObjectType: to.Ptr("SecretStoreBasedAuthCredentials"),
SecretStoreResource: &armdataprotection.SecretStoreResource{
SecretStoreType: to.Ptr(armdataprotection.SecretStoreTypeAzureKeyVault),
URI: to.Ptr("https://samplevault.vault.azure.net/secrets/credentials"),
},
},
FriendlyName: to.Ptr("harshitbi2"),
IdentityDetails: &armdataprotection.IdentityDetails{
UseSystemAssignedIdentity: to.Ptr(false),
UserAssignedIdentityArmURL: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourcegroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUami"),
},
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1"),
PolicyParameters: &armdataprotection.PolicyParameters{
DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
&armdataprotection.AzureOperationalStoreParameters{
DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
ObjectType: to.Ptr("AzureOperationalStoreParameters"),
ResourceGroupID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"),
},
},
},
},
ValidationType: to.Ptr(armdataprotection.ValidationTypeShallowValidation),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("harshitbi2"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("OssDB"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb"),
// ResourceLocation: to.Ptr(""),
// ResourceName: to.Ptr("testdb"),
// ResourceType: to.Ptr("OssDB"),
// ResourceURI: to.Ptr(""),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("OssDB"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest"),
// ResourceLocation: to.Ptr(""),
// ResourceName: to.Ptr("viveksipgtest"),
// ResourceType: to.Ptr("OssDB"),
// ResourceURI: to.Ptr(""),
// },
// FriendlyName: to.Ptr("harshitbi2"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
// &armdataprotection.AzureOperationalStoreParameters{
// DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
// ObjectType: to.Ptr("AzureOperationalStoreParameters"),
// ResourceGroupID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"),
// },
// },
// },
// PolicyVersion: to.Ptr("3.2"),
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance.json
*/
async function createBackupInstance() {
const credential = new DefaultAzureCredential();
const subscriptionId = "04cf684a-d41f-4550-9f70-7708a3a2283b";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate(
"000pikumar",
"PratikPrivatePreviewVault1",
"testInstance1",
{
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.DBforPostgreSQL/servers/databases",
objectType: "Datasource",
resourceID:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
resourceLocation: "",
resourceName: "testdb",
resourceType: "Microsoft.DBforPostgreSQL/servers/databases",
resourceUri: "",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.DBforPostgreSQL/servers/databases",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
resourceLocation: "",
resourceName: "viveksipgtest",
resourceType: "Microsoft.DBforPostgreSQL/servers",
resourceUri: "",
},
datasourceAuthCredentials: {
objectType: "SecretStoreBasedAuthCredentials",
secretStoreResource: {
secretStoreType: "AzureKeyVault",
uri: "https://samplevault.vault.azure.net/secrets/credentials",
},
},
friendlyName: "harshitbi2",
identityDetails: {
useSystemAssignedIdentity: false,
userAssignedIdentityArmUrl:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourcegroups/rg-name/providers/Microsoft.ManagedIdentity/userAssignedIdentities/testUami",
},
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
policyParameters: {
dataStoreParametersList: [
{
dataStoreType: "OperationalStore",
objectType: "AzureOperationalStoreParameters",
resourceGroupId:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest",
},
],
},
},
validationType: "ShallowValidation",
},
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "harshitbi2",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2",
"properties": {
"dataSourceInfo": {
"datasourceType": "OssDB",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "OssDB",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "OssDB",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "OssDB",
"resourceUri": ""
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
},
"policyVersion": "3.2"
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2026-03-01
Retry-After: 60
{
"name": "harshitbi2",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2",
"properties": {
"dataSourceInfo": {
"datasourceType": "OssDB",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "OssDB",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "OssDB",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "OssDB",
"resourceUri": ""
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
},
"policyVersion": "3.2"
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Location: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/testInstance1/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Retry-After: 60
Sample request
PUT https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/testInstance1?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "Microsoft.DBforPostgreSQL/servers",
"resourceUri": ""
},
"datasourceAuthCredentials": {
"objectType": "SecretStoreBasedAuthCredentials",
"secretStoreResource": {
"secretStoreType": "AzureKeyVault",
"uri": "https://samplevault.vault.azure.net/secrets/credentials"
}
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
}
},
"resourceGuardOperationRequests": [
"/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourceGroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/dppModifyPolicy/default"
],
"validationType": "ShallowValidation"
}
}
import com.azure.resourcemanager.dataprotection.models.AzureOperationalStoreParameters;
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.DataStoreTypes;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import com.azure.resourcemanager.dataprotection.models.SecretStoreBasedAuthCredentials;
import com.azure.resourcemanager.dataprotection.models.SecretStoreResource;
import com.azure.resourcemanager.dataprotection.models.SecretStoreType;
import com.azure.resourcemanager.dataprotection.models.ValidationType;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ResourceGuardEnabled.json
*/
/**
* Sample code: Create BackupInstance to perform critical operation With MUA.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstanceToPerformCriticalOperationWithMUA(
com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("testInstance1")
.withExistingBackupVault("000pikumar", "PratikPrivatePreviewVault1")
.withProperties(new BackupInstance().withFriendlyName("harshitbi2").withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.DBforPostgreSQL/servers/databases").withObjectType("Datasource")
.withResourceId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb")
.withResourceLocation("").withResourceName("testdb")
.withResourceType("Microsoft.DBforPostgreSQL/servers/databases").withResourceUri(""))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.DBforPostgreSQL/servers/databases").withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest")
.withResourceLocation("").withResourceName("viveksipgtest")
.withResourceType("Microsoft.DBforPostgreSQL/servers").withResourceUri(""))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1")
.withPolicyParameters(new PolicyParameters()
.withDataStoreParametersList(Arrays.asList(new AzureOperationalStoreParameters()
.withDataStoreType(DataStoreTypes.OPERATIONAL_STORE).withResourceGroupId(
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest")))))
.withResourceGuardOperationRequests(Arrays.asList(
"/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourcegroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/dppModifyPolicy/default"))
.withDatasourceAuthCredentials(new SecretStoreBasedAuthCredentials().withSecretStoreResource(
new SecretStoreResource().withUri("https://samplevault.vault.azure.net/secrets/credentials")
.withSecretStoreType(SecretStoreType.AZURE_KEY_VAULT)))
.withValidationType(ValidationType.SHALLOW_VALIDATION).withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance_resource_guard_enabled.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="000pikumar",
vault_name="PratikPrivatePreviewVault1",
backup_instance_name="testInstance1",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"resourceUri": "",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.DBforPostgreSQL/servers/databases",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "Microsoft.DBforPostgreSQL/servers",
"resourceUri": "",
},
"datasourceAuthCredentials": {
"objectType": "SecretStoreBasedAuthCredentials",
"secretStoreResource": {
"secretStoreType": "AzureKeyVault",
"uri": "https://samplevault.vault.azure.net/secrets/credentials",
},
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest",
}
]
},
},
"resourceGuardOperationRequests": [
"/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourcegroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/dppModifyPolicy/default"
],
"validationType": "ShallowValidation",
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ResourceGuardEnabled.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ResourceGuardEnabled.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstanceToPerformCriticalOperationWithMua() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("04cf684a-d41f-4550-9f70-7708a3a2283b", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "000pikumar", "PratikPrivatePreviewVault1", "testInstance1", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb"),
ResourceLocation: to.Ptr(""),
ResourceName: to.Ptr("testdb"),
ResourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ResourceURI: to.Ptr(""),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers/databases"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest"),
ResourceLocation: to.Ptr(""),
ResourceName: to.Ptr("viveksipgtest"),
ResourceType: to.Ptr("Microsoft.DBforPostgreSQL/servers"),
ResourceURI: to.Ptr(""),
},
DatasourceAuthCredentials: &armdataprotection.SecretStoreBasedAuthCredentials{
ObjectType: to.Ptr("SecretStoreBasedAuthCredentials"),
SecretStoreResource: &armdataprotection.SecretStoreResource{
SecretStoreType: to.Ptr(armdataprotection.SecretStoreTypeAzureKeyVault),
URI: to.Ptr("https://samplevault.vault.azure.net/secrets/credentials"),
},
},
FriendlyName: to.Ptr("harshitbi2"),
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1"),
PolicyParameters: &armdataprotection.PolicyParameters{
DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
&armdataprotection.AzureOperationalStoreParameters{
DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
ObjectType: to.Ptr("AzureOperationalStoreParameters"),
ResourceGroupID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"),
},
},
},
},
ResourceGuardOperationRequests: []*string{
to.Ptr("/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourcegroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/dppModifyPolicy/default"),
},
ValidationType: to.Ptr(armdataprotection.ValidationTypeShallowValidation),
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("harshitbi2"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("OssDB"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb"),
// ResourceLocation: to.Ptr(""),
// ResourceName: to.Ptr("testdb"),
// ResourceType: to.Ptr("OssDB"),
// ResourceURI: to.Ptr(""),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("OssDB"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest"),
// ResourceLocation: to.Ptr(""),
// ResourceName: to.Ptr("viveksipgtest"),
// ResourceType: to.Ptr("OssDB"),
// ResourceURI: to.Ptr(""),
// },
// FriendlyName: to.Ptr("harshitbi2"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
// &armdataprotection.AzureOperationalStoreParameters{
// DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
// ObjectType: to.Ptr("AzureOperationalStoreParameters"),
// ResourceGroupID: to.Ptr("/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"),
// },
// },
// },
// PolicyVersion: to.Ptr("3.2"),
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ResourceGuardEnabled.json
*/
async function createBackupInstanceToPerformCriticalOperationWithMUA() {
const credential = new DefaultAzureCredential();
const subscriptionId = "04cf684a-d41f-4550-9f70-7708a3a2283b";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate(
"000pikumar",
"PratikPrivatePreviewVault1",
"testInstance1",
{
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.DBforPostgreSQL/servers/databases",
objectType: "Datasource",
resourceID:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
resourceLocation: "",
resourceName: "testdb",
resourceType: "Microsoft.DBforPostgreSQL/servers/databases",
resourceUri: "",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.DBforPostgreSQL/servers/databases",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
resourceLocation: "",
resourceName: "viveksipgtest",
resourceType: "Microsoft.DBforPostgreSQL/servers",
resourceUri: "",
},
datasourceAuthCredentials: {
objectType: "SecretStoreBasedAuthCredentials",
secretStoreResource: {
secretStoreType: "AzureKeyVault",
uri: "https://samplevault.vault.azure.net/secrets/credentials",
},
},
friendlyName: "harshitbi2",
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/Backupvaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
policyParameters: {
dataStoreParametersList: [
{
dataStoreType: "OperationalStore",
objectType: "AzureOperationalStoreParameters",
resourceGroupId:
"/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest",
},
],
},
},
resourceGuardOperationRequests: [
"/subscriptions/38304e13-357e-405e-9e9a-220351dcce8c/resourcegroups/ankurResourceGuard1/providers/Microsoft.DataProtection/resourceGuards/ResourceGuard38-1/dppModifyPolicy/default",
],
validationType: "ShallowValidation",
},
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "harshitbi2",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2",
"properties": {
"dataSourceInfo": {
"datasourceType": "OssDB",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "OssDB",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "OssDB",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "OssDB",
"resourceUri": ""
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
},
"policyVersion": "3.2"
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2026-03-01
Retry-After: 60
{
"name": "harshitbi2",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/harshitbi2",
"properties": {
"dataSourceInfo": {
"datasourceType": "OssDB",
"objectType": "Datasource",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest/databases/testdb",
"resourceLocation": "",
"resourceName": "testdb",
"resourceType": "OssDB",
"resourceUri": ""
},
"dataSourceSetInfo": {
"datasourceType": "OssDB",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest/providers/Microsoft.DBforPostgreSQL/servers/viveksipgtest",
"resourceLocation": "",
"resourceName": "viveksipgtest",
"resourceType": "OssDB",
"resourceUri": ""
},
"friendlyName": "harshitbi2",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupPolicies/PratikPolicy1",
"policyParameters": {
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/f75d8d8b-6735-4697-82e1-1a7a3ff0d5d4/resourceGroups/viveksipgtest"
}
]
},
"policyVersion": "3.2"
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Location: https://management.azure.com/subscriptions/04cf684a-d41f-4550-9f70-7708a3a2283b/resourceGroups/000pikumar/providers/Microsoft.DataProtection/backupVaults/PratikPrivatePreviewVault1/backupInstances/testInstance1/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Retry-After: 60
Create BackupInstance With ADLSBlobBackupAutoProtection
Sample request
PUT https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "temp-"
},
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "test-"
}
]
},
"objectType": "AdlsBlobBackupDatasourceParametersForAutoProtection"
}
]
}
}
}
}
import com.azure.resourcemanager.dataprotection.models.AdlsBlobBackupDatasourceParametersForAutoProtection;
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.BlobBackupAutoProtectionRule;
import com.azure.resourcemanager.dataprotection.models.BlobBackupPatternType;
import com.azure.resourcemanager.dataprotection.models.BlobBackupRuleBasedAutoProtectionSettings;
import com.azure.resourcemanager.dataprotection.models.BlobBackupRuleMode;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupAutoProtection.json
*/
/**
* Sample code: Create BackupInstance With ADLSBlobBackupAutoProtection.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstanceWithADLSBlobBackupAutoProtection(
com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071")
.withExistingBackupVault("adlsrg", "adlsvault")
.withProperties(new BackupInstance().withFriendlyName("adlsstorageaccount\\adlsbackupinstance")
.withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.Storage/storageAccounts/adlsBlobServices")
.withObjectType("Datasource")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("adlsstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.Storage/storageAccounts/adlsBlobServices")
.withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("adlsstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy")
.withPolicyParameters(new PolicyParameters().withBackupDatasourceParametersList(Arrays
.asList(new AdlsBlobBackupDatasourceParametersForAutoProtection().withAutoProtectionSettings(
new BlobBackupRuleBasedAutoProtectionSettings().withEnabled(true)
.withRules(Arrays.asList(
new BlobBackupAutoProtectionRule().withObjectType("BlobBackupAutoProtectionRule")
.withMode(BlobBackupRuleMode.EXCLUDE).withType(BlobBackupPatternType.PREFIX)
.withPattern("temp-"),
new BlobBackupAutoProtectionRule().withObjectType("BlobBackupAutoProtectionRule")
.withMode(BlobBackupRuleMode.EXCLUDE).withType(BlobBackupPatternType.PREFIX)
.withPattern("test-"))))))))
.withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance_adlsblob_backup_auto_protection.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="adlsrg",
vault_name="adlsvault",
backup_instance_name="adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": True,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"mode": "Exclude",
"objectType": "BlobBackupAutoProtectionRule",
"pattern": "temp-",
"type": "Prefix",
},
{
"mode": "Exclude",
"objectType": "BlobBackupAutoProtectionRule",
"pattern": "test-",
"type": "Prefix",
},
],
},
"objectType": "AdlsBlobBackupDatasourceParametersForAutoProtection",
}
]
},
},
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupAutoProtection.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupAutoProtection.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstanceWithAdlsBlobBackupAutoProtection() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("54707983-993e-43de-8d94-074451394eda", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "adlsrg", "adlsvault", "adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("adlsstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("adlsstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
},
FriendlyName: to.Ptr("adlsstorageaccount\\adlsbackupinstance"),
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy"),
PolicyParameters: &armdataprotection.PolicyParameters{
BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
&armdataprotection.AdlsBlobBackupDatasourceParametersForAutoProtection{
AutoProtectionSettings: &armdataprotection.BlobBackupRuleBasedAutoProtectionSettings{
Enabled: to.Ptr(true),
ObjectType: to.Ptr("BlobBackupRuleBasedAutoProtectionSettings"),
Rules: []*armdataprotection.BlobBackupAutoProtectionRule{
{
ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
Pattern: to.Ptr("temp-"),
},
{
ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
Pattern: to.Ptr("test-"),
},
},
},
ObjectType: to.Ptr("AdlsBlobBackupDatasourceParametersForAutoProtection"),
},
},
},
},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("3a76f8a-c176-4f7d-819e-95157e2b0077"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/3a76f8a-c176-4f7d-819e-95157e2b0077"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("adlsstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("adlsstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// },
// FriendlyName: to.Ptr("adlsstorageaccount\\adlsbackupinstance"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
// &armdataprotection.AdlsBlobBackupDatasourceParametersForAutoProtection{
// AutoProtectionSettings: &armdataprotection.BlobBackupRuleBasedAutoProtectionSettings{
// Enabled: to.Ptr(true),
// ObjectType: to.Ptr("BlobBackupRuleBasedAutoProtectionSettings"),
// Rules: []*armdataprotection.BlobBackupAutoProtectionRule{
// {
// ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
// Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
// Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
// Pattern: to.Ptr("temp-"),
// },
// {
// ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
// Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
// Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
// Pattern: to.Ptr("test-"),
// },
// },
// },
// ObjectType: to.Ptr("AdlsBlobBackupDatasourceParametersForAutoProtection"),
// },
// },
// },
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupAutoProtection.json
*/
async function createBackupInstanceWithAdlsBlobBackupAutoProtection() {
const credential = new DefaultAzureCredential();
const subscriptionId = "54707983-993e-43de-8d94-074451394eda";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate(
"adlsrg",
"adlsvault",
"adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071",
{
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/adlsBlobServices",
objectType: "Datasource",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "adlsstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/adlsBlobServices",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "adlsstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
friendlyName: "adlsstorageaccount\\adlsbackupinstance",
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
policyParameters: {
backupDatasourceParametersList: [
{
autoProtectionSettings: {
enabled: true,
objectType: "BlobBackupRuleBasedAutoProtectionSettings",
rules: [
{
objectType: "BlobBackupAutoProtectionRule",
mode: "Exclude",
type: "Prefix",
pattern: "temp-",
},
{
objectType: "BlobBackupAutoProtectionRule",
mode: "Exclude",
type: "Prefix",
pattern: "test-",
},
],
},
objectType: "AdlsBlobBackupDatasourceParametersForAutoProtection",
},
],
},
},
},
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "3a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/3a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "temp-"
},
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "test-"
}
]
},
"objectType": "AdlsBlobBackupDatasourceParametersForAutoProtection"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
{
"name": "3a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/3a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": []
},
"objectType": "AdlsBlobBackupDatasourceParametersForAutoProtection"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Location: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/adlsstorageaccount-adlsstorageaccount-3a76f8a-c176-4f7d-819e-95157e2b0071/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
Create BackupInstance With ADLSBlobBackupDatasourceParameters
Sample request
PUT https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"containersList": [
"container1"
],
"objectType": "AdlsBlobBackupDatasourceParameters"
}
]
}
}
}
}
import com.azure.resourcemanager.dataprotection.models.AdlsBlobBackupDatasourceParameters;
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupDatasourceParameters.json
*/
/**
* Sample code: Create BackupInstance With ADLSBlobBackupDatasourceParameters.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstanceWithADLSBlobBackupDatasourceParameters(
com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071")
.withExistingBackupVault("adlsrg", "adlsvault")
.withProperties(new BackupInstance().withFriendlyName("adlsstorageaccount\\adlsbackupinstance")
.withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.Storage/storageAccounts/adlsBlobServices")
.withObjectType("Datasource")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("adlsstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.Storage/storageAccounts/adlsBlobServices")
.withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("adlsstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy")
.withPolicyParameters(new PolicyParameters().withBackupDatasourceParametersList(Arrays.asList(
new AdlsBlobBackupDatasourceParameters().withContainersList(Arrays.asList("container1"))))))
.withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance_adlsblob_backup_datasource_parameters.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="adlsrg",
vault_name="adlsvault",
backup_instance_name="adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{"containersList": ["container1"], "objectType": "AdlsBlobBackupDatasourceParameters"}
]
},
},
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupDatasourceParameters.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupDatasourceParameters.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstanceWithAdlsBlobBackupDatasourceParameters() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("54707983-993e-43de-8d94-074451394eda", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "adlsrg", "adlsvault", "adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("adlsstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("adlsstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
},
FriendlyName: to.Ptr("adlsstorageaccount\\adlsbackupinstance"),
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy"),
PolicyParameters: &armdataprotection.PolicyParameters{
BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
&armdataprotection.AdlsBlobBackupDatasourceParameters{
ContainersList: []*string{
to.Ptr("container1"),
},
ObjectType: to.Ptr("AdlsBlobBackupDatasourceParameters"),
},
},
},
},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("19a76f8a-c176-4f7d-819e-95157e2b0077"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/19a76f8a-c176-4f7d-819e-95157e2b0077"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("adlsstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/adlsBlobServices"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("adlsstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"),
// },
// FriendlyName: to.Ptr("adlsstorageaccount\\adlsbackupinstance"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
// &armdataprotection.AdlsBlobBackupDatasourceParameters{
// ContainersList: []*string{
// to.Ptr("container1"),
// },
// ObjectType: to.Ptr("AdlsBlobBackupDatasourceParameters"),
// },
// },
// },
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_ADLSBlobBackupDatasourceParameters.json
*/
async function createBackupInstanceWithAdlsBlobBackupDatasourceParameters() {
const credential = new DefaultAzureCredential();
const subscriptionId = "54707983-993e-43de-8d94-074451394eda";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate(
"adlsrg",
"adlsvault",
"adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071",
{
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/adlsBlobServices",
objectType: "Datasource",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "adlsstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/adlsBlobServices",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "adlsstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
},
friendlyName: "adlsstorageaccount\\adlsbackupinstance",
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
policyParameters: {
backupDatasourceParametersList: [
{ containersList: ["container1"], objectType: "AdlsBlobBackupDatasourceParameters" },
],
},
},
},
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "19a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/19a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"containersList": [
"container1"
],
"objectType": "AdlsBlobBackupDatasourceParameters"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
{
"name": "19a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/19a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/adlsBlobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "adlsstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Storage/storageAccounts/adlsstorageaccount"
},
"friendlyName": "adlsstorageaccount\\adlsbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupPolicies/adlspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"containersList": [],
"objectType": "AdlsBlobBackupDatasourceParameters"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Location: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/adlsrg/providers/Microsoft.DataProtection/backupVaults/adlsvault/backupInstances/adlsstorageaccount-adlsstorageaccount-19a76f8a-c176-4f7d-819e-95157e2b0071/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
Create BackupInstance With BlobBackupAutoProtection
Sample request
PUT https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupInstances/blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"friendlyName": "blobstorageaccount\\blobbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "temp-"
},
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "test-"
}
]
},
"objectType": "BlobBackupDatasourceParametersForAutoProtection"
}
]
}
}
}
}
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.BlobBackupAutoProtectionRule;
import com.azure.resourcemanager.dataprotection.models.BlobBackupDatasourceParametersForAutoProtection;
import com.azure.resourcemanager.dataprotection.models.BlobBackupPatternType;
import com.azure.resourcemanager.dataprotection.models.BlobBackupRuleBasedAutoProtectionSettings;
import com.azure.resourcemanager.dataprotection.models.BlobBackupRuleMode;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_BlobBackupAutoProtection.json
*/
/**
* Sample code: Create BackupInstance With BlobBackupAutoProtection.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstanceWithBlobBackupAutoProtection(
com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071")
.withExistingBackupVault("blobrg", "blobvault")
.withProperties(new BackupInstance().withFriendlyName("blobstorageaccount\\blobbackupinstance")
.withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.Storage/storageAccounts/blobServices").withObjectType("Datasource")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("blobstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.Storage/storageAccounts/blobServices")
.withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount")
.withResourceLocation("centraluseuap").withResourceName("blobstorageaccount")
.withResourceType("microsoft.storage/storageAccounts").withResourceUri(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy")
.withPolicyParameters(new PolicyParameters().withBackupDatasourceParametersList(
Arrays.asList(new BlobBackupDatasourceParametersForAutoProtection().withAutoProtectionSettings(
new BlobBackupRuleBasedAutoProtectionSettings().withEnabled(true)
.withRules(Arrays.asList(
new BlobBackupAutoProtectionRule().withObjectType("BlobBackupAutoProtectionRule")
.withMode(BlobBackupRuleMode.EXCLUDE).withType(BlobBackupPatternType.PREFIX)
.withPattern("temp-"),
new BlobBackupAutoProtectionRule().withObjectType("BlobBackupAutoProtectionRule")
.withMode(BlobBackupRuleMode.EXCLUDE).withType(BlobBackupPatternType.PREFIX)
.withPattern("test-"))))))))
.withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance_blob_backup_auto_protection.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="blobrg",
vault_name="blobvault",
backup_instance_name="blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
},
"friendlyName": "blobstorageaccount\\blobbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": True,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"mode": "Exclude",
"objectType": "BlobBackupAutoProtectionRule",
"pattern": "temp-",
"type": "Prefix",
},
{
"mode": "Exclude",
"objectType": "BlobBackupAutoProtectionRule",
"pattern": "test-",
"type": "Prefix",
},
],
},
"objectType": "BlobBackupDatasourceParametersForAutoProtection",
}
]
},
},
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_BlobBackupAutoProtection.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance_BlobBackupAutoProtection.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstanceWithBlobBackupAutoProtection() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("54707983-993e-43de-8d94-074451394eda", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "blobrg", "blobvault", "blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/blobServices"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("blobstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/blobServices"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
ResourceLocation: to.Ptr("centraluseuap"),
ResourceName: to.Ptr("blobstorageaccount"),
ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
},
FriendlyName: to.Ptr("blobstorageaccount\\blobbackupinstance"),
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy"),
PolicyParameters: &armdataprotection.PolicyParameters{
BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
&armdataprotection.BlobBackupDatasourceParametersForAutoProtection{
AutoProtectionSettings: &armdataprotection.BlobBackupRuleBasedAutoProtectionSettings{
Enabled: to.Ptr(true),
ObjectType: to.Ptr("BlobBackupRuleBasedAutoProtectionSettings"),
Rules: []*armdataprotection.BlobBackupAutoProtectionRule{
{
ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
Pattern: to.Ptr("temp-"),
},
{
ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
Pattern: to.Ptr("test-"),
},
},
},
ObjectType: to.Ptr("BlobBackupDatasourceParametersForAutoProtection"),
},
},
},
},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("2a76f8a-c176-4f7d-819e-95157e2b0077"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupInstances/2a76f8a-c176-4f7d-819e-95157e2b0077"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/blobServices"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("blobstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("Microsoft.Storage/storageAccounts/blobServices"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
// ResourceLocation: to.Ptr("centraluseuap"),
// ResourceName: to.Ptr("blobstorageaccount"),
// ResourceType: to.Ptr("microsoft.storage/storageAccounts"),
// ResourceURI: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"),
// },
// FriendlyName: to.Ptr("blobstorageaccount\\blobbackupinstance"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
// &armdataprotection.BlobBackupDatasourceParametersForAutoProtection{
// AutoProtectionSettings: &armdataprotection.BlobBackupRuleBasedAutoProtectionSettings{
// Enabled: to.Ptr(true),
// ObjectType: to.Ptr("BlobBackupRuleBasedAutoProtectionSettings"),
// Rules: []*armdataprotection.BlobBackupAutoProtectionRule{
// {
// ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
// Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
// Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
// Pattern: to.Ptr("temp-"),
// },
// {
// ObjectType: to.Ptr("BlobBackupAutoProtectionRule"),
// Mode: to.Ptr(armdataprotection.BlobBackupRuleModeExclude),
// Type: to.Ptr(armdataprotection.BlobBackupPatternTypePrefix),
// Pattern: to.Ptr("test-"),
// },
// },
// },
// ObjectType: to.Ptr("BlobBackupDatasourceParametersForAutoProtection"),
// },
// },
// },
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_BlobBackupAutoProtection.json
*/
async function createBackupInstanceWithBlobBackupAutoProtection() {
const credential = new DefaultAzureCredential();
const subscriptionId = "54707983-993e-43de-8d94-074451394eda";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate(
"blobrg",
"blobvault",
"blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071",
{
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/blobServices",
objectType: "Datasource",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "blobstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.Storage/storageAccounts/blobServices",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
resourceLocation: "centraluseuap",
resourceName: "blobstorageaccount",
resourceType: "microsoft.storage/storageAccounts",
resourceUri:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
},
friendlyName: "blobstorageaccount\\blobbackupinstance",
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy",
policyParameters: {
backupDatasourceParametersList: [
{
autoProtectionSettings: {
enabled: true,
objectType: "BlobBackupRuleBasedAutoProtectionSettings",
rules: [
{
objectType: "BlobBackupAutoProtectionRule",
mode: "Exclude",
type: "Prefix",
pattern: "temp-",
},
{
objectType: "BlobBackupAutoProtectionRule",
mode: "Exclude",
type: "Prefix",
pattern: "test-",
},
],
},
objectType: "BlobBackupDatasourceParametersForAutoProtection",
},
],
},
},
},
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "2a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupInstances/2a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"friendlyName": "blobstorageaccount\\blobbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": [
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "temp-"
},
{
"objectType": "BlobBackupAutoProtectionRule",
"mode": "Exclude",
"type": "Prefix",
"pattern": "test-"
}
]
},
"objectType": "BlobBackupDatasourceParametersForAutoProtection"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
{
"name": "2a76f8a-c176-4f7d-819e-95157e2b0077",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupInstances/2a76f8a-c176-4f7d-819e-95157e2b0077",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "Datasource",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.Storage/storageAccounts/blobServices",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount",
"resourceLocation": "centraluseuap",
"resourceName": "blobstorageaccount",
"resourceType": "microsoft.storage/storageAccounts",
"resourceUri": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Storage/storageAccounts/blobstorageaccount"
},
"friendlyName": "blobstorageaccount\\blobbackupinstance",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupPolicies/blobpolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"autoProtectionSettings": {
"enabled": true,
"objectType": "BlobBackupRuleBasedAutoProtectionSettings",
"rules": []
},
"objectType": "BlobBackupDatasourceParametersForAutoProtection"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.Resources/deployments/ConfigureProtection-2097/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Location: https://management.azure.com/subscriptions/54707983-993e-43de-8d94-074451394eda/resourceGroups/blobrg/providers/Microsoft.DataProtection/backupVaults/blobvault/backupInstances/blobstorageaccount-blobstorageaccount-2a76f8a-c176-4f7d-819e-95157e2b0071/operationStatuses/08584622124860116406?api-version=2022-12-01&t=638749912006014742&c=MIIHhzCCBm-gAwIBAgITfAaTiaklTwdb3CiPmAAABpOJqTANBgkqhkiG9w0BAQsFADBEMRMwEQYKCZImiZPyLGQBGRYDR0JMMRMwEQYKCZImiZPyLGQBGRYDQU1FMRgwFgYDVQQDEw9BTUUgSW5mcmEgQ0EgMDUw
Retry-After: 60
Create BackupInstance With KubernetesClusterBackupDatasourceParameters
Sample request
PUT https://management.azure.com/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupInstances/aksbi?api-version=2026-03-01
{
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "Datasource",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"
},
"friendlyName": "aksbi",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/BackupVaults/aksvault/backupPolicies/akspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"excludedNamespaces": [
"kube-system"
],
"excludedResourceTypes": [
"v1/Secret"
],
"includeClusterScopeResources": true,
"includedNamespaces": [
"test"
],
"includedResourceTypes": [],
"includedVolumeTypes": [
"AzureDisk",
"AzureFileShareSMB"
],
"labelSelectors": [],
"objectType": "KubernetesClusterBackupDatasourceParameters",
"snapshotVolumes": true
}
],
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg"
}
]
}
}
}
}
import com.azure.resourcemanager.dataprotection.models.AKSVolumeTypes;
import com.azure.resourcemanager.dataprotection.models.AzureOperationalStoreParameters;
import com.azure.resourcemanager.dataprotection.models.BackupInstance;
import com.azure.resourcemanager.dataprotection.models.DataStoreTypes;
import com.azure.resourcemanager.dataprotection.models.Datasource;
import com.azure.resourcemanager.dataprotection.models.DatasourceSet;
import com.azure.resourcemanager.dataprotection.models.KubernetesClusterBackupDatasourceParameters;
import com.azure.resourcemanager.dataprotection.models.PolicyInfo;
import com.azure.resourcemanager.dataprotection.models.PolicyParameters;
import java.util.Arrays;
/**
* Samples for BackupInstances CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file:
* 2026-03-01/BackupInstanceOperations/PutBackupInstance_KubernetesClusterBackupDatasourceParameters.json
*/
/**
* Sample code: Create BackupInstance With KubernetesClusterBackupDatasourceParameters.
*
* @param manager Entry point to DataProtectionManager.
*/
public static void createBackupInstanceWithKubernetesClusterBackupDatasourceParameters(
com.azure.resourcemanager.dataprotection.DataProtectionManager manager) {
manager.backupInstances().define("aksbi").withExistingBackupVault("aksrg", "aksvault")
.withProperties(new BackupInstance().withFriendlyName("aksbi").withDataSourceInfo(new Datasource()
.withDatasourceType("Microsoft.ContainerService/managedclusters").withObjectType("Datasource")
.withResourceId(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster")
.withResourceLocation("eastus2euap").withResourceName("akscluster")
.withResourceType("Microsoft.ContainerService/managedclusters").withResourceUri(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"))
.withDataSourceSetInfo(new DatasourceSet()
.withDatasourceType("Microsoft.ContainerService/managedclusters").withObjectType("DatasourceSet")
.withResourceId(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster")
.withResourceLocation("eastus2euap").withResourceName("akscluster")
.withResourceType("Microsoft.ContainerService/managedclusters").withResourceUri(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"))
.withPolicyInfo(new PolicyInfo().withPolicyId(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourcegroups/aksrg/providers/Microsoft.DataProtection/BackupVaults/aksvault/backupPolicies/akspolicy")
.withPolicyParameters(new PolicyParameters()
.withDataStoreParametersList(Arrays.asList(new AzureOperationalStoreParameters()
.withDataStoreType(DataStoreTypes.OPERATIONAL_STORE).withResourceGroupId(
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg")))
.withBackupDatasourceParametersList(
Arrays.asList(new KubernetesClusterBackupDatasourceParameters().withSnapshotVolumes(true)
.withIncludedVolumeTypes(
Arrays.asList(AKSVolumeTypes.AZURE_DISK, AKSVolumeTypes.AZURE_FILE_SHARE_SMB))
.withIncludeClusterScopeResources(true).withIncludedNamespaces(Arrays.asList("test"))
.withExcludedNamespaces(Arrays.asList("kube-system"))
.withIncludedResourceTypes(Arrays.asList())
.withExcludedResourceTypes(Arrays.asList("v1/Secret"))
.withLabelSelectors(Arrays.asList())))))
.withObjectType("BackupInstance"))
.create();
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.dataprotection import DataProtectionMgmtClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-dataprotection
# USAGE
python put_backup_instance_kubernetes_cluster_backup_datasource_parameters.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = DataProtectionMgmtClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.backup_instances.begin_create_or_update(
resource_group_name="aksrg",
vault_name="aksvault",
backup_instance_name="aksbi",
parameters={
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "Datasource",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
},
"friendlyName": "aksbi",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourcegroups/aksrg/providers/Microsoft.DataProtection/BackupVaults/aksvault/backupPolicies/akspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"excludedNamespaces": ["kube-system"],
"excludedResourceTypes": ["v1/Secret"],
"includeClusterScopeResources": True,
"includedNamespaces": ["test"],
"includedResourceTypes": [],
"includedVolumeTypes": ["AzureDisk", "AzureFileShareSMB"],
"labelSelectors": [],
"objectType": "KubernetesClusterBackupDatasourceParameters",
"snapshotVolumes": True,
}
],
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg",
}
],
},
},
}
},
).result()
print(response)
# x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_KubernetesClusterBackupDatasourceParameters.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
package armdataprotection_test
import (
"context"
"log"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
"github.com/Azure/azure-sdk-for-go/sdk/azidentity"
"github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/dataprotection/armdataprotection/v4"
)
// Generated from example definition: 2026-03-01/BackupInstanceOperations/PutBackupInstance_KubernetesClusterBackupDatasourceParameters.json
func ExampleBackupInstancesClient_BeginCreateOrUpdate_createBackupInstanceWithKubernetesClusterBackupDatasourceParameters() {
cred, err := azidentity.NewDefaultAzureCredential(nil)
if err != nil {
log.Fatalf("failed to obtain a credential: %v", err)
}
ctx := context.Background()
clientFactory, err := armdataprotection.NewClientFactory("62b829ee-7936-40c9-a1c9-47a93f9f3965", cred, nil)
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
poller, err := clientFactory.NewBackupInstancesClient().BeginCreateOrUpdate(ctx, "aksrg", "aksvault", "aksbi", armdataprotection.BackupInstanceResource{
Properties: &armdataprotection.BackupInstance{
DataSourceInfo: &armdataprotection.Datasource{
DatasourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
ObjectType: to.Ptr("Datasource"),
ResourceID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
ResourceLocation: to.Ptr("eastus2euap"),
ResourceName: to.Ptr("akscluster"),
ResourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
ResourceURI: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
},
DataSourceSetInfo: &armdataprotection.DatasourceSet{
DatasourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
ObjectType: to.Ptr("DatasourceSet"),
ResourceID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
ResourceLocation: to.Ptr("eastus2euap"),
ResourceName: to.Ptr("akscluster"),
ResourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
ResourceURI: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
},
FriendlyName: to.Ptr("aksbi"),
ObjectType: to.Ptr("BackupInstance"),
PolicyInfo: &armdataprotection.PolicyInfo{
PolicyID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourcegroups/aksrg/providers/Microsoft.DataProtection/BackupVaults/aksvault/backupPolicies/akspolicy"),
PolicyParameters: &armdataprotection.PolicyParameters{
BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
&armdataprotection.KubernetesClusterBackupDatasourceParameters{
ExcludedNamespaces: []*string{
to.Ptr("kube-system"),
},
ExcludedResourceTypes: []*string{
to.Ptr("v1/Secret"),
},
IncludeClusterScopeResources: to.Ptr(true),
IncludedNamespaces: []*string{
to.Ptr("test"),
},
IncludedResourceTypes: []*string{},
IncludedVolumeTypes: []*armdataprotection.AKSVolumeTypes{
to.Ptr(armdataprotection.AKSVolumeTypesAzureDisk),
to.Ptr(armdataprotection.AKSVolumeTypesAzureFileShareSMB),
},
LabelSelectors: []*string{},
ObjectType: to.Ptr("KubernetesClusterBackupDatasourceParameters"),
SnapshotVolumes: to.Ptr(true),
},
},
DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
&armdataprotection.AzureOperationalStoreParameters{
DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
ObjectType: to.Ptr("AzureOperationalStoreParameters"),
ResourceGroupID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg"),
},
},
},
},
},
}, nil)
if err != nil {
log.Fatalf("failed to finish the request: %v", err)
}
res, err := poller.PollUntilDone(ctx, nil)
if err != nil {
log.Fatalf("failed to pull the result: %v", err)
}
// You could use response here. We use blank identifier for just demo purposes.
_ = res
// If the HTTP response code is 200 as defined in example definition, your response structure would look as follows. Please pay attention that all the values in the output are fake values for just demo purposes.
// res = armdataprotection.BackupInstancesClientCreateOrUpdateResponse{
// BackupInstanceResource: &armdataprotection.BackupInstanceResource{
// Name: to.Ptr("aksbi"),
// Type: to.Ptr("Microsoft.DataProtection/backupVaults/backupInstances"),
// ID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupInstances/aksbi"),
// Properties: &armdataprotection.BackupInstance{
// DataSourceInfo: &armdataprotection.Datasource{
// DatasourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
// ObjectType: to.Ptr("Datasource"),
// ResourceID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
// ResourceLocation: to.Ptr("eastus2euap"),
// ResourceName: to.Ptr("akscluster"),
// ResourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
// ResourceURI: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
// },
// DataSourceSetInfo: &armdataprotection.DatasourceSet{
// DatasourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
// ObjectType: to.Ptr("DatasourceSet"),
// ResourceID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"),
// ResourceLocation: to.Ptr("eastus2euap"),
// ResourceType: to.Ptr("Microsoft.ContainerService/managedclusters"),
// },
// FriendlyName: to.Ptr("aksbi"),
// ObjectType: to.Ptr("BackupInstance"),
// PolicyInfo: &armdataprotection.PolicyInfo{
// PolicyID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupPolicies/akspolicy"),
// PolicyParameters: &armdataprotection.PolicyParameters{
// BackupDatasourceParametersList: []armdataprotection.BackupDatasourceParametersClassification{
// &armdataprotection.KubernetesClusterBackupDatasourceParameters{
// ExcludedNamespaces: []*string{
// to.Ptr("kube-system"),
// },
// ExcludedResourceTypes: []*string{
// to.Ptr("v1/Secret"),
// },
// IncludeClusterScopeResources: to.Ptr(true),
// IncludedNamespaces: []*string{
// to.Ptr("test"),
// },
// IncludedResourceTypes: []*string{
// },
// IncludedVolumeTypes: []*armdataprotection.AKSVolumeTypes{
// to.Ptr(armdataprotection.AKSVolumeTypesAzureDisk),
// to.Ptr(armdataprotection.AKSVolumeTypesAzureFileShareSMB),
// },
// LabelSelectors: []*string{
// },
// ObjectType: to.Ptr("KubernetesClusterBackupDatasourceParameters"),
// SnapshotVolumes: to.Ptr(true),
// },
// },
// DataStoreParametersList: []armdataprotection.DataStoreParametersClassification{
// &armdataprotection.AzureOperationalStoreParameters{
// DataStoreType: to.Ptr(armdataprotection.DataStoreTypesOperationalStore),
// ObjectType: to.Ptr("AzureOperationalStoreParameters"),
// ResourceGroupID: to.Ptr("/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg"),
// },
// },
// },
// },
// ProtectionStatus: &armdataprotection.ProtectionStatusDetails{
// Status: to.Ptr(armdataprotection.Status("NotProtected")),
// },
// ProvisioningState: to.Ptr("Provisioned"),
// },
// },
// }
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { DataProtectionClient } = require("@azure/arm-dataprotection");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to create or update a backup instance in a backup vault
*
* @summary create or update a backup instance in a backup vault
* x-ms-original-file: 2026-03-01/BackupInstanceOperations/PutBackupInstance_KubernetesClusterBackupDatasourceParameters.json
*/
async function createBackupInstanceWithKubernetesClusterBackupDatasourceParameters() {
const credential = new DefaultAzureCredential();
const subscriptionId = "62b829ee-7936-40c9-a1c9-47a93f9f3965";
const client = new DataProtectionClient(credential, subscriptionId);
const result = await client.backupInstances.createOrUpdate("aksrg", "aksvault", "aksbi", {
properties: {
dataSourceInfo: {
datasourceType: "Microsoft.ContainerService/managedclusters",
objectType: "Datasource",
resourceID:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
resourceLocation: "eastus2euap",
resourceName: "akscluster",
resourceType: "Microsoft.ContainerService/managedclusters",
resourceUri:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
},
dataSourceSetInfo: {
datasourceType: "Microsoft.ContainerService/managedclusters",
objectType: "DatasourceSet",
resourceID:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
resourceLocation: "eastus2euap",
resourceName: "akscluster",
resourceType: "Microsoft.ContainerService/managedclusters",
resourceUri:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
},
friendlyName: "aksbi",
objectType: "BackupInstance",
policyInfo: {
policyId:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourcegroups/aksrg/providers/Microsoft.DataProtection/BackupVaults/aksvault/backupPolicies/akspolicy",
policyParameters: {
backupDatasourceParametersList: [
{
excludedNamespaces: ["kube-system"],
excludedResourceTypes: ["v1/Secret"],
includeClusterScopeResources: true,
includedNamespaces: ["test"],
includedResourceTypes: [],
includedVolumeTypes: ["AzureDisk", "AzureFileShareSMB"],
labelSelectors: [],
objectType: "KubernetesClusterBackupDatasourceParameters",
snapshotVolumes: true,
},
],
dataStoreParametersList: [
{
dataStoreType: "OperationalStore",
objectType: "AzureOperationalStoreParameters",
resourceGroupId:
"/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg",
},
],
},
},
},
});
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Sample response
{
"name": "aksbi",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupInstances/aksbi",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "Datasource",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceType": "Microsoft.ContainerService/managedclusters"
},
"friendlyName": "aksbi",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupPolicies/akspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"excludedNamespaces": [
"kube-system"
],
"excludedResourceTypes": [
"v1/Secret"
],
"includeClusterScopeResources": true,
"includedNamespaces": [
"test"
],
"includedResourceTypes": [],
"includedVolumeTypes": [
"AzureDisk",
"AzureFileShareSMB"
],
"labelSelectors": [],
"objectType": "KubernetesClusterBackupDatasourceParameters",
"snapshotVolumes": true
}
],
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioned"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/operationStatus/ZTA4YjQ0ZGYtYmNkNS00YTk1LWFjZTMtOTc1MjNmZWIxYWZlO2Y1ODg1MzA3LWJkNjItNDQ2OC05ZjZlLTJkMGM2NjNiNmJmNg==?api-version=2026-03-01
Retry-After: 60
{
"name": "aksbi",
"type": "Microsoft.DataProtection/backupVaults/backupInstances",
"id": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupInstances/aksbi",
"properties": {
"dataSourceInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "Datasource",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceName": "akscluster",
"resourceType": "Microsoft.ContainerService/managedclusters",
"resourceUri": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster"
},
"dataSourceSetInfo": {
"datasourceType": "Microsoft.ContainerService/managedclusters",
"objectType": "DatasourceSet",
"resourceID": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.ContainerService/managedClusters/akscluster",
"resourceLocation": "eastus2euap",
"resourceType": "Microsoft.ContainerService/managedclusters"
},
"friendlyName": "aksbi",
"objectType": "BackupInstance",
"policyInfo": {
"policyId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupPolicies/akspolicy",
"policyParameters": {
"backupDatasourceParametersList": [
{
"excludedNamespaces": [
"kube-system"
],
"excludedResourceTypes": [
"v1/Secret"
],
"includeClusterScopeResources": true,
"includedNamespaces": [
"test"
],
"includedResourceTypes": [],
"includedVolumeTypes": [
"AzureDisk",
"AzureFileShareSMB"
],
"labelSelectors": [],
"objectType": "KubernetesClusterBackupDatasourceParameters",
"snapshotVolumes": true
}
],
"dataStoreParametersList": [
{
"dataStoreType": "OperationalStore",
"objectType": "AzureOperationalStoreParameters",
"resourceGroupId": "/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg"
}
]
}
},
"protectionStatus": {
"status": "NotProtected"
},
"provisioningState": "Provisioning"
}
}
Azure-AsyncOperation: https://management.azure.com/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/operationStatus/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Location: https://management.azure.com/subscriptions/62b829ee-7936-40c9-a1c9-47a93f9f3965/resourceGroups/aksrg/providers/Microsoft.DataProtection/backupVaults/aksvault/backupInstances/aksbi/operationResults/YWUzNDFkMzQtZmM5OS00MmUyLWEzNDMtZGJkMDIxZjlmZjgzOzdmYzBiMzhmLTc2NmItNDM5NS05OWQ1LTVmOGEzNzg4MWQzNA==?api-version=2026-03-01
Retry-After: 60
Definitions
AdlsBlobBackupDatasourceParameters
Object
Parameters to be used during configuration of backup of azure data lake storage account blobs
| Name |
Type |
Description |
|
containersList
|
string[]
|
List of containers to be backed up during configuration of backup of blobs
|
|
objectType
|
string:
AdlsBlobBackupDatasourceParameters
|
Type of the specific object - used for deserializing
|
AdlsBlobBackupDatasourceParametersForAutoProtection
Object
Parameters to be used during configuration of backup of azure data lake storage account blobs using AutoProtection settings
AKSVolumeTypes
Enumeration
| Value |
Description |
|
AzureDisk
|
|
|
AzureFileShareSMB
|
|
AzureOperationalStoreParameters
Object
Parameters for Operational-Tier DataStore
| Name |
Type |
Description |
|
dataStoreType
|
DataStoreTypes
|
type of datastore; Operational/Vault/Archive
|
|
objectType
|
string:
AzureOperationalStoreParameters
|
Type of the specific object - used for deserializing
|
|
resourceGroupId
|
string
|
Gets or sets the Snapshot Resource Group Uri.
|
BackupInstance
Object
Backup Instance
| Name |
Type |
Description |
|
currentProtectionState
|
CurrentProtectionState
|
Specifies the current protection state of the resource
|
|
dataSourceInfo
|
Datasource
|
Gets or sets the data source information.
|
|
dataSourceSetInfo
|
DatasourceSet
|
Gets or sets the data source set information.
|
|
datasourceAuthCredentials
|
AuthCredentials:
SecretStoreBasedAuthCredentials
|
Credentials to use to authenticate with data source provider.
|
|
friendlyName
|
string
|
Gets or sets the Backup Instance friendly name.
|
|
identityDetails
|
IdentityDetails
|
Contains information of the Identity Details for the BI.
If it is null, default will be considered as System Assigned.
|
|
objectType
|
string
|
|
|
policyInfo
|
PolicyInfo
|
Gets or sets the policy information.
|
|
protectionErrorDetails
|
UserFacingError
|
Specifies the protection error of the resource
|
|
protectionStatus
|
ProtectionStatusDetails
|
Specifies the protection status of the resource
|
|
provisioningState
|
string
|
Specifies the provisioning state of the resource i.e. provisioning/updating/Succeeded/Failed
|
|
resourceGuardOperationRequests
|
string[]
|
ResourceGuardOperationRequests on which LAC check will be performed
|
|
validationType
|
ValidationType
|
Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again.
|
BackupInstanceResource
Object
BackupInstance Resource
| Name |
Type |
Description |
|
id
|
string
(arm-id)
|
Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
|
|
name
|
string
|
The name of the resource
|
|
properties
|
BackupInstance
|
BackupInstanceResource properties
|
|
systemData
|
systemData
|
Azure Resource Manager metadata containing createdBy and modifiedBy information.
|
|
tags
|
object
|
Proxy Resource tags.
|
|
type
|
string
|
The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
|
BlobBackupAutoProtectionRule
Object
Indicates a Blob Backup Auto Protection Rule.
| Name |
Type |
Description |
|
mode
|
BlobBackupRuleMode
|
Exclude removes candidates (after inclusion)
|
|
objectType
|
string
|
Type of the specific object - used for deserializing
|
|
pattern
|
string
|
The string pattern to evaluate against container names. For now this accepts literal strings only (no wildcards or regex).
|
|
type
|
BlobBackupPatternType
|
Pattern type: Prefix, only pattern type supported for now.
|
BlobBackupDatasourceParameters
Object
Parameters to be used during configuration of backup of blobs
| Name |
Type |
Description |
|
containersList
|
string[]
|
List of containers to be backed up during configuration of backup of blobs
|
|
objectType
|
string:
BlobBackupDatasourceParameters
|
Type of the specific object - used for deserializing
|
BlobBackupDatasourceParametersForAutoProtection
Object
Paramters to be used during configuration of backup of blobs using AutoProtection settings
BlobBackupPatternType
Enumeration
Pattern type. Only Prefix supported for now.
BlobBackupRuleBasedAutoProtectionSettings
Object
Parameters to be used for Blob Backup Rule Based Auto Protection settings.
| Name |
Type |
Description |
|
enabled
|
boolean
|
Flag to enable whether auto protection.
|
|
objectType
|
string:
BlobBackupRuleBasedAutoProtectionSettings
|
Type of the specific object - used for deserializing
|
|
rules
|
BlobBackupAutoProtectionRule[]
|
Rules are evaluated in the order provided. Inclusion adds candidates; exclusion removes candidates.
If no rules are present, all containers are considered eligible when enabled = true.
|
BlobBackupRuleMode
Enumeration
Rule mode (Only Exclude supported for now).
| Value |
Description |
|
Exclude
|
|
CloudError
Object
An error response from Azure Backup.
| Name |
Type |
Description |
|
error
|
Error
|
The resource management error response.
|
createdByType
Enumeration
The type of identity that created the resource.
| Value |
Description |
|
User
|
|
|
Application
|
|
|
ManagedIdentity
|
|
|
Key
|
|
CurrentProtectionState
Enumeration
Specifies the current protection state of the resource
| Value |
Description |
|
Invalid
|
|
|
NotProtected
|
|
|
ConfiguringProtection
|
|
|
ProtectionConfigured
|
|
|
BackupSchedulesSuspended
|
|
|
RetentionSchedulesSuspended
|
|
|
ProtectionStopped
|
|
|
ProtectionError
|
|
|
ConfiguringProtectionFailed
|
|
|
SoftDeleting
|
|
|
SoftDeleted
|
|
|
UpdatingProtection
|
|
Datasource
Object
Datasource to be backed up
| Name |
Type |
Description |
|
datasourceType
|
string
|
DatasourceType of the resource.
|
|
objectType
|
string
|
Type of Datasource object, used to initialize the right inherited type
|
|
resourceID
|
string
|
Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault.
|
|
resourceLocation
|
string
|
Location of datasource.
|
|
resourceName
|
string
|
Unique identifier of the resource in the context of parent.
|
|
resourceProperties
|
BaseResourceProperties:
DefaultResourceProperties
|
Properties specific to data source
|
|
resourceType
|
string
|
Resource Type of Datasource.
|
|
resourceUri
|
string
|
Uri of the resource.
|
DatasourceSet
Object
DatasourceSet details of datasource to be backed up
| Name |
Type |
Description |
|
datasourceType
|
string
|
DatasourceType of the resource.
|
|
objectType
|
string
|
Type of Datasource object, used to initialize the right inherited type
|
|
resourceID
|
string
|
Full ARM ID of the resource. For azure resources, this is ARM ID. For non azure resources, this will be the ID created by backup service via Fabric/Vault.
|
|
resourceLocation
|
string
|
Location of datasource.
|
|
resourceName
|
string
|
Unique identifier of the resource in the context of parent.
|
|
resourceProperties
|
BaseResourceProperties:
DefaultResourceProperties
|
Properties specific to data source set
|
|
resourceType
|
string
|
Resource Type of Datasource.
|
|
resourceUri
|
string
|
Uri of the resource.
|
DataStoreTypes
Enumeration
type of datastore; Operational/Vault/Archive
| Value |
Description |
|
OperationalStore
|
|
|
VaultStore
|
|
|
ArchiveStore
|
|
DefaultResourceProperties
Object
Default source properties
Error
Object
The resource management error response.
| Name |
Type |
Description |
|
additionalInfo
|
ErrorAdditionalInfo[]
|
The error additional info.
|
|
code
|
string
|
The error code.
|
|
details
|
Error[]
|
The error details.
|
|
message
|
string
|
The error message.
|
|
target
|
string
|
The error target.
|
ErrorAdditionalInfo
Object
The resource management error additional info.
| Name |
Type |
Description |
|
info
|
object
|
The additional info.
|
|
type
|
string
|
The additional info type.
|
IdentityDetails
Object
| Name |
Type |
Description |
|
useSystemAssignedIdentity
|
boolean
|
Specifies if the BI is protected by System Identity.
|
|
userAssignedIdentityArmUrl
|
string
|
ARM URL for User Assigned Identity.
|
InnerError
Object
Inner Error
| Name |
Type |
Description |
|
additionalInfo
|
object
|
Any Key value pairs that can be provided to the client for additional verbose information.
|
|
code
|
string
|
Unique code for this error
|
|
embeddedInnerError
|
InnerError
|
Child Inner Error, to allow Nesting.
|
KubernetesClusterBackupDatasourceParameters
Object
Parameters for Kubernetes Cluster Backup Datasource
| Name |
Type |
Description |
|
backupHookReferences
|
NamespacedNameResource[]
|
Gets or sets the backup hook references. This property sets the hook reference to be executed during backup.
|
|
excludedNamespaces
|
string[]
|
Gets or sets the exclude namespaces property. This property sets the namespaces to be excluded during backup.
|
|
excludedResourceTypes
|
string[]
|
Gets or sets the exclude resource types property. This property sets the resource types to be excluded during backup.
|
|
includeClusterScopeResources
|
boolean
|
Gets or sets the include cluster resources property. This property if enabled will include cluster scope resources during backup.
|
|
includedNamespaces
|
string[]
|
Gets or sets the include namespaces property. This property sets the namespaces to be included during backup.
|
|
includedResourceTypes
|
string[]
|
Gets or sets the include resource types property. This property sets the resource types to be included during backup.
|
|
includedVolumeTypes
|
AKSVolumeTypes[]
|
Gets or sets the include volume types property. This property sets the volume types to be included during backup.
|
|
labelSelectors
|
string[]
|
Gets or sets the LabelSelectors property. This property sets the resource with such label selectors to be included during backup.
|
|
objectType
|
string:
KubernetesClusterBackupDatasourceParameters
|
Type of the specific object - used for deserializing
|
|
snapshotVolumes
|
boolean
|
Gets or sets the volume snapshot property. This property if enabled will take volume snapshots during backup.
|
NamespacedNameResource
Object
Class to refer resources which contains namespace and name
| Name |
Type |
Description |
|
name
|
string
|
Name of the resource
|
|
namespace
|
string
|
Namespace in which the resource exists
|
PolicyInfo
Object
Policy Info in backupInstance
| Name |
Type |
Description |
|
policyId
|
string
|
|
|
policyParameters
|
PolicyParameters
|
Policy parameters for the backup instance
|
|
policyVersion
|
string
|
|
PolicyParameters
Object
Parameters in Policy
| Name |
Type |
Description |
|
backupDatasourceParametersList
|
BackupDatasourceParameters[]:
|
Gets or sets the Backup Data Source Parameters
|
|
dataStoreParametersList
|
DataStoreParameters[]:
AzureOperationalStoreParameters[]
|
Gets or sets the DataStore Parameters
|
ProtectionStatusDetails
Object
Protection status details
| Name |
Type |
Description |
|
errorDetails
|
UserFacingError
|
Specifies the protection status error of the resource
|
|
status
|
Status
|
Specifies the protection status of the resource
|
ResourcePropertiesObjectType
Enumeration
Type of the specific object - used for deserializing
| Value |
Description |
|
DefaultResourceProperties
|
|
SecretStoreBasedAuthCredentials
Object
Secret store based authentication credentials.
SecretStoreResource
Object
Class representing a secret store resource.
| Name |
Type |
Description |
|
secretStoreType
|
SecretStoreType
|
Gets or sets the type of secret store
|
|
uri
|
string
|
Uri to get to the resource
|
|
value
|
string
|
Gets or sets value stored in secret store resource
|
SecretStoreType
Enumeration
Gets or sets the type of secret store
| Value |
Description |
|
Invalid
|
|
|
AzureKeyVault
|
|
Status
Enumeration
Specifies the protection status of the resource
| Value |
Description |
|
ConfiguringProtection
|
|
|
ConfiguringProtectionFailed
|
|
|
ProtectionConfigured
|
|
|
ProtectionStopped
|
|
|
SoftDeleted
|
|
|
SoftDeleting
|
|
systemData
Object
Metadata pertaining to creation and last modification of the resource.
| Name |
Type |
Description |
|
createdAt
|
string
(date-time)
|
The timestamp of resource creation (UTC).
|
|
createdBy
|
string
|
The identity that created the resource.
|
|
createdByType
|
createdByType
|
The type of identity that created the resource.
|
|
lastModifiedAt
|
string
(date-time)
|
The timestamp of resource last modification (UTC)
|
|
lastModifiedBy
|
string
|
The identity that last modified the resource.
|
|
lastModifiedByType
|
createdByType
|
The type of identity that last modified the resource.
|
UserFacingError
Object
Error object used by layers that have access to localized content, and propagate that to user
| Name |
Type |
Description |
|
code
|
string
|
Unique code for this error
|
|
details
|
UserFacingError[]
|
Additional related Errors
|
|
innerError
|
InnerError
|
Inner Error
|
|
isRetryable
|
boolean
|
Whether the operation will be retryable or not
|
|
isUserError
|
boolean
|
Whether the operation is due to a user error or service error
|
|
message
|
string
|
|
|
properties
|
object
|
Any key value pairs that can be injected inside error object
|
|
recommendedAction
|
string[]
|
RecommendedAction � localized.
|
|
target
|
string
|
Target of the error.
|
ValidationType
Enumeration
Specifies the type of validation. In case of DeepValidation, all validations from /validateForBackup API will run again.
| Value |
Description |
|
ShallowValidation
|
|
|
DeepValidation
|
|