Skip to main content

Microsoft Azure Consumption Management Client Library for Python

Project description

Microsoft Azure SDK for Python

This is the Microsoft Azure Consumption Client Library. This package has been tested with Python 3.10+. For a more complete view of Azure libraries, see the azure sdk python release.

Disclaimer

Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For more information and questions, please refer to https://github.com/Azure/azure-sdk-for-python/issues/20691

Getting started

Prerequisites

Install the package

pip install azure-mgmt-consumption
pip install azure-identity

Authentication

By default, Azure Active Directory token authentication depends on correct configuration of the following environment variables.

  • AZURE_CLIENT_ID for Azure client ID.
  • AZURE_TENANT_ID for Azure tenant ID.
  • AZURE_CLIENT_SECRET for Azure client secret.

In addition, Azure subscription ID can be configured via environment variable AZURE_SUBSCRIPTION_ID.

With above configuration, client can be authenticated by following code:

from azure.identity import DefaultAzureCredential
from azure.mgmt.consumption import ConsumptionManagementClient
import os

sub_id = os.getenv("AZURE_SUBSCRIPTION_ID")
client = ConsumptionManagementClient(credential=DefaultAzureCredential(), subscription_id=sub_id)

Examples

Code samples for this package can be found at:

Troubleshooting

Next steps

Provide Feedback

If you encounter any bugs or have suggestions, please file an issue in the Issues section of the project.

Release History

11.0.0b2 (2026-05-25)

Features Added

  • Client ConsumptionManagementClient added parameter cloud_setting in method __init__
  • Client ConsumptionManagementClient added method send_request
  • Model Balance added property system_data
  • Model Budget added property system_data
  • Model ChargeSummary added property system_data
  • Model CreditSummary added property tags
  • Model CreditSummary added property system_data
  • Model EventSummary added property system_data
  • Model LegacyChargeSummary added property system_data
  • Model LegacyReservationRecommendation added property system_data
  • Model LegacyReservationRecommendationProperties added property last_usage_date
  • Model LegacyReservationRecommendationProperties added property total_hours
  • Model LegacySharedScopeReservationRecommendationProperties added property last_usage_date
  • Model LegacySharedScopeReservationRecommendationProperties added property total_hours
  • Model LegacySingleScopeReservationRecommendationProperties added property last_usage_date
  • Model LegacySingleScopeReservationRecommendationProperties added property total_hours
  • Model LegacyUsageDetail added property system_data
  • Model LotSummary added property system_data
  • Model ManagementGroupAggregatedCostResult added property system_data
  • Model Marketplace added property system_data
  • Model ModernChargeSummary added property system_data
  • Model ModernReservationRecommendation added property system_data
  • Model ModernReservationRecommendationProperties added property last_usage_date
  • Model ModernReservationRecommendationProperties added property total_hours
  • Model ModernReservationTransaction added property system_data
  • Model ModernSharedScopeReservationRecommendationProperties added property last_usage_date
  • Model ModernSharedScopeReservationRecommendationProperties added property total_hours
  • Model ModernSingleScopeReservationRecommendationProperties added property last_usage_date
  • Model ModernSingleScopeReservationRecommendationProperties added property total_hours
  • Model ModernUsageDetail added property system_data
  • Model PriceSheetProperties added property savings_plan
  • Model PriceSheetResult added property system_data
  • Model ProxyResource added property system_data
  • Model ReservationDetail added property system_data
  • Model ReservationRecommendation added property system_data
  • Model ReservationRecommendationDetailsModel added property system_data
  • Model ReservationSummary added property system_data
  • Model ReservationTransaction added property system_data
  • Model Resource added property system_data
  • Model TagsResult added property system_data
  • Enum Term added member P1_M
  • Model UsageDetail added property system_data
  • Added enum CreatedByType
  • Added model ErrorAdditionalInfo
  • Added model ErrorDetail
  • Added model ExtensionResource
  • Added model OperationStatus
  • Added enum OperationStatusType
  • Added enum OrganizationType
  • Added model PricesheetDownloadProperties
  • Added model SavingsPlan
  • Added model SystemData
  • Operation group PriceSheetOperations added method begin_download_by_billing_account_period
  • Operation group ReservationRecommendationDetailsOperations added parameter filter in method get
  • Operation group ReservationTransactionsOperations added parameter use_markup_if_partner in method list
  • Operation group ReservationTransactionsOperations added parameter preview_markup_percentage in method list

