Uzyskiwanie listy dostępności dla jednostki SKU (według kraju/regionu)
W tym artykule opisano sposób uzyskiwania kolekcji dostępności w określonym kraju/regionie dla określonego produktu i jednostki SKU.
Wymagania wstępne
Poświadczenia, jak opisano w sekcji Uwierzytelnianie Centrum partnerskiego. Ten scenariusz obsługuje uwierzytelnianie zarówno przy użyciu poświadczeń autonomicznej aplikacji, jak i poświadczeń aplikacji oraz użytkownika.
Identyfikator produktu.
Identyfikator jednostki SKU.
Kraj/region.
C#
Aby uzyskać listę dostępności dla jednostki SKU:
Wykonaj kroki opisane w Uzyskaj jednostkę SKU według identyfikatora, aby uzyskać interfejs dla określonych operacji jednostki SKU.
W interfejsie SKU wybierz właściwość Dostępności, aby uzyskać interfejs z operacjami dotyczącymi dostępności.
(Opcjonalnie) Użyj metody ByTargetSegment(), aby filtrować dostępność według segmentu docelowego. Wszystkie segmenty z wyjątkiem organizacji non-profit zostaną zwrócone, jeśli nie zostaną uwzględnione. Aby uzyskać dostępność organizacji non-profit, trzeba je konkretnie określić.
Wywołaj metodę Get() lub GetAsync(), aby pobrać kolekcję dostępności dla tej jednostki SKU.
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();
Żądanie REST
Składnia żądania
Metoda | Identyfikator URI żądania |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1 |
Parametry identyfikatora URI
Użyj następującej ścieżki i parametrów zapytania, aby uzyskać listę dostępności dla jednostki SKU.
Nazwisko | Typ | Wymagane | opis |
---|---|---|---|
identyfikator produktu | string | Tak | Ciąg identyfikujący produkt. |
sku-id | string | Tak | Ciąg identyfikujący SKU. |
kod kraju | string | Tak | Identyfikator kraju/regionu. |
segment docelowy | string | Nie | Ciąg identyfikujący segment docelowy używany do filtrowania. Wszystkie segmenty z wyjątkiem organizacji non-profit zostaną zwrócone, jeśli nie zostaną uwzględnione. Aby uzyskać dostęp do ofert organizacji non-profit, należy je odpowiednio przekazać. |
zakres rezerwacji | string | Nie | Podczas wykonywania zapytań dotyczących dostępności dla SKU rezerwacji Azure, określ reservationScope=AzurePlan , aby uzyskać listę możliwości rezerwacji, które mają zastosowanie do AzurePlan. Wyklucz ten parametr, aby uzyskać listę dostępności, które mają zastosowanie do subskrypcji platformy Microsoft Azure (MS-AZR-0145P). |
UwzględnijStanCykluŻycia | string | Nie | Ciągowa flaga, która może być ustawiona na wartość true, aby zwracać wartości stanu cyklu życia dla ofert opartych na licencjach New Commerce. Te wartości nie zostaną zwrócone, jeśli flaga nie zostanie dołączona. |
Nagłówki żądań
Aby uzyskać więcej informacji, zobacz Nagłówki REST Centrum Partnerów.
Treść żądania
Brak.
Przykłady żądań
Dostępność jednostek SKU według kraju
Postępuj zgodnie z tym przykładem, aby uzyskać listę dostępności dla danej jednostki SKU według kraju:
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
Dostępność rezerwacji maszyn wirtualnych (plan platformy Azure)
Postępuj zgodnie z tym przykładem, aby uzyskać listę dostępności według kraju dla jednostek SKU rezerwacji maszyn wirtualnych platformy Azure. Ten przykład dotyczy jednostek SKU, które mają zastosowanie do planów platformy Azure:
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
Dostępność rezerwacji maszyn wirtualnych dla subskrypcji platformy Microsoft Azure (MS-AZR-0145P)
Postępuj zgodnie z tym przykładem, aby uzyskać listę dostępności według kraju dla rezerwacji maszyn wirtualnych platformy Azure, które mają zastosowanie do subskrypcji platformy Microsoft Azure (MS-AZR-0145P).
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
Odpowiedź REST
W przypadku powodzenia treść odpowiedzi zawiera kolekcję zasobów Dostępność.
Kody powodzenia i błędów odpowiedzi
Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i więcej informacji o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i inne parametry. Aby uzyskać pełną listę, zobacz Kody błędów Centrum partnerskiego.
Ta metoda zwraca następujące kody błędów:
Kod stanu HTTP | Kod błędu | opis |
---|---|---|
403 | 400030 | Dostęp do żądanego elementu docelowegoSegment jest niedozwolony. |
Przykład odpowiedzi dla rezerwacji maszyn wirtualnych Azure (plan Azure)
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"
}
}
Przykład odpowiedzi dla nowych usług opartych na licencjach handlowych
Uwaga
Nowe rozwiązania handlowe dla usług opartych na licencjach obejmują wiele nowych funkcji i są dostępne dla wszystkich uczestników programu Dostawcy rozwiązań w chmurze (CSP). Aby uzyskać więcej informacji, zobacz omówienie nowych środowisk handlowych.
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": []
}
}
}
}