Tetap teratur dengan koleksi
Simpan dan kategorikan konten berdasarkan preferensi Anda.
Developer dapat menggunakan Google Classroom API untuk berinteraksi dengan tugas di Google Classroom. Aplikasi yang menggunakan API dengan cara ini disebut sebagai
integrasi CourseWork.
Jalur integrasi ini biasanya digunakan untuk membuat dan menilai tugas dengan
link ke materi di luar Classroom. Fitur ini memberikan akses developer yang lebih besar ke pengelolaan tugas dibandingkan dengan
tombol Berbagi Classroom.
Cara kerjanya
Fitur inti integrasi CourseWork adalah pembuatan dan pengelolaan tugas, pengumuman, dan materi kursus menggunakan Classroom API.
Salah satu contoh perjalanan pengguna umum yang diaktifkan oleh integrasi CourseWork adalah
memungkinkan pengajar menemukan, memberikan tugas, dan menilai konten dari dalam situs
atau aplikasi Anda:
Pengguna pengajar login ke situs Anda.
Pengajar menemukan atau membuat konten yang ingin dibagikan kepada kelasnya. Pengajar mengklik tombol di situs Anda untuk mengirim konten ini ke Google Classroom.
Aplikasi Anda mengirimkan permintaan ke courses.courseWork.create. Permintaan
berisi objek CourseWork dalam isinya yang berisi:
ID kursus tujuan.
Judul tugas.
Deskripsi teks untuk tugas.
linkMaterial dengan URL ke konten yang dipilih oleh
pengajar.
Secara opsional, skor maksimum yang dapat diperoleh untuk konten yang dipilih.
Tugas baru akan muncul di Classroom dengan lampiran link.
Link tersebut merujuk ke URL yang ditentukan dalam permintaan create. Lihat Contoh 1
untuk melihat contohnya.
Kolom baru untuk tugas juga muncul di buku nilai Classroom, termasuk skor maksimum jika diberikan.
Siswa menerima tugas dan mengklik link Material untuk membuka URL yang diberikan di tab baru dan melihat atau menyelesaikan konten di situs Anda.
Jika perlu, berikan kontrol bagi siswa untuk menyerahkan tugas.
Secara opsional, kirim permintaan ke
courses.courseWork.studentSubmissions.modifyAttachments untuk menambahkan
lampiran ke kiriman siswa, seperti file Google Drive atau link
Material yang mengarah ke tugas siswa di situs Anda.
Perhatikan hal-hal berikut sebelum memutuskan apakah integrasi CourseWork adalah pilihan yang tepat untuk kebutuhan produk Anda.
Anda harus memberikan otorisasi kepada pengguna dan meminta izinnya. Anda membuat
permintaan API atas nama pengguna. Artinya, misalnya, Anda tidak dapat membuat tugas di kursus Google Classroom mana pun; Anda hanya dapat membuat tugas di kursus yang diajar oleh pengguna yang diberi otorisasi.
Anda memerlukan cara bagi pengguna untuk memilih kursus guna menerima konten.
Pertimbangkan untuk menggunakan courses.list guna mendapatkan daftar kursus yang diajarkan oleh pengguna, lalu izinkan pengguna memilih satu atau beberapa kursus dari daftar.
Saat pengguna mengklik link Material di Classroom, link akan terbuka di tab baru. Server Anda tidak akan menerima informasi apa pun dari Classroom saat URL dibuka.
Pengajar dapat mengubah atau menghapus tugas secara independen dari developer. Artinya, pengetahuan developer tentang materi kursus mungkin menjadi tidak relevan. Jika Anda perlu mengetahui perubahan dalam tugas kelas, pertimbangkan untuk menyiapkan notifikasi push untuk perubahan tugas kelas.
Pengajar dapat membuat tugas di UI Classroom dengan menempelkan link ke URL di situs Anda. Tugas yang dibuat dengan cara ini
hanya dimiliki oleh pengajar, sehingga Anda tidak akan dapat melihat, mengubah, atau menetapkan
nilai kiriman menggunakan Classroom API.
[null,null,["Terakhir diperbarui pada 2025-08-01 UTC."],[],[],null,["# CourseWork integration\n\nDevelopers can use Google Classroom API to interact with coursework in\nGoogle Classroom. An application that uses the API in this way is referred to\nas a *`CourseWork` integration*.\n| **Key Point:** A `CourseWork` integration allows developers to programmatically access and modify the state of Google Classroom announcements, course materials, assignments, and student submissions. Choose this path if you need a low-cost way to push your content into Classroom.\n\nThis integration path is commonly used to create and grade assignments with\nlinks to resources outside of Classroom. It provides more\ndeveloper access to coursework management as compared to [Classroom Share buttons](/workspace/classroom/guides/sharebutton).\n\nHow it works\n------------\n\nThe core feature of a `CourseWork` integration is the creation and management of\nassignments, announcements, and course materials using Classroom API.\n\nOne example of a common user journey enabled by a `CourseWork` integration is to\nallow teachers to discover, assign, and grade content from within your website\nor application:\n\n1. A teacher user signs in to your website.\n2. The teacher finds or creates content that they want to share with their class. The teacher clicks a button on your website to send this content to Google Classroom.\n3. Your application issues a request to [`courses.courseWork.create`](/workspace/classroom/reference/rest/v1/courses.courseWork/create). The request contains a `CourseWork` object in its body that contains:\n - The destination course ID.\n - The title of the assignment.\n - The text description for the assignment.\n - A `link` [`Material`](/workspace/classroom/reference/rest/v1/Material) with the URL to the content selected by the teacher.\n - Optionally, the maximum score attainable for the selected content.\n4. A new assignment appears in Classroom with a link attachment. The link refers to the URL specified in the `create` request. See Figure 1 for an example.\n5. A new column for the assignment also appears in the Classroom gradebook, including the maximum score if provided.\n6. Students receive the assignment and click the `link Material` to open the provided URL in a new tab and view or complete the content on your website. Optionally, provide controls for the student to [turn in the assignment](/workspace/classroom/guides/manage-coursework#manage_student_response_state).\n7. Optionally, issue a request to [`courses.courseWork.studentSubmissions.modifyAttachments`](/workspace/classroom/reference/rest/v1/courses.courseWork.studentSubmissions/modifyAttachments) to add attachments to a student submission, such as a Google Drive file or `link\n Material` that points to the student's work on your website.\n8. Optionally, issue a request to [`courses.courseWork.studentSubmissions.patch`](/workspace/classroom/reference/rest/v1/courses.courseWork.studentSubmissions/patch) to set the student's grade for the assignment.\n\n**Figure 1.** Teacher view when editing an assignment with `link Material`\ncreated by a `CourseWork` integration.\n\nAlternatively, you could call [`courses.announcements.create`](/workspace/classroom/reference/rest/v1/courses.announcements/create) or\n[`courses.courseWorkMaterials.create`](/workspace/classroom/reference/rest/v1/courses.courseWorkMaterials/create) to create an announcement or course\nmaterial instead of an assignment. See the [Create \\& manage coursework](/workspace/classroom/guides/manage-coursework) and [Set\n\\& update grades](/workspace/classroom/guides/classroom-api/manage-grades) pages for detailed descriptions of the relevant\nClassroom API actions.\n\nConsiderations\n--------------\n\n| **Key Point:** There are some important limitations to a `CourseWork` integration. If these prevent you from realizing your product, consider building a [Google Classroom add-on](/workspace/classroom/add-ons) instead.\n\nKeep the following in mind before deciding if a `CourseWork` integration is the\nright choice for your product needs.\n\n- You need to authorize the user and prompt for their consent. You're making API requests *on the user's behalf* . This means, for example, that you can't create coursework in *any* Google Classroom course; you can only create coursework in courses that the authorized user teaches.\n- You need a way for the user to select a course to receive the content. Consider using [`courses.list`](/workspace/classroom/reference/rest/v1/courses/list) to get a list of the courses taught by the user, then allow the user to select one or more of the courses from the list.\n- When a user clicks a `link Material` in Classroom, the link opens in a new tab. Your server won't receive any information from Classroom when the URL opens.\n- A teacher can modify or delete the coursework independently of the developer. This means that a developer's knowledge of the coursework might become out of date. If you need to be aware of changes in coursework, consider setting up [push notifications](/workspace/classroom/best-practices/push-notifications) for coursework changes.\n- A teacher can create coursework in the Classroom UI with pasted links to URLs on your website. Coursework created in this manner are solely owned by the teacher, so you won't be able to view, modify, or set submission grades using the Classroom API."]]