Breaking Changes

  • 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 BudgetComparisonExpression renamed its instance variable values to values_property
  • Model ChargeSummary deleted or renamed its instance variable tags
  • Model EventSummary moved instance variable transaction_date, description, new_credit, adjustments, credit_expired, charges, closed_balance, event_type, invoice_number, billing_profile_id, billing_profile_display_name, lot_id, lot_source, canceled_credit, credit_currency, billing_currency, reseller, credit_expired_in_billing_currency, new_credit_in_billing_currency, adjustments_in_billing_currency, charges_in_billing_currency, closed_balance_in_billing_currency and e_tag_properties_e_tag under property properties whose type is EventProperties
  • Model LegacyReservationRecommendation moved instance variable look_back_period, instance_flexibility_ratio, instance_flexibility_group, normalized_size, recommended_quantity_normalized, meter_id, resource_type, term, cost_with_no_reserved_instances, recommended_quantity, total_cost_with_reserved_instances, net_savings, first_usage_date, scope and sku_properties under property properties whose type is LegacyReservationRecommendationProperties
  • Model LotSummary moved instance variable original_amount, closed_balance, source, start_date, expiration_date, po_number, purchased_date, status, credit_currency, billing_currency, original_amount_in_billing_currency, closed_balance_in_billing_currency, reseller and e_tag_properties_e_tag under property properties whose type is LotProperties
  • Model ManagementGroupAggregatedCostResult moved instance variable billing_period_id, usage_start, usage_end, azure_charges, marketplace_charges, charges_billed_separately, currency, children, included_subscriptions and excluded_subscriptions under property properties whose type is ManagementGroupAggregatedCostProperties
  • Model ModernReservationRecommendation moved instance variable location_properties_location, look_back_period, instance_flexibility_ratio, instance_flexibility_group, normalized_size, recommended_quantity_normalized, meter_id, term, cost_with_no_reserved_instances, recommended_quantity, resource_type, total_cost_with_reserved_instances, net_savings, first_usage_date, scope, sku_properties and sku_name under property properties whose type is ModernReservationRecommendationProperties
  • Model PriceSheetResult moved instance variable pricesheets, next_link and download under property properties whose type is PriceSheetModel
  • Model ProxyResource deleted or renamed its instance variable e_tag
  • Model ReservationRecommendationDetailsModel moved instance variable currency, resource, resource_group, savings, scope and usage under property properties whose type is ReservationRecommendationDetailsProperties
  • Model ReservationTransaction moved instance variable event_date, reservation_order_id, description, event_type, quantity, amount, currency, reservation_order_name, purchasing_enrollment, purchasing_subscription_guid, purchasing_subscription_name, arm_sku_name, term, region, account_name, account_owner_email, department_name, cost_center, current_enrollment, billing_frequency, billing_month, monetary_commitment and overage under property properties whose type is LegacyReservationTransactionProperties
  • Model Resource deleted or renamed its instance variable etag
  • Model Resource deleted or renamed its instance variable tags
  • Model TagsResult moved instance variable tags, next_link and previous_link under property properties whose type is TagProperties
  • Method ChargesOperations.list changed its parameter start_date/end_date/apply from positional_or_keyword to keyword_only
  • Method EventsOperations.list_by_billing_profile changed its parameter start_date/end_date from positional_or_keyword to keyword_only
  • Method MarketplacesOperations.list changed its parameter skiptoken from positional_or_keyword to keyword_only
  • Method PriceSheetOperations.get changed its parameter expand/skiptoken from positional_or_keyword to keyword_only
  • Method PriceSheetOperations.get_by_billing_period changed its parameter expand/skiptoken from positional_or_keyword to keyword_only
  • Method ReservationRecommendationDetailsOperations.get changed its parameter scope/region/term/look_back_period/product from positional_or_keyword to keyword_only
  • Method ReservationsDetailsOperations.list changed its parameter start_date/end_date/reservation_id/reservation_order_id from positional_or_keyword to keyword_only
  • Method ReservationsSummariesOperations.list changed its parameter grain/start_date/end_date/reservation_id/reservation_order_id from positional_or_keyword to keyword_only
  • Method ReservationsSummariesOperations.list_by_reservation_order changed its parameter grain from positional_or_keyword to keyword_only
  • Method ReservationsSummariesOperations.list_by_reservation_order_and_reservation changed its parameter grain from positional_or_keyword to keyword_only
  • Method UsageDetailsOperations.list changed its parameter expand/skiptoken/metric from positional_or_keyword to keyword_only

Other Changes

  • Deleted model DownloadProperties/ErrorDetails/Events/LegacyReservationTransaction/Lots/ReservationTransactionResource/ResourceAttributes which actually were not used by SDK users

11.0.0b1 (2022-12-07)

Features Added

  • Model ChargeSummary has a new parameter etag
  • Model ChargeSummary has a new parameter tags
  • Model CreditSummary has a new parameter e_tag_properties_e_tag
  • Model LegacyChargeSummary has a new parameter azure_marketplace_charges
  • Model LegacyChargeSummary has a new parameter etag
  • Model LegacyChargeSummary has a new parameter tags
  • Model ModernChargeSummary has a new parameter etag
  • Model ModernChargeSummary has a new parameter tags
  • Model ModernReservationRecommendation has a new parameter resource_type
  • Model ModernReservationRecommendation has a new parameter subscription_id

Breaking Changes

  • Model ChargeSummary no longer has parameter e_tag
  • Model CreditSummary no longer has parameter etag
  • Model CreditSummary no longer has parameter tags
  • Model LegacyChargeSummary no longer has parameter e_tag
  • Model LegacyChargeSummary no longer has parameter marketplace_charges
  • Model ModernChargeSummary no longer has parameter e_tag

10.0.0 (2022-06-20)

Features

  • Added operation LotsOperations.list_by_customer

Breaking changes

  • Model BudgetFilter no longer has parameter not_property
  • Operation ReservationRecommendationDetailsOperations.get has a new parameter resource_scope
  • Operation ReservationRecommendationsOperations.list has a new parameter resource_scope
  • Operation ReservationRecommendationsOperations.list no longer has parameter scope
  • Operation ReservationsDetailsOperations.list has a new parameter resource_scope
  • Operation ReservationsDetailsOperations.list no longer has parameter scope
  • Operation ReservationsSummariesOperations.list has a new parameter resource_scope
  • Operation ReservationsSummariesOperations.list no longer has parameter scope

9.0.0 (2022-01-06)

Features

  • Added operation EventsOperations.list_by_billing_account
  • Added operation EventsOperations.list_by_billing_profile
  • Added operation LotsOperations.list_by_billing_account
  • Added operation LotsOperations.list_by_billing_profile
  • Model Balance has a new parameter etag
  • Model Budget has a new parameter forecast_spend
  • Model ChargeSummary has a new parameter e_tag
  • Model CreditBalanceSummary has a new parameter estimated_balance_in_billing_currency
  • Model CreditSummary has a new parameter billing_currency
  • Model CreditSummary has a new parameter credit_currency
  • Model CreditSummary has a new parameter e_tag
  • Model CreditSummary has a new parameter etag
  • Model CreditSummary has a new parameter reseller
  • Model EventSummary has a new parameter adjustments_in_billing_currency
  • Model EventSummary has a new parameter billing_currency
  • Model EventSummary has a new parameter billing_profile_display_name
  • Model EventSummary has a new parameter billing_profile_id
  • Model EventSummary has a new parameter canceled_credit
  • Model EventSummary has a new parameter charges_in_billing_currency
  • Model EventSummary has a new parameter closed_balance_in_billing_currency
  • Model EventSummary has a new parameter credit_currency
  • Model EventSummary has a new parameter credit_expired_in_billing_currency
  • Model EventSummary has a new parameter e_tag
  • Model EventSummary has a new parameter e_tag_properties_e_tag
  • Model EventSummary has a new parameter lot_id
  • Model EventSummary has a new parameter lot_source
  • Model EventSummary has a new parameter new_credit_in_billing_currency
  • Model EventSummary has a new parameter reseller
  • Model LegacyChargeSummary has a new parameter e_tag
  • Model LegacyReservationRecommendation has a new parameter etag
  • Model LegacyReservationRecommendation has a new parameter resource_type
  • Model LegacyReservationTransaction has a new parameter billing_month
  • Model LegacyReservationTransaction has a new parameter monetary_commitment
  • Model LegacyReservationTransaction has a new parameter overage
  • Model LegacyUsageDetail has a new parameter benefit_id
  • Model LegacyUsageDetail has a new parameter benefit_name
  • Model LegacyUsageDetail has a new parameter etag
  • Model LegacyUsageDetail has a new parameter pay_g_price
  • Model LegacyUsageDetail has a new parameter pricing_model
  • Model LotSummary has a new parameter billing_currency
  • Model LotSummary has a new parameter closed_balance_in_billing_currency
  • Model LotSummary has a new parameter credit_currency
  • Model LotSummary has a new parameter e_tag
  • Model LotSummary has a new parameter e_tag_properties_e_tag
  • Model LotSummary has a new parameter original_amount_in_billing_currency
  • Model LotSummary has a new parameter purchased_date
  • Model LotSummary has a new parameter reseller
  • Model LotSummary has a new parameter status
  • Model ManagementGroupAggregatedCostResult has a new parameter etag
  • Model Marketplace has a new parameter additional_info
  • Model Marketplace has a new parameter etag
  • Model ModernChargeSummary has a new parameter e_tag
  • Model ModernReservationRecommendation has a new parameter etag
  • Model ModernReservationRecommendation has a new parameter location_properties_location
  • Model ModernReservationRecommendation has a new parameter sku_name
  • Model ModernUsageDetail has a new parameter benefit_id
  • Model ModernUsageDetail has a new parameter benefit_name
  • Model ModernUsageDetail has a new parameter cost_allocation_rule_name
  • Model ModernUsageDetail has a new parameter effective_price
  • Model ModernUsageDetail has a new parameter etag
  • Model ModernUsageDetail has a new parameter pay_g_price
  • Model ModernUsageDetail has a new parameter pricing_model
  • Model ModernUsageDetail has a new parameter provider
  • Model Notification has a new parameter locale
  • Model Operation has a new parameter id
  • Model OperationDisplay has a new parameter description
  • Model PriceSheetResult has a new parameter download
  • Model PriceSheetResult has a new parameter etag
  • Model ReservationDetail has a new parameter etag
  • Model ReservationRecommendation has a new parameter etag
  • Model ReservationRecommendationDetailsModel has a new parameter etag
  • Model ReservationRecommendationsListResult has a new parameter previous_link
  • Model ReservationSummary has a new parameter etag
  • Model ReservationTransaction has a new parameter billing_month
  • Model ReservationTransaction has a new parameter monetary_commitment
  • Model ReservationTransaction has a new parameter overage
  • Model Resource has a new parameter etag
  • Model Tag has a new parameter value
  • Model TagsResult has a new parameter next_link
  • Model TagsResult has a new parameter previous_link
  • Model UsageDetail has a new parameter etag

