Skip to content

Commit 89b1440

Browse files
Merge pull request #273159 from bandersmsft/api-doc-updates-april
MCM - April 2023 - Update EA APIs for Maddie
2 parents 1fcae9b + fdb7449 commit 89b1440

8 files changed

+225
-135
lines changed

articles/cost-management-billing/automate/migrate-ea-balance-summary-api.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Cost Management
44
description: This article has information to help you migrate from the EA Balance Summary API.
55
author: bandersmsft
66
ms.author: banders
7-
ms.date: 02/23/2024
7+
ms.date: 04/23/2024
88
ms.topic: conceptual
99
ms.service: cost-management-billing
1010
ms.subservice: cost-management
@@ -13,14 +13,14 @@ ms.reviewer: jojoh
1313

1414
# Migrate from EA Balance Summary API
1515

16-
EA customers who were previously using the Enterprise Reporting consumption.azure.com API to get their balance summary need to migrate to a replacement Azure Resource Manager API. Instructions to do this are outlined below along with any contract differences between the old API and the new API.
16+
EA customers who were previously using the Enterprise Reporting consumption.azure.com API to get their balance summary need to migrate to a replacement Azure Resource Manager API. The following instructions help you migrate and discuss any contract differences between the old API and the new API.
1717

1818
> [!NOTE]
1919
> On May 1, 2024, Azure Enterprise Reporting APIs will be retired. [Migrate to Microsoft Cost Management APIs](migrate-ea-reporting-arm-apis-overview.md) before then.
2020
21-
## Assign permissions to an SPN to call the API
21+
## Assign permissions to a service principal to call the API
2222

23-
Before calling the API, you need to configure a Service Principal with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to ACM APIs](cost-management-api-permissions.md).
23+
Before calling the API, you need to configure a Service Principal with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to Cost Management APIs](cost-management-api-permissions.md).
2424

2525
### Call the Balance Summary API
2626

@@ -32,7 +32,7 @@ Use the following request URIs when calling the new Balance Summary API. Your en
3232

3333

3434
```http
35-
https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances?api-version=2019-10-01
35+
https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/providers/Microsoft.Consumption/balances?api-version=2023-05-01
3636
```
3737

3838
### Response body changes
@@ -96,6 +96,7 @@ The same data is now available in the properties field of the new API response.
9696
"azureMarketplaceServiceCharges": 609.82,
9797
"billingFrequency": "Month",
9898
"priceHidden": false,
99+
"overageRefund": 2012.61,
99100
"newPurchasesDetails": [
100101
{
101102
"name": "Promo Purchase",

articles/cost-management-billing/automate/migrate-ea-marketplace-store-charge-api.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Cost Management
44
description: This article has information to help you migrate from the EA Marketplace Store Charge API.
55
author: bandersmsft
66
ms.author: banders
7-
ms.date: 02/22/2024
7+
ms.date: 04/23/2024
88
ms.topic: conceptual
99
ms.service: cost-management-billing
1010
ms.subservice: cost-management
@@ -26,9 +26,9 @@ Endpoints to migrate off:
2626
| `/v3/enrollments/{enrollmentNumber}/billingPeriods/{billingPeriod}/marketplacecharges` | • API method: GET <br><br> • Synchronous (non polling) <br><br> • Data format: JSON |
2727
| `/v3/enrollments/{enrollmentNumber}/marketplacechargesbycustomdate?startTime=2017-01-01&endTime=2017-01-10` | • API method: GET <br><br> • Synchronous (non polling) <br><br> • Data format: JSON |
2828

29-
## Assign permissions to an SPN to call the API
29+
## Assign permissions to a service principal to call the API
3030

31-
Before calling the API, you need to configure a service principal with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to ACM APIs](cost-management-api-permissions.md).
31+
Before calling the API, you need to configure a service principal with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to Cost Management APIs](cost-management-api-permissions.md).
3232

3333
### Call the Marketplaces API
3434

@@ -51,17 +51,20 @@ For subscription, billing account, department, enrollment account, and managemen
5151
[List Marketplaces](/rest/api/consumption/marketplaces/list#marketplaceslistresult)
5252

5353
```http
54-
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/marketplaces
54+
GET https://management.azure.com/{scope}/providers/Microsoft.Consumption/marketplaces?api-version=2023-05-01
5555
```
5656

5757
With optional parameters:
5858

5959
```http
60-
https://management.azure.com/{scope}/providers/Microsoft.Consumption/marketplaces?$filter={$filter}&$top={$top}&$skiptoken={$skiptoken}
60+
https://management.azure.com/{scope}/providers/Microsoft.Consumption/marketplaces?api-version=2023-05-01?&$filter={$filter}&$top={$top}&$skiptoken={$skiptoken}
6161
```
6262

6363
#### Response body changes
6464

65+
>[!NOTE]
66+
> The new response is missing the `AccountId`, `AccountOwnerId`, and `DepartmentId` fields. For account and department information, use the `AccountName` and `DepartmentName` fields.
67+
6568
Old response:
6669

6770

articles/cost-management-billing/automate/migrate-ea-price-sheet-api.md

Lines changed: 66 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Cost Management
44
description: This article has information to help you migrate from the EA Price Sheet API.
55
author: bandersmsft
66
ms.author: banders
7-
ms.date: 02/22/2024
7+
ms.date: 04/23/2024
88
ms.topic: conceptual
99
ms.service: cost-management-billing
1010
ms.subservice: cost-management
@@ -13,41 +13,63 @@ ms.reviewer: jojoh
1313

1414
# Migrate from EA Price Sheet API
1515

16-
EA customers who were previously using the Enterprise Reporting consumption.azure.com API to get their price sheet need to migrate to a replacement Azure Resource Manager API. Instructions to do this are outlined below along with any contract differences between the old API and the new API.
16+
EA customers who were previously using the Enterprise Reporting consumption.azure.com API to get their price sheet need to migrate to a replacement Azure Resource Manager API. The following instructions help you migrate and they also describe any contract differences between the old API and the new API.
1717

1818
> [!NOTE]
1919
> On May 1, 2024, Azure Enterprise Reporting APIs will be retired. [Migrate to Microsoft Cost Management APIs](migrate-ea-reporting-arm-apis-overview.md) before then.
2020
21-
## Assign permissions to an SPN to call the API
21+
## Assign permissions to a service principal to call the API
2222

23-
Before calling the API, you need to configure a Service Principal with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to ACM APIs](cost-management-api-permissions.md).
23+
Before calling the API, you need to configure a service principal (SPN) with the correct permission. You use the service principal to call the API. For more information, see [Assign permissions to Cost Management APIs](cost-management-api-permissions.md).
2424

2525
### Call the Price Sheet API
2626

27-
Use the following request URIs when calling the new Price Sheet API.
27+
The Price Sheet API generates the price sheet asynchronously and produces a file that you download.
28+
29+
Use the following request URIs when calling the new Price Sheet API:
2830

2931
#### Supported requests
3032

31-
You can call the API using the following scopes:
33+
You can call the API using the following scope:
3234

33-
- Enrollment: `providers/Microsoft.Billing/billingAccounts/{billingAccountId}`
34-
- Subscription: `subscriptions/{subscriptionId}`
35+
Enrollment: `providers/Microsoft.Billing/billingAccounts/{billingAccountId}`
3536

36-
[Get for current Billing Period](/rest/api/consumption/pricesheet/get)
37+
[Download by billing account for the specified billing period](/rest/api/cost-management/price-sheet/download-by-billing-account)
3738

38-
```http
39-
https://management.azure.com/{scope}/providers/Microsoft.Consumption/pricesheets/default?api-version=2019-10-01
39+
```HTTP
40+
POST https://management.azure.com/providers/Microsoft.Billing/billingAccounts/{billingAccountId}/billingPeriods/{billingPeriodName}/providers/Microsoft.CostManagement/pricesheets/default/download?api-version=2023-11-01
4041
```
4142

42-
[Get for specified Billing Period](/rest/api/consumption/pricesheet/getbybillingperiod)
43+
The POST request returns a location to poll the report generation status as outlined in the following response:
44+
45+
### Sample response
46+
47+
Status code: 202
4348

4449
```http
45-
https://management.azure.com/{scope}/billingPeriods/{billingPeriodName}/providers/Microsoft.Consumption/pricesheets/default?api-version=2019-10-01
50+
Location: https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-09-01
51+
Retry-After: 60
52+
```
53+
54+
Status code: 200
55+
56+
```json
57+
{
58+
"status": "Completed",
59+
"properties": {
60+
"downloadUrl": "https://myaccount.blob.core.windows.net/?restype=service&comp=properties&sv=2015-04-05&ss=bf&srt=s&st=2015-04-29T22%3A18%3A26Z&se=2015-04-30T02%3A23%3A26Z&sr=b&sp=rw&spr=https&sig=G%2TEST%4B",
61+
"validTill": "2023-09-30T17:32:28Z"
62+
}
63+
}
4664
```
4765

48-
#### Response body changes
66+
### Sample request to poll report generation status
67+
68+
```HTTP
69+
GET https://management.azure.com/providers/Microsoft.Billing/billingAccounts/0000000/providers/Microsoft.CostManagement/operationResults/00000000-0000-0000-0000-000000000000?api-version=2023-09-01
70+
```
4971

50-
Old response:
72+
### Response body changes
5173

5274
```json
5375
[
@@ -74,43 +96,37 @@ Old response:
7496
"currencyCode": "USD"
7597
},
7698
...
77-
]
99+
]
78100
```
79101

80-
New response:
81-
82-
Old data is now in the `pricesheets` field of the new API response. Meter details information is also provided.
83-
84-
```json
85-
{
86-
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702/providers/Microsoft.Consumption/pricesheets/default",
87-
"name": "default",
88-
"type": "Microsoft.Consumption/pricesheets",
89-
"properties": {
90-
"nextLink": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/microsoft.consumption/pricesheets/default?api-version=2018-01-31&$skiptoken=AQAAAA%3D%3D&$expand=properties/pricesheets/meterDetails",
91-
"pricesheets": [
92-
{
93-
"billingPeriodId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Billing/billingPeriods/201702",
94-
"meterId": "00000000-0000-0000-0000-000000000000",
95-
"unitOfMeasure": "100 Hours",
96-
"includedQuantity": 100,
97-
"partNumber": "XX-11110",
98-
"unitPrice": 0.00000,
99-
"currencyCode": "EUR",
100-
"offerId": "OfferId 1",
101-
"meterDetails": {
102-
"meterName": "Data Transfer Out (GB)",
103-
"meterCategory": "Networking",
104-
"unit": "GB",
105-
"meterLocation": "Zone 2",
106-
"totalIncludedQuantity": 0,
107-
"pretaxStandardRate": 0.000
108-
}
109-
}
110-
]
111-
}
112-
}
113-
```
102+
### New response changes
103+
104+
The price sheet properties are as follows:
105+
106+
| **Name** | **Type** | **Description** |
107+
| --- | --- | --- |
108+
| basePrice | string | The unit price at the time the customer signs on or the unit price at the time of service meter GA launch if it is after sign-on.<br><br>It applies to Enterprise Agreement users |
109+
| currencyCode | string | Currency in which the Enterprise Agreement was signed |
110+
| effectiveEndDate | string | Effective end date of the Price Sheet billing period |
111+
| effectiveStartDate | string | Effective start date of the Price Sheet billing period |
112+
| enrollmentNumber | string | Unique identifier for the EA billing account. |
113+
| includedQuantity | string | Quantities of a specific service to which an EA customer is entitled to consume without incremental charges. |
114+
| marketPrice | string | The current list price for a given product or service. This price is without any negotiations and is based on your Microsoft Agreement type.<br><br>For PriceType Consumption, market price is reflected as the pay-as-you-go price.<br><br>For PriceType Savings Plan, market price reflects the Savings plan benefit on top of pay-as-you-go price for the corresponding commitment term.<br><br>For PriceType ReservedInstance, market price reflects the total price of the one or three-year commitment.<br><br>Note: For EA customers with no negotiations, market price might appear rounded to a different decimal precision than unit price. |
115+
| meterCategory | string | Name of the classification category for the meter. For example, Cloud services, Networking, etc. |
116+
| meterId | string | Unique identifier of the meter |
117+
| meterName | string | Name of the meter. The meter represents the deployable resource of an Azure service. |
118+
| meterRegion | string | Name of the Azure region where the meter for the service is available. |
119+
| meterSubCategory | string | Name of the meter subclassification category. |
120+
| meterType | string | Name of the meter type |
121+
| partNumber | string | Part number associated with the meter |
122+
| priceType | string | Price type for a product. For example, an Azure resource with a pay-as-you-go rate with priceType as Consumption. Other price types include ReservedInstance and Savings Plan. |
123+
| product | string | Name of the product accruing the charges. |
124+
| productId | string | Unique identifier for the product whose meter is consumed. |
125+
| serviceFamily | number | Type of Azure service. For example, Compute, Analytics, and Security. |
126+
| skuId | string | Unique identifier of the SKU |
127+
| term | string | Term length for Azure Savings Plan or Reservation term – one year or three years (P1Y or P3Y) |
128+
| unitOfMeasure | string | How usage is measured for the service |
129+
| unitPrice | string | The per-unit price at the time of billing for a given product or service, inclusive of any negotiated discounts on top of the market price.<br><br>For PriceType ReservedInstance, unit price reflects the total cost of the one or three-year commitment including discounts.<br><br>Note: The unit price isn't the same as the effective price in usage details downloads when services have differential prices across tiers.<br><br>If services are multi-tiered pricing, the effective price is a blended rate across the tiers and doesn't show a tier-specific unit price. The blended price or effective price is the net price for the consumed quantity spanning across the multiple tiers (where each tier has a specific unit price). |
114130

115131
## Next steps
116132

articles/cost-management-billing/automate/migrate-ea-reporting-arm-apis-overview.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ titleSuffix: Microsoft Cost Management
44
description: This article provides an overview about migrating from Azure Enterprise Reporting to Microsoft Cost Management APIs.
55
author: bandersmsft
66
ms.author: banders
7-
ms.date: 02/22/2024
7+
ms.date: 04/23/2024
88
ms.topic: conceptual
99
ms.service: cost-management-billing
1010
ms.subservice: cost-management
@@ -17,7 +17,7 @@ This article informs developers that have built custom solutions using the [Azur
1717

1818
**Key points**:
1919
- Migration recommended - We strongly recommend that you consider migrating your custom solutions to the Microsoft Cost Management APIs. They're actively being developed and offer improved functionality.
20-
- Retirement date - The Azure Enterprise Reporting APIs will be retired on **May 1, 2024**. After this date, the APIs will stop responding to requests.
20+
- Retirement date - The Azure Enterprise Reporting APIs will be retired on **May 1, 2024**.
2121

2222
**This article provides**:
2323
- An overview of the differences between [Azure Enterprise Reporting APIs](../manage/enterprise-api.md) and Cost Management APIs.

0 commit comments

Comments
 (0)