canonical: https://jentic.com/apis/azure.com/consumption-management-client

# Microsoft Azure ConsumptionManagementClient

Jentic publishes the only available OpenAPI specification for ConsumptionManagementClient, keeping it validated and agent-ready. The Consumption Management Client provides read access to consumption resources for Azure Enterprise Subscriptions across 25 endpoints - balances, reservation summaries and details, reservation transactions, reservation recommendations, marketplaces, budgets, charges, forecasts, and more. Use it to feed FinOps dashboards, reservation-utilisation reports, and budget-burn alerts without scraping the cost portal.

## For AI agents

Pull Azure Enterprise Agreement consumption data - balances, reservation usage, charges, budgets, and forecasts - to power FinOps reports and budget alerts.

## Scope

Does not provision resources, modify reservations, change budgets, or invoice customers - use for read-only Azure Enterprise Agreement consumption reporting only.

## Capabilities

- Pull EA balance summaries for a billing period to drive monthly cost reconciliation
- Retrieve reservation transactions, summaries, and details to track Azure Reserved Instance usage
- Generate reservation purchase recommendations sized against the last 7, 30, or 60 days of usage
- List Marketplace charges to attribute third-party AppSource costs to subscriptions and resource groups
- Query budgets, forecasts, and charges to surface burn-down and overspend warnings
- Inspect price sheet details to model the unit cost of resource SKUs

## Use cases

### Monthly EA cost reconciliation

Finance teams running an Azure Enterprise Agreement need to reconcile each billing period's spend against budget and against the prior month. The Consumption Management Client returns balance summaries, charges, and reservation transactions for a billing period in one workflow, which can be loaded into a warehouse and compared to the corporate forecast.

Example prompt: GET /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances and emit a CSV joining the balance with the billing period's reservation transactions.

### Reservation purchase recommendations

Reserved Instances cut Azure VM cost by up to 72% but only when the SKU mix is right. The Consumption Management Client exposes recommendation endpoints that size purchases against the last 7, 30, or 60 days of metered usage, so a FinOps script can publish a refreshed recommendation list each week without manual analysis.

Example prompt: GET /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/microsoft.consumption/ReservationRecommendations with lookBackPeriod=Last30Days and emit the top 10 candidate purchases by saving.

### Budget burn-down alerts

When a subscription is on a tight budget, teams need to see actual versus forecast in near real-time. Consumption Management's budget, charges, and forecast endpoints together let an agent compute current burn, compare against the configured budget, and fire an alert when the projected end-of-period spend will exceed the cap.

Example prompt: Fetch charges and forecasts for subscription 00000000-0000-0000-0000-000000000000 for the current billing period and trigger a Slack alert when forecast > budget * 0.9.

### Marketplace cost attribution

AppSource and Marketplace charges often hide outside the main Azure cost report. Calling the marketplaces endpoint by billing period returns the list of third-party charges with subscription, resource group, and offer details, so they can be allocated back to the team that purchased them.

Example prompt: List Marketplace charges for billing period 202605 and group spend by resourceGroup and offerName.

### Agent-driven FinOps automation through Jentic

An AI agent integrated through Jentic can run a daily FinOps loop - pulling balances, reservation utilisation, charges, and forecasts - and post a digest to a finance channel. Jentic's intent search exposes the right Consumption Management operation for each metric and the AAD token is held in the vault so the agent never sees raw credentials.

Example prompt: On a daily schedule, fetch reservation utilisation, charges, and forecast for the current billing period and post a structured summary to the finance Slack channel.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances | Get EA balance for the current billing period |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Billing/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/balances | Get EA balance for a specific billing period |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationDetails | List reservation usage details |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationSummaries | List reservation utilisation summaries |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationTransactions | List reservation purchase transactions |
| GET | /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/microsoft.consumption/ReservationRecommendations | Get reservation purchase recommendations |

## Key resources

- **Balances** — EA balance summaries for a billing account by billing period
- **Reservations** — Reservation transactions, summaries, details, and recommendations
- **Marketplaces** — Marketplace and AppSource charges by billing period
- **Budgets and Forecasts** — Budget definitions, charges, and spend forecasts
- **PriceSheets** — Per-SKU unit pricing for the EA agreement

## Why Jentic

- **Setup:** Wiring Azure Consumption by hand means an Azure AD app registration for the OAuth implicit flow against management.azure.com, a Reader or Billing Reader role on the EA billing account, and following nextLink pagination across the billing endpoints yourself. Through Jentic you install once, import ConsumptionManagementClient from the API Directory, store the Azure AD credential once, and your agent calls it.
- **Permission scoping:** The billing account and billing period travel in the URL path (/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/...), so a rule can pin the agent to one billing account. Every operation here is read-only, so you limit the agent to the ones it needs, such as pulling balances or reservation summaries, and nothing else is included unless you add it.
- **Credential handling:** Your Azure AD token for the Reader or Billing Reader scope is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'pull last month's Azure EA balance' or 'get reservation utilisation for the last 30 days', and Jentic returns the matching consumption operation with its input schema and pagination shape so the agent calls the right endpoint directly.

## Related APIs

- **Cost Management Client** — Newer cost analysis API with cross-cloud and budget rules
- **Commerce Management Client** — Azure Stack equivalent for subscriber usage aggregates
- **Compute Management Client** — Lists the VMs whose reservation usage and recommendations the consumption API reports on

## FAQ

### Why is there no official OpenAPI spec for ConsumptionManagementClient?

Microsoft Azure does not publish a single consolidated OpenAPI specification for the Consumption Management API. Jentic generates and maintains this spec so that AI agents and developers can call ConsumptionManagementClient via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the ConsumptionManagementClient use?

It uses Azure Active Directory OAuth 2.0 with the implicit flow at https://login.microsoftonline.com/common/oauth2/authorize and the user_impersonation scope. The caller needs Reader or Billing Reader on the EA billing account. Through Jentic the AAD token is held in the encrypted vault.

### Can I get reservation utilisation with the ConsumptionManagementClient?

Yes - call GET /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/reservationSummaries for daily or monthly utilisation, and reservationDetails for per-instance breakdowns. Both accept a $filter on reservationOrderId and reservationId.

### What are the rate limits for the ConsumptionManagementClient?

ARM applies subscription-level read throttling (typically 12,000 reads per hour per subscription). Consumption queries that span large billing accounts return paginated results via nextLink - follow the pagination rather than retrying the same call.

### How do I generate reservation recommendations through Jentic?

Search Jentic for 'azure reservation recommendations', load the schema for GET /providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/microsoft.consumption/ReservationRecommendations, and execute it with lookBackPeriod=Last30Days. Run pip install jentic to get the SDK.

### Is the ConsumptionManagementClient free?

Calling the consumption API itself is free; you only need a Reader or Billing Reader role on the EA billing account. The data it returns describes Azure spend but the call does not add to it.

### Can I limit what my agent is allowed to do with the Consumption Management API?

Yes. Because you run Jentic One yourself, your own rules decide which Consumption operations and credentials the agent may use. The billing account and billing period travel in the URL path, so a rule can pin the agent to a single billing account, and since every operation here is read-only you can allow just the ones it needs, such as fetching balances or reservation summaries, while excluding everything else. Nothing else is exposed to the agent unless you add it.
