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 verificatie in partnercentrum. 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 Een SKU ophalen op id om de interface voor de bewerkingen van een specifieke SKU op te halen.
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 doorgegeven om beschikbaarheid van non-profitorganisaties te krijgen.
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 | Type | 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 doorgegeven om beschikbaarheid van non-profitorganisaties te krijgen. |
reservationScope | 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). |
IncludeLifeCycleState | 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
Zie Rest-headers in Partnercentrum voor meer informatie.
Aanvraagtekst
Geen.
Voorbeelden van 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 beschikbaarheid 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 dat het succes of de fout optreedt en meer informatie over foutopsporing. 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 commercelicentieservices
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": []
}
}
}
}