次の方法で共有


パートナー センター API を使用してカタログ項目のインベントリを確認する

カタログ品目の特定のセットの在庫を確認する方法。

[前提条件]

  • パートナー センター認証で説明されている資格証明。 このシナリオでは、スタンドアロン アプリとアプリ + ユーザーの両方の資格情報を使った認証がサポートされています。

  • 1 つ以上の製品 ID。 オプションで、SKU ID も指定できます。

  • 提供された製品/SKU IDによって参照されるSKUの在庫を確認するために必要な追加のコンテキスト。 これらの要件は、製品/SKU のタイプによって異なる場合があり、 SKU のInventoryVariables プロパティから決定できます。

C#

インベントリを確認するには、チェックする各アイテムの InventoryItem オブジェクトを使用して InventoryCheckRequest オブジェクトを作成します。 次に、 IAggregatePartner.Extensions アクセサーを使用し、 スコープを Product に絞り込み、 ByCountry() メソッドを使用して国/地域を選択します。 最後に、InventoryCheckRequest オブジェクトを使用して CheckInventory() メソッドを呼び出します。

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 要求

リクエスト構文

メソッド URI リクエスト
投稿 {baseURL}/v1/extensions/product/checkInventory?country={country-code} HTTP/1.1

URI パラメーター

次のクエリパラメータを使用して、インベントリを確認します。

名前 タイプ 必須 説明
国コード ひも イエス 国/地域の ID。

要求ヘッダー

詳細については、「パートナー センター REST ヘッダー」を参照してください。

リクエストの本文

インベントリ要求の詳細。1 つ以上の InventoryItem リソースを含む InventoryCheckRequest リソースで構成されます。

要求本文で指定された Azure サブスクリプションが登録され、Azure RI を購入できる状態になっていることを確認します。 登録プロセスの詳細については、「 サブスクリプションの登録 」を参照してください。

要求の例

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"}}

Von Bedeutung

2023 年 6 月の時点で、最新のパートナー センター .NET SDK リリース 3.4.0 がアーカイブされるようになりました。 有用な情報を含む readme ファイルと共に、GitHub から SDK リリースをダウンロードできます。

パートナーは、引き続き パートナー センター REST API を使用することをお勧めします。

REST 応答

成功した場合、応答本文には、制限の詳細 (該当する場合) が入力された InventoryItem オブジェクトのコレクションが含まれます。

入力 InventoryItem がカタログに見つからなかったアイテムを表している場合、そのアイテムは出力コレクションに含まれません。

応答の成功とエラー コード

各応答には、成功または失敗を示す HTTP ステータス コードと、追加のデバッグ情報が付属しています。 このコード、エラーの種類、追加のパラメーターを読み取るには、ネットワーク トレース ツールを使用します。 完全な一覧については、「パートナー センターのエラー コード 参照してください。

応答の例

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