{"id":1932,"library":"azure-mgmt-netapp","title":"Azure NetApp Files Management Client Library for Python","description":"The `azure-mgmt-netapp` library provides Python APIs for managing Azure NetApp Files resources, including NetApp accounts, capacity pools, and volumes. It allows developers to programmatically interact with the Azure NetApp Files service to automate provisioning, configuration, and monitoring of high-performance file storage. Currently at version 15.0.0, the library is part of the Azure SDK for Python, which follows a continuous release cadence, with regular updates to support new Azure features and improvements.","status":"active","version":"15.0.0","language":"en","source_language":"en","source_url":"https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/netapp/azure-mgmt-netapp","tags":["Azure","NetApp","Cloud","Management","SDK","Storage"],"install":[{"cmd":"pip install azure-mgmt-netapp azure-identity","lang":"bash","label":"Install core and authentication libraries"}],"dependencies":[{"reason":"Required for Azure Active Directory-based authentication.","package":"azure-identity","optional":false}],"imports":[{"symbol":"NetAppManagementClient","correct":"from azure.mgmt.netapp import NetAppManagementClient"},{"symbol":"DefaultAzureCredential","correct":"from azure.identity import DefaultAzureCredential"}],"quickstart":{"code":"import os\nfrom azure.identity import DefaultAzureCredential\nfrom azure.mgmt.netapp import NetAppManagementClient\n\n# Set environment variables for authentication and subscription ID\n# AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET, AZURE_SUBSCRIPTION_ID\n\nsubscription_id = os.getenv(\"AZURE_SUBSCRIPTION_ID\", \"\")\nif not subscription_id:\n    raise ValueError(\"AZURE_SUBSCRIPTION_ID environment variable not set.\")\n\n# Authenticate and create a client\ncredential = DefaultAzureCredential()\nclient = NetAppManagementClient(credential=credential, subscription_id=subscription_id)\n\n# Example: List NetApp accounts in your subscription\nprint(\"Listing NetApp accounts:\")\nfor account in client.accounts.list():\n    print(f\"  Account Name: {account.name}, Location: {account.location}\")","lang":"python","description":"This quickstart demonstrates how to authenticate with Azure using `DefaultAzureCredential` and list existing Azure NetApp Files accounts in your subscription. Ensure the necessary environment variables (`AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`, `AZURE_SUBSCRIPTION_ID`) are set for authentication."},"warnings":[{"fix":"Refer to the Azure SDK for Python migration guides for hybrid models (aka.ms/azsdk/python/migrate/hybrid-models) and operation breakings (aka.ms/azsdk/python/migrate/operations). Specific models like `BackupPatch` and `BackupPolicyPatch` had instance variables moved or renamed.","message":"Version 15.0.0 introduces new hybrid models with dual dictionary and model nature. Existing code interacting with model properties might need updates.","severity":"breaking","affected_versions":"15.0.0+"},{"fix":"Ensure the target subnet is correctly delegated via the Azure portal, Azure CLI, or PowerShell before attempting to create a volume.","message":"Subnets used for Azure NetApp Files volumes must be delegated to `Microsoft.NetApp/volumes`. Failure to do so will result in volume creation errors.","severity":"gotcha","affected_versions":"All versions"},{"fix":"To change a capacity pool's service level, all volumes within that pool must first be deleted. Alternatively, create a new capacity pool with the desired service level and migrate volumes.","message":"The service level of an existing capacity pool cannot be changed if the pool already contains volumes.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Verify all Key Vault prerequisites and configurations as detailed in the Azure NetApp Files documentation for customer-managed keys.","message":"When using customer-managed keys (CMK) for volume encryption, ensure the Azure Key Vault is in the same region as the NetApp account and configured with appropriate access policies (Get, Encrypt, Decrypt) for the managed identity. The key must be of type RSA, enabled, valid, and active.","severity":"gotcha","affected_versions":"All versions with CMK support"}],"env_vars":null,"last_verified":"2026-04-09T00:00:00.000Z","next_check":"2026-07-08T00:00:00.000Z"}