Aracılığıyla paylaş


İş 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": []
    }
]