İş Ortağı Merkezi API'lerini kullanarak katalog öğelerinin envanterini denetleme
Belirli bir katalog öğeleri kümesinin envanterini denetleme.
Önkoşullar
İş Ortağı Merkezi kimlik doğrulaması'nde belirtildiği şekilde kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.
Bir veya daha fazla ürün kimlikleri. İsteğe bağlı olarak, SKU kimlikleri de belirtilebilir.
Sağlanan ürün/SKU kimlikleri ile referans verilen SKU'ların envanterini doğrulamak için gereken tüm ek bağlam. Bu gereksinimler ürün/SKU türüne göre farklılık gösterebilir ve SKU'sununInventoryVariables özelliğinden belirlenebilir.
C#
Envanteri denetlemek için, denetlenecek her öğe için bir InventoryItem nesnesi kullanarak bir InventoryCheckRequest nesnesi oluşturun. Ardından IAggregatePartner.Extensions erişimcisini kullanın, kapsamı Product olarak daraltın ve ardından ByCountry() yöntemini kullanarak ülkeyi/bölgeyi seçin. Son olarak, InventoryCheckRequest nesnenizle CheckInventory() yöntemini çağırın.
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 isteği
İstek söz dizimi
Yöntem | İstek URI'si |
---|---|
POST | {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1 |
URI parametresi
Envanteri denetlemek için aşağıdaki sorgu parametresini kullanın.
İsim | Tür | Gerekli | Açıklama |
---|---|---|---|
ülke kodu | dizgi | Evet | Ülke/bölge kimliği. |
İstek üst bilgileri
Daha fazla bilgi için bkz. İş Ortağı Merkezi REST üst bilgileri.
İstek gövdesi
Bir veya daha fazla InventoryItem kaynağı içeren InventoryCheckRequest kaynağından oluşan stok talebinin detayları.
İstek gövdesinde belirtilen Azure Aboneliğinin kayıtlı olduğundan ve Azure RI satın almak için etkinleştirildiğinden emin olun. Kayıt işlemiyle ilgili ayrıntılar için bkz. Abonelik Kaydet.
İstek örneği
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"}}
Önemli
Haziran 2023 itibarıyla en son İş Ortağı Merkezi .NET SDK sürümü 3.4.0 arşivlenmiştir. SDK sürümünü GitHub 'danyararlı bilgiler içeren bir benioku dosyası indirebilirsiniz.
İş ortaklarının İş Ortağı Merkezi REST API'lerini kullanmaya devam etmesi teşvik edilir.
REST yanıtı
Başarılı olursa yanıt gövdesi, varsa kısıtlama ayrıntılarıyla doldurulmuş InventoryItem nesnelerinin bir koleksiyonunu içerir.
Not
InventoryItem girdisi katalogda bulunamayan bir öğeyi temsil ederse, çıkış koleksiyonuna dahil edilmeyecektir.
Yanıt başarısı ve hata kodları
Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz. İş Ortağı Merkezi hata kodları.
Yanıt örneği
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": []
}
]