我找到了一个为用户获取电子邮件活动的解决方案,但 API 参考中的示例并不那么直接,它们分散在几个页面上。我最终使用了 GSuite Reports API 中的用户使用情况报告(如对原始问题的评论中所建议):https://developers.google.com/admin-sdk/reports/v1/guides/manage-usage-users
示例调用:
GET https://www.googleapis.com/admin/reports/v1/usage/users/all/dates/2018-05-21?parameters=classroom:last_interaction_time,accounts:last_login_time,accounts:last_sso_time,gmail:last_access_time,gmail:last_imap_time,gmail:last_interaction_time,gmail:last_pop_time,gmail:last_webmail_time
通过这种方式,我不仅可以获得电子邮件活动,还可以获得 Classroom 上次交互时间、GSuite 上次登录时间和上次 SSO 时间。
示例用户响应:
"entity": {
"type": "USER",
"customerId": "customerId",
"userEmail": "sample@email.com",
"profileId": "profileId"
},
"parameters": [
{
"name": "classroom:last_interaction_time",
"datetimeValue": "1970-01-01T00:00:00.000Z"
},
{
"name": "accounts:last_login_time",
"datetimeValue": "2018-05-18T14:46:11.000Z"
},
{
"name": "accounts:last_sso_time",
"datetimeValue": "1970-01-01T00:00:00.000Z"
},
{
"name": "gmail:last_access_time",
"datetimeValue": "2018-05-18T08:43:15.000Z"
},
{
"name": "gmail:last_imap_time",
"datetimeValue": "1970-01-01T00:00:00.000Z"
},
{
"name": "gmail:last_interaction_time",
"datetimeValue": "2018-04-23T07:08:40.000Z"
},
{
"name": "gmail:last_pop_time",
"datetimeValue": "1970-01-01T00:00:00.000Z"
},
{
"name": "gmail:last_webmail_time",
"datetimeValue": "2018-04-23T07:08:44.000Z"
}
]