109 curated breaking changes across major versions of azure-storage-blob. Use this as a migration checklist before bumping dependencies.
Some breaking change
Model `CloudEndpoint` moved instance variable `storage_account_resource_id`, `azure_file_share_name`, `storage_account_tenant_id`, `partnership_id`, `friendly_name`, `backup_enabled`, `provisioning_state`, `last_workflow_id`, `last_operation_name` and `change_enumeration_status` under property `properties` whose type is `CloudEndpointProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Renamed client `MicrosoftStorageSync` to `StorageSyncMgmtClient`
Operation group `CloudEndpointsOperations` renamed method `restoreheartbeat` to `restore_heartbeat`
Model `CloudEndpointCreateParameters` moved instance variable `storage_account_resource_id`, `azure_file_share_name`, `storage_account_tenant_id` and `friendly_name` under property `properties` whose type is `CloudEndpointCreateParametersProperties`
Model `ArmDisasterRecovery` moved instance variable `provisioning_state`, `pending_replication_operations_count`, `partner_namespace`, `alternate_name` and `role` under property `properties` whose type is `ArmDisasterRecoveryProperties`
Model `MigrationConfigProperties` moved instance variable `provisioning_state`, `pending_replication_operations_count`, `target_namespace`, `post_migration_name` and `migration_state` under property `properties` whose type is `MigrationConfigPropertiesProperties`
Model `NetworkRuleSet` moved instance variable `trusted_service_access_enabled`, `default_action`, `virtual_network_rules`, `ip_rules` and `public_network_access` under property `properties` whose type is `NetworkRuleSetProperties`
Model `PrivateEndpointConnection` moved instance variable `private_endpoint`, `private_link_service_connection_state` and `provisioning_state` under property `properties` whose type is `PrivateEndpointConnectionProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `AppliedReservations` moved instance variable `reservation_order_ids` under property `properties` whose type is `AppliedReservationsProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
Renamed client `AzureReservationAPI` to `ReservationsMgmtClient`
Model `MergeRequest` moved instance variable `sources` under property `properties` whose type is `MergeProperties`
Renamed client `RelayAPI` to `RelayAPIMgmtClient`
Model `HybridConnection` moved instance variable `created_at`, `updated_at`, `listener_count`, `requires_client_authorization` and `user_metadata` under property `properties` whose type is `HybridConnectionProperties`
Model `ErrorResponse` moved instance variable `code` and `message` under property `error` whose type is `ErrorDetail`
Model `AuthorizationRule` moved instance variable `rights` under property `properties` whose type is `AuthorizationRuleProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `VirtualNetworkLink` moved instance variable `virtual_network`, `registration_enabled`, `resolution_policy`, `virtual_network_link_state` and `provisioning_state` under property `properties` whose type is `VirtualNetworkLinkProperties`
Model `RecordSet` moved instance variable `metadata`, `ttl`, `fqdn`, `is_auto_registered`, `a_records`, `aaaa_records`, `cname_record`, `mx_records`, `ptr_records`, `soa_record`, `srv_records` and `txt_records` under property `properties` whose type is `RecordSetProperties`
Model `PrivateZone` moved instance variable `max_number_of_record_sets`, `number_of_record_sets`, `max_number_of_virtual_network_links`, `number_of_virtual_network_links`, `max_number_of_virtual_network_links_with_registration`, `number_of_virtual_network_links_with_registration`, `provisioning_state` and `internal_id` under property `properties` whose type is `PrivateZoneProperties`
Model `AutoScaleVCoreUpdateParameters` moved instance variable `capacity_limit` under property `properties` whose type is `AutoScaleVCoreMutableProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Renamed client `PowerBIDedicated` to `PowerBIDedicatedMgmtClient`
Model `AutoScaleVCore` moved instance variable `capacity_limit`, `capacity_object_id` and `provisioning_state` under property `properties` whose type is `AutoScaleVCoreProperties`
Renamed enum `IdentityType` to `CreatedByType`
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `AgentPool` moved instance variable `administrator_configuration`, `agent_options`, `attached_network_configuration`, `availability_zones`, `count`, `detailed_status`, `detailed_status_message`, `kubernetes_version`, `labels`, `mode`, `provisioning_state`, `taints`, `upgrade_settings` and `vm_sku_name` under property `properties` whose type is `AgentPoolProperties`
Model `BareMetalMachine` moved instance variable `action_states`, `associated_resource_ids`, `bmc_connection_string`, `bmc_credentials`, `bmc_mac_address`, `boot_mac_address`, `ca_certificate`, `cluster_id`, `cordon_status`, `detailed_status`, `detailed_status_message`, `hardware_inventory`, `hardware_validation_status`, `hybrid_aks_clusters_associated_ids`, `kubernetes_node_name`, `kubernetes_version`, `machine_cluster_version`, `machine_details`, `machine_name`, `machine_roles`, `machine_sku_i
Model `AgentPoolPatchParameters` moved instance variable `administrator_configuration`, `count` and `upgrade_settings` under property `properties` whose type is `AgentPoolPatchProperties`
Model `ConnectedCluster` moved instance variable `agent_public_key_certificate`, `agent_version`, `connectivity_status`, `distribution`, `infrastructure`, `kubernetes_version`, `last_connectivity_time`, `managed_identity_certificate_expiration_time`, `offering`, `provisioning_state`, `total_core_count` and `total_node_count` under property `properties` whose type is `ConnectedClusterProperties`
Model `SystemData` renamed type of property `last_modified_by_type` from `LastModifiedByType` to `CreatedByType`
Operation group `ConnectedClusterOperations` renamed method `begin_create` to `begin_create_or_replace`
Operation group `ConnectedClusterOperations` renamed method `update` to `begin_update_async`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Deleted or renamed model `ResourceIdentityType`
Deleted or renamed model `Identity`
Deleted or renamed method `CloudHsmClusterRestoreStatusOperations.begin_get`
Deleted or renamed method `CloudHsmClusterBackupStatusOperations.begin_get`
Model `Cluster` moved instance variable `created_at`, `metric_id`, `provisioning_state`, `status`, `supports_scaling` and `updated_at` under property `properties` whose type is `ClusterProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `ApplicationGroup` moved instance variable `client_app_group_identifier`, `is_enabled` and `policies` under property `properties` whose type is `ApplicationGroupProperties`
Model `ArmDisasterRecovery` moved instance variable `alternate_name`, `partner_namespace`, `pending_replication_operations_count`, `provisioning_state` and `role` under property `properties` whose type is `ArmDisasterRecoveryProperties`
Model `AuthorizationRule` moved instance variable `rights` under property `properties` whose type is `AuthorizationRuleProperties`
Model `Cluster` moved instance variable `created_at`, `metric_id`, `provisioning_state`, `status`, `supports_scaling` and `updated_at` under property `properties` whose type is `ClusterProperties`
Model `ArmDisasterRecovery` moved instance variable `alternate_name`, `partner_namespace`, `pending_replication_operations_count`, `provisioning_state` and `role` under property `properties` whose type is `ArmDisasterRecoveryProperties`
Model `ApplicationGroup` moved instance variable `client_app_group_identifier`, `is_enabled` and `policies` under property `properties` whose type is `ApplicationGroupProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `AuthorizationRule` moved instance variable `rights` under property `properties` whose type is `AuthorizationRuleProperties`
Method `AssociateTrafficFilterOperations.begin_associate` changed its parameter `ruleset_id` from `positional_or_keyword` to `keyword_only`
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
Renamed client `MicrosoftElastic` to `ElasticMgmtClient`
Method `CreateAndAssociateIPFilterOperations.begin_create` changed its parameter `ips`/`name` from `positional_or_keyword` to `keyword_only`
Method `CreateAndAssociatePLFilterOperations.begin_create` changed its parameter `name`/`private_endpoint_guid`/`private_endpoint_name` from `positional_or_keyword` to `keyword_only`
Client method `begin_delete_address_by_name` was moved to operation group `addresses` and renamed to `begin_delete`, so update code from `EdgeOrderManagementClient(...).begin_delete_address_by_name(...)` to `EdgeOrderManagementClient(...).addresses.begin_delete(...)`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Client method `get_address_by_name` was moved to operation group `addresses` and renamed to `get`, so update code from `EdgeOrderManagementClient(...).get_address_by_name(...)` to `EdgeOrderManagementClient(...).addresses.get(...)`
Client method `begin_update_address` was moved to operation group `addresses` and renamed to `begin_update`, so update code from `EdgeOrderManagementClient(...).begin_update_address(...)` to `EdgeOrderManagementClient(...).addresses.begin_update(...)`
Client method `begin_create_address` was moved to operation group `addresses` and renamed to `begin_create`, so update code from `EdgeOrderManagementClient(...).begin_create_address(...)` to `EdgeOrderManagementClient(...).addresses.begin_create(...)`
Model `TagRule` moved instance variable `log_rules`, `metric_rules` and `provisioning_state` under property `properties` whose type is `MonitoringTagRulesProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Model `DynatraceSingleSignOnResource` moved instance variable `aad_domains`, `enterprise_app_id`, `provisioning_state`, `single_sign_on_state` and `single_sign_on_url` under property `properties` whose type is `DynatraceSingleSignOnProperties`
Model `MonitorResource` moved instance variable `dynatrace_environment_properties`, `liftr_resource_category`, `liftr_resource_preference`, `marketplace_subscription_status`, `monitoring_status`, `plan_data`, `provisioning_state` and `user_info` under property `properties` whose type is `MonitorProperties`
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
Method `CreationSupportedOperations.list` changed its parameter `datadog_organization_id` from `positional_or_keyword` to `keyword_only`
Method `CreationSupportedOperations.get` changed its parameter `datadog_organization_id` from `positional_or_keyword` to `keyword_only`
Model `JobResource` moved instance variable `transfer_type`, `is_cancellable`, `is_deletable`, `is_shipping_address_editable`, `reverse_shipping_details_update`, `reverse_transport_preference_update`, `is_prepare_to_ship_enabled`, `status`, `delayed_stage`, `start_time`, `error`, `details`, `cancellation_reason`, `delivery_type`, `delivery_info`, `is_cancellable_without_fee` and `all_devices_lost` under property `properties` whose type is `JobProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
Model `JobResourceUpdateParameter` moved instance variable `details` under property `properties` whose type is `UpdateJobProperties`
Model `AddressValidationOutput` moved instance variable `validation_type`, `error`, `validation_status` and `alternate_addresses` under property `properties` whose type is `AddressValidationProperties`
Model `FleetMember` moved instance variable `cluster_resource_id`, `group`, `provisioning_state` and `status` under property `properties` whose type is `FleetMemberProperties`
Model `Fleet` moved instance variable `hub_profile`, `provisioning_state` and `status` under property `properties` whose type is `FleetProperties`
Model `AutoUpgradeProfile` moved instance variable `auto_upgrade_profile_status`, `channel`, `disabled`, `node_image_selection`, `provisioning_state` and `update_strategy_id` under property `properties` whose type is `AutoUpgradeProfileProperties`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
For the method breakings, please refer to https://aka.ms/azsdk/python/migrate/operations for migration.
Model `Balance` moved instance variable `adjustment_details`, `adjustments`, `azure_marketplace_service_charges`, `beginning_balance`, `billing_frequency`, `charges_billed_separately`, `currency`, `ending_balance`, `new_purchases`, `new_purchases_details`, `price_hidden`, `service_overage`, `total_overage`, `total_usage` and `utilized` under property `properties` whose type is `BalanceProperties`
Model `Budget` moved instance variable `amount`, `category`, `current_spend`, `filter`, `forecast_spend`, `notifications`, `time_grain` and `time_period` under property `properties` whose type is `BudgetProperties`
Model `BudgetComparisonExpression` renamed its instance variable `values` to `values_property`
This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
Deleted or renamed enum value `ActionType.HIBERNATE`
Model `ResourceProvisionPayload` renamed its instance variable `base_profile` to `virtual_machine_base_profile`
Model `ResourceProvisionPayload` renamed its instance variable `resource_overrides` to `virtual_machine_overrides`
Deleted or renamed enum value `ActionType.START`
Deleted or renamed enum value `ActionType.DEALLOCATE`
**Default API Version Update**: Changed the SDK default API version from `2026-06-01-preview` to the GA version `2026-07-15`. Pass `api_version="2026-06-01-preview"` explicitly to keep the previous default behavior.
Changed the default service API version from `2024-05-01` to `2026-03-01`. To keep the previous behavior, pass `api_version="2024-05-01"` when constructing the client.
Models are no longer re-exported from the top-level `azure.ai.translation.document` namespace and must now be imported from `azure.ai.translation.document.models`. This affects `TranslationGlossary`, `TranslationTarget`, `DocumentTranslationInput`, `TranslationStatus`, `DocumentStatus`, `DocumentTranslationError`, `DocumentTranslationFileFormat`, and `StorageInputType`. For example, replace `from azure.ai.translation.document import TranslationStatus` with `from azure.ai.translation.document.mod
Method `.beta.evaluators.create_generation_job` renamed to `.beta.evaluators.begin_create_generation_job` and is now a long-running operation returning `LROPoller[EvaluatorVersion]` (previously returned `EvaluatorGenerationJob`).
Method `.beta.agents.create_optimization_job` renamed to `.beta.agents.begin_create_optimization_job` and is now a long-running operation returning `LROPoller[OptimizationJobResult]`.
Method `.beta.datasets.create_generation_job` renamed to `.beta.datasets.begin_create_generation_job` and is now a long-running operation returning `LROPoller[DataGenerationJobResult]`.
The preview API version `2026-02-01-preview` is no longer listed as a supported value for the `api_version` kwarg. Both `WorkspaceClient` and `BookshelfClient` now default to `2026-06-01`. Pinning to the removed preview value is not supported in the GA SDK.
**Workspace**: the investigations long-running operation status model, previously generated as `ResourceOperationStatusInvestigationInvestigationError`, has been renamed to `InvestigationOperationStatus`. The payload is unchanged; only the model name differs.
**Bookshelf**: the `KnowledgeBaseVersionsOperations` operation group is removed. Knowledge-base versioning has been folded into the unified `KnowledgeBasesOperations` group; callers using `client.knowledge_base_versions.<method>` must migrate to the equivalent method on `client.knowledge_bases`.
**Bookshelf**: the models `KnowledgeBaseOperationStatus` and `KnowledgeBaseVersion` are removed. Operation-status payloads are now typed as `KnowledgeBaseOperationResponse`, `KnowledgeBaseIndexingOperationResponse`, or `KnowledgeBaseSearchOperationResponse` depending on the operation; create/update returns the `KnowledgeBase` resource.
The resilient-task input persisted for a `store=true` background response now carries a single `user_id_key` (the durable per-user partition key) instead of the previous `user_isolation_key` / `chat_isolation_key` pair; conversation scoping continues to use `conversation_id`.
Removed runtime model-class behavior from response protocol models. Code should no longer rely on attribute access, `isinstance(..., ModelType)`, `.as_dict()`, or generated model base-class behavior.
Replaced generated model classes in `azure.ai.agentserver.responses.models` with dict-native `TypedDict` contracts. Model constructors such as `ItemMessage(...)` and `CreateResponse(...)` now produce plain dictionaries instead of generated model instances.
Replaced most generated enum classes with string literal type aliases. Use string values directly for protocol fields, for example `"completed"`, `"message"`, or `"function_call_output"`.
Removed a-prefixed async convenience generator methods from the sync `ResponseEventStream` and sync builder classes. Use `azure.ai.agentserver.responses.aio.ResponseEventStream` for async streaming convenience methods.
Removed the unused public `AgentServerHost.sse_keepalive_stream` helper.
Removed the unused public `AgentServerHost.sse_keepalive_stream` helper.
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/breaking/pypi/azure-storage-blob