Udostępnij za pośrednictwem


Sprawdź spis pozycji katalogu przy użyciu API Centrum Partnerskiego

Jak sprawdzić spis dla określonego zestawu elementów wykazu.

Warunki wstępne

  • Poświadczenia opisane w uwierzytelnianiu Centrum partnerskiego. Ten scenariusz obsługuje uwierzytelnianie zarówno przy użyciu poświadczeń samodzielnej aplikacji, jak i poświadczeń typu App+User.

  • Co najmniej jeden identyfikator produktu. Opcjonalnie można również określić identyfikatory jednostek SKU.

  • Wszelki dodatkowy kontekst potrzebny do zweryfikowania zapasów jednostek SKU, do których odwołują się podane identyfikatory produktu/jednostki SKU. Te wymagania mogą różnić się w zależności od typu produktu/SKU i można je określić na podstawie właściwości zmiennych inwentarza dla SKU.

C#

Aby sprawdzić spis, utwórz obiekt InventoryCheckRequest przy użyciu obiektu InventoryItem dla każdego elementu do sprawdzenia. Następnie użyj akcesora IAggregatePartner.Extensions, zawęź zakres do Product, a następnie wybierz kraj/region przy użyciu metody ByCountry(). Na koniec wywołaj metodę CheckInventory() za pomocą obiektu InventoryCheckRequest.

IAggregatePartner partnerOperations;
string customerId;
string subscriptionId;
string countryCode;
string productId;

// Build the inventory check request details object.
var inventoryCheckRequest = new InventoryCheckRequest()
{
    TargetItems = new InventoryItem[]{ new InventoryItem { ProductId = productId } },
    InventoryContext = new Dictionary<string, string>()
    {
      { "customerId", customerId },
      { "azureSubscriptionId", subscriptionId }
      { "armRegionName", armRegionName }
    }
};

// Get the inventory results.
var inventoryResults = partnerOperations.Extensions.Product.ByCountry(countryCode).CheckInventory(inventoryCheckRequest);

Żądanie REST

Składnia żądania

Metoda Żądanie URI
POST {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1

Parametr identyfikatora URI

Użyj następującego parametru zapytania, aby sprawdzić spis.

Nazwa Typ Wymagane Opis
kod kraju struna Tak Identyfikator kraju/regionu.

Nagłówki żądań

Aby uzyskać więcej informacji, zobacz Nagłówki REST Centrum Partnerów.

Treść żądania

Szczegóły żądania spisu, składające się z zasobu InventoryCheckRequest, który zawiera co najmniej jeden zasób InventoryItem.

Upewnij się, że subskrypcja platformy Azure określona w treści żądania jest zarejestrowana i włączona do zakupu wystąpień zarezerwowanych platformy Azure. Aby uzyskać szczegółowe informacje na temat procesu rejestracji, zobacz Rejestrowanie subskrypcji.

Przykład żądania

POST https://api.partnercenter.microsoft.com/v1/extensions/product/checkinventory?country=US HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: d1b1981a-e088-4610-870a-eebec96d6bcd
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Client: Partner Center .NET SDK
Content-Type: application/json

{"TargetItems":[{"ProductId":"DZH318Z0BQ3P"}],"InventoryContext":{"customerId":"d6bf25b7-e0a8-4f2d-a31b-97b55cfc774d","azureSubscriptionId":"3A231FBE-37FE-4410-93FD-730D3D5D4C75","armRegionName":"Europe"}}

Ważny

Od czerwca 2023 r. najnowsza wersja zestawu .NET SDK Centrum partnerskiego 3.4.0 jest teraz archiwizowana. Możesz pobrać wersję zestawu SDK z witryny GitHubwraz z plikiem README , który zawiera przydatne informacje.

Zachęcamy partnerów do dalszego korzystania z interfejsów API REST centrum partnerskiego.

Odpowiedź REST

W przypadku powodzenia treść odpowiedzi zawiera kolekcję obiektów InventoryItem wypełnionych szczegółami ograniczeń, jeśli istnieją.

Notatka

Jeśli wejściowy element InventoryItem reprezentuje element, którego nie można odnaleźć w wykazie, nie zostanie on uwzględniony w kolekcji wyjściowej.

Kody powodzenia i błędów w odpowiedziach

Każda odpowiedź zawiera kod stanu HTTP, który wskazuje powodzenie lub niepowodzenie i dodatkowe informacje o debugowaniu. Użyj narzędzia do śledzenia sieci, aby odczytać ten kod, typ błędu i dodatkowe parametry. Aby uzyskać pełną listę, zobacz Kody błędów Centrum partnerskiego.

Przykład odpowiedzi

HTTP/1.1 200 OK
Content-Length: 1021
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: d1b1981a-e088-4610-870a-eebec96d6bcd
X-Locale: en-US
[
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "0039",
        "isRestricted": true,
        "restrictions": [
            {
                "reasonCode": "NotAvailableForSubscription",
                "description": "Restriction identified of type 'Location' with values 'japanwest'.",
                "properties": {
                    "type": "Location",
                    "values": "japanwest"
                }
            }
        ]
    },
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "0038",
        "isRestricted": true,
        "restrictions": [
            {
                "reasonCode": "NotAvailableForSubscription",
                "description": "Restriction identified of type 'Location' with values 'japanwest'.",
                "properties": {
                    "type": "Location",
                    "values": "japanwest"
                }
            }
        ]
    },
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "000S",
        "isRestricted": false,
        "restrictions": []
    },
    {
        "productId": "DZH318Z0BQ3P",
        "skuId": "0011",
        "isRestricted": false,
        "restrictions": []
    }
]