Dela via


Hämta en lista över tillgängligheter för en SKU (efter land/region)

Den här artikeln beskriver hur du hämtar en samling tillgängligheter i ett visst land/en viss region för en angiven produkt och SKU.

Förutsättningar

  • Autentiseringsuppgifter enligt beskrivningen i Partnercenter-autentisering. Det här scenariot stöder autentisering med både fristående app- och App+User-autentiseringsuppgifter.

  • En produktidentifierare.

  • En SKU-identifierare.

  • Ett land/en region.

C#

Så här hämtar du listan över tillgängligheter för en SKU:

  1. Följ stegen i Hämta en SKU efter ID för att hämta gränssnittet för en specifik SKU:s åtgärder.

  2. I SKU-gränssnittet väljer du egenskapen Availabilities för att få ett gränssnitt med åtgärderna för tillgänglighet.

  3. (Valfritt) Använd metoden ByTargetSegment() för att filtrera tillgängligheten efter målsegment. Alla segment utom ideella organisationer returneras om de inte ingår. Ideella organisationer måste skickas specifikt för att få tillgång till ideella organisationer.

  4. Anropa Get() eller GetAsync() för att hämta en samling av tillgängligheten för denna 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();

REST-begäran

Syntax för begäran

Metod URI för förfrågan
GET {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1

URI-parametrar

Använd följande sökväg och frågeparametrar för att hämta en lista över tillgängligheter för en SKU.

Namn Typ Obligatoriskt Beskrivning
produkt-ID sträng Ja En sträng som identifierar produkten.
sku-id sträng Ja En sträng som identifierar SKU:n.
landskod sträng Ja Ett lands-/region-ID.
målsegment sträng Nej En sträng som identifierar målsegmentet som används för filtrering. Alla segment utom ideella organisationer returneras om de inte ingår. Ideella organisationer måste skickas specifikt för att få tillgång till ideella organisationer.
reservationScope sträng Nej När du frågar efter en lista över tillgängligheter för en Azure Reservation SKU anger du reservationScope=AzurePlan för att hämta en lista över tillgängligheter som gäller för AzurePlan. Undanta den här parametern för att hämta en lista över tillgängligheter som gäller för Microsoft Azure-prenumerationer (MS-AZR-0145P).
IncludeLifeCycleState sträng Nej En strängflagga som kan anges till true för att returnera livscykeltillståndsvärden för licensbaserade erbjudanden i New Commerce. Dessa värden returneras inte om flaggan inte ingår.

Begärandehuvuden

Mer information finns i REST-huvuden för Partnercenter.

Begärandetext

Inga.

Exempel på begäran

Tillgänglighet för SKU per land

Följ det här exemplet för att hämta en lista över tillgängligheter för en viss SKU per land:

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

Tillgänglighet för VM-reservationer (Azure-plan)

Följ det här exemplet om du vill få en lista över tillgänglighet per land för SKU:er för Azure VM-reservationer. Det här exemplet gäller för SKU:er som gäller för Azure-planer:

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

Tillgänglighet för VM-reservationer för Microsoft Azure-prenumerationer (MS-AZR-0145P)

Följ det här exemplet för att hämta en lista över tillgänglighet per land för Azure VM-reservationer som gäller för Microsoft Azure-prenumerationer (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-svar

Om det lyckas innehåller svarstexten en samling tillgänglighetsresurser.

Svarsframgång och felkoder

Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och mer felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och andra parametrar. En fullständig lista finns i Felkoder för Partnercenter.

Den här metoden returnerar följande felkoder:

HTTP-statuskod Felkod beskrivning
403 400030 Åtkomst till det begärda targetSegment tillåts inte.

Svarsexempel för Azure VM-reservationer (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"
    }
}

Svarsexempel för nya licensbaserade tjänster för handel

Kommentar

De nya handelsupplevelserna för licensbaserade tjänster innehåller många nya funktioner och är tillgängliga för alla Molnlösningsleverantör (CSP:er). Mer information finns i översikten över nya handelsupplevelser.

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": []
            }
        }
    }
}