How can we map azure reservation with the retail price.
Thank you in advance for attempting to solve this issue
My organization has multiple Azure tenants, underneath we have 100+ subscriptions. We make a lot of reservations to save costs. However, as an analyst, I am trying to build an automated report that can map reservations with the retail price and determine how much savings we made using the reservation. I am using the below APIs to map the cost.
-
Retail Price public API: https://prices.azure.com/api/retail/prices?api-version=2023-01-01-preview&meterRegion='primary'
-
Reservation Orders: GET https://management.azure.com/providers/Microsoft.Capacity/reservationOrders?api-version=2022-11-01
-
Reservation Transactions: GET https://management.azure.com/providers/Microsoft.Billing/billingAccounts/123456/providers/Microsoft.Consumption/reservationTransactions?$filter=properties/eventDate+ge+2020-05-20+AND+properties/eventDate+le+2020-05-30&api-version=2024-08-01&useMarkupIfPartner=True&previewMarkupPercentage=15.5
I am using ReservationOrderId to join reservation orders and transactions.
To Join the retail price I could find armSKUName and armRegion
. However, there are multiple options available for armSKUName and armRegion. That causes duplicates. What I could find in retail price is, MeterId, SKUId, and ProductId
what makes it unique, however, I cannot get such details from reservation orders or transactions.
I am trying to understand if there is any API that can uniquely map to the retail price with the reservation. It would be a great help for me and the community if you have encountered the same and found a solution.