hey Folks - FYI 'Azure Defender' worked for me, and I think the issue might be the productName filter.
https://prices.azure.com/api/retail/prices?$filter=serviceName eq 'Azure Defender'
Pulling almost 500 records, I'm showing the following choices for productName field:
- Defender External Attack Surface Management
- Microsoft Defender for Azure Cosmos DB
- Microsoft Defender for Containers
- Microsoft Defender for MariaDB
In case it helps, here's my Power Query script for pulling Sentinel cost rates:
let
Source = (skip as number) =>
let
apiUrl = "https://prices.azure.com/api/retail/prices?$filter=serviceName eq 'Sentinel' or serviceName eq 'Log Analytics' or serviceName eq 'Azure Monitor' and skuName ne 'Voice Calls'&$skip=" & Text.From(skip),
jsonContent = Json.Document(Web.Contents(apiUrl)),
items = jsonContent[Items]
in
items,
Pagination = List.Skip(List.Generate(() => 0, each _ < 7000, each _ + 100), 0),
GetData = List.Transform(Pagination, each Source(_)),
CombineData = Table.FromList(GetData, Splitter.SplitByNothing()),
ExpandColumn1 = Table.ExpandListColumn(CombineData, "Column1"),
ExpandRecord = Table.ExpandRecordColumn(ExpandColumn1, "Column1", {"currencyCode", "tierMinimumUnits", "retailPrice", "unitPrice", "armRegionName", "location", "effectiveStartDate", "meterId", "meterName", "productId", "skuId", "productName", "skuName", "serviceName", "serviceId", "serviceFamily", "unitOfMeasure", "type", "isPrimaryMeterRegion", "armSkuName"}, {"currencyCode", "tierMinimumUnits", "retailPrice", "unitPrice", "armRegionName", "location", "effectiveStartDate", "meterId", "meterName", "productId", "skuId", "productName", "skuName", "serviceName", "serviceId", "serviceFamily", "unitOfMeasure", "type", "isPrimaryMeterRegion", "armSkuName"}),
FilteredRows = Table.SelectRows(ExpandRecord, each [armRegionName] <> null and [armRegionName] <> ""),
#"Reordered Columns" = Table.ReorderColumns(FilteredRows,{"productName", "meterName", "skuName", "location", "armRegionName", "tierMinimumUnits", "retailPrice", "unitPrice", "currencyCode", "unitOfMeasure", "serviceName", "effectiveStartDate", "meterId", "productId", "skuId", "serviceId", "serviceFamily", "type", "isPrimaryMeterRegion", "armSkuName"}),
#"Sorted Rows" = Table.Sort(#"Reordered Columns",{{"armRegionName", Order.Ascending}, {"meterName", Order.Ascending}})
in
#"Sorted Rows"
Cheers, Jesse