{"id":831,"library":"azure-mgmt-core","title":"Azure Management Core Library for Python","description":"The `azure-mgmt-core` library provides extensions to Azure Core that are specific to Azure Resource Management (ARM), primarily used by Azure SDK management client libraries (e.g., `azure-mgmt-resource`). As a foundational component, it handles common ARM-specific patterns such as long-running operations and authentication challenges. The current stable version is 1.6.0, and it follows the release cadence of the broader Azure SDK for Python.","status":"active","version":"1.6.0","language":"python","source_language":"en","source_url":"https://github.com/Azure/azure-sdk-for-python/tree/main/sdk/core/azure-mgmt-core","tags":["Azure","Management","SDK","Core","ARM","Microsoft"],"install":[{"cmd":"pip install azure-mgmt-core","lang":"bash","label":"Install stable version"}],"dependencies":[{"reason":"Provides core HTTP pipeline, serialization, and other primitives. `azure-mgmt-core` extends it for ARM-specific functionality.","package":"azure-core","optional":false},{"reason":"Required for modern token-based authentication with Azure management clients, which implicitly use `azure-mgmt-core` for handling credentials.","package":"azure-identity","optional":false}],"imports":[{"wrong":"from azure.mgmt.core.pipeline_client import ARMPipelineClient","symbol":"ARMPipelineClient","correct":"from azure.mgmt.core import ARMPipelineClient"}],"quickstart":{"code":"import os\nfrom azure.identity import DefaultAzureCredential\nfrom azure.mgmt.resource import ResourceManagementClient\n\n# NOTE: azure-mgmt-core is an internal dependency for Azure management SDKs.\n# This quickstart demonstrates how a typical Azure management client is used,\n# which indirectly relies on azure-mgmt-core.\n\n# Your Azure subscription ID\n# It's recommended to set this as an environment variable (AZURE_SUBSCRIPTION_ID)\n# or retrieve it from your Azure context.\nsubscription_id = os.environ.get(\"AZURE_SUBSCRIPTION_ID\", \"your-subscription-id\")\n\nif subscription_id == \"your-subscription-id\":\n    print(\"Please set the AZURE_SUBSCRIPTION_ID environment variable or replace 'your-subscription-id'.\")\n    exit()\n\n# Authenticate with Azure using DefaultAzureCredential.\n# This attempts to authenticate via various methods like environment variables, Azure CLI, managed identity, etc.\ncredential = DefaultAzureCredential()\n\n# Create a ResourceManagementClient (which uses azure-mgmt-core internally)\nresource_client = ResourceManagementClient(credential, subscription_id)\n\n# Example: List all resource groups in the subscription\nprint(f\"Listing resource groups in subscription: {subscription_id}\")\nfor rg in resource_client.resource_groups.list():\n    print(f\"- {rg.name} (Location: {rg.location})\")\n\nprint(\"\\nQuickstart finished. This demonstrates how an Azure management client (which relies on azure-mgmt-core) is typically used.\")","lang":"python","description":"This library is primarily an internal dependency for Azure management SDKs. As such, direct 'quickstarts' for `azure-mgmt-core` are uncommon. Instead, its functionality is consumed by service-specific management clients (e.g., `ResourceManagementClient`). This example demonstrates how to initialize and use a typical Azure management client, which implicitly leverages `azure-mgmt-core` for its core ARM functionalities like authentication and request handling. Ensure `AZURE_SUBSCRIPTION_ID` is set as an environment variable or replaced."},"warnings":[{"fix":"Install the specific `azure-mgmt-<service>` package you need; `azure-mgmt-core` will be installed as a dependency.","message":"Direct installation of `azure-mgmt-core` is generally not needed for end-users. It is an internal dependency automatically installed when you install other service-specific Azure management SDKs (e.g., `azure-mgmt-compute`, `azure-mgmt-resource`).","severity":"gotcha","affected_versions":"All versions"},{"fix":"Upgrade your Python environment to version 3.9 or later. The `requires_python` metadata is `^=3.9`.","message":"Python 3.8 is no longer supported starting with `azure-mgmt-core` version 1.6.0. Earlier versions of the Azure SDK for Python might have supported it, but the current generation of management libraries requires Python 3.9 or later.","severity":"breaking","affected_versions":">=1.6.0"},{"fix":"Install the `azure-identity` package (`pip install azure-identity`) and then migrate your authentication code to use classes from it, such as `DefaultAzureCredential`. The `credential` parameter has also been renamed from `credentials` in many client constructors.","message":"The credential system for Azure SDKs has been completely revamped. Older management libraries used `azure.common.credentials` or `msrestazure.azure_active_directory`. All modern Azure management libraries, which `azure-mgmt-core` underpins, now use classes from the `azure-identity` package.","severity":"breaking","affected_versions":"Migrations from SDKs released before ~2020"},{"fix":"When performing long-running operations, call the `begin_` prefixed method and then await or poll the returned `LROPoller` object for the final result.","message":"Asynchronous long-running operations in the newer Azure SDKs, which are handled through `azure-mgmt-core`, now typically use methods prefixed with `begin_` (e.g., `begin_create`, `begin_delete`). These methods return an `azure.core.polling.LROPoller` object.","severity":"gotcha","affected_versions":"SDKs adopting the new guidelines (generally 2020 onwards)"}],"env_vars":null,"search_vec":"'1.6.0':64 'arm':25,47,82 'arm-specif':46 'authent':57 'azur':1,9,16,22,29,36,74,78 'azure-mgmt-cor':8 'azure-mgmt-resourc':35 'broader':73 'cadenc':70 'challeng':58 'client':32 'common':45 'compon':42 'core':3,11,17,81 'current':60 'e.g':34 'extens':14 'follow':67 'foundat':41 'handl':44 'librari':4,12,33 'long':53 'long-run':52 'manag':2,24,31,79 'mgmt':10,37 'microsoft':83 'oper':55 'pattern':49 'primarili':26 'provid':13 'python':6,77 'releas':69 'resourc':23,38 'run':54 'sdk':30,75,80 'specif':20,48 'stabl':61 'use':27 'version':62","created_at":"2026-03-29T06:03:51.168336+00:00","updated_at":"2026-04-15T22:35:37.631176+00:00","problems":null,"ecosystem":"pypi","meta_description":null,"install_score":0,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"1.6.0","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/Azure/azure-sdk-for-python","docs":null,"changelog":null,"pypi":"https://pypi.org/project/azure-mgmt-core/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["azure","http-networking","auth-security"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-30","last_verified":"2026-06-30","next_check":"2026-07-30","install_tag":"stale"}}