開發人員可以使用 Google Classroom API 與 Google Classroom 中的課程作業互動。以這種方式使用 API 的應用程式稱為「CourseWork
整合」。
這項整合路徑通常用於建立作業並評分,以及連結 Classroom 以外的資源。與 Classroom 分享按鈕相比,這個 API 可讓開發人員存取更多課業管理功能。
運作方式
CourseWork
整合的核心功能是使用 Classroom API 建立及管理作業、公告和教材。
CourseWork
整合功能可實現的常見使用者歷程之一,是讓老師在網站或應用程式中尋找、指派及評分內容:
- 老師使用者登入您的網站。
- 老師找到或建立要與班級分享的內容。老師點選您網站上的按鈕,將內容傳送至 Google Classroom。
- 您的應用程式會向
courses.courseWork.create
發出要求。要求主體包含CourseWork
物件,其中含有:- 目的地課程 ID。
- 指派作業的標題。
- 作業的文字說明。
link
Material
,內含老師選取內容的網址。- (選用) 所選內容可獲得的最高分數。
- Classroom 中會顯示新作業,並附上連結。
連結是指
create
要求中指定的網址。請參閱圖 1 的範例。 - Classroom 成績單也會顯示作業的新資料欄,包括最高分數 (如有)。
- 學生收到作業後,按一下
link Material
即可在新分頁中開啟您提供的網址,查看或完成您網站上的內容。(選用) 提供控制項,讓學生繳交作業。 - (選用) 提出要求,
courses.courseWork.studentSubmissions.modifyAttachments
在學生提交的作業中新增附件,例如 Google 雲端硬碟檔案或link Material
,指向學生在您網站上的作業。 - (選用) 發出要求,
courses.courseWork.studentSubmissions.patch
設定學生作業成績。
圖 1. 老師透過link Material
CourseWork
整合服務建立作業時的編輯畫面。
或者,您也可以呼叫 courses.announcements.create
或 courses.courseWorkMaterials.create
,建立公告或課程教材,而非作業。如需相關 Classroom API 動作的詳細說明,請參閱「建立及管理作業」和「設定及更新成績」頁面。
注意事項
決定是否要整合 CourseWork
前,請先瞭解下列事項,再評估是否符合產品需求。
- 您必須授權使用者並提示他們同意。您代表使用者提出 API 要求。舉例來說,您無法在任何 Google Classroom 課程中建立作業,只能在授權使用者任教的課程中建立作業。
- 您需要提供使用者選取課程的方式,才能接收內容。
建議使用
courses.list
取得使用者教授的課程清單,然後允許使用者從清單中選取一或多門課程。 - 使用者在 Classroom 中點選
link Material
時,連結會在新的分頁中開啟。網址開啟時,伺服器不會收到 Classroom 的任何資訊。 - 老師可以修改或刪除課程內容,不必經過開發人員。這表示開發人員的課程知識可能會過時。如要掌握課程作業的異動情況,建議設定課程作業異動的推播通知。
- 老師可以在 Classroom 使用者介面中建立課程作業,並貼上您網站的網址連結。以這種方式建立的作業僅由老師擁有,因此您無法使用 Classroom API 查看、修改或設定提交作業的分數。