获取设备

命名空间:microsoft.graph

重要

Microsoft Graph /beta 版本下的 API 可能会发生更改。 不支持在生产应用程序中使用这些 API。 若要确定 API 是否在 v1.0 中可用,请使用 版本 选择器。

获取 device 对象的属性和关系。

由于 设备 资源支持 扩展,因此还可以使用 GET 操作获取 设备 实例中的自定义属性和扩展数据。

此 API 可用于以下国家级云部署

全局服务 美国政府 L4 美国政府 L5 (DOD) 由世纪互联运营的中国

权限

为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考

权限类型 最低特权权限 更高特权权限
委派(工作或学校帐户) Device.Read.All Directory.Read.All、Directory.ReadWrite.All
委派(个人 Microsoft 帐户) 不支持。 不支持。
应用程序 Device.Read.All Device.ReadWrite.All、Directory.Read.All、Directory.ReadWrite.All

调用用户还必须至少处于以下 Microsoft Entra 角色之一:

  • 用户
  • 目录读取器
  • 目录作者
  • 合规性管理员
  • 设备管理器
  • 应用程序管理员
  • 安全读取者
  • 安全管理员
  • 特权角色管理员
  • 云应用程序管理员
  • 客户密码箱访问审批者
  • Dynamics 365 管理员
  • Power BI 管理员
  • 桌面分析管理员
  • Microsoft托管桌面管理员
  • Teams 通信管理员
  • Teams 通信支持工程师
  • Teams 通信支持专家
  • Teams 管理员
  • 合规数据管理员
  • 安全操作员
  • Kaizala 管理员
  • 全局读取者
  • 目录审阅者
  • Windows 365 管理员

HTTP 请求

可以使用设备的 IDdeviceId 对设备进行寻址。

GET /devices/{id}
GET /devices(deviceId='{deviceId}')

可选的查询参数

此方法支持 $selectOData 查询参数 来帮助自定义响应。

请求标头

名称 说明
Authorization 持有者 {token}。 必填。 详细了解 身份验证和授权

请求正文

请勿提供此方法的请求正文。

响应

如果成功,此方法在响应正文中返回 200 OK 响应代码和 device 对象。

示例

示例 1:获取设备

请求

以下示例显示了一个请求。

GET https://graph.microsoft.com/beta/devices/000005c3-b7a6-4c61-89fc-80bf5ccfc366

响应

以下示例显示了没有 hostName 的设备响应

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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

{
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#devices/$entity",
  "@odata.id": "https://graph.microsoft.com/v2/72f988bf-86f1-41af-91ab-2d7cd011db47/directoryObjects/000005c3-b7a6-4c61-89fc-80bf5ccfc366/Microsoft.DirectoryServices.Device",
  "accountEnabled": true,
  "approximateLastSignInDateTime": "2021-08-26T21:15:01Z",
  "deviceId": "000005c3-b7a6-4c61-89fc-80bf5ccfc366",
  "deviceMetadata": null,
  "deviceVersion": 2,
  "hostNames": []
}

以下示例显示了具有 hostNames 的设备响应

注意:为了提高可读性,可能缩短了此处显示的响应对象。

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

{
  "accountEnabled": true,
  "approximateLastSignInDateTime": "2016-10-19T10:37:00Z",
  "deviceId": "deviceId-value",
  "deviceMetadata": "deviceMetadata-value",
  "deviceVersion": 99,
  "hostnames":["contoso.com", "hostname1"]
}

示例 2:获取设备并仅返回其 ID 和 extensionAttributes 属性

请求

以下请求检索设备的 idextensionAttributes 属性。

GET https://graph.microsoft.com/beta/devices/6a59ea83-02bd-468f-a40b-f2c3d1821983?$select=id,extensionAttributes

响应

以下示例显示了相应的响应。

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

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#devices(id,extensionAttributes)/$entity",
    "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
    }
}