如何通过Microsoft Graph API获取Teams参会报告中的访客姓名
获取Microsoft Teams访客参会姓名的Graph API方案
是的,不少开发者已经实现了通过Microsoft Graph API获取访客在Teams会议中自行输入的姓名信息,以下是可行的方案和关键细节:
核心API端点与字段
- 使用
/me/onlineMeetings/{meetingId}/attendanceReports/{reportId}/attendanceRecords端点(若使用应用权限,可替换为/users/{userId}/onlineMeetings/{meetingId}/attendanceReports/{reportId}/attendanceRecords) - 访客自行输入的姓名会存储在返回结果中
identity对象的displayName字段里,这类访客的identityType通常标记为anonymousGuest或guest
权限与限制说明
- 权限要求:必须申请
OnlineMeetingArtifact.Read.All(应用权限)或OnlineMeetingArtifact.Read(委派权限),应用权限场景需完成管理员同意流程 - 会议状态:仅适用于已结束的会议,实时进行中的会议可能无法同步完整的访客姓名信息
- 身份区分:注册用户的
identity会关联Azure AD用户ID,而访客的identity无对应AD ID,仅保留displayName和临时参会ID
示例请求与返回片段
请求示例:
GET https://graph.microsoft.com/v1.0/me/onlineMeetings/{meetingId}/attendanceReports/{reportId}/attendanceRecords
访客条目返回示例:
{ "id": "temp-guest-789", "joinDateTime": "2024-06-10T09:15:00Z", "leaveDateTime": "2024-06-10T09:45:00Z", "identity": { "id": null, "displayName": "访客李四", "tenantId": null, "identityType": "anonymousGuest" } }
常见问题排查
- 若访客
displayName为空,确认会议已完全结束,部分会议的参会记录需要等待10-30分钟才会同步完整 - 检查权限是否正确配置,应用权限需确保管理员已完成同意操作
内容的提问来源于stack exchange,提问作者Panos Vlachopoulos
相关产品推荐
相关产品推荐

