Abrufen einer Liste von Verfügbarkeiten für eine SKU (nach Land/Region)

In diesem Artikel wird beschrieben, wie Sie eine Sammlung von Verfügbarkeiten in einem bestimmten Land/einer bestimmten Region für ein bestimmtes Produkt und eine SKU erhalten.

Voraussetzungen

  • Anmeldeinformationen, wie unter Partner Center-Authentifizierung beschrieben. Dieses Szenario unterstützt die Authentifizierung mit eigenständigen App- und App+Benutzeranmeldeinformationen.

  • Ein Produktbezeichner.

  • Ein SKU-Bezeichner.

  • Ein Land/eine Region.

C#

So rufen Sie die Liste der Verfügbarkeiten für eine SKU ab:

  1. Führen Sie die Schritte unter "Abrufen einer SKU nach ID " aus, um die Schnittstelle für die Vorgänge einer bestimmten SKU abzurufen.

  2. Wählen Sie auf der SKU-Schnittstelle die Availabilities-Eigenschaft aus, um eine Schnittstelle mit den Vorgängen für Verfügbarkeiten abzurufen.

  3. (Optional) Verwenden Sie die ByTargetSegment()- Methode, um die Verfügbarkeiten nach Zielsegment zu filtern. Alle Segmente mit Ausnahme gemeinnütziger Organisationen werden zurückgegeben, wenn sie nicht enthalten sind. Gemeinnützige Organisationen müssen speziell übergeben werden, um gemeinnützige Verfügbarkeiten zu erhalten.

  4. Rufen Sie Get() oder GetAsync() auf, um eine Sammlung der Verfügbarkeiten für diese SKU abzurufen.

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-Anforderung

Anforderungssyntax

Methode Anforderungs-URI
GET {baseURL}/v1/products/{product-id}/skus/{sku-id}/availabilities?country={country-code}&targetSegment={target-segment} HTTP/1.1

URI-Parameter

Verwenden Sie den folgenden Pfad und Abfrageparameter, um eine Liste der Verfügbarkeiten für eine SKU abzurufen.

Name Type Erforderlich Beschreibung
product-id Zeichenfolge Ja Eine Zeichenfolge, die das Produkt identifiziert.
sku-id Zeichenfolge Ja Eine Zeichenfolge, die die SKU identifiziert.
Ländercode Zeichenfolge Ja Eine Landes-/Regions-ID.
Zielsegment Zeichenfolge Nein Eine Zeichenfolge, die das Zielsegment identifiziert, das zum Filtern verwendet wird. Alle Segmente mit Ausnahme gemeinnütziger Organisationen werden zurückgegeben, wenn sie nicht enthalten sind. Gemeinnützige Organisationen müssen speziell übergeben werden, um gemeinnützige Verfügbarkeiten zu erhalten.
reservationScope Zeichenfolge Nein Wenn Sie eine Liste der Verfügbarkeiten für eine Azure-Reservierungs-SKU abfragen, geben Sie an reservationScope=AzurePlan , eine Liste der Verfügbarkeiten abzurufen, die für AzurePlan gelten. Schließen Sie diesen Parameter aus, um eine Liste der Verfügbarkeiten abzurufen, die für Microsoft Azure-Abonnements (MS-AZR-0145P) gelten.

Anforderungsheader

Weitere Informationen finden Sie unter Partner Center-REST-Header.

Anforderungstext

Keine.

Beispiele für Anforderungen

Verfügbarkeiten für SKU nach Land

Folgen Sie diesem Beispiel, um eine Liste der Verfügbarkeiten für eine bestimmte SKU nach Land abzurufen:

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: 83b644b5-e54a-4bdc-b354-f96c525b3c58

Verfügbarkeiten für VM-Reservierungen (Azure-Plan)

Folgen Sie diesem Beispiel, um eine Liste der Verfügbarkeiten nach Land für Azure VM-Reservierungs-SKUs abzurufen. Dieses Beispiel gilt für SKUs, die für Azure-Pläne gelten:

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: 7c1f6619-c176-4040-a88f-2c71f3ba4533

Verfügbarkeiten für VM-Reservierungen für Microsoft Azure (MS-AZR-0145P)-Abonnements

Folgen Sie diesem Beispiel, um eine Liste der Verfügbarkeiten nach Land für Azure-VM-Reservierungen abzurufen, die für Microsoft Azure-Abonnements (MS-AZR-0145P) gelten.

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: 7c1f6619-c176-4040-a88f-2c71f3ba4533

REST-Antwort

Bei erfolgreicher Ausführung enthält der Antworttext eine Sammlung von Verfügbarkeitsressourcen.

Erfolgs- und Fehlercodes der Antwort

Jede Antwort enthält einen HTTP-Statuscode, der Aufschluss darüber gibt, ob der Vorgang erfolgreich war, sowie ggf. zusätzliche Debuginformationen. Verwende ein Tool für die Netzwerkablaufverfolgung, um diesen Code, den Fehlertyp und zusätzliche Parameter zu lesen. Eine vollständige Liste finden Sie unter Partner Center-Fehlercodes.

Diese Methode gibt die folgenden Fehlercodes zurück:

HTTP-Statuscode Fehlercode Beschreibung
403 400030 Der Zugriff auf das angeforderte targetSegment ist nicht zulässig.

Antwortbeispiel für Azure VM Reservations (Azure Plan)

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: 83b644b5-e54a-4bdc-b354-f96c525b3c58,83b644b5-e54a-4bdc-b354-f96c525b3c58
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"
    }
}

Antwortbeispiel für neue commerce-lizenzbasierte Dienste

Hinweis

Die neuen Commerce-Umgebungen für lizenzbasierte Dienste enthalten zahlreiche neue Funktionen und stehen allen Cloud Solution Providern (CSP) zur Verfügung. Weitere Informationen finden Sie in der Übersicht über neue Commerce-Erfahrungen.

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/10.0
MS-CorrelationId: 83b644b5-e54a-4bdc-b354-f96c525b3c58,83b644b5-e54a-4bdc-b354-f96c525b3c58
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": []
            }
        }
    }
}