SKU için kullanılabilirlik listesini alma (ülkeye/bölgeye göre)
Bu makalede, belirli bir ürün ve SKU için belirli bir ülkede/bölgede kullanılabilirlik koleksiyonunun nasıl alındığı açıklanır.
Önkoşullar
İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Ürün tanımlayıcısı.
SKU tanımlayıcısı.
Ülke/bölge.
C#
SKU'nun kullanılabilirlik listesini almak için:
Belirli bir SKU'nun işlemlerinin arabirimini almak için Kimliğe göre SKU alma'daki adımları izleyin.
Kullanılabilirlik işlemleriyle bir arabirim elde etmek için SKU arabiriminden Kullanılabilirlik özelliğini seçin.
(İsteğe bağlı) Kullanılabilirlikleri hedef segmente göre filtrelemek için ByTargetSegment() yöntemini kullanın. Kar amacı gütmeyen kuruluş dışındaki tüm segmentler dahil edilmediği takdirde döndürülür. Kar amacı gütmeyen kuruluş kullanılabilirliklerini almak için özel olarak kar amacı gütmeyen kuruluş geçirilmelidir.
Bu SKU için kullanılabilirlik koleksiyonunu almak için Get() veya GetAsync() çağrısında bulunun.
IAggregatePartner partnerOperations;
string countryCode;
string productId;
string skuId;
string targetSegment;
string productIdForAzureReservation;
string skuIdForAzureReservation;
// Get the availabilities.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ById(skuId).Availabilities.Get();
// Get the availabilities, filtered by target segment.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productId).Skus.ById(skuId).Availabilities.BySegment(targetSegment).Get();
// Get the availabilities for an Azure reservation product and sku which are applicable to Microsoft Azure (MS-AZR-0145P) subscriptions only.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.ById(skuIdForAzureReservation).Availabilities.ByReservationScope("AzurePlan").Get();
// Get the availabilities for an Azure reservation product and sku which are applicable to Azure plans only.
var availabilities = partnerOperations.Products.ByCountry(countryCode).ById(productIdForAzureReservation).Skus.ById(skuIdForAzureReservation).Availabilities.Get();
REST isteği
İstek söz dizimi
Metot | İstek URI'si |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1 |
URI parametreleri
SKU'nun kullanılabilirlik listesini almak için aşağıdaki yolu ve sorgu parametrelerini kullanın.
Adı | Tür | Zorunlu | Açıklama |
---|---|---|---|
product-id | string | Yes | Ürünü tanımlayan bir dize. |
sku-id | string | Yes | SKU'yu tanımlayan bir dize. |
ülke kodu | string | Yes | Ülke/bölge kimliği. |
hedef segment | Dize | Hayır | Filtreleme için kullanılan hedef kesimi tanımlayan bir dize. Kar amacı gütmeyen kuruluş dışındaki tüm segmentler dahil edilmediği takdirde döndürülür. Kar amacı gütmeyen kuruluş kullanılabilirliklerini almak için özel olarak kar amacı gütmeyen kuruluş geçirilmelidir. |
reservationScope | Dize | Hayır | Azure Rezervasyon SKU'su için kullanılabilirlik listesini sorgularken, AzurePlan için geçerli olan kullanılabilirlik listesini almak için belirtin reservationScope=AzurePlan . Microsoft Azure (MS-AZR-0145P) abonelikleri için geçerli olan kullanılabilirlik listesini almak için bu parametreyi hariç tutun. |
IncludeLifeCycleState | Dize | Hayır | Yeni Ticaret lisans tabanlı tekliflerin yaşam döngüsü durumu değerlerini döndürmek için true olarak ayarlanabilen bir dize bayrağı. Bayrak dahil edilmediyse bu değerler döndürülmeyecektir. |
İstek üst bilgileri
Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.
Request body
Yok.
İstek örnekleri
Ülkeye göre SKU için kullanılabilirlik
Ülkeye göre belirli bir SKU'nun kullanılabilirlik listesini almak için bu örneği izleyin:
GET http:// api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 70324727-62d8-4195-8f99-70ea25058d02
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
VM rezervasyonları için kullanılabilirlik (Azure planı)
Azure VM rezervasyon SKU'ları için ülkeye göre kullanılabilirlik listesini almak için bu örneği izleyin. Bu örnek, Azure planlarına uygulanan SKU'lar içindir:
GET https://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetView=AzureReservationsVM&reservationScope=AzurePlan HTTP/1.1
Authorization: Bearer
Accept: application/json
MS-RequestId: 031160b2-b0b0-4d40-b2b1-aaa9bb84211d
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
Microsoft Azure (MS-AZR-0145P) abonelikleri için VM rezervasyonları için kullanılabilirlik
Microsoft Azure (MS-AZR-0145P) abonelikleri için geçerli olan Azure VM rezervasyonlarının ülkesine göre kullanılabilirlik listesini almak için bu örneği izleyin.
GET https://api.partnercenter.microsoft.com/v1/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetView=AzureAzureReservationsVM HTTP/1.1
Authorization: Bearer
Accept: application/json
MS-RequestId: 031160b2-b0b0-4d40-b2b1-aaa9bb84211d
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
REST yanıtı
Başarılı olursa, yanıt gövdesi bir Kullanılabilirlik kaynakları koleksiyonu içerir.
Yanıt başarısı ve hata kodları
Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve daha fazla hata ayıklama bilgisi ile birlikte gelir. Bu kodu, hata türünü ve diğer parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz . İş Ortağı Merkezi hata kodları.
Bu yöntem aşağıdaki hata kodlarını döndürür:
HTTP Durum Kodu | Hata kodu | Açıklama |
---|---|---|
Kategori 403 | 400030 | İstenen targetSegment öğesine erişime izin verilmiyor. |
Azure VM rezervasyonları için yanıt örneği (Azure planı)
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd,aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 70324727-62d8-4195-8f99-70ea25058d02,70324727-62d8-4195-8f99-70ea25058d02
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTNRXHNrdXNcMDAwMVxhdmFpbGFiaWxpdGllcw==?=
X-Powered-By: ASP.NET
Date: Wed, 14 Mar 2018 22:19:37 GMT
Content-Length: 808
{
"totalCount": 1,
"items": [
{
"id": "DZH318XZXVNF",
"productId": "DZH318Z0BQ3Q",
"skuId": "0001",
"catalogItemId": "DZH318Z0BQ3Q:0001:DZH318XZXVNF",
"defaultCurrency": {
"code": "USD",
"symbol": "$"
},
"segment": "commercial",
"country": "US",
"isPurchasable": true,
"isRenewable": false,
"terms": [{
"duration": "P1Y",
"description": "1 Year Prepaid"
}],
"product": { ... },
"sku": { ... },
"links": {
"self": {
"uri": "/products/DZH318Z0BQ3Q/skus/0001/availabilities/DZH318Z0HMKQ?country=US",
"method": "GET",
"headers": []
}
}
}
],
"links": {
"self": {
"uri": "/products/DZH318Z0BQ3Q/skus/0001/availabilities?country=US&targetSegment=commercial",
"method": "GET",
"headers": []
}
},
"attributes": {
"objectType": "Collection"
}
}
Yeni ticari lisans tabanlı hizmetler için yanıt örneği
Not
Lisans tabanlı hizmetler için yeni ticaret deneyimleri birçok yeni özellik içerir ve tüm Bulut Çözümü Sağlayıcısı (CSP' ler) tarafından kullanılabilir. Daha fazla bilgi için bkz . Yeni ticaret deneyimlerine genel bakış.
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd,aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 70324727-62d8-4195-8f99-70ea25058d02,70324727-62d8-4195-8f99-70ea25058d02
X-Locale: en-US,en-US
X-SourceFiles: =?UTF-8?B?QzpcVXNlcnNcbWFtZW5kZVxkZXZcZHBzLXJwZVxSUEUuUGFydG5lci5TZXJ2aWNlLkNhdGFsb2dcV2ViQXBpc1xDYXRhbG9nU2VydmljZS5WMi5XZWJcdjFccHJvZHVjdHNcRFpIMzE4WjBCUTNRXHNrdXNcMDAwMVxhdmFpbGFiaWxpdGllcw==?=
X-Powered-By: ASP.NET
Date: Wed, 14 Mar 2018 22:19:37 GMT
Content-Length: 808
{
"id": "CFQ7TTC0K971",
"productId": "CFQ7TTC0LH18",
"skuId": "0001",
"catalogItemId": "CFQ7TTC0LH18:0001:CFQ7TTC0K971",
"defaultCurrency": {
"code": "USD",
"symbol": "$"
},
"segment": "commercial",
"country": "US",
"isPurchasable": true,
"isRenewable": true,
"renewalInstructions": [
{
"applicableTermIds": [
"5aeco6mffyxo"
],
"renewalOptions": [
{
"renewToId": "CFQ7TTC0LH18:0001",
"isAutoRenewable": true
}
]
},
…
],
"terms": [
{
"id": "5aeco6mffyxo",
"duration": "P1Y",
"description": "One-Year commitment for monthly/yearly billing",
"billingCycle": "Annual",
"cancellationPolicies": [
{
"refundOptions": [
{
"sequenceId": 0,
"type": "Full",
"expiresAfter": "P1D"
}
]
}
]
},
…
],
"links": {
"self": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities/CFQ7TTC0K971?country=US",
"method": "GET",
"headers": []
}
},
"links": {
"availabilities": {
"uri": "/products/CFQ7TTC0LH18/skus/0001/availabilities?country=US",
"method": "GET",
"headers": []
},
"self": {
"uri": "/products/CFQ7TTC0LH18/skus/0001?country=US",
"method": "GET",
"headers": []
}
}
}
}