Kontrollera inventeringen av katalogobjekt med hjälp av Partnercenter-API:er
Så här kontrollerar du inventeringen för en specifik uppsättning katalogobjekt.
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.
Ett eller flera produkt-ID:t. Du kan också ange SKU-ID:n.
Eventuella ytterligare kontexter som behövs för att verifiera inventeringen av SKU:erna som refereras av de angivna produkt-/SKU-ID:n. Dessa krav kan variera beroende på typ av produkt/SKU och kan fastställas utifrån SKU:nsInventoryVariables egenskap.
C#
Om du vill kontrollera inventeringen skapar du ett InventoryCheckRequest- objekt med hjälp av ett InventoryItem- objekt för varje objekt som ska kontrolleras. Använd sedan en IAggregatePartner.Extensions accessor, omfångsbegränsa den till Product och välj sedan land/region med hjälp av metoden ByCountry(). Anropa slutligen metoden CheckInventory() med ditt InventoryCheckRequest--objekt.
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);
REST-begäran
Begäransyntax
Metod | Begäran om URI |
---|---|
POST | {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1 |
URI-parametrar
Använd följande frågeparameter för att kontrollera lagret.
Namn | Typ | Krävs | Beskrivning |
---|---|---|---|
landskod | sträng | Ja | Ett lands-/region-ID. |
Begäranhuvuden
Mer information finns i REST-huvuden för Partnercenter.
Begärandetext
Information om inventeringsbegäran som består av en InventoryCheckRequest resurs som innehåller en eller flera InventoryItem resurser.
Kontrollera att Den Azure-prenumeration som anges i begärandetexten är registrerad och aktiverad för att köpa Azure-RU:er. Mer information om registreringsprocessen finns i Registrera en prenumeration.
Exempel på begäran
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"}}
Viktig
Från och med juni 2023 arkiveras nu den senaste Partner Center .NET SDK-versionen 3.4.0. Du kan ladda ned SDK-versionen från GitHub, tillsammans med en readme-fil som innehåller användbar information.
Partner uppmanas att fortsätta att använda rest-API:erna för Partnercenter.
REST-svar
Vid framgång innehåller svarstexten en samling InventoryItem objekt som fyllts med eventuella restriktionsdetaljer.
Note
Om indatan InventoryItem representerar ett objekt som inte kunde hittas i katalogen tas det inte med i utdatasamlingen.
Svarsframgång och felkoder
Varje svar levereras med en HTTP-statuskod som anger lyckad eller misslyckad och ytterligare felsökningsinformation. Använd ett verktyg för nätverksspårning för att läsa den här koden, feltypen och ytterligare parametrar. För den fullständiga listan, se felkoder för Partner Center.
Svarsexempel
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": []
}
]