Breaking changes

  • Model ChargeSummary no longer has parameter tags
  • Model EventSummary no longer has parameter tags
  • Model LegacyChargeSummary no longer has parameter tags
  • Model LotSummary no longer has parameter tags
  • Model ModernChargeSummary no longer has parameter tags
  • Operation ReservationRecommendationDetailsOperations.get has a new signature
  • Parameter scope of model LegacyReservationRecommendation is now required
  • Parameter scope of model LegacyReservationRecommendation is now required
  • Removed operation EventsOperations.list
  • Removed operation LotsOperations.list
  • Removed operation group ForecastsOperations

8.0.0 (2020-12-22)

Features

  • Model ReservationRecommendationDetailsCalculatedSavingsProperties has a new parameter reserved_unit_count
  • Model ReservationRecommendationDetailsModel has a new parameter location
  • Model ReservationRecommendationDetailsModel has a new parameter sku

8.0.0b1 (2020-10-31)

This is beta preview version. For detailed changelog please refer to equivalent stable version 3.0.0(https://pypi.org/project/azure-mgmt-consumption/3.0.0/)

This version uses a next-generation code generator that introduces important breaking changes, but also important new features (like unified authentication and async programming).

General breaking changes

  • Credential system has been completly revamped:

    • azure.common.credentials or msrestazure.azure_active_directory instances are no longer supported, use the azure-identity classes instead: https://pypi.org/project/azure-identity/
    • credentials parameter has been renamed credential
  • The config attribute no longer exists on a client, configuration should be passed as kwarg. Example: MyClient(credential, subscription_id, enable_logging=True). For a complete set of supported options, see the parameters accept in init documentation of azure-core

  • You can't import a version module anymore, use __version__ instead

  • Operations that used to return a msrest.polling.LROPoller now returns a azure.core.polling.LROPoller and are prefixed with begin_.

  • Exceptions tree have been simplified and most exceptions are now azure.core.exceptions.HttpResponseError (CloudError has been removed).

  • Most of the operation kwarg have changed. Some of the most noticeable:

General new features

  • Type annotations support using typing. SDKs are mypy ready.
  • This client has now stable and official support for async. Check the aio namespace of your package to find the async client.
  • This client now support natively tracing library like OpenCensus or OpenTelemetry. See this tracing quickstart for an overview.

3.0.0 (2018-05-16)

Features

  • Model MeterDetails has a new parameter service_name
  • Model MeterDetails has a new parameter service_tier
  • Model Filters has a new parameter tags
  • Model Marketplace has a new parameter is_recurring_charge
  • Model PriceSheetProperties has a new parameter offer_id
  • Added operation UsageDetailsOperations.download
  • Added operation group ForecastsOperations
  • Added operation group ChargesOperations
  • Added operation group TagsOperations
  • Added operation group BalancesOperations
  • Added operation group ReservationRecommendationsOperations
  • Added operation group AggregatedCostOperations

Breaking changes

  • Model UsageDetail has a new signature
  • Removed operation BudgetsOperations.create_or_update_by_resource_group_name
  • Removed operation BudgetsOperations.get_by_resource_group_name
  • Removed operation BudgetsOperations.list_by_resource_group_name
  • Removed operation BudgetsOperations.delete_by_resource_group_name
  • Removed operation UsageDetailsOperations.list_by_billing_period
  • Removed operation MarketplacesOperations.list_by_billing_period

General Breaking changes

This version uses a next-generation code generator that might introduce breaking changes.

  • Model signatures now use only keyword-argument syntax. All positional arguments must be re-written as keyword-arguments. To keep auto-completion in most cases, models are now generated for Python 2 and Python 3. Python 3 uses the "*" syntax for keyword-only arguments.
  • Enum types now use the "str" mixin (class AzureEnum(str, Enum)) to improve the behavior when unrecognized enum values are encountered. While this is not a breaking change, the distinctions are important, and are documented here: https://docs.python.org/3/library/enum.html#others At a glance:
    • "is" should not be used at all.
    • "format" will return the string value, where "%s" string formatting will return NameOfEnum.stringvalue. Format syntax should be prefered.
  • New Long Running Operation:
    • Return type changes from msrestazure.azure_operation.AzureOperationPoller to msrest.polling.LROPoller. External API is the same.
    • Return type is now always a msrest.polling.LROPoller, regardless of the optional parameters used.
    • The behavior has changed when using raw=True. Instead of returning the initial call result as ClientRawResponse, without polling, now this returns an LROPoller. After polling, the final resource will be returned as a ClientRawResponse.
    • New polling parameter. The default behavior is Polling=True which will poll using ARM algorithm. When Polling=False, the response of the initial call will be returned without polling.
    • polling parameter accepts instances of subclasses of msrest.polling.PollingMethod.
    • add_done_callback will no longer raise if called after polling is finished, but will instead execute the callback right away.

2.0.0 (2018-02-06)

Features

  • Marketplace data with and without billing period
  • Price sheets data with and without billing period
  • Budget CRUD operations support

Breaking changes

  • Removing scope from usage_details, reservation summaries and details operations.

1.1.0 (2017-12-12)

Features

  • Reservation summaries based on Reservation Order Id and/or ReservationId
  • Reservation details based on Reservation Order Id and/or ReservationId

1.0.0 (2017-11-15)

Features

  • Featuring stable api GA version 2017-11-30
  • Supporting EA customers with azure consumption usage details

Breaking changes

  • Removing support for calling usage_details.list() with 'invoice_id'. Will feature in future releases.

0.1.0 (2017-05-18)

  • Initial Release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

azure_mgmt_consumption-11.0.0b2.tar.gz (119.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

azure_mgmt_consumption-11.0.0b2-py3-none-any.whl (116.3 kB view details)

Uploaded Python 3

File details

Details for the file azure_mgmt_consumption-11.0.0b2.tar.gz.

File metadata

File hashes

Hashes for azure_mgmt_consumption-11.0.0b2.tar.gz
Algorithm Hash digest
SHA256 681fc75573ead0c7d41abfce185216db5d967e6c02867d0e8db577df09053759
MD5 e2f32310513f090018d98e75877a93b4
BLAKE2b-256 4a645191a7da696ab364537fcc33235a855d5b3d7e986dcca6776cc4f4cc9c3d

See more details on using hashes here.

File details

Details for the file azure_mgmt_consumption-11.0.0b2-py3-none-any.whl.

File metadata

File hashes

Hashes for azure_mgmt_consumption-11.0.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 41e429805eb3d2987823d78cc8d82ebaa923634e28f4ce64e11713c045467cee
MD5 c07ab20b2bddd6a76133ab29c4f7eb37
BLAKE2b-256 b4cc06729273c5d7345a6426f2dd6a5a4721659a7a9c35e13880accf9e6354b3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page