Atualizar uma lista de dispositivos com uma política
Aplica-se a: Partner Center
Como atualizar uma lista de dispositivos com uma política de configuração para o cliente especificado.
Pré-requisitos
Credenciais, conforme descrito em Autenticação do Partner Center. Esse cenário oferece suporte à autenticação com credenciais autônomas de Aplicativo e Aplicativo+Usuário.
Uma ID do cliente (
customer-tenant-id
). Se você não souber a ID do cliente, poderá procurá-la no Partner Center selecionando o espaço de trabalho Clientes, o cliente na lista de clientes e, em seguida, Conta. Na página Conta do cliente, procure a ID da Microsoft na seção Informações da Conta do Cliente. A ID da Microsoft é igual à ID do cliente (customer-tenant-id
).O identificador de política.
Os identificadores de dispositivo dos dispositivos a serem atualizados.
C#
Para atualizar uma lista de dispositivos com a política de configuração especificada, primeiro, instancie uma [List/dotnet/api/system.collections.generic.list-1) do tipo [KeyValuePair/dotnet/api/system.collections.generic.keyvaluepair-2)(PolicyCategory,string) e adicione a política a ser aplicada, conforme mostrado no exemplo de código a seguir. Você precisará do identificador de política da política.
Em seguida, crie uma lista de objetos Device a serem atualizados com a política, especificando o identificador de dispositivo e a lista que contém a política a ser aplicada, para cada dispositivo. Em seguida, instancie um objeto DevicePolicyUpdateRequest e defina a propriedade Devices como a lista de objetos de dispositivo.
Para processar a solicitação de atualização de política de dispositivo, chame o método IAggregatePartner.Customers.ById com o identificador de cliente para recuperar uma interface para operações no cliente especificado. Em seguida, recupere a propriedade DevicePolicy para obter uma interface para operações de coleta de dispositivos do cliente. Finalmente, chame o método Update com o objeto DevicePolicyUpdateRequest para atualizar os dispositivos com a política.
IAggregatePartner partnerOperations;
string selectedCustomerId;
string selectedConfigurationPolicyId;
string selectedDeviceId;
// Indicate the policy to apply to the list of devices.
List<KeyValuePair<PolicyCategory, string>>
policyToBeAdded = new List<KeyValuePair<PolicyCategory, string>>
{
new KeyValuePair<PolicyCategory, string>
(PolicyCategory.OOBE, selectedConfigurationPolicyId)
};
// Create a list of devices to be updated with a policy.
List<Device> devices = new List<Device>
{
new Device
{
Id = selectedDeviceId,
Policies=policyToBeAdded
}
};
// Instantiate a DevicePolicyUpdateRequest object.
DevicePolicyUpdateRequest
devicePolicyUpdateRequest = new DevicePolicyUpdateRequest
{
Devices = devices
};
// Process the DevicePolicyUpdateRequest.
var trackingLocation =
partnerOperations.Customers.ById(selectedCustomerId).DevicePolicy.Update(devicePolicyUpdateRequest);
Exemplo: Aplicativo de teste de console. Projeto: Exemplos de SDK do Partner Center Classe: UpdateDevicesPolicy.cs
Solicitação REST
Sintaxe da solicitação
Método | URI da solicitação |
---|---|
PATCH | {baseURL}/v1/customers/{customer-id}/DevicePolicyUpdates HTTP/1.1 |
Parâmetro do URI
Use os seguintes parâmetros de caminho ao criar a solicitação.
Nome | Digitar | Obrigatória | Descrição |
---|---|---|---|
id do cliente | string | Sim | Uma cadeia com formato de GUID que identifica o cliente. |
Cabeçalhos da solicitação
Para obter mais informações, confira Cabeçalhos REST do Partner Center.
Corpo da solicitação
O corpo da solicitação deve conter um recurso DevicePolicyUpdateRequest .
Exemplo de solicitação
PATCH https://api.partnercenter.microsoft.com/v1/customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/DevicePolicyUpdates HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 1b658428-5afa-46d4-af86-c9c6af5634e2
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: 363
Expect: 100-continue
Connection: Keep-Alive
{
"Devices": [{
"Id": "9993-8627-3608-6844-6369-4361-72",
"SerialNumber": null,
"ProductKey": null,
"HardwareHash": null,
"Policies": [{
"Key": "o_o_b_e",
"Value": "15a04610-9229-4e80-94e0-0e826a09c9e2"
}
],
"CreatedBy": null,
"UploadedDate": "0001-01-01T00:00:00",
"AllowedOperations": null,
"Attributes": {
"ObjectType": "Device"
}
}
],
"Attributes": {
"ObjectType": "DevicePolicyUpdateRequest"
}
}
Importante
A partir de junho de 2023, a versão 3.4.0 mais recente do SDK do Partner Center .NET foi arquivada. Você pode baixar a versão do SDK no GitHub, juntamente com um arquivo leiame que contém informações úteis.
Os parceiros são incentivados a continuar a usar as APIs REST do Partner Center.
Resposta REST
Se bem-sucedida, a resposta conterá um cabeçalho Location que tem um URI que pode ser usado para recuperar o status desse processo em lote. Salve esse URI para uso com outras APIs REST relacionadas.
Códigos de êxito e de erro de resposta
Cada resposta vem com um código de status HTTP que indica êxito ou falha e informações de depuração adicionais. Use uma ferramenta de rastreamento de rede para ler esse código, o tipo de erro e os parâmetros adicionais. Para obter a lista completa, confira Códigos de erro REST do Partner Center.
Exemplo de resposta
HTTP/1.1 202 Accepted
Content-Length: 0
Location: /customers/c7f3c849-129f-4b85-a96d-4f8e88b315a3/batchJobStatus/a15f3996-620a-4404-9f1f-4c2de78de0de
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: 1b658428-5afa-46d4-af86-c9c6af5634e2
MS-CV: rCXyd8Z/lUSxUd0P.0
MS-ServerId: 020021921
Date: Thu, 28 Sep 2017 21:33:05 GMT