Cargar una lista de dispositivos para crear un nuevo lote para el cliente especificadoUpload a list of devices to create a new batch for the specified customer

Se aplica a:Applies to:

  • Centro de partnersPartner Center
  • Centro de partners para Microsoft Cloud AlemaniaPartner Center for Microsoft Cloud Germany

Cómo cargar una lista de información acerca de los dispositivos para crear un nuevo lote para el cliente especificado.How to upload a list of information about devices to create a new batch for the specified customer. Esto crea un lote de dispositivos para la inscripción en una implementación sin interacción y asocia los dispositivos y el lote del dispositivo con el cliente especificado.This creates a device batch for enrollment in zero-touch deployment, and associates the devices and the device batch with the specified customer.

Requisitos previosPrerequisites

  • Credenciales tal como se describen en el artículo Autenticación del Centro de partners.Credentials as described in Partner Center authentication. Este escenario admite la autenticación con credenciales de aplicación y usuario.This scenario supports authentication with App+User credentials. Siga el modelo de aplicación segura al usar la autenticación de usuario y aplicación con las API del centro de Partners.Follow the secure app model when using App+User authentication with Partner Center APIs.

  • Un id. de cliente (customer-tenant-id).A customer ID (customer-tenant-id). Si no conoces el identificador del cliente, puedes buscarlo en el panel del Centro de partners.If you don't know the customer's ID, you can look it up in the Partner Center dashboard. Selecciona CSP en el menú del Centro de partners, seguido de Clientes.Select CSP from the Partner Center menu, followed by Customers. En la lista de clientes, selecciona el cliente y, a continuación, elige Cuenta.Select the customer from the customer list, then select Account. En la página Cuenta del cliente, busca el Id. de Microsoft en la sección Información de la cuenta del cliente.On the customer’s Account page, look for the Microsoft ID in the Customer Account Info section. El identificador de Microsoft es el mismo que el de cliente (customer-tenant-id).The Microsoft ID is the same as the customer ID (customer-tenant-id).

  • La lista de recursos de dispositivo que proporcionan información acerca de los dispositivos individuales.The list of device resources that provide the information about the individual devices.

C#C#

Para cargar una lista de dispositivos para crear un nuevo lote de dispositivos:To upload a list of devices to create a new device batch:

  1. Cree una instancia de una nueva [list/dotnet/API/System. Collections. Generic. List -1) de tipo [Device/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device) y rellene la lista con los dispositivos.Instantiate a new [List/dotnet/api/system.collections.generic.list-1) of type [Device/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device) and populate the list with the devices. Se requieren las siguientes combinaciones de propiedades llenas como mínimo para identificar cada dispositivo:The following combinations of populated properties are required at a minimum for identifying each device:

    • [HardwareHash/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.hardwarehash) + [ProductKey/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.ProductKey).[HardwareHash/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.hardwarehash) + [ProductKey/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.productkey).
    • [HardwareHash/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.hardwarehash) + [SerialNumber/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.SerialNumber).[HardwareHash/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.hardwarehash) + [SerialNumber/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.serialnumber).
    • [HardwareHash/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.hardwarehash) + [ProductKey/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.ProductKey) + [SerialNumber/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.SerialNumber).[HardwareHash/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.hardwarehash) + [ProductKey/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.productkey) + [SerialNumber/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.serialnumber).
    • [HardwareHash/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.hardwarehash).[HardwareHash/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.hardwarehash) only.
    • [ProductKey/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.ProductKey) solamente.[ProductKey/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.productkey) only.
    • [SerialNumber/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.SerialNumber) + [OemManufacturerName/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.oemmanufacturername) + [modelname/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.Device.modelname).[SerialNumber/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.serialnumber) + [OemManufacturerName/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.oemmanufacturername) + [ModelName/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.device.modelname).
  2. Cree una instancia de un objeto [DeviceBatchCreationRequest/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.devicebatchcreationrequest) y establezca la propiedad [ID/dotnet/API/microsoft.store.partnercenter.models.devicesdeployment.devicebatchcreationrequest.batchid) en un nombre único de su elección y la propiedad [Devices/dotnet/API/Microsoft.Store.partnercenter.Models.devicesdeployment.devicebatchcreationrequest.Devices) en la lista de dispositivos que se van a cargar.Instantiate a [DeviceBatchCreationRequest/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.devicebatchcreationrequest) object and set the [BatchId/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.devicebatchcreationrequest.batchid) property to a unique name of your choosing, and the [Devices/dotnet/api/microsoft.store.partnercenter.models.devicesdeployment.devicebatchcreationrequest.devices) property to the list of devices to upload.

  3. Procese la solicitud de creación de lotes del dispositivo llamando al método [colección iaggregatepartner. customers. ById/dotnet/API/Microsoft.Store.partnercenter.customers.icustomercollection.byid) con el identificador de cliente para recuperar una interfaz para las operaciones en el cliente especificado.Process the device batch creation request by calling the [IAggregatePartner.Customers.ById/dotnet/api/microsoft.store.partnercenter.customers.icustomercollection.byid) method with the customer identifier to retrieve an interface to operations on the specified customer.

  4. Llame al método [DeviceBatches. Create/dotnet/API/Microsoft.Store.partnercenter.devicesdeployment.idevicesbatchcollection) o [CreateAsync/dotnet/API/Microsoft.Store.partnercenter.devicesdeployment.idevicesbatchcollection) con la solicitud de creación de lotes del dispositivo para crear el lote.Call the [DeviceBatches.Create/dotnet/api/microsoft.store.partnercenter.devicesdeployment.idevicesbatchcollection) or [CreateAsync/dotnet/api/microsoft.store.partnercenter.devicesdeployment.idevicesbatchcollection) method with the device batch creation request to create the batch.

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);

