Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions sdk/dataprotection/azure-mgmt-dataprotection/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Release History

## 2.2.0 (2026-09-04)

### Features Added

- Model `BackupVault` added property `cost_management_settings`
- Model `DeletedBackupVault` added property `cost_management_settings`
- Model `PatchBackupVaultInput` added property `cost_management_settings`
- Added model `CostManagementSettings`
- Added model `GenericBackupDatasourceParameters`
- Added model `GenericRestoreDatasourceCriteria`
- Added enum `GranularityLevel`
- Added model `ResourceListSelectionCriteria`

## 2.1.0 (2026-07-29)

### Features Added
Expand Down
10 changes: 5 additions & 5 deletions sdk/dataprotection/azure-mgmt-dataprotection/_metadata.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
{
"apiVersion": "2026-03-01",
"apiVersion": "2026-06-01",
"apiVersions": {
"Microsoft.DataProtection": "2026-03-01"
"Microsoft.DataProtection": "2026-06-01"
},
"commit": "801a60cdad2669e8f824fedfbabbfe7f7093b940",
"commit": "4f774bdae44fac19491a1caa4ec91760d9bf9b1b",
"repository_url": "https://github.com/Azure/azure-rest-api-specs",
"typespec_src": "specification/dataprotection/resource-manager/Microsoft.DataProtection/DataProtection",
"emitterVersion": "0.63.3",
"httpClientPythonVersion": "^0.34.2"
"emitterVersion": "0.63.5",
"httpClientPythonVersion": "^0.36.0"
}
699 changes: 376 additions & 323 deletions sdk/dataprotection/azure-mgmt-dataprotection/api.md

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
apiMdSha256: 0b3f8bf10ad7f032033798d7a814bcdea1171fc2b78bf2117b5b8f82543ab92b
parserVersion: 0.3.30
pythonVersion: 3.13.14
apiMdSha256: 5bab7527180d3e53b525a8462270a0538523fac79f0e9fba5edcc3958b8257f6
packageVersion: 2.2.0
parserVersion: 0.3.31
pythonVersion: 3.13.15
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@
"azure.mgmt.dataprotection.models.CmkKeyVaultProperties": "Microsoft.DataProtection.CmkKeyVaultProperties",
"azure.mgmt.dataprotection.models.CopyOption": "Microsoft.DataProtection.CopyOption",
"azure.mgmt.dataprotection.models.CopyOnExpiryOption": "Microsoft.DataProtection.CopyOnExpiryOption",
"azure.mgmt.dataprotection.models.CostManagementSettings": "Microsoft.DataProtection.CostManagementSettings",
"azure.mgmt.dataprotection.models.CrossRegionRestoreDetails": "Microsoft.DataProtection.CrossRegionRestoreDetails",
"azure.mgmt.dataprotection.models.CrossRegionRestoreJobRequest": "Microsoft.DataProtection.CrossRegionRestoreJobRequest",
"azure.mgmt.dataprotection.models.CrossRegionRestoreJobsRequest": "Microsoft.DataProtection.CrossRegionRestoreJobsRequest",
Expand Down Expand Up @@ -92,11 +93,13 @@
"azure.mgmt.dataprotection.models.FeatureValidationResponseBase": "Microsoft.DataProtection.FeatureValidationResponseBase",
"azure.mgmt.dataprotection.models.FeatureValidationResponse": "Microsoft.DataProtection.FeatureValidationResponse",
"azure.mgmt.dataprotection.models.FetchSecondaryRPsRequestParameters": "Microsoft.DataProtection.FetchSecondaryRPsRequestParameters",
"azure.mgmt.dataprotection.models.GenericBackupDatasourceParameters": "Microsoft.DataProtection.GenericBackupDatasourceParameters",
"azure.mgmt.dataprotection.models.ItemLevelRestoreCriteria": "Microsoft.DataProtection.ItemLevelRestoreCriteria",
"azure.mgmt.dataprotection.models.GenericRestoreDatasourceCriteria": "Microsoft.DataProtection.GenericRestoreDatasourceCriteria",
"azure.mgmt.dataprotection.models.IdentityDetails": "Microsoft.DataProtection.IdentityDetails",
"azure.mgmt.dataprotection.models.ImmediateCopyOption": "Microsoft.DataProtection.ImmediateCopyOption",
"azure.mgmt.dataprotection.models.ImmutabilitySettings": "Microsoft.DataProtection.ImmutabilitySettings",
"azure.mgmt.dataprotection.models.InnerError": "Microsoft.DataProtection.InnerError",
"azure.mgmt.dataprotection.models.ItemLevelRestoreCriteria": "Microsoft.DataProtection.ItemLevelRestoreCriteria",
"azure.mgmt.dataprotection.models.RestoreTargetInfoBase": "Microsoft.DataProtection.RestoreTargetInfoBase",
"azure.mgmt.dataprotection.models.ItemLevelRestoreTargetInfo": "Microsoft.DataProtection.ItemLevelRestoreTargetInfo",
"azure.mgmt.dataprotection.models.ItemPathBasedRestoreCriteria": "Microsoft.DataProtection.ItemPathBasedRestoreCriteria",
Expand Down Expand Up @@ -129,6 +132,7 @@
"azure.mgmt.dataprotection.models.ResourceGuardProxyBase": "Microsoft.DataProtection.ResourceGuardProxyBase",
"azure.mgmt.dataprotection.models.ResourceGuardProxyBaseResource": "Microsoft.DataProtection.ResourceGuardProxyBaseResource",
"azure.mgmt.dataprotection.models.ResourceGuardResource": "Microsoft.DataProtection.ResourceGuardResource",
"azure.mgmt.dataprotection.models.ResourceListSelectionCriteria": "Microsoft.DataProtection.ResourceListSelectionCriteria",
"azure.mgmt.dataprotection.models.ResourceMoveDetails": "Microsoft.DataProtection.ResourceMoveDetails",
"azure.mgmt.dataprotection.models.RestorableTimeRange": "Microsoft.DataProtection.RestorableTimeRange",
"azure.mgmt.dataprotection.models.RestoreFilesTargetInfo": "Microsoft.DataProtection.RestoreFilesTargetInfo",
Expand Down Expand Up @@ -181,6 +185,7 @@
"azure.mgmt.dataprotection.models.SourceDataStoreType": "Microsoft.DataProtection.SourceDataStoreType",
"azure.mgmt.dataprotection.models.SyncType": "Microsoft.DataProtection.SyncType",
"azure.mgmt.dataprotection.models.AlertsState": "Microsoft.DataProtection.AlertsState",
"azure.mgmt.dataprotection.models.GranularityLevel": "Microsoft.DataProtection.GranularityLevel",
"azure.mgmt.dataprotection.models.ProvisioningState": "Microsoft.DataProtection.ProvisioningState",
"azure.mgmt.dataprotection.models.ResourceMoveState": "Microsoft.DataProtection.ResourceMoveState",
"azure.mgmt.dataprotection.models.SoftDeleteState": "Microsoft.DataProtection.SoftDeleteState",
Expand Down Expand Up @@ -354,5 +359,5 @@
"azure.mgmt.dataprotection.operations.BackupInstancesExtensionRoutingOperations.list": "Microsoft.DataProtection.BackupInstancesExtensionRoutingOperationGroup.list",
"azure.mgmt.dataprotection.aio.operations.BackupInstancesExtensionRoutingOperations.list": "Microsoft.DataProtection.BackupInstancesExtensionRoutingOperationGroup.list"
},
"CrossLanguageVersion": "6dd052749fec"
"CrossLanguageVersion": "cb99eef1dbd7"
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
Expand Down Expand Up @@ -55,7 +56,7 @@
from azure.core.credentials import TokenCredential


