Поделиться через


Получение списка устройств для создания пакета для указанного клиента

Область применения: Центр партнеров

Как отправить список сведений об устройствах для создания пакета для указанного клиента. При этом создается пакет устройств для регистрации в развертывании нулевого касания и связывает устройства и пакет устройства с указанным клиентом.

Необходимые компоненты

  • Учетные данные, описанные в статье о проверке подлинности в Центре партнеров. Этот сценарий поддерживает проверку подлинности с использованием учетных данных приложений и пользователей. Следуйте модели безопасного приложения при использовании проверки подлинности App+User с API Центра партнеров.

  • Идентификатор клиента (customer-tenant-id). Если вы не знаете идентификатор клиента, его можно найти в Центре партнеров, выбрав рабочую область "Клиенты" , затем клиент из списка клиентов, а затем учетная запись. На странице "Учетная запись клиента" найдите идентификатор Майкрософт в разделе "Сведения о учетной записи клиента". Идентификатор Майкрософт совпадает с идентификатором клиента (customer-tenant-id).

  • Список ресурсов устройств, которые предоставляют сведения об отдельных устройствах.

C#

Чтобы отправить список устройств для создания пакета устройств, выполните указанные ниже действия.

  1. Создайте экземпляр [List/dotnet/api/system.collections.generic.list-1) типа Device и заполните список устройствами. Для идентификации каждого устройства требуются следующие сочетания заполненных свойств:

  2. Создайте экземпляр объекта DeviceBatchCreationRequest и задайте для свойства BatchId уникальное имя выбранного объекта, а свойство Devices — список устройств для отправки.

  3. Обработайте запрос на создание пакета устройства, вызвав метод IAggregatePartner.Customers.ById с идентификатором клиента, чтобы получить интерфейс для операций с указанным клиентом.

  4. Вызовите метод DeviceBatches.Create или CreateAsync с запросом на создание пакета устройства, чтобы создать пакет.

IAggregatePartner partnerOperations;
string selectedCustomerId;

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

DeviceBatchCreationRequest
    newDeviceBatch = new DeviceBatchCreationRequest
{
    BatchId = "SDKTestDeviceBatch",
    Devices = devicesToBeUploaded
};

var trackingLocation =
    partnerOperations.Customers.ById(selectedCustomerId).DeviceBatches.Create(newDeviceBatch);

Пример: тестовое приложение консоли. Проект: Класс примеров пакета SDK Для Центра партнеров: CreateDeviceBatch.cs

Запрос REST

Синтаксис запроса

Способ URI запроса
POST {baseURL}/v1/customers/{customer-id}/deviceBatches HTTP/1.1

Параметр универсального кода ресурса

При создании запроса используйте следующие параметры пути.

Имя. Type Обязательно Описание
customer-id строка Да Строка в формате GUID, определяющая клиент.

Заголовки запросов

Дополнительные сведения см. в статье о заголовках REST Центра партнеров.

Текст запроса

Текст запроса должен содержать ресурс DeviceBatchCreationRequest .

Пример запроса

POST https://api.partnercenter.microsoft.com/v1/customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/deviceBatches HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: c245d5f2-1de3-4ae0-9e42-95e38e3cb8ff
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
MS-PartnerCenter-Application: Partner Center .NET SDK Samples
Content-Type: application/json
Host: api.partnercenter.microsoft.com
Content-Length: 340
Expect: 100-continue
Connection: Keep-Alive
{
    "BatchId": "SDKTestDeviceBatch",
    "Devices": [{
            "Id": null,
            "SerialNumber": "1R9-ZNP67",
            "ProductKey": "00329-00000-0003-AA606",
            "HardwareHash": "DummyHash123",
            "Policies": null,
            "CreatedBy": null,
            "UploadedDate": "0001-01-01T00:00:00",
            "AllowedOperations": null,
            "Attributes": {
                "ObjectType": "Device"
            }
        }
    ],
    "Attributes": {
        "ObjectType": "DeviceBatchCreationRequest"
    }
}

Внимание

По состоянию на июнь 2023 г. последняя версия пакета SDK для .NET для Центра партнеров 3.4.0 теперь архивируется. Вы можете скачать выпуск пакета SDK из GitHub вместе с файлом чтения, содержащим полезные сведения.

Партнерам рекомендуется продолжать использовать REST API Центра партнеров.

Ответ REST

В случае успешного выполнения ответ содержит заголовок location, имеющий универсальный код ресурса (URI), который можно использовать для получения состояния отправки устройства. Сохраните этот универсальный код ресурса (URI) для использования с другими связанными REST API.

Коды успешного выполнения и ошибок в ответе

Каждый ответ сопровождается кодом состояния HTTP, обозначающим успешное или неудачное выполнение, и дополнительными сведениями для отладки. Используйте средство трассировки сети, чтобы просматривать этот код, тип ошибки и дополнительные параметры. Полный список ответов есть в статье Коды ошибок REST в Центре партнеров.

Пример ответа

HTTP/1.1 202 Accepted
Content-Length: 0
Location: /customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/batchJobStatus/beba2053-5401-46ff-9223-7e841ed78fbf
MS-CorrelationId: bbbb1111-cc22-3333-44dd-555555eeeeee
MS-RequestId: cb82f7d6-f0d9-44d4-82f9-f6eee6e68390
MS-CV: iqOqN0FnaE2y0HcD.0
MS-ServerId: 030020525
Date: Thu, 28 Sep 2017 20:35:35 GMT