De inventaris van catalogusitems controleren met behulp van Partnercentrum-API's
De inventaris controleren op een specifieke set catalogusitems.
Vereisten
Referenties zoals beschreven in verificatie in partnercentrum. Dit scenario ondersteunt verificatie met zowel zelfstandige app- als app+gebruikersreferenties.
Een of meer product-id's. U kunt desgewenst ook SKU-id's opgeven.
Eventuele aanvullende context die nodig is voor het controleren van de inventaris van de SKU('s) waarnaar wordt verwezen door de opgegeven product-/SKU-id(s). Deze vereisten kunnen variƫren per type product/SKU en kunnen worden bepaald op basis van de eigenschap InventoryVariables van de SKU.
C#
Als u de inventaris wilt controleren, maakt u een InventoryCheckRequest-object met behulp van een InventoryItem-object voor elk item dat moet worden gecontroleerd. Gebruik vervolgens een IAggregatePartner.Extensions-accessor, stel deze in op Product en selecteer vervolgens het land/de regio met behulp van de methode ByCountry(). Roep tot slot de methode CheckInventory() aan met uw InventoryCheckRequest-object .
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-aanvraag
Aanvraagsyntaxis
Wijze | Aanvraag-URI |
---|---|
POST | {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1 |
URI-parameter
Gebruik de volgende queryparameter om de inventaris te controleren.
Name | Type | Vereist | Beschrijving |
---|---|---|---|
landcode | tekenreeks | Ja | Een land-/regio-id. |
Aanvraagheaders
Zie Rest-headers in Partnercentrum voor meer informatie.
Aanvraagtekst
De details van de inventarisaanvraag, bestaande uit een InventoryCheckRequest-resource die een of meer InventoryItem-resources bevat.
Zorg ervoor dat het Azure-abonnement dat is opgegeven in de aanvraagbody is geregistreerd en is ingeschakeld voor het aanschaffen van Azure-RU's. Zie Een abonnement registreren voor meer informatie over het registratieproces.
Aanvraagvoorbeeld
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"}}
Belangrijk
Vanaf juni 2023 wordt de nieuwste Versie van Partner Center .NET SDK 3.4.0 gearchiveerd. U kunt de SDK-release downloaden van GitHub, samen met een leesmij-bestand dat nuttige informatie bevat.
Partners worden aangemoedigd om de REST API's van partnercentrum te blijven gebruiken.
REST-antwoord
Als dit lukt, bevat de hoofdtekst van het antwoord een verzameling InventoryItem-objecten die zijn gevuld met de beperkingsgegevens, indien van toepassing.
Notitie
Als een invoerinventarisitem een item vertegenwoordigt dat niet in de catalogus kan worden gevonden, wordt het niet opgenomen in de uitvoerverzameling.
Geslaagde antwoorden en foutcodes
Elk antwoord wordt geleverd met een HTTP-statuscode die aangeeft dat de fout is geslaagd of mislukt en aanvullende informatie over foutopsporing. Gebruik een hulpprogramma voor netwerktracering om deze code, het fouttype en aanvullende parameters te lezen. Zie foutcodes in Partnercentrum voor de volledige lijst.
Responsvoorbeeld
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": []
}
]