获取状态

命名空间:microsoft.graph

获取用户 的状态 信息。

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

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

权限

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

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

注意

  • 不能使用应用程序权限访问路径下的 /me API。
  • 此 API 的最大请求速率是每个租户每个应用程序在 30 秒内 1,500 个请求。

HTTP 请求

GET /users/{id}/presence
GET /communications/presences/{id}
GET /me/presence

注意

  • 必须传递用户的 ID 才能获取其状态信息。
  • 调用 GET /users/{id}/presence 或 GET /communications/presences/{id}时,请将 替换为 {id} 用户的 GUID。
  • 有关如何获取用户的唯一标识符的示例,请参阅 获取用户。

请求标头

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

请求正文

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

响应

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

示例

示例 1:获取自己的状态信息

以下示例演示如何获取自己的状态信息。 此作需要 Presence.Read 权限。

请求

GET https://graph.microsoft.com/v1.0/me/presence

响应

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1574

{
  "id": "fa8bf3dc-eca7-46b7-bad1-db199b62afc3",
  "availability": "Available",
  "activity": "Available",
  "outOfOfficeSettings": {
    "message": null,
    "isOutOfOffice": false
  },
  "sequenceNumber": "A0129311063",
  "workLocation": {
    "workLocationType": "office",
    "source": "automatic",
    "placeId": "eb706f15-137e-4722-b4d1-b601481d9251"
  }
}

示例 2:获取其他用户的状态信息

以下示例演示如何获取其他用户的状态信息。 此作需要 Presence.Read.All 权限。

请求

GET https://graph.microsoft.com/v1.0/users/66825e03-7ef5-42da-9069-724602c31f6b/presence

响应

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1574

{
  "id": "66825e03-7ef5-42da-9069-724602c31f6b",
  "availability": "DoNotDisturb",
  "activity": "Presenting",
  "outOfOfficeSettings": {
    "message": null,
    "isOutOfOffice": false
  },
  "sequenceNumber": "A0129311063"
}

示例 3:获取其他用户的状态信息

以下示例演示如何获取其他用户的状态信息。 此作需要 Presence.Read.All 权限。

请求

GET https://graph.microsoft.com/v1.0/communications/presences/dc74d9bb-6afe-433d-8eaa-e39d80d3a647

响应

HTTP/1.1 200 OK

{
  "value": [
    {
      "id": "dc74d9bb-6afe-433d-8eaa-e39d80d3a647",
      "availability": "Away",
      "activity": "BeRightBack",
      "outOfOfficeSettings": {
        "message": null,
        "isOutOfOffice": false
      },
      "sequenceNumber": "A0129311063"
    }
  ]
}