デバイスの一覧を指定された顧客の既存のバッチにアップロードするUpload a list of devices to an existing batch for the specified customer

適用対象Applies To

  • パートナー センターPartner Center
  • Microsoft Cloud ドイツのパートナー センターPartner Center for Microsoft Cloud Germany

指定された顧客の既存のバッチに、デバイスに関する情報の一覧をアップロードする方法。How to upload a list of information about devices to an existing batch for the specified customer. これにより、既に作成されているデバイスバッチにデバイスが関連付けられます。This associates the devices with a device batch already created.

前提条件Prerequisites

  • パートナー センターの認証に関するページで説明している資格情報。Credentials as described in Partner Center authentication. このシナリオでは、スタンドアロンアプリとアプリ + ユーザー資格情報の両方を使用した認証がサポートされています。This scenario supports authentication with both standalone App and App+User credentials.

  • 顧客 ID です (customer-tenant-id)。A customer ID (customer-tenant-id). お客様の ID がわからない場合は、パートナー センターのダッシュボードで検索できます。If you don't know the customer's ID, you can look it up in the Partner Center dashboard. パートナー センター メニューの [CSP] を選択し、 [顧客] を選択します。Select CSP from the Partner Center menu, followed by Customers. 顧客一覧からお客様を選び、 [アカウント] を選択します。Select the customer from the customer list, then select Account. お客様のアカウント ページで、 [顧客のアカウント情報] セクションの Microsoft ID を探します。On the customer’s Account page, look for the Microsoft ID in the Customer Account Info section. Microsoft ID は、顧客 ID (customer-tenant-id) と同じです。The Microsoft ID is the same as the customer ID (customer-tenant-id).

  • デバイスのバッチ識別子。The device batch identifier.

  • 個々のデバイスに関する情報を提供するデバイスリソースの一覧。The list of device resources that provide the information about the individual devices.

C#C#

既存のデバイスバッチにデバイスの一覧をアップロードするには、まず、 デバイス の種類の新しい [list/dotnet/api/system.string] をインスタンス化し、一覧にデバイスを設定します。To upload a list of devices to an existing device batch, first, instantiate a new [List/dotnet/api/system.collections.generic.list-1) of type Device and populate the list with the devices. 各デバイスを識別するには、少なくとも次の設定されたプロパティの組み合わせが必要です。The following combinations of populated properties are required at a minimum for identifying each device:

次に、顧客識別子を使用して ById メソッドを呼び出し、指定された顧客の操作に対するインターフェイスを取得します。Then, call the IAggregatePartner.Customers.ById method with the customer identifier to retrieve an interface to operations on the specified customer. 次に、デバイスのバッチ識別子を使用して ById メソッドを呼び出し、指定されたバッチの操作へのインターフェイスを取得します。Next, call the DeviceBatches.ById method with the device batch identifier to get an interface to operations for the specified batch. 最後に、デバイスの一覧を使用してデバイスの 作成 または createasync メソッドを呼び出し、デバイスをデバイスバッチに追加します。Finally, call the Devices.Create or CreateAsync method with the list of devices to add the devices to the device batch.

IAggregatePartner partnerOperations;
string selectedCustomerId;
string selectedDeviceBatchId;

List<Device> devicesToBeUploaded = new List<Device>
{
    new Device
    {
        HardwareHash = "DummyHash1234",
        ProductKey = "00329-00000-0003-AA606",
        SerialNumber = "2R9-ZNP67"
    },

    new Device
    {
        HardwareHash = "DummyHash12345",
        ProductKey = "00329-00000-0003-AA606",
        SerialNumber = "2R9-ZNP67"
    }
};

var trackingLocation =
    partnerOperations.Customers.ById(selectedCustomerId).DeviceBatches.ById(selectedDeviceBatchId).Devices.Create(devicesToBeUploaded);

サンプル: コンソールテストアプリSample: Console test app. プロジェクト: パートナーセンター SDK サンプル クラス: CreateDevices.csProject: Partner Center SDK Samples Class: CreateDevices.cs

REST 要求REST request

要求の構文Request syntax

認証方法Method 要求 URIRequest URI
POSTPOST {baseURL}/v1/customers/{customer-id}/deviceBatches/{devicebatch-id}/devices HTTP/1.1{baseURL}/v1/customers/{customer-id}/deviceBatches/{devicebatch-id}/devices HTTP/1.1

URI パラメーターURI parameter

要求の作成時には、次のパスとクエリパラメーターを使用します。Use the following path and query parameters when creating the request.

名前Name 種類Type 必須Required 説明Description
customer-idcustomer-id stringstring はいYes 顧客を識別する GUID 形式の文字列。A GUID-formatted string that identifies the customer.
devicebatch-iddevicebatch-id stringstring はいYes デバイスバッチを識別する文字列識別子。A string identifier that identifies the device batch.

要求ヘッダーRequest headers

詳細については、「パートナー センター REST ヘッダー」を参照してください。For more information, see Partner Center REST headers.

[要求本文]Request body

要求本文には、 デバイス オブジェクトの配列が含まれている必要があります。The request body must contain an array of Device objects. デバイスを識別するための次のフィールドの組み合わせが受け入れられます。The following combinations of fields for identifying a device are accepted:

  • ハードウェアハッシュ + productKey。hardwareHash + productKey.
  • ハードウェアハッシュ + シリアルhardwareHash + serialNumber.
  • ハードウェアハッシュ + productKey + シリアル。hardwareHash + productKey + serialNumber.
  • ハードウェアハッシュのみ。hardwareHash only.
  • productKey のみです。productKey only.
  • シリアルの + oemManufacturerName + modelName。serialNumber + oemManufacturerName + modelName.

要求の例Request example

POST https://api.partnercenter.microsoft.com/v1/customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/deviceBatches/Test/devices HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: e286d69b-7f5f-4098-8999-21d3b54e4e47
MS-CorrelationId: 772871a9-399b-4f3b-b8c7-38f550e4f22a
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 482
Expect: 100-continue

[{
        "Id": null,
        "SerialNumber": "2R9-ZNP67",
        "ProductKey": "00329-00000-0003-AA606",
        "HardwareHash": "DummyHash1234",
        "Policies": null,
        "CreatedBy": null,
        "UploadedDate": "0001-01-01T00:00:00",
        "AllowedOperations": null,
        "Attributes": {
            "ObjectType": "Device"
        }
    }, {
        "Id": null,
        "SerialNumber": "2R9-ZNP67",
        "ProductKey": "00329-00000-0003-AA606",
        "HardwareHash": "DummyHash12345",
        "Policies": null,
        "CreatedBy": null,
        "UploadedDate": "0001-01-01T00:00:00",
        "AllowedOperations": null,
        "Attributes": {
            "ObjectType": "Device"
        }
    }
]

REST 応答REST response

成功した場合、応答には、デバイスのアップロードステータスを取得するために使用できる URI を含む 場所 ヘッダーが含まれます。If successful, the response contains a Location header that has a URI that can be used to retrieve device upload status. 他の関連する REST Api で使用するために、この URI を保存します。Save this URI for use with other related REST APIs.

応答の成功とエラーのコードResponse success and error codes

各応答には、成功または失敗を示す HTTP ステータス コードと、追加のデバッグ情報が付属しています。Each response comes with an HTTP status code that indicates success or failure and additional debugging information. このコード、エラーの種類、追加のパラメーターを読み取るには、ネットワーク トレース ツールを使用します。Use a network trace tool to read this code, error type, and additional parameters. 完全な一覧については、パートナー センターの REST エラーコードに関する記事を参照してください。For the full list, see Partner Center REST error codes.

応答の例Response example

HTTP/1.1 202 Accepted
Content-Length: 0
Location: /customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/batchJobStatus/16c00110-e79a-433d-aa28-f69dd60df671
MS-CorrelationId: 772871a9-399b-4f3b-b8c7-38f550e4f22a
MS-RequestId: e286d69b-7f5f-4098-8999-21d3b54e4e47
MS-CV: OBkGN9pSN0a5xvua.0
MS-ServerId: 101112012
Date: Thu, 28 Sep 2017 20:08:46 GMT