Een lijst met beschikbaarheid voor een SKU ophalen (per land/regio)
In dit artikel wordt beschreven hoe u een verzameling beschikbaarheid in een bepaald land/bepaalde regio voor een opgegeven product en SKU krijgt.
Vereisten
Referenties zoals beschreven in Partner Center-authenticatie. Dit scenario ondersteunt verificatie met zowel zelfstandige app- als app+gebruikersreferenties.
Een product-id.
Een SKU-id.
Een land/regio.
C#
De lijst met beschikbaarheid voor een SKU ophalen:
Volg de stappen in SKU ophalen via ID om de interface voor de bewerkingen van een specifieke SKU te verkrijgen.
Selecteer in de SKU-interface de eigenschap Beschikbaarheid om een interface op te halen met de bewerkingen voor beschikbaarheid.
(Optioneel) Gebruik de methode ByTargetSegment() om de beschikbaarheid te filteren op doelsegment. Alle segmenten behalve non-profitorganisaties worden geretourneerd als ze niet zijn opgenomen. Non-profitorganisaties moeten specifiek worden onderworpen om beschikbaarheden voor non-profitorganisaties te verkrijgen.
Roep Get() of GetAsync() aan om een verzameling van de beschikbaarheid voor deze SKU op te halen.
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-aanvraag
Aanvraagsyntaxis
Wijze | Aanvraag-URI |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1 |
URI parameters
Gebruik het volgende pad en queryparameters om een lijst met beschikbaarheid voor een SKU op te halen.
Name | Soort | Vereist | Beschrijving |
---|---|---|---|
product-id | tekenreeks | Ja | Een tekenreeks die het product identificeert. |
SKU-ID | tekenreeks | Ja | Een tekenreeks die de SKU identificeert. |
landcode | tekenreeks | Ja | Een land-/regio-id. |
doelsegment | tekenreeks | Nee | Een tekenreeks die het doelsegment identificeert dat wordt gebruikt voor filteren. Alle segmenten behalve non-profitorganisaties worden geretourneerd als ze niet zijn opgenomen. Non-profitorganisaties moeten specifiek worden benaderd om de beschikbaarheid voor non-profitorganisaties te verkrijgen. |
reserveringsbereik | tekenreeks | Nee | Wanneer u een query uitvoert op een lijst met beschikbaarheid voor een Azure Reservation-SKU, geeft u reservationScope=AzurePlan op om een lijst met beschikbaarheidsmogelijkheden op te halen die van toepassing zijn op AzurePlan. Sluit deze parameter uit om een lijst met beschikbaarheidsmogelijkheden op te halen die van toepassing zijn op Microsoft Azure-abonnementen (MS-AZR-0145P). |
LevenscyclusstatusInsluiten | tekenreeks | Nee | Een tekenreeksvlag die kan worden ingesteld op true om waarden voor levenscyclusstatussen te retourneren voor aanbiedingen op basis van nieuwe commercelicenties. Deze waarden worden niet geretourneerd als de vlag niet is opgenomen. |
Aanvraagheaders
Voor meer informatie, zie Partnercentrum REST-headers.
Aanvraagtekst
Geen.
Voorbeelden aanvragen
Beschikbaarheid voor SKU per land
Volg dit voorbeeld om een lijst met beschikbaarheid voor een bepaalde SKU per land op te halen:
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
Beschikbaarheid voor VM-reserveringen (Azure-abonnement)
Volg dit voorbeeld om een lijst met beschikbaarheden per land op te halen voor Azure VM-reserverings-SKU's. Dit voorbeeld is bedoeld voor SKU's die van toepassing zijn op Azure-abonnementen:
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
Beschikbaarheid voor VM-reserveringen voor Microsoft Azure-abonnementen (MS-AZR-0145P)
Volg dit voorbeeld voor een lijst met beschikbaarheid per land voor Azure VM-reserveringen die van toepassing zijn op Microsoft Azure-abonnementen (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
REST-antwoord
Als dit lukt, bevat de hoofdtekst van het antwoord een verzameling beschikbaarheidsbronnen.
Geslaagde antwoorden en foutcodes
Elk antwoord wordt geleverd met een HTTP-statuscode die aangeeft of het een succes of een mislukking is, en aanvullende foutopsporingsinformatie. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en andere parameters te lezen. Zie de foutcodes van partnercentrum voor een volledige lijst.
Deze methode retourneert de volgende foutcodes:
HTTP-statuscode | Foutcode | Beschrijving |
---|---|---|
403 | 400030 | Toegang tot het aangevraagde targetSegment is niet toegestaan. |
Antwoordvoorbeeld voor Azure VM-reserveringen (Azure-abonnement)
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"
}
}
Antwoordvoorbeeld voor nieuwe op licenties gebaseerde commerciediensten
Notitie
De nieuwe commerce-ervaringen voor services op basis van licenties omvatten veel nieuwe mogelijkheden en zijn beschikbaar voor alle CSP's (Cloud Solution Provider). Zie het overzicht van nieuwe commerce-ervaringen voor meer informatie.
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": []
}
}
}
}