class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes
class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only
"""Open API 2.0 Specs for Azure Data Protection service.

:ivar data_protection_operations: DataProtectionOperationsOperations operations
Expand Down Expand Up @@ -128,7 +129,7 @@ class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes
:keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
None.
:paramtype cloud_setting: ~azure.core.AzureClouds
:keyword api_version: The API version to use for this operation. Known values are "2026-03-01"
:keyword api_version: The API version to use for this operation. Known values are "2026-06-01"
and None. Default value is None. If not set, the operation's default API version will be used.
Note that overriding this default value may result in unsupported behavior.
:paramtype api_version: str
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
Expand All @@ -18,7 +19,7 @@
from azure.core.credentials import TokenCredential


class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes
class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only
"""Configuration for DataProtectionMgmtClient.
Note that all parameters used to create this instance are saved as instance
Expand All @@ -33,7 +34,7 @@ class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instanc
:param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
None.
:type cloud_setting: ~azure.core.AzureClouds
:keyword api_version: The API version to use for this operation. Known values are "2026-03-01"
:keyword api_version: The API version to use for this operation. Known values are "2026-06-01"
and None. Default value is None. If not set, the operation's default API version will be used.
Note that overriding this default value may result in unsupported behavior.
:paramtype api_version: str
Expand All @@ -47,7 +48,7 @@ def __init__(
cloud_setting: Optional["AzureClouds"] = None,
**kwargs: Any
) -> None:
api_version: str = kwargs.pop("api_version", "2026-03-01")
api_version: str = kwargs.pop("api_version", "2026-06-01")

if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize
"""


__all__: list[str] = [] # Add all objects you want publicly available to users at this package level


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,15 @@ def _is_readonly(p):


class SdkJSONEncoder(JSONEncoder):
"""A JSON encoder that's capable of serializing datetime objects and bytes."""
"""A JSON encoder that's capable of serializing datetime objects and bytes.

:param args: Additional positional arguments passed to the base ``JSONEncoder``.
:type args: typing.Any
:keyword exclude_readonly: Whether to exclude readonly properties. Defaults to False.
:paramtype exclude_readonly: bool
:keyword format: The format to use for serialization. Defaults to None.
:paramtype format: typing.Optional[str]
"""

def __init__(self, *args, exclude_readonly: bool = False, format: typing.Optional[str] = None, **kwargs):
super().__init__(*args, **kwargs)
Expand Down Expand Up @@ -342,6 +350,12 @@ def _deserialize_int_as_str(attr):
return int(attr)


def _deserialize_bool_as_str(attr):
if isinstance(attr, bool):
return attr
return attr.lower() == "true"


_DESERIALIZE_MAPPING = {
datetime: _deserialize_datetime,
date: _deserialize_date,
Expand Down Expand Up @@ -369,6 +383,8 @@ def _deserialize_int_as_str(attr):
def get_deserializer(annotation: typing.Any, rf: typing.Optional["_RestField"] = None):
if annotation is int and rf and rf._format == "str":
return _deserialize_int_as_str
if annotation is bool and rf and rf._format == "str":
return _deserialize_bool_as_str
if annotation is str and rf and rf._format in _ARRAY_ENCODE_MAPPING:
return functools.partial(_deserialize_array_encoded, _ARRAY_ENCODE_MAPPING[rf._format])
if rf and rf._format:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -480,7 +480,11 @@ def _decode_attribute_map_key(key):


class Serializer: # pylint: disable=too-many-public-methods
"""Request object model serializer."""
"""Request object model serializer.
:param classes: Mapping of model names to model types, used to resolve models during serialization.
:type classes: typing.Optional[typing.Mapping[str, type]]
"""

basic_types = {str: "str", int: "int", bool: "bool", float: "float"}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# --------------------------------------------------------------------------

VERSION = "2.1.0"
VERSION = "2.2.0"
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
Expand Down Expand Up @@ -55,7 +56,7 @@
from azure.core.credentials_async import AsyncTokenCredential


class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes
class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only
"""Open API 2.0 Specs for Azure Data Protection service.

:ivar data_protection_operations: DataProtectionOperationsOperations operations
Expand Down Expand Up @@ -128,7 +129,7 @@ class DataProtectionMgmtClient: # pylint: disable=too-many-instance-attributes
:keyword cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
None.
:paramtype cloud_setting: ~azure.core.AzureClouds
:keyword api_version: The API version to use for this operation. Known values are "2026-03-01"
:keyword api_version: The API version to use for this operation. Known values are "2026-06-01"
and None. Default value is None. If not set, the operation's default API version will be used.
Note that overriding this default value may result in unsupported behavior.
:paramtype api_version: str
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# pylint: disable=line-too-long,useless-suppression
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
Expand All @@ -18,7 +19,7 @@
from azure.core.credentials_async import AsyncTokenCredential


class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes
class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instance-attributes,docstring-keyword-should-match-keyword-only
"""Configuration for DataProtectionMgmtClient.

Note that all parameters used to create this instance are saved as instance
Expand All @@ -33,7 +34,7 @@ class DataProtectionMgmtClientConfiguration: # pylint: disable=too-many-instanc
:param cloud_setting: The cloud setting for which to get the ARM endpoint. Default value is
None.
:type cloud_setting: ~azure.core.AzureClouds
:keyword api_version: The API version to use for this operation. Known values are "2026-03-01"
:keyword api_version: The API version to use for this operation. Known values are "2026-06-01"
and None. Default value is None. If not set, the operation's default API version will be used.
Note that overriding this default value may result in unsupported behavior.
:paramtype api_version: str
Expand All @@ -47,7 +48,7 @@ def __init__(
cloud_setting: Optional["AzureClouds"] = None,
**kwargs: Any
) -> None:
api_version: str = kwargs.pop("api_version", "2026-03-01")
api_version: str = kwargs.pop("api_version", "2026-06-01")

if credential is None:
raise ValueError("Parameter 'credential' must not be None.")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@
Follow our quickstart for examples: https://aka.ms/azsdk/python/dpcodegen/python/customize
"""


__all__: list[str] = [] # Add all objects you want publicly available to users at this package level


Expand Down
Loading