Kontrola inventáře položek katalogu pomocí rozhraní API Partnerského centra
Postup kontroly inventáře pro konkrétní sadu položek katalogu
Požadavky
Přihlašovací údaje popsané v ověřování v Partnerském centru. Tento scénář podporuje ověřování jak pomocí samostatných přihlašovacích údajů aplikace, tak pomocí přihlašovacích údajů aplikace a uživatele.
Jedno nebo více ID produktů. Volitelně je možné zadat také ID skladových položek.
Veškeré další kontexty potřebné k ověření inventáře skladových položek, na které odkazují poskytnuté ID produktů nebo skladových položek. Tyto požadavky se mohou lišit podle typu produktu/SKU a lze je určit z vlastnosti InventoryVariablesSKU .
C#
Pokud chcete zkontrolovat inventář, sestavte objekt InventoryCheckRequest pomocí objektu InventoryItem pro každou položku, která se má zkontrolovat. Poté použijte IAggregatePartner.Extensions přístupový prvek, omezte ho na Product a potom vyberte zemi/oblast pomocí metody ByCountry(). Nakonec zavolejte metodu CheckInventory() s objektem 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);
Požadavek REST
Syntaxe požadavku
Metoda | Požadavek na URI |
---|---|
POST | {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1 |
Parametr identifikátoru URI
Ke kontrole inventáře použijte následující parametr dotazu.
Jméno | Typ | Povinné | Popis |
---|---|---|---|
kód země | řetězec | Ano | ID země/oblasti. |
Hlavičky požadavku
Další informace najdete v části Záhlaví REST Partnerského centra.
Text požadavku
Podrobnosti žádosti o zásoby, které se skládají z prostředku InventoryCheckRequest obsahujícího jeden nebo více prostředků InventoryItem.
Ujistěte se, že předplatné Azure zadané v textu požadavku je registrované a aktivované k nákupu rezervovaných instancí Azure. Podrobnosti o procesu registrace najdete v tématu Registrace předplatného.
Příklad požadavku
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"}}
Důležitý
Od června 2023 se teď archivuje nejnovější verze sady .NET SDK partnerského centra 3.4.0. Verzi sady SDK můžete stáhnout z GitHubuspolečně s souborem readme, který obsahuje užitečné informace.
Doporučujeme, aby partneři nadále používali rozhraní REST API Partnerského centra.
Odpověď REST
V případě úspěchu obsahuje text odpovědi kolekci objektů InventoryItem vyplněných podrobnostmi o omezení, pokud se nějaká použijí.
Poznámka
Pokud vstupní InventoryItem představuje položku, která nebyla nalezena v katalogu, nebude zahrnuta do výstupní kolekce.
Kódy úspěšnosti a chyb odpovědi
Každá odpověď obsahuje stavový kód HTTP, který označuje úspěch nebo selhání a další informace o ladění. Ke čtení tohoto kódu, typu chyby a dalších parametrů použijte nástroj pro trasování sítě. Pro úplný seznam se podívejte na kódy chyb pro Partnerské centrum.
Příklad odpovědi
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": []
}
]