【发布时间】:2018-03-05 06:47:56
【问题描述】:
我正在尝试创建一个谷歌同步 API(使用调度程序的后台 API),它基本上用谷歌课堂课程更新我的数据库课程。
Google Classroom API 似乎没有仅获取创建/更新/删除课程的机制。现在我可以使用谷歌教室 API 从谷歌教室获取所有课程,但我只想要创建/更新/删除的课程列表。
另外,如果在谷歌课堂课程中创建/更新/删除课程,我可以调用我的 API 端点吗?
【问题讨论】:
标签: google-classroom
我正在尝试创建一个谷歌同步 API(使用调度程序的后台 API),它基本上用谷歌课堂课程更新我的数据库课程。
Google Classroom API 似乎没有仅获取创建/更新/删除课程的机制。现在我可以使用谷歌教室 API 从谷歌教室获取所有课程,但我只想要创建/更新/删除的课程列表。
另外,如果在谷歌课堂课程中创建/更新/删除课程,我可以调用我的 API 端点吗?
【问题讨论】:
标签: google-classroom
在检查documentation 时,尚不支持。您可以使用courseStates 参数将返回的课程限制为“仅”指定状态之一的课程。
课程可能处于的状态。
- COURSE_STATE_UNSPECIFIED
- 活动中
- 已存档
- 已提供
- 拒绝
- 已暂停
如果还没有请求该功能,您可以file a feature request on the Issue Tracker。
【讨论】:
我在创建功能请求后收到了关于 Google 问题跟踪器的回复:-
Google 问题跟踪器网址:
https://issuetracker.google.com/issues/74175718
回复:
因此,您说得对,我们尚不支持返回自您上次同步以来已更新的课程列表。我已将此更改为功能请求以反映这一点。
但是,如果它对您有帮助,我们确实提供了两件事可能会满足您的一些需求:
(1) 我们的 courses.list 端点 (https://developers.google.com/classroom/reference/rest/v1/courses/list) 保证结果按最近创建的排序。因此,通过时间戳比较应该很容易检测自上次同步以来创建的所有课程。
(2) 如果您的同步作业使用域管理员的凭据运行,您可以使用推送通知 (https://developers.google.com/classroom/guides/push-notifications) 在域中所有课程的花名册发生变化时进行更新(课程创建将显示为通知小学老师已添加到课程中,因此您也应该能够检测到这一点。
【讨论】: