Ottenere un elenco di disponibilità per uno SKU (per paese/area geografica)
Questo articolo descrive come ottenere una raccolta di disponibilità in un determinato paese/area geografica per un prodotto e uno SKU specificati.
Prerequisiti
Credenziali descritte in Autenticazione del Centro per i partner. Questo scenario supporta l'autenticazione con le credenziali app autonome e App+Utente.
Identificatore del prodotto.
Identificatore sku.
Paese/area geografica.
C#
Per ottenere l'elenco delle disponibilità per uno SKU:
Seguire i passaggi descritti in Ottenere uno SKU per ID per ottenere l'interfaccia per le operazioni di uno SKU specifico.
Dall'interfaccia SKU selezionare la proprietà Availabilities per ottenere un'interfaccia con le operazioni per la disponibilità.
(Facoltativo) Usare il metodo ByTargetSegment() per filtrare le disponibilità in base al segmento di destinazione. Tutti i segmenti tranne le organizzazioni no profit verranno restituiti se non inclusi. Non profit deve essere passato in modo specifico per ottenere disponibilità no profit.
Chiamare Get() o GetAsync() per recuperare una raccolta delle disponibilità per questo 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();
Richiesta REST
Sintassi della richiesta
metodo | URI della richiesta |
---|---|
GET | {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1 |
Parametri URI
Usare il percorso e i parametri di query seguenti per ottenere un elenco di disponibilità per uno SKU.
Nome | Digita | Obbligatorio | Descrizione |
---|---|---|---|
product-id | string | Sì | Stringa che identifica il prodotto. |
sku-id | string | Sì | Stringa che identifica lo SKU. |
codice paese | string | Sì | ID paese/area geografica. |
segmento di destinazione | string | No | Stringa che identifica il segmento di destinazione utilizzato per il filtro. Tutti i segmenti tranne le organizzazioni no profit verranno restituiti se non inclusi. Non profit deve essere passato in modo specifico per ottenere disponibilità no profit. |
reservationScope | string | No | Quando si esegue una query per un elenco di disponibilità per uno SKU di prenotazione di Azure, specificare reservationScope=AzurePlan per ottenere un elenco di disponibilità applicabili ad AzurePlan. Escludere questo parametro per ottenere un elenco di disponibilità applicabili alle sottoscrizioni di Microsoft Azure (MS-AZR-0145P). |
IncludeLifeCycleState | string | No | Flag stringa che può essere impostato su true per restituire i valori dello stato del ciclo di vita per le offerte basate su licenza di New Commerce. Questi valori non verranno restituiti se il flag non è incluso. |
Intestazioni delle richieste
Per altre informazioni, vedi Intestazioni REST del Centro per i partner.
Testo della richiesta
Nessuno.
Esempi di richiesta
Disponibilità per SKU per paese
Seguire questo esempio per ottenere un elenco di disponibilità per uno SKU specifico per paese:
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
Disponibilità per le prenotazioni di macchine virtuali (piano di Azure)
Seguire questo esempio per ottenere un elenco delle disponibilità in base al paese per gli SKU di prenotazione delle macchine virtuali di Azure. Questo esempio riguarda gli SKU che si applicano ai piani di 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
Disponibilità per le prenotazioni di macchine virtuali per le sottoscrizioni di Microsoft Azure (MS-AZR-0145P)
Seguire questo esempio per ottenere un elenco delle disponibilità per paese per le prenotazioni di macchine virtuali di Azure applicabili alle sottoscrizioni di 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
Risposta REST
In caso di esito positivo, il corpo della risposta contiene una raccolta di risorse di disponibilità .
Codici di errore e di esito della risposta
Ogni risposta viene fornita con un codice di stato HTTP che indica l'esito positivo o negativo e altre informazioni di debug. Usare uno strumento di traccia di rete per leggere questo codice, il tipo di errore e altri parametri. Per un elenco completo, vedere Codici di errore del Centro per i partner.
Questo metodo restituisce i codici di errore seguenti:
Codice di stato HTTP | Codice errore | Descrizione |
---|---|---|
403 | 400030 | L'accesso alla destinazione richiestaSegment non è consentito. |
Esempio di risposta per le prenotazioni di macchine virtuali di Azure (piano di 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"
}
}
Esempio di risposta per i nuovi servizi basati su licenza commerciale
Nota
Le nuove esperienze commerciali per i servizi basati su licenza includono molte nuove funzionalità e sono disponibili per tutti i provider di soluzioni cloud. Per altre informazioni, vedere la panoramica delle nuove esperienze commerciali.
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": []
}
}
}
}