{"id":3901,"library":"azure-mgmt-scheduler","title":"Azure Scheduler Management Client Library","description":"The `azure-mgmt-scheduler` library is the Microsoft Azure Scheduler Management Client Library for Python. It provides programmatic access to manage Azure Scheduler resources. While the library's current version is 7.0.0, the underlying Azure Scheduler service has been retired by Microsoft. This package received security fixes until January 31, 2022, and is no longer actively maintained for new features or non-security bug fixes.","status":"abandoned","version":"7.0.0","language":"en","source_language":"en","source_url":"https://github.com/Azure/azure-sdk-for-python","tags":["azure","management","scheduler","cloud","deprecated","retired"],"install":[{"cmd":"pip install azure-mgmt-scheduler","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"Azure specific extensions for msrest, used for cloud API interaction.","package":"msrestazure","optional":false},{"reason":"Common Azure utilities and exceptions for the SDK.","package":"azure-common","optional":false},{"reason":"Core utilities and HTTP pipeline for Azure SDK libraries.","package":"azure-core","optional":false},{"reason":"Provides Azure Active Directory authentication capabilities.","package":"azure-identity","optional":false}],"imports":[{"note":"This is the primary client for interacting with Azure Scheduler.","symbol":"SchedulerManagementClient","correct":"from azure.mgmt.scheduler import SchedulerManagementClient"}],"quickstart":{"code":"from azure.identity import DefaultAzureCredential\nfrom azure.mgmt.scheduler import SchedulerManagementClient\nimport os\n\n# Your Azure subscription ID (get it from environment variable or replace directly)\nsubscription_id = os.environ.get(\"AZURE_SUBSCRIPTION_ID\", \"YOUR_SUBSCRIPTION_ID\")\n\n# Authenticate with Azure (DefaultAzureCredential tries multiple authentication methods)\n# Ensure AZURE_TENANT_ID, AZURE_CLIENT_ID, AZURE_CLIENT_SECRET (for service principal)\n# or AZURE_USERNAME, AZURE_PASSWORD (for developer login) are set as environment variables\n# or use other credential types from azure.identity.\ncredential = DefaultAzureCredential()\n\n# Create the Scheduler management client\ntry:\n    scheduler_client = SchedulerManagementClient(credential, subscription_id)\n    print(f\"SchedulerManagementClient created for subscription: {subscription_id}\")\n    print(\"\\nWARNING: The Azure Scheduler service has been retired as of January 31, 2022.\")\n    print(\"Any operations attempted with this client (e.g., listing job collections) will likely fail.\")\n    # Example: Attempt to list job collections (this will likely fail)\n    # for collection in scheduler_client.job_collections.list_by_subscription():\n    #     print(f\"Job Collection: {collection.name}\")\nexcept Exception as e:\n    print(f\"Error creating or using SchedulerManagementClient: {e}\")\n    print(\"This is expected behavior as the underlying service is retired.\")\n","lang":"python","description":"This quickstart demonstrates how to instantiate the `SchedulerManagementClient` using `azure.identity.DefaultAzureCredential`. It's crucial to note that the Azure Scheduler service has been retired, so most operations will fail. This example serves primarily to show the client initialization pattern."},"warnings":[{"fix":"Migrate existing schedules to Azure Logic Apps, which is the recommended replacement. Use the `azure-mgmt-logic` library for programmatic management of Logic Apps.","message":"The underlying Azure Scheduler service has been retired by Microsoft as of January 31, 2022. This library is no longer maintained for new features or non-security bug fixes.","severity":"breaking","affected_versions":"All versions. The service itself is retired, rendering the library largely non-functional for managing new or existing schedules."},{"fix":"Update your authentication code to use classes like `DefaultAzureCredential` from `azure.identity`. Pass the credential object directly to the client constructor, e.g., `SchedulerManagementClient(credential, subscription_id)`.","message":"Authentication methods changed significantly in version 7.0.0. Older `azure.common.credentials` or `msrestazure.azure_active_directory` instances are no longer supported. The `credentials` parameter was renamed to `credential`.","severity":"breaking","affected_versions":"7.0.0 and later (relative to 6.x)"},{"fix":"Do not use this library for active schedule management. For any lingering archival or diagnostic needs, be prepared for consistent API failures.","message":"Attempting to create, update, or retrieve Azure Scheduler resources using this library will almost certainly result in API errors (e.g., HTTP 404 Not Found, 410 Gone) because the backend service is no longer available.","severity":"gotcha","affected_versions":"All versions since the service retirement."},{"fix":"Update code to use `begin_` prefixed methods for long-running operations and handle `azure.core.exceptions.HttpResponseError` for general API errors. Adjust polling logic as per `azure.core` patterns.","message":"In version 7.0.0, operations that previously returned a `msrest.polling.LROPoller` now return an `azure.core.polling.LROPoller` and are prefixed with `begin_`. The exceptions tree has been simplified, and most exceptions are now `azure.core.exceptions.HttpResponseError` (CloudError has been removed).","severity":"breaking","affected_versions":"7.0.0 and later"}],"env_vars":null,"last_verified":"2026-04-11T00:00:00.000Z","next_check":"2026-07-10T00:00:00.000Z"}