Classroom API มีอินเทอร์เฟซ RESTful สำหรับจัดการหลักสูตรและบัญชีรายชื่อใน Google Classroom นอกจากนี้ ปุ่มแชร์ของ Classroom ยังช่วยให้นักพัฒนาซอฟต์แวร์และเจ้าของเนื้อหาอนุญาตให้แชร์เนื้อหาไปยัง Classroom ได้อีกด้วย
ใครใช้ API ได้บ้าง
ผู้ดูแลระบบโดเมน Google Workspace for Education สามารถใช้ API เพื่อจัดสรรหลักสูตรในนามของครู ซิงค์ระบบข้อมูลของนักเรียนกับ Classroom และเข้าถึงชั้นเรียนที่มีการเรียนการสอนในโดเมนได้ในแบบพื้นฐาน
นักพัฒนาแอปพลิเคชันสามารถใช้ Classroom API เพื่อผสานรวมแอปกับ Classroom แอปเหล่านี้ต้องใช้ OAuth 2.0 เพื่อขอสิทธิ์ดูชั้นเรียนและบัญชีรายชื่อจากครู ผู้ดูแลระบบสามารถจำกัดสิทธิ์ในการให้แอปเข้าถึงข้อมูล Google Classroom สำหรับครูและนักเรียน
เจ้าของเว็บไซต์และนักพัฒนาเนื้อหาสามารถใช้ปุ่มแชร์ Classroom เพื่อให้นักเรียนและครูแชร์เนื้อหากลับไปยัง Classroom ได้
การผสานรวมปุ่มแชร์ API และ Classroom ทั้งหมดควรเป็นไปตามหลักเกณฑ์การใช้แบรนด์ของ Classroom
ภาพรวม API
Classroom API ประกอบด้วยเอนทิตีหลายประเภทที่สอดคล้องกับชั้นเรียน ครู และนักเรียนในอินเทอร์เฟซ Classroom เอนทิตีเหล่านี้บางส่วนมีคุณสมบัติเพิ่มเติมเฉพาะสำหรับ API เพิ่มเติมจากที่มีอยู่แล้วใน Classroom ประเภทเอนทิตีหลัก ได้แก่
โปรดดูข้อมูลอย่างละเอียดเกี่ยวกับแหล่งข้อมูลและวิธี API ที่ เอกสารอ้างอิง Classroom API
ข้อมูลเมตาและชื่อแทนของหลักสูตร
หลักสูตรหมายถึงชั้นเรียน เช่น "ม. คณิตศาสตร์ของ Smith ช่วงที่ 4" และ ครูที่ได้รับมอบหมาย บัญชีรายชื่อนักเรียน และข้อมูลเมตา แต่ละหลักสูตรจะระบุโดย รหัสที่ไม่ซ้ำกันที่เซิร์ฟเวอร์กำหนด แหล่งข้อมูลของหลักสูตรจะสรุปข้อมูลเมตาทั้งหมดเกี่ยวกับหลักสูตรโดยเฉพาะ เช่น ชื่อ คำอธิบาย สถานที่ และเวลา บัญชีรายชื่อหลักสูตรจะได้รับการจัดการผ่านแหล่งข้อมูลของนักเรียน ครู และคำเชิญ รวมทั้งวิธีการต่างๆ
ชื่อแทนคือตัวระบุทางเลือกสำหรับคลาสที่อาจเชื่อมโยงกับหลักสูตรและใช้แทนรหัสที่ไม่ซ้ำกัน ชื่อแทนแต่ละรายการอยู่ในเนมสเปซที่จำกัด ว่าใครสามารถสร้างและดูชื่อนั้นได้ ระบบรองรับเนมสเปซ 2 รายการดังนี้
- โดเมน: เนมสเปซของโดเมนมีประโยชน์สำหรับการสร้างชื่อแทนที่ผู้ใช้ทุกคนต้องมีสิทธิ์เข้าถึง แต่ไม่ได้เจาะจงโปรแกรมใดโปรแกรมหนึ่ง ตัวอย่างเช่น คุณควรสร้างรายการสำรองของหลักสูตร เช่น MATH 127 และ COMSCI 127 ในเนมสเปซของโดเมน มีเพียงผู้ดูแลระบบโดเมนเท่านั้นที่จะสร้างชื่อแทนในเนมสเปซของโดเมนได้ แต่ผู้ใช้ทุกคนในโดเมนจะเห็นชื่อแทน
- โปรเจ็กต์นักพัฒนาซอฟต์แวร์: เนมสเปซของโปรเจ็กต์นักพัฒนาซอฟต์แวร์มีประโยชน์ในการจัดการชื่อแทนสำหรับแอปพลิเคชันที่เฉพาะเจาะจง ตัวอย่างเช่น แอปพลิเคชันที่ใช้ตัวระบุทางเลือกสำหรับหลักสูตรจะสร้างชื่อแทนเพื่อแมปตัวระบุกับหลักสูตรของ Classroom ได้ ชื่อแทนที่สร้างขึ้นในเนมสเปซนี้จะเชื่อมโยงกับคอนโซล Google API ที่เฉพาะเจาะจง ผู้ใช้แอปพลิเคชันสามารถสร้างและดูชื่อแทนในเนมสเปซสำหรับโปรเจ็กต์นักพัฒนาซอฟต์แวร์ของแอปพลิเคชันนั้น
โปรดดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการข้อมูลเมตาของหลักสูตรและชื่อแทนในหัวข้อจัดการหลักสูตร
บัญชีรายชื่อและผู้ใช้ของหลักสูตร
ส่วนนักเรียนและครูจะเป็นการจับคู่ที่เจาะจงระหว่างโปรไฟล์ผู้ใช้กับหลักสูตรที่แสดงถึงบทบาทของผู้ใช้ในหลักสูตรนั้น การระบุสถานะนักเรียนและครูไม่ใช่ระบบทั่วโลก แต่จะมอบหมายให้ผู้ใช้เป็นครูสำหรับหลักสูตรหนึ่งและมอบหมายให้นักเรียนในอีกหลักสูตรได้ การระบุสถานะ "นักเรียน" หรือ "ครู" แสดงถึงชุดสิทธิ์สำหรับผู้ใช้รายหนึ่งๆ ในหลักสูตรหนึ่งๆ
- นักเรียน/นักศึกษา
แหล่งข้อมูลของนักเรียนแสดงถึงผู้ใช้ที่ลงทะเบียนเป็นนักเรียนใน
หลักสูตรที่เฉพาะเจาะจง นักเรียนจะได้รับอนุญาตให้ดูรายละเอียดหลักสูตรและ ครูของหลักสูตรนั้น
- ครู
แหล่งข้อมูลสำหรับครูแสดงถึงผู้ใช้ที่สอนหลักสูตรหนึ่ง
ครูมีสิทธิ์ดูและเปลี่ยนแปลงรายละเอียดหลักสูตร ดูครูและนักเรียน และจัดการครูและนักเรียนเพิ่มเติมได้
คำเชิญและวิธีการที่เกี่ยวข้องช่วยให้เพิ่มนักเรียนและครูลงในหลักสูตรได้อย่างสะดวก การสร้างคำเชิญช่วยให้ผู้ใช้เลือกได้ว่าจะเข้าร่วมหลักสูตรหรือไม่ แทนที่จะให้คุณเพิ่มโดยตรงผ่านแหล่งข้อมูลของครูและนักเรียน
UserProfiles แสดงการแมปกับโปรไฟล์โดเมนของผู้ใช้ตามที่ระบุโดยรหัสที่ไม่ซ้ำกันหรืออีเมลของผู้ใช้ที่แสดงขึ้นโดย Directory API ผู้ใช้ปัจจุบันอาจอ้างถึงรหัสของตนเองโดยใช้ชวเลข "me"
ด้วย
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการบัญชีรายชื่อได้ที่หัวข้อจัดการครูและนักเรียน
การบ้านและรายงานที่นักเรียนส่ง
รายการ CourseWork จะแสดงงานเดียวที่มอบหมายให้กับกลุ่มนักเรียนในหลักสูตรหนึ่ง ซึ่งจะมีรายละเอียดต่างๆ เช่น คำอธิบาย วันที่ครบกำหนด สื่อการเรียนการสอนของชั้นเรียน รวมถึงข้อมูลเมตาอย่างเวลาที่สร้าง เนื้อหาประกอบด้วยชื่อ ภาพปก และ URL รวมถึงตัวระบุที่นำไปใช้กับ API ที่เหมาะสม (เช่น ไดรฟ์, YouTube) ได้
รายการงานในหลักสูตรอธิบายถึงงานประเภทใดประเภทหนึ่งต่อไปนี้
- งานที่นักเรียนทำเสร็จแล้วโดยการส่งเวิร์กชีตหรือไฟล์แนบอื่นๆ
- คำถามที่ต้องการคำตอบสั้นๆ หรือคำถามแบบหลายตัวเลือก
งานของนักเรียนสำหรับรายการใน CourseWork จะแสดงเป็น StudentSubmission ซึ่งประกอบด้วยการตอบกลับและข้อมูลเมตาเพิ่มเติม เช่น สถานะและระดับที่กำหนดไว้
เนื้อหาของ StudentSubmission จะขึ้นอยู่กับประเภทของรายการหลักสูตรที่เกี่ยวข้องดังนี้
- ชีตและไฟล์แนบที่ส่งสำหรับงาน รวมถึงชื่อ ภาพขนาดย่อ และ URL ตลอดจนตัวระบุที่สามารถใช้กับ API ที่เหมาะสม เช่น ไดรฟ์หรือ YouTube
- การตอบคำถามที่ต้องการคำตอบสั้นๆ หรือคำถามแบบหลายตัวเลือก
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการการบ้านและรายงานและงานที่นักเรียนส่งได้ที่จัดการงานของชั้นเรียน
ส่วนเสริมของ Classroom
ส่วนเสริมคือ UI ที่พาร์ทเนอร์แสดงและแบ็กเอนด์ที่แสดงใน iframe ส่วนเสริมจะปรากฏเป็นไฟล์แนบในโพสต์ ซึ่งอาจเป็น Announcements
, CourseWork
หรือ CourseWorkMaterials
ไฟล์แนบของส่วนเสริมอาจเป็นกิจกรรมหรือเนื้อหา
- ในไฟล์แนบกิจกรรม นักเรียนต้องกรอกข้อมูลและส่งให้กับทีละรายการ ตัวอย่างเช่น แบบทดสอบ ภาพวาด หรือเกม การส่งกิจกรรมสามารถเลือกได้ว่าจะให้คะแนนหรือไม่
- นักเรียนไม่ต้องส่งไฟล์แนบของเนื้อหา นักเรียนไม่จำเป็นต้องส่ง ไฟล์แนบและยังไม่มีการให้คะแนน ตัวอย่างเช่น รูปภาพ บทความ และวิดีโอ
โปรดดูข้อมูลเพิ่มเติมในคู่มือการพัฒนาส่วนเสริม
การเริ่มต้นอย่างรวดเร็ว
หากต้องการตั้งค่าสภาพแวดล้อมและเริ่มต้นใช้งาน API ทันที ให้ลองใช้การเริ่มต้นอย่างรวดเร็วอย่างใดอย่างหนึ่งต่อไปนี้
การทดลองใช้ Google API Explorer
หากต้องการทดสอบวิธีเรียกใช้ข้อมูลสด ให้ลองใช้ Google APIs Explorer คุณไม่จำเป็นต้องเขียนโค้ดใดๆ เพื่อเริ่มต้น แต่อย่าลืมว่าการดำเนินการที่คุณทำโดยใช้ API Explorer จะแก้ไขข้อมูลที่มีอยู่ได้
วิธีหนึ่งในการเริ่มเรียกใช้เมธอดต่างๆ คือการโทรไปยังเมธอด courses.list()
วิธีนี้ไม่ต้องใช้พารามิเตอร์คำขอใดๆ และคุณจะเรียก id
จากรายการหลักสูตรที่แสดงกลับมาเพื่อใช้เป็นพารามิเตอร์สำหรับการเรียก API อื่นๆ ได้ หากไม่มีหลักสูตร คุณสร้างได้โดยใช้เมธอด courses.create()
นอกจากนี้ คุณยังดูเอกสารอ้างอิง API ได้ด้วย