Listar dispositivos

Namespace: microsoft.graph

Importante

As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.

Recupere uma lista de dispositivos registrados no diretório.

Essa API está disponível nas seguintes implantações de nuvem nacional.

Serviço global Governo dos EUA L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões com privilégios mais elevados
Delegado (conta corporativa ou de estudante) Device.Read.All Directory.Read.All, Directory.ReadWrite.All
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application Device.Read.All Device.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All

Importante

Para acesso delegado usando contas corporativas ou de estudante, o usuário conectado deve receber uma função do Microsoft Entra com suporte ou uma função personalizada que conceda as permissões necessárias para esta operação. Esta operação dá suporte às seguintes funções internas, que fornecem apenas o menor privilégio necessário:

  • Usuários
  • Leitores de Diretório
  • Escritores de diretório
  • Administrador de Conformidade
  • Gerenciadores de Dispositivos
  • Administrador de Aplicativos
  • Leitor de segurança
  • Administrador de Segurança
  • Administrador de Função Privilegiada
  • Administrador de Aplicativos de Nuvem
  • Aprovador de Acesso do Sistema de Proteção de Dados do Cliente
  • Administrador do Dynamics 365
  • Administrador do Power BI
  • Análise de Área de Trabalho Administrador
  • Administrador da Área de Trabalho Gerenciada da Microsoft
  • Administrador de Comunicações do Teams
  • Engenheiro de Suporte de Comunicações de Equipes
  • Especialista em suporte à comunicação de equipes
  • Administrador do Teams
  • Administrador de Dados de Conformidade
  • Operador de Segurança
  • Administrador do Kaizala
  • Leitor Global
  • Revisor de Diretório
  • Administrador do Windows 365

Solicitação HTTP

GET /devices

Parâmetros de consulta opcionais

Esse método dá suporte aos $countparâmetros de consulta , $expand, , $filter$search$orderby$select, , e $top OData para ajudar a personalizar a resposta. Algumas consultas são suportadas somente quando se usa o cabeçalho ConsistencyLevel definido como eventual e $count. Para obter mais informações, consulte Recursos avançados de consulta em objetos de diretório.

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
ConsistencyLevel eventualmente. Este cabeçalho e $count são necessários quando se utiliza $search, ou em uso específico de $filter. Para obter mais informações sobre o uso de ConsistencyLevel e $count, consulte Recursos avançados de consulta em objetos de diretório.

Corpo da solicitação

Não forneça um corpo de solicitação para esse método.

Resposta

Se bem-sucedido, este método retorna um código de resposta 200 OK e uma coleção de objetos device no corpo da resposta.

Exemplos

Exemplo 1: obter uma lista de dispositivos

Solicitação

O exemplo a seguir mostra uma solicitação.

GET https://graph.microsoft.com/beta/devices

Resposta

O exemplo a seguir mostra a resposta.

Observação: O objeto de resposta exibido aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "value": [
    {
      "accountEnabled":true,
      "deviceId":"00000000-0000-0000-0000-000000000000",
      "deviceVersion":1,
      "displayName":"contoso_Android",
      "Manufacturer":"Google",
      "Model":"Pixel 3a",
      "operatingSystemVersion":"10.0"
    }
  ]
}

Exemplo 2: Obter apenas uma contagem de dispositivos

Solicitação

O exemplo a seguir mostra uma solicitação. Esta solicitação exige o cabeçalho ConsistencyLevel definido como eventual porque $count está na solicitação. Para obter mais informações sobre o uso de ConsistencyLevel e $count, consulte Recursos avançados de consulta em objetos de diretório.

Observação: os parâmetros de consulta $count e $search não estão disponíveis atualmente nos locatários do Azure Active Directory B2C.

GET https://graph.microsoft.com/beta/devices/$count
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 200 OK
Content-type: text/plain

294

Exemplo 3: Listar todos os dispositivos e retornar apenas as propriedades id e extensionAttributes

Solicitação

GET https://graph.microsoft.com/beta/devices?$select=id,extensionAttributes

Resposta

O exemplo a seguir mostra a resposta.

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#devices(id,extensionAttributes)",
    "value": [
        {
            "id": "6a59ea83-02bd-468f-a40b-f2c3d1821983",
            "extensionAttributes": {
                "extensionAttribute1": null,
                "extensionAttribute2": null,
                "extensionAttribute3": null,
                "extensionAttribute4": null,
                "extensionAttribute5": null,
                "extensionAttribute6": null,
                "extensionAttribute7": null,
                "extensionAttribute8": null,
                "extensionAttribute9": null,
                "extensionAttribute10": null,
                "extensionAttribute11": null,
                "extensionAttribute12": null,
                "extensionAttribute13": null,
                "extensionAttribute14": null,
                "extensionAttribute15": null
            }
        }
    ]
}

Exemplo 4: use $filter e $top para obter um dispositivo com um nome de exibição que comece com "a", incluindo uma contagem de objetos retornados

Solicitação

O exemplo a seguir mostra uma solicitação. Esta solicitação exige o cabeçalho ConsistencyLevel definido como eventual e a cadeia de caracteres de consulta $count=true porque a solicitação tem os parâmetros de consulta $orderby e $filter. Para obter mais informações sobre o uso de ConsistencyLevel e $count, consulte Recursos avançados de consulta em objetos de diretório.

Observação: os parâmetros de consulta $count e $search não estão disponíveis atualmente nos locatários do Azure Active Directory B2C.

GET https://graph.microsoft.com/beta/devices?$filter=startswith(displayName, 'a')&$count=true&$top=1&$orderby=displayName
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#devices",
  "@odata.count":1,
  "value":[
    {
      "accountEnabled":true,
      "deviceId":"00000000-0000-0000-0000-000000000000",
      "deviceVersion":1,
      "displayName":"a_device_1",
      "Manufacturer":"Google",
      "Model":"Pixel 3a",
      "operatingSystemVersion":"10.0",
      "hostNames":[]
    },
    {
      "accountEnabled":true,
      "deviceId":"00000000-0000-0000-0000-000000000001",
      "deviceVersion":1,
      "displayName":"a_device_1",
      "Manufacturer":"Microsoft",
      "Model":"Surface",
      "operatingSystemVersion":"windows10EnterpriseN",
      "hostNames":["contoso.com", "device_1"]
    }
  ]
}

Exemplo 5: use $search para obter dispositivos com nomes de exibição que contenham as letras 'Android', incluindo uma contagem de objetos retornados

Solicitação

O exemplo a seguir mostra uma solicitação. Essa solicitação exige o cabeçalho ConsistencyLevel definido como eventual, pois a solicitação tem $search e a cadeia de caracteres de consulta $count=true. Para obter mais informações sobre o uso de ConsistencyLevel e $count, consulte Recursos avançados de consulta em objetos de diretório.

Observação: os parâmetros de consulta $count e $search não estão disponíveis atualmente nos locatários do Azure Active Directory B2C.

GET https://graph.microsoft.com/beta/devices?$search="displayName:Android"&$count=true
ConsistencyLevel: eventual

Resposta

O exemplo a seguir mostra a resposta.

Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#devices",
  "@odata.count":1396,
  "value":[
    {
      "accountEnabled":true,
      "deviceId":"00000000-0000-0000-0000-000000000000",
      "deviceVersion":1,
      "displayName":"contoso_Android",
      "Manufacturer":"Google",
      "Model":"Pixel 3a",
      "operatingSystemVersion":"10.0",
      "hostNames":[]
    }
  ]
}

Exemplo 6: Obter dispositivos usando filtro em extensionAttributes

Solicitação

O exemplo a seguir mostra uma solicitação. Essa solicitação requer o cabeçalho ConsistencyLevel definido como eventual e a $count=true cadeia de caracteres de consulta porque a propriedade extensionAttributes dá suporte $filter apenas a parâmetros de consulta avançados. Para obter mais informações sobre o uso de ConsistencyLevel e $count, consulte Recursos avançados de consulta em objetos de diretório.

Observação: os parâmetros de consulta $count e $search não estão disponíveis atualmente nos locatários do Azure Active Directory B2C.

GET https://graph.microsoft.com/beta/devices?$filter=extensionAttributes/extensionAttribute1 eq 'BYOD-Device'&$count=true
ConsistencyLevel: eventual

Resposta

HTTP/1.1 200 OK
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#devices",
    "@odata.count": 1,
    "value": [
        {
            "@odata.id": "https://graph.microsoft.com/v2/84841066-274d-4ec0-a5c1-276be684bdd3/directoryObjects/6a59ea83-02bd-468f-a40b-f2c3d1821983/Microsoft.DirectoryServices.Device",
            "id": "6a59ea83-02bd-468f-a40b-f2c3d1821983",
            "accountEnabled": true,
            "approximateLastSignInDateTime": "2021-10-21T06:36:56Z",
            "createdDateTime": "2021-09-21T15:16:30Z",
            "deviceId": "eab73519-780d-4d43-be6d-a4a89af2a348",
            "displayName": "DESKTOP-LK3PESR",
            "operatingSystem": "Windows",
            "operatingSystemVersion": "10.0.19043.1237",
            "alternativeSecurityIds": [
                {
                    "type": 2,
                    "identityProvider": null,
                    "key": "WAA1ADAAOQA6AD...ADQAMwB5AGEAcQBnAD0A"
                }
            ],
            "extensionAttributes": {
                "extensionAttribute1": "BYOD-Device",
                "extensionAttribute2": null,
                "extensionAttribute3": null,
                "extensionAttribute4": null,
                "extensionAttribute5": null,
                "extensionAttribute6": null,
                "extensionAttribute7": null,
                "extensionAttribute8": null,
                "extensionAttribute9": null,
                "extensionAttribute10": null,
                "extensionAttribute11": null,
                "extensionAttribute12": null,
                "extensionAttribute13": null,
                "extensionAttribute14": null,
                "extensionAttribute15": null
            }
        }
    ]
}