您可以使用課程別名,以其他名稱參照課程。課程別名可用於將 Google Classroom 課程 ID 和外部課程 ID 對應起來。舉例來說,您可以設定課程別名,以便與學生資訊系統 (SIS) 中的課程 ID 相符。
課程別名有兩種形式:全網域和全專案。
全網域別名會使用
d:
前置字串,任何使用 Classroom API 的使用者都能看到。網域命名空間很適合用來建立所有使用者都需要存取的別名,但不限於任何一個程式。舉例來說,應在網域命名空間中建立課程的其他課程,例如 MATH 127 和 COMSCI 127。網域命名空間中的別名只能由網域管理員建立,但網域中的所有使用者都能看到。專案全域別名會使用前置字串
p:
,且只能由建立這些別名的 Google Cloud 專案查看及使用。開發人員專案命名空間可用於管理應用程式專屬別名。舉例來說,如果應用程式使用課程的替代 ID,可以建立別名,將其 ID 對應至 Classroom 課程。在這個命名空間中建立的別名會與特定 Google Cloud 專案相關聯。應用程式的任何使用者都能在該應用程式開發人員專案的命名空間中建立及查看別名。
您可以使用課程別名取代任何 Classroom API 端點的 Classroom 課程 ID。也就是說,別名可用於讀取及修改課程和學生名單資訊。
使用別名與學生資訊系統保持同步
課程的 SIS 內部 ID 可註冊為課程的網域別名。如此一來,任何同時整合 SIS 和 Classroom 的開發人員,都可以使用 SIS ID 與 Classroom 資料互動。
如果您是從學生資訊系統建立課程,或將課程連結至學生資訊系統,建議您使用學生資訊系統的課程 ID 做為課程別名。使用 courses.create()
方法建立課程時,您可以在要求的 id
欄位中指定別名。如果別名已存在,課程建立作業就會失敗,並顯示 409 ALREADY_EXISTS
錯誤。這樣一來,如果同步處理程式發生問題,就不會建立重複的課程。
舉例來說,假設 SIS 名稱為 school
,而 SIS 針對特定課程使用的內部 ID 為 math_101
,您可以建立別名 d:school_math_101
。
為新課程新增別名
如要為新課程新增別名,請在提出 courses.create()
要求時,將 course.id
設為別名。
為現有課程新增別名
如要在現有課程中新增別名,您可以設定 alias
欄位並使用 courses.aliases.create()
方法。
擷取課程別名
您可以使用 courses.aliases.list()
方法擷取課程別名,如以下範例所示: