Enumerar dispositivos
Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta
de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Recupere una lista de dispositivos registrados en el directorio.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | Device.Read.All | Directory.Read.All, Directory.ReadWrite.All |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | Device.Read.All | Device.ReadWrite.All, Directory.Read.All, Directory.ReadWrite.All |
Importante
En escenarios delegados con cuentas profesionales o educativas, al usuario que ha iniciado sesión se le debe asignar un rol de Microsoft Entra compatible o un rol personalizado con un permiso de rol admitido. Se admiten los siguientes roles con privilegios mínimos para esta operación.
- Usuarios
- Lectores de directorio
- Escritores de directorios
- Administrador de cumplimiento
- Administradores de dispositivos
- Administrador de la aplicación
- Lector de seguridad
- Administrador de seguridad
- Administrador de roles con privilegios
- Administrador de aplicaciones en la nube
- Aprobador de acceso de caja de seguridad del cliente
- Administrador de Dynamics 365
- Administrador de Power BI
- Administrador de Análisis de escritorio
- Administrador de Escritorio administrado de Microsoft
- Administrador de comunicaciones de Teams
- Ingeniero de soporte en comunicaciones de Teams
- Especialista de soporte en comunicaciones de Teams
- Administrador de Teams
- Administrador de datos de cumplimiento
- Operador de seguridad
- Administrador de Kaizala
- Lector global
- Revisor de directorios
- Administrador de Windows 365
Solicitud HTTP
GET /devices
Parámetros de consulta opcionales
Este método admite los $count
parámetros de consulta , $expand
, $filter
, $orderby
$search
, $select
y $top
OData para ayudar a personalizar la respuesta. Algunas consultas solo se admiten cuando se usa el encabezado ConsistencyLevel establecido en eventual
y $count
. Para obtener más información, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Encabezados de solicitud
Nombre | Descripción |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
ConsistencyLevel | eventual. Este encabezado y $count son necesarios cuando se usa $search ,o en un uso específico de $filter . Para obtener más información sobre el uso de ConsistencyLevel y $count , vea Funcionalidades avanzadas de consulta en objetos de directorio. |
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
y la colección de objetos device en el cuerpo de la respuesta.
Ejemplos
Ejemplo 1: Obtener una lista de dispositivos
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/beta/devices
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: El objeto de respuesta que se muestra aquí puede haberse acortado para mejorar la legibilidad.
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"
}
]
}
Ejemplo 2: Obtener solo un recuento de dispositivos
Solicitud
En el ejemplo siguiente se muestra la solicitud. Esta solicitud requiere el encabezado ConsistencyLevel establecido en eventual
porque $count
está en la solicitud. Para obtener más información sobre el uso de ConsistencyLevel y $count
, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Nota: Los parámetros de consulta
$count
y$search
actualmente no están disponibles en inquilinos de Azure AD B2C.
GET https://graph.microsoft.com/beta/devices/$count
ConsistencyLevel: eventual
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 200 OK
Content-type: text/plain
294
Ejemplo 3: Enumerar todos los dispositivos y devolver solo sus propiedades id y extensionAttributes
Solicitud
GET https://graph.microsoft.com/beta/devices?$select=id,extensionAttributes
Respuesta
En el ejemplo siguiente se muestra la respuesta.
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
}
}
]
}
Ejemplo 4: Use $filter y $top para obtener un dispositivo con un nombre para mostrar que comience por "a", incluido un recuento de objetos devueltos.
Solicitud
En el ejemplo siguiente se muestra la solicitud. Esta solicitud requiere el encabezado ConsistencyLevel establecido en eventual
y la cadena de consulta $count=true
porque la solicitud tiene los parámetros de consulta $orderby
y $filter
. Para obtener más información sobre el uso de ConsistencyLevel y $count
, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Nota: Los parámetros de consulta
$count
y$search
actualmente no están disponibles en inquilinos de Azure AD B2C.
GET https://graph.microsoft.com/beta/devices?$filter=startswith(displayName, 'a')&$count=true&$top=1&$orderby=displayName
ConsistencyLevel: eventual
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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"]
}
]
}
Ejemplo 5: Usar $search para obtener dispositivos con nombres para mostrar que contengan las letras "Android", incluido un recuento de objetos devueltos
Solicitud
En el ejemplo siguiente se muestra la solicitud. Esta solicitud requiere que el encabezado ConsistencyLevel se establezca en eventual
porque $search
y la cadena de consulta $count=true
están en la solicitud. Para obtener más información sobre el uso de ConsistencyLevel y $count
, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Nota: Los parámetros de consulta
$count
y$search
actualmente no están disponibles en inquilinos de Azure AD B2C.
GET https://graph.microsoft.com/beta/devices?$search="displayName:Android"&$count=true
ConsistencyLevel: eventual
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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":[]
}
]
}
Ejemplo 6: Obtención de dispositivos mediante el filtro en extensionAttributes
Solicitud
En el ejemplo siguiente se muestra la solicitud. Esta solicitud requiere el encabezado ConsistencyLevel establecido en eventual
y la cadena de $count=true
consulta porque la propiedad extensionAttributes solo admite $filter
con parámetros de consulta avanzados. Para obtener más información sobre el uso de ConsistencyLevel y $count
, vea Funcionalidades avanzadas de consulta en objetos de directorio.
Nota: Los parámetros de consulta
$count
y$search
actualmente no están disponibles en inquilinos de Azure AD B2C.
GET https://graph.microsoft.com/beta/devices?$filter=extensionAttributes/extensionAttribute1 eq 'BYOD-Device'&$count=true
ConsistencyLevel: eventual
Respuesta
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
}
}
]
}