Azure Perakende Fiyatlarına genel bakış
Azure müşterileri, tüm Azure hizmetlerinin perakende fiyatlarını almak için programlı bir yol arıyor. Artık tüm Azure hizmetlerinin perakende fiyatlarını almak için Perakende Fiyatları API'sini kullanabilirsiniz. Daha önce, Azure hizmetlerinin fiyatlarını almanızın tek yolu Azure Fiyatlandırma Hesaplayıcısı'nı kullanmak veya Azure portalını kullanmaktı. Bu API, tüm Azure hizmetlerinin perakende fiyatlarını almak için size kimliği doğrulanmamış bir deneyim sunar. Farklı bölgelere ve farklı SKU'lara göre Azure hizmetlerinin fiyatlarını keşfetmek için API'yi kullanın. Programlı API, SKU'lar ve bölgeler arasında iç analiz ve fiyat karşılaştırması için kendi araçlarınızı oluşturmanıza da yardımcı olabilir.
Önemli
Microsoft'un tüm Azure hizmetlerini fiyat olarak kullanmak için kullandığı para birimi ABD dolarıdır. ABD doları cinsinden gösterilen fiyatlar Microsoft perakende fiyatlarıdır. API tarafından döndürülen diğer ABD doları olmayan fiyatlar, bütçe giderlerini tahmin etmeye yardımcı olmak için referans içindir.
Önizleme sürümü
yeni 2023-01-01-preview API sürümünü https://prices.azure.com/api/retail/prices?api-version=2023-01-01-previewadresinde kullanabilirsiniz. Önizleme sürümü önceki API sürümleriyle geriye dönük uyumludur. URL, birincil ölçümler ve ayrıcalıksız ölçümler de dahil olmak üzere tam ölçüm kümesini döndürür.
https://prices.azure.com/api/retail/prices veya https://prices.azure.com/api/retail/prices?api-version=2023-01-01-preview kullanıldığında, tüm ölçüm kümesi döndürülüyor.
Tasarruf planları için ücretler yalnızca https://prices.azure.com/api/retail/prices?api-version=2023-01-01-preview
sürümüyle kullanılabilir.
Birincil ölçüm filtreleme
Yanıtları şu şekilde yalnızca birincil ölçüm fiyatlarını alacak şekilde sınırlayabilirsiniz:
https://prices.azure.com/api/retail/prices?api-version=2023-01-01-preview&meterRegion='primary'
Birincil ölçüm filtreleme, 2023-01-01
dahil olmak üzere 2021-10-01
ve sonraki API sürümleriyle desteklenir.
Filtre değeri büyük/küçük harfe duyarlıdır
Önceki API sürümlerinde filtre değeri büyük/küçük harfe duyarlı değildi. Ancak, 2023-01-01-preview
sürümünde ve sonraki sürümlerde değer büyük/küçük harfe duyarlıdır.
Mesela:
https://prices.azure.com/api/retail/prices?$filter=serviceName eq 'Virtual Machines'
işe yarar.
Önceki API sürümlerinde Virtual Machines
ve virtual machines
çalışıyordu.
Şimdi, sadece Virtual Machines
çalışıyor.
Azure tasarruf planı desteği
Daha önce belirtildiği gibi Azure tasarruf planı perakende fiyatları yalnızca önizleme sürümü (https://prices.azure.com/api/retail/prices?api-version=2023-01-01-preview) ile desteklenir. Tasarruf planı için uygun ölçümler için sonuçlar, tasarruf planı için ilgili bir bölüme sahiptir. Tasarruf planına bağlandığınızda, OnDemand
fiyatından daha ucuz bir fiyat elde edersiniz. Azure tasarruf planları hakkında daha fazla bilgi için bkz.Azure tasarruf planları belgeleri
Aşağıda tasarruf planı bilgilerini içeren örnek bir API yanıtı verilmiştir:
{
"currencyCode": "USD",
"tierMinimumUnits": 0.0,
"retailPrice": 2.305,
"unitPrice": 2.305,
"armRegionName": "southindia",
"location": "IN South",
"effectiveStartDate": "2019-05-14T00:00:00Z",
"meterId": "0084b086-37bf-4bee-b27f-6eb0f9ee4954",
"meterName": "M8ms",
"productId": "DZH318Z0BQ4W",
"skuId": "DZH318Z0BQ4W/00BQ",
"availabilityId": null,
"productName": "Virtual Machines MS Series",
"skuName": "M8ms",
"serviceName": "Virtual Machines",
"serviceId": "DZH313Z7MMC8",
"serviceFamily": "Compute",
"unitOfMeasure": "1 Hour",
"type": "Consumption",
"isPrimaryMeterRegion": true,
"armSkuName": "Standard_M8ms",
"savingsPlan": [
{
"unitPrice": 0.8065195,
"retailPrice": 0.8065195,
"term": "3 Years"
},
{
"unitPrice": 1.5902195,
"retailPrice": 1.5902195,
"term": "1 Year"
}
]
},
API uç noktası
https://prices.azure.com/api/retail/prices
API örnek çağrıları
Aşağıda bazı örnekler verilmiştir:
Yalnızca sanal makineler için filtrelenmiş örnek çağrılar:
https://prices.azure.com/api/retail/prices?$filter=serviceName eq 'Virtual Machines'
Yalnızca rezervasyonlar için filtrelenmiş örnek çağrılar:
https://prices.azure.com/api/retail/prices?$filter=priceType eq 'Reservation'
Ayrılmış örnek sanal makineleri için filtrelenmiş örnek çağrılar:
https://prices.azure.com/api/retail/prices?$filter=serviceName eq 'Virtual Machines' and priceType eq 'Reservation'
İşlem kaynakları için filtrelenmiş örnek çağrılar:
https://prices.azure.com/api/retail/prices?$filter=serviceFamily eq 'Compute'
Para birimi kodunu API örnek çağrısında gösterildiği gibi API uç noktasına ekleyebilirsiniz. Desteklenen para birimlerinin tam listesi için bkz. desteklenen para birimleri
Para birimi euro olan işlem için filtrelenmiş örnek çağrılar:
https://prices.azure.com/api/retail/prices?currencyCode='EUR'&$filter=serviceFamily eq 'Compute'
API yanıt örnekleri
Rezervasyon fiyatları olmadan örnek bir API yanıtı aşağıda verilmiştır.
{
"currencyCode": "USD",
"tierMinimumUnits": 0.0,
"retailPrice": 0.176346,
"unitPrice": 0.176346,
"armRegionName": "westeurope",
"location": "EU West",
"effectiveStartDate": "2020-08-01T00:00:00Z",
"meterId": "000a794b-bdb0-58be-a0cd-0c3a0f222923",
"meterName": "F16s Spot",
"productId": "DZH318Z0BQPS",
"skuId": "DZH318Z0BQPS/00TG",
"productName": "Virtual Machines FS Series Windows",
"skuName": "F16s Spot",
"serviceName": "Virtual Machines",
"serviceId": "DZH313Z7MMC8",
"serviceFamily": "Compute",
"unitOfMeasure": "1 Hour",
"type": "DevTestConsumption",
"isPrimaryMeterRegion": true,
"armSkuName": "Standard_F16s"
}
Burada, yanıtta rezervasyon fiyatları ve terim içeren örnek bir API yanıtı verilmiştir.
{
"currencyCode": "USD",
"tierMinimumUnits": 0.0,
"reservationTerm": "1 Year",
"retailPrice": 25007.0,
"unitPrice": 25007.0,
"armRegionName": "southcentralus",
"location": "US South Central",
"effectiveStartDate": "2020-08-01T00:00:00Z",
"meterId": "0016083a-928f-56fd-8eeb-39287dcf676d",
"meterName": "E64 v4",
"productId": "DZH318Z0D1L7",
"skuId": "DZH318Z0D1L7/018J",
"productName": "Virtual Machines Ev4 Series",
"skuName": "E64 v4",
"serviceName": "Virtual Machines",
"serviceId": "DZH313Z7MMC8",
"serviceFamily": "Compute",
"unitOfMeasure": "1 Hour",
"type": "Reservation",
"isPrimaryMeterRegion": true,
"armSkuName": "Standard_E64_v4"
}
Abd doları olmayan bir para birimiyle örnek bir yanıt aşağıda verilmiştir.
{
"currencyCode": "EUR",
"tierMinimumUnits": 0,
"retailPrice": 0.6176,
"unitPrice": 0.6176,
"armRegionName": "westeurope",
"location": "EU West",
"effectiveStartDate": "2021-04-01T00:00:00Z",
"meterId": "000a794b-bdb0-58be-a0cd-0c3a0f222923",
"meterName": "F16s Spot",
"productId": "DZH318Z0BQPS",
"skuId": "DZH318Z0BQPS/00TG",
"productName": "Virtual Machines FS Series Windows",
"skuName": "F16s Spot",
"serviceName": "Virtual Machines",
"serviceId": "DZH313Z7MMC8",
"serviceFamily": "Compute",
"unitOfMeasure": "1 Hour",
"type": "Consumption",
"isPrimaryMeterRegion": true,
"armSkuName": "Standard_F16s"
}
API yanıt sayfalaması
API yanıtı sayfalandırma sağlar. Her API isteği için en fazla 1.000 kayıt döndürülür. API yanıtının sonunda, sonraki sayfaya bağlantı bulunur. Mesela:
"NextPageLink": https://prices.azure.com:443/api/retail/prices?$filter=serviceName%20eq%20%27Virtual%20Machines%27&$skip=1000
API özelliği ayrıntıları
API yanıtının bir parçası olan tüm özellik ayrıntıları aşağıda verilmiştir.
Alan | Örnek Değerler | Tanım |
---|---|---|
currencyCode |
USD | Kurların tanımlandığı ve belirtilmediği sürece fiyatları ABD Doları cinsinden döndürdüğü para birimi. |
tierMinimumUnits |
0 | Fiyatı kullanmak için en düşük tüketim birimleri |
reservationTerm |
1 yıl | Rezervasyon dönemi – bir yıl veya üç yıl |
retailPrice |
0.176346 | İndirimsiz Microsoft Perakende Fiyatları |
unitPrice |
0.176346 |
retailPrice ile aynı |
armRegionName |
westeurope |
Hizmetin kullanılabilir olduğu Azure Resource Manager bölgesi. Bu sürüm yalnızca Ticari Bulut'ta fiyatları destekler. |
Location |
AB Batı | Kaynağın dağıtıldığı Azure veri merkezi |
effectiveStartDate |
2020-08-01T00:00:00Z | İsteğe bağlı alan. Perakende fiyatlarının geçerli olduğu tarihi gösterir. |
meterId |
000a794b-bdb0-58be-a0cd-0c3a0f222923 | Kaynağın benzersiz tanımlayıcısı |
meterName |
F16s Spot | Ölçüm adı |
productid |
DZH318Z0BQPS | Ürünün UniqueID değeri |
skuId |
DZH318Z0BQPS/00TG | SKU için UniqueID |
productName |
Sanal Makineler FS Serisi Windows | Ürün adı |
skuName |
F16s Spot | SKU adı |
serviceName |
Sanal Makineler | Hizmetin adı |
serviceId |
DZH313Z7MMC8 | Hizmetin UniqueID değeri |
serviceFamily |
Hesaplamak | SKU'nun hizmet ailesi |
unitOfMeasure |
1 Saat | Hizmet için kullanım nasıl ölçülür? |
Type |
DevTestConsumption | Ölçüm tüketim türü. Diğer türler Reservation ve Consumption . |
isPrimaryMeterRegion |
Doğru | Ölçüm bölgesinin birincil ölçüm olarak ayarlanıp ayarlanmadığını gösterir. Birincil ölçümler ücretler ve faturalama için kullanılır. |
armSkuName |
Standard_F16s | Azure'da kayıtlı SKU adı |
term |
3 Yıl | Azure tasarruf planı için savingsPlan bilgilerle ilişkili terim uzunluğu. |
API filtreleri
Filtreler aşağıdaki alanlar için desteklenir:
armRegionName
Location
meterId
meterName
productid
skuId
productName
skuName
serviceName
serviceId
serviceFamily
priceType
armSkuName
Api örnek çağrılarında gösterildiği gibi filtreleri API uç noktasına eklersiniz.
Desteklenen serviceFamily değerleri
Aşağıdaki bilgiler desteklenen serviceFamily
değerlerinin listesidir. Bilgiler değişebilir.
Analytics
Azure Arc
Azure Communication Services
Azure Security
Azure Stack
Compute
Containers
Data
Databases
Developer Tools
Dynamics
Gaming
Integration
Internet of Things
Management and Governance
Microsoft Syntex
Mixed Reality
Networking
Other
Power Platform
Quantum Computing
Security
Storage
Telecommunications
Web
Windows Virtual Desktop
ProgramLı Örnek
Aşağıdaki basit Python uygulaması, Orta Güney ABD bölgesindeki standart NP20 SKU'sunun sanal makinesinin perakende satış noktası fiyatlandırmasını sorgulamak için API'yi kullanır. Uygulama sorgunun çıkışını filtreler ve istenen bilgileri tablo biçiminde sunar.
#!/usr/bin/env python3
import requests
import json
from tabulate import tabulate
def build_pricing_table(json_data, table_data):
for item in json_data['Items']:
meter = item['meterName']
table_data.append([item['armSkuName'], item['retailPrice'], item['unitOfMeasure'], item['armRegionName'], meter, item['productName']])
def main():
table_data = []
table_data.append(['SKU', 'Retail Price', 'Unit of Measure', 'Region', 'Meter', 'Product Name'])
api_url = "https://prices.azure.com/api/retail/prices?api-version=2021-10-01-preview"
query = "armRegionName eq 'southcentralus' and armSkuName eq 'Standard_NP20s' and priceType eq 'Consumption' and contains(meterName, 'Spot')"
response = requests.get(api_url, params={'$filter': query})
json_data = json.loads(response.text)
build_pricing_table(json_data, table_data)
nextPage = json_data['NextPageLink']
while(nextPage):
response = requests.get(nextPage)
json_data = json.loads(response.text)
nextPage = json_data['NextPageLink']
build_pricing_table(json_data, table_data)
print(tabulate(table_data, headers='firstrow', tablefmt='psql'))
if __name__ == "__main__":
main()
Bu kodu çalıştırmak aşağıdaki çıkışı oluşturur:
+----------------+----------------+-------------------+----------------+------------+------------------------------------+
| SKU | Retail Price | Unit of Measure | Region | Meter | Product Name |
|----------------+----------------+-------------------+----------------+------------+------------------------------------|
| Standard_NP20s | 0.828503 | 1 Hour | southcentralus | NP20s Spot | Virtual Machines NP Series Windows |
| Standard_NP20s | 0.448207 | 1 Hour | southcentralus | NP20s Spot | Virtual Machines NP Series |
+----------------+----------------+-------------------+----------------+------------+------------------------------------+
Sonraki adımlar
- diğer
Maliyet Yönetimi API'leri hakkında bilgi edinin.