Ejemplo: aplicación de prueba de consola.Sample: Console test app. Proyecto: SDK del centro de Partners ( clase): CreateDeviceBatch.CSProject: Partner Center SDK Samples Class: CreateDeviceBatch.cs

Solicitud RESTREST request

Sintaxis de la solicitudRequest syntax

MétodoMethod URI de la solicitudRequest URI
POSTPOST {baseurl}/v1/customers/{customer-ID}/deviceBatches http/1.1{baseURL}/v1/customers/{customer-id}/deviceBatches HTTP/1.1

Parámetro de URIURI parameter

Use los siguientes parámetros de ruta de acceso al crear la solicitud.Use the following path parameters when creating the request.

NombreName TipoType ObligatorioRequired DescripciónDescription
customer-idcustomer-id stringstring Yes Cadena con formato de GUID que identifica al cliente.A GUID-formatted string that identifies the customer.

Encabezados de solicitudRequest headers

Para obtener más información, consulta Encabezados REST del Centro de partners.For more information, see Partner Center REST headers.

Cuerpo de la solicitudRequest body

El cuerpo de la solicitud debe contener un recurso DeviceBatchCreationRequest .The request body must contain a DeviceBatchCreationRequest resource.

Ejemplo de solicitudRequest example

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: e3f26e6a-044f-4371-ad52-0d91ce4200be
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"
    }
}

Respuesta RESTREST response

Si se realiza correctamente, la respuesta contiene un encabezado de Ubicación que tiene un URI que se puede usar para recuperar el estado de carga del dispositivo.If successful, the response contains a Location header that has a URI that can be used to retrieve device upload status. Guarde este URI para usarlo con otras API de REST relacionadas.Save this URI for use with other related REST APIs.

Códigos de error y de respuesta correctosResponse success and error codes

Cada respuesta incluye un código de estado HTTP que indica si la operación se ha realizado correctamente o con errores y proporciona información de depuración adicional.Each response comes with an HTTP status code that indicates success or failure and additional debugging information. Use una herramienta de seguimiento de red para leer este código, el tipo de error y los parámetros adicionales.Use a network trace tool to read this code, error type, and additional parameters. Para obtener la lista completa, consulta Códigos de error de REST del Centro de partners.For the full list, see Partner Center REST error codes.

Ejemplo de respuestaResponse example

HTTP/1.1 202 Accepted
Content-Length: 0
Location: /customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/batchJobStatus/beba2053-5401-46ff-9223-7e841ed78fbf
MS-CorrelationId: 772871a9-399b-4f3b-b8c7-38f550e4f22a
MS-RequestId: cb82f7d6-f0d9-44d4-82f9-f6eee6e68390
MS-CV: iqOqN0FnaE2y0HcD.0
MS-ServerId: 030020525
Date: Thu, 28 Sep 2017 20:35:35 GMT