Resource API

Panduan ini memberikan ringkasan komponen utama yang membentuk Google Classroom API. Google Classroom API terdiri dari resource dan layanan. Resource merepresentasikan entitas di Google Classroom, seperti kursus atau tugas, dan layanan mengambil serta mengelola resource ini. Beberapa entitas ini memiliki properti tambahan khusus untuk API selain yang ada di Classroom. Jenis entity utama adalah:

Entitas Representasi di Classroom
Kursus Kelas, seperti "M. Smith's 4th period math".
Alias ID alternatif untuk kursus.
Undangan Cara untuk menambahkan pengguna ke kelas.
Siswa Siswa di kelas.
Teachers Pengajar di kelas.
Profil pengguna Pengguna secara lebih umum, di luar konteks siswa atau pengajar.
CourseWork Tugas di kelas.
StudentSubmissions Tugas siswa untuk tugas tertentu, seperti jawaban atau lembar kerja.
CourseWorkMaterials Materi untuk siswa di kelas.
Pengumuman Pengumuman untuk siswa di kelas.
AddOnAttachment Konten atau aktivitas pada tugas atau materi yang biasanya ditampilkan sebagai iframe sematan.
Topik Pengelompokan visual tugas dan materi di kelas.
Pendaftaran Petunjuk untuk mengirim notifikasi ke aplikasi Anda terkait perubahan data, seperti daftar nama siswa kelas.

Sebagian besar resource memiliki metode layanan untuk operasi standar seperti membaca, memperbarui, dan menghapus instance resource. Beberapa resource juga memiliki metode kustom untuk operasi lain, seperti mengubah daftar siswa yang diberi tugas tertentu.

Untuk mengetahui informasi mendetail tentang resource dan metode API, lihat referensi Classroom API.

Ringkasan hubungan resource

  • Course adalah objek data dasar di Google Classroom.
  • Alias digunakan sebagai ID alternatif untuk Courses.
  • Undangan digunakan untuk mengundang Profil pengguna menjadi Pengajar atau Siswa di Course, tetapi pengguna juga dapat ditambahkan langsung oleh administrator domain Google Workspace for Education.
  • Pengajar membuat Item stream dan membagikannya kepada siswa di kursus mereka. Kemungkinan jenis item stream adalah Coursework, CourseWorkMaterials, dan Announcements. CourseWork dan CourseWorkMaterials dapat disusun secara visual ke dalam Topik, dan dapat berisi AddOnAttachments. Siswa mengirimkan StudentSubmissions untuk CourseWork.
  • Developer dapat membuat Pendaftaran untuk mendapatkan notifikasi saat beberapa data ini berubah.

Google Classroom tersedia untuk domain yang berlangganan Google Workspace for Education. Domain dalam konteks Classroom biasanya mewakili distrik sekolah. Anda dapat membuat domain pengujian Google Workspace for Education untuk tujuan pengembangan, yang memberi Anda kontrol atas instance produksi Classroom tanpa memengaruhi pengguna sebenarnya.

Kursus dan Alias

Courses mewakili class, seperti "M. Smith", dan pengajar yang ditugaskan, daftar nama siswa, dan metadata. Setiap kursus diidentifikasi dengan ID unik yang ditetapkan oleh server. Resource Course secara khusus mencakup semua metadata tentang kursus, seperti nama, deskripsi, lokasi, dan waktu. Daftar nama siswa kursus dikelola melalui Student, Teacher, dan Invitation sumber daya serta metodenya.

Aliases adalah ID alternatif untuk kelas yang dapat dikaitkan dengan kursus dan digunakan sebagai pengganti ID unik. Setiap alias ada di namespace yang membatasi siapa yang dapat membuat dan melihatnya. Dua namespace didukung:

  • Domain: Namespace domain berguna untuk membuat alias yang perlu diakses oleh semua pengguna, tetapi tidak spesifik untuk satu program pun. Misalnya, listingan alternatif untuk kursus, seperti MATH 127 dan COMSCI 127, harus dibuat di namespace domain. Alias di namespace domain hanya dapat dibuat oleh administrator domain, tetapi dapat dilihat oleh semua pengguna di domain.
  • Project developer: Namespace project developer berguna untuk mengelola alias khusus untuk aplikasi. Misalnya, aplikasi yang menggunakan ID alternatif untuk kursus dapat membuat alias untuk memetakan ID-nya ke kursus Classroom. Alias yang dibuat di namespace ini terikat ke Konsol API Google tertentu. Setiap pengguna aplikasi dapat membuat dan melihat alias di namespace untuk project developer aplikasi tersebut.

Untuk mengetahui informasi selengkapnya tentang mengelola metadata dan alias kursus, lihat Mengelola Kursus.

Daftar nama dan pengguna kursus

Students dan Teachers adalah pemetaan spesifik antara profil pengguna dan kursus, yang merepresentasikan peran pengguna tersebut dalam kursus. Penetapan siswa dan pengajar tidak bersifat global: pengguna dapat ditetapkan sebagai pengajar untuk satu kursus dan siswa di kursus lain. Penunjukan "siswa" atau "pengajar" mewakili serangkaian izin untuk pengguna tertentu dalam kursus tertentu. Kursus dapat memiliki lebih dari satu pengajar atau nol siswa. Pengajar dan siswa dapat ditambahkan ke atau dihapus dari kursus kapan saja.

Siswa

Resource Student merepresentasikan pengguna yang terdaftar sebagai siswa dalam kursus tertentu.

Siswa diizinkan untuk melihat detail dan pengajar kelas tersebut.

Guru

Resource Teacher mewakili pengguna yang mengajar kursus tertentu.

Pengajar diizinkan untuk melihat dan mengubah detail mata pelajaran, melihat pengajar dan siswa, serta mengelola pengajar dan siswa tambahan.

Invitations dan metode terkaitnya memberikan cara mudah untuk menambahkan siswa dan pengajar ke kursus. Dengan membuat undangan, pengguna dapat memilih apakah akan bergabung ke kursus atau tidak, alih-alih Anda menambahkan mereka secara langsung melalui materi pengajar dan siswa.

UserProfiles merepresentasikan pemetaan ke profil domain pengguna sebagaimana diidentifikasi oleh ID unik atau alamat email pengguna yang ditampilkan oleh Directory API. Pengguna saat ini juga dapat merujuk ke ID mereka sendiri menggunakan singkatan "me".

Layanan UserProfiles juga dapat digunakan untuk mengelola dan mengundang Guardians, yang merupakan pemetaan antara siswa dan wali. Wali di Classroom memiliki akses ke beberapa informasi siswa, seperti tugas mereka.

Untuk mengetahui informasi selengkapnya tentang mengelola daftar nama, lihat Mengelola Pengajar dan Siswa.

Item streaming

Item stream adalah bagian konten yang diposting dan dibagikan kepada anggota kursus. Developer dan pengajar dapat membuat tiga jenis item stream: Announcement, CourseWork, dan CourseWorkMaterial.

Pengajar membuat Announcements di bagian atas halaman Forum di UI Classroom. Pengajar membuat CourseWork dan CourseWorkMaterials dengan mengklik tombol Buat di tab Tugas kelas. Developer dapat membuat semua jenis item stream secara terprogram melalui Classroom API.

Berikut ini adalah hal-hal yang benar tentang item stream:

  • Semua item stream dapat berisi materi tambahan, seperti file Google Drive, video YouTube, Google Formulir, hyperlink URL, dan lampiran add-on Classroom.
  • Semua item forum dapat ditetapkan ke sebagian siswa dalam kursus.
  • CourseWork dapat dinilai atau tidak dinilai. Pengajar dapat mengubah status penilaian tugas CourseWork kapan saja.
  • Item stream dapat memiliki lebih dari satu lampiran.
  • Item stream dapat memiliki lampiran dengan jenis yang berbeda. Misalnya, satu tugas CourseWork dapat memiliki file Google Drive, video YouTube, dan lampiran add-on Classroom secara bersamaan.
  • Item stream mungkin memiliki lampiran add-on dari lebih dari satu developer.
  • Developer dapat mendapatkan dan mengubah detail tentang resource item forum yang memiliki salah satu lampiran add-on mereka.
  • Developer dapat menyerahkan, mengklaim ulang, atau mengembalikan tugas siswa untuk tugas CourseWork yang menyertakan salah satu lampiran add-on mereka.
  • Developer hanya dapat menyelesaikan nilai untuk setiap kiriman siswa dalam tugas yang mereka buat.

Item streaming yang disalin

Pengajar dapat menyalin item stream dengan menyalin kursus, menggunakan kembali tugas, atau memublikasikan item stream ke beberapa kursus. Salinan baru akan memiliki ID yang berbeda, yang mungkin menjadi pertimbangan penting jika Anda mengembangkan add-on Classroom. Baca panduan kami tentang konten yang disalin untuk memahami cara add-on menangani skenario ini.

CourseWork dan StudentSubmissions

Item CourseWork mewakili tugas untuk sekelompok siswa dalam kursus. Ini adalah satu-satunya jenis item forum yang dapat menerima kiriman siswa. Resource CourseWork berisi detail seperti deskripsi, tanggal jatuh tempo, nilai maksimum, dan metadata seperti waktu pembuatan.

Setiap resource CourseWork menjelaskan salah satu jenis tugas berikut:

  • Tugas yang diselesaikan siswa dengan mengirimkan lembar kerja atau lampiran lainnya.
  • Pertanyaan jawaban singkat atau pertanyaan pilihan ganda.

Tugas siswa untuk item CourseWork diwakili oleh StudentSubmission. Respons ini terdiri dari respons dan metadata tambahan seperti status dan nilai yang ditetapkan.

Isi StudentSubmission bergantung pada jenis item CourseWork yang sesuai dan dapat mencakup:

  • Lembar kerja dan lampiran yang dikirimkan untuk tugas, termasuk judul, thumbnail, dan URL-nya, serta ID yang dapat digunakan dengan API yang sesuai seperti Drive atau YouTube.
  • Respons terhadap pertanyaan jawaban singkat atau pertanyaan pilihan ganda.

Untuk mengetahui informasi selengkapnya tentang mengelola tugas kelas dan kiriman siswa, lihat Mengelola tugas kelas.

Materi Tugas dan Pengumuman

Serupa dengan CourseWork, CourseWorkMaterials merepresentasikan konten yang ditetapkan ke sekelompok siswa dalam kursus. Setiap resource memiliki detail seperti judul dan deskripsi beserta materi tambahan. Namun, tidak seperti CourseWork, CourseWorkMaterials tidak mengharuskan siswa mengirimkan artefak apa pun. Oleh karena itu, tidak ada batas waktu, dan StudentSubmissions tidak ada untuk CourseWorkMaterials. Pengajar dapat menggunakan CourseWorkMaterials untuk memposting bacaan yang disarankan, silabus, atau peraturan kelas.

Announcements juga merepresentasikan konten yang dibagikan kepada sekelompok siswa, tetapi tidak memiliki detail seperti judul, dan tidak dapat diatur berdasarkan Topics seperti CourseWork atau CourseWorkMaterials. Pengajar dapat menggunakannya untuk mengumumkan pengingat atau pemberitahuan kepada kelas.

Topik

Topics digunakan untuk mengatur CourseWork dan CourseWorkMaterials secara visual dalam suatu kelas. Misalnya, ini dapat digunakan untuk mengelompokkan tugas menjadi "opsional" dan "wajib", atau "unit 1" dan "unit 2".

Add-on Classroom

Add-on adalah UI dan backend yang ditayangkan developer yang biasanya ditampilkan dalam iframe. Add-on muncul sebagai lampiran pada item stream. Item streaming dapat berupa Announcements, CourseWork, atau CourseWorkMaterials. Lampiran add-on diwakili oleh AddOnAttachment.

Lampiran add-on dapat berupa aktivitas atau konten.

  • Lampiran aktivitas mengharuskan siswa menyelesaikan dan menyerahkan kiriman individu. Contohnya termasuk kuis, gambar, atau game. Pengiriman aktivitas dapat dinilai secara opsional.
  • Lampiran konten tidak memerlukan kiriman siswa. Siswa tidak perlu menyerahkan lampiran dan lampiran tersebut tidak dinilai. Contohnya termasuk foto, artikel, dan video.

Lihat panduan pengembangan add-on untuk mengetahui informasi selengkapnya.

Pendaftaran

Aplikasi dapat berlangganan notifikasi saat data tertentu berubah di Google Classroom. Misalnya, saat daftar peserta kursus diperbarui. Registrations mewakili petunjuk untuk mengirim notifikasi ini ke aplikasi Anda.

Lihat panduan notifikasi push untuk mempelajari lebih lanjut.