Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Entwickler können die Google Classroom API verwenden, um mit Kursen in Google Classroom zu interagieren. Eine Anwendung, die die API auf diese Weise verwendet, wird als CourseWork-Integration bezeichnet.
Dieser Integrationspfad wird häufig verwendet, um Aufgaben mit Links zu Ressourcen außerhalb von Classroom zu erstellen und zu bewerten. Im Vergleich zu
Schaltflächen zum Teilen von Inhalten in Classroom bietet sie Entwicklern mehr Zugriff auf die Kursverwaltung.
Funktionsweise
Die Kernfunktion einer CourseWork-Integration ist das Erstellen und Verwalten von Aufgaben, Mitteilungen und Kursmaterialien mit der Classroom API.
Ein Beispiel für einen typischen Nutzerablauf, der durch eine CourseWork-Integration ermöglicht wird, ist, Lehrkräften die Möglichkeit zu geben, Inhalte auf Ihrer Website oder in Ihrer Anwendung zu finden, zuzuweisen und zu bewerten:
Ein Lehrkraftnutzer meldet sich auf Ihrer Website an.
Die Lehrkraft sucht nach Inhalten, die sie mit ihrer Klasse teilen möchte, oder erstellt solche Inhalte. Die Lehrkraft klickt auf Ihrer Website auf eine Schaltfläche, um diese Inhalte an Google Classroom zu senden.
Ihre Anwendung sendet eine Anfrage an courses.courseWork.create. Die Anfrage enthält ein CourseWork-Objekt im Text, das Folgendes enthält:
Die ID des Zielkurses.
Der Titel der Aufgabe.
Die Textbeschreibung für die Aufgabe.
Ein linkMaterial mit der URL zum vom Lehrer ausgewählten Inhalt.
Optional: die maximal erreichbare Punktzahl für die ausgewählten Inhalte.
In Classroom wird eine neue Aufgabe mit einer Link-Anlage angezeigt.
Der Link verweist auf die in der create-Anfrage angegebene URL. Ein Beispiel finden Sie in Abbildung 1.
Im Classroom-Kursbuch wird auch eine neue Spalte für die Aufgabe angezeigt, einschließlich der maximalen Punktzahl, sofern angegeben.
Die Schüler erhalten die Aufgabe und klicken auf link Material, um die bereitgestellte URL in einem neuen Tab zu öffnen und die Inhalte auf Ihrer Website anzusehen oder zu bearbeiten.
Optional: Geben Sie dem Schüler/Studenten die Möglichkeit, die Aufgabe abzugeben.
Optional können Sie eine Anfrage an courses.courseWork.studentSubmissions.modifyAttachments senden, um einer Schüler-/Studentenaufgabe Anhänge hinzuzufügen, z. B. eine Google Drive-Datei oder link
Material, die auf die Arbeit des Schülers/Studenten auf Ihrer Website verweist.
Beachten Sie Folgendes, bevor Sie entscheiden, ob eine CourseWork-Integration die richtige Wahl für Ihre Produktanforderungen ist.
Sie müssen den Nutzer autorisieren und ihn um seine Einwilligung bitten. Sie stellen API-Anfragen im Namen des Nutzers. Das bedeutet beispielsweise, dass Sie keine Kursaufgaben in beliebigen Google Classroom-Kursen erstellen können, sondern nur in Kursen, die von der autorisierten Person unterrichtet werden.
Der Nutzer muss einen Kurs auswählen können, um die Inhalte zu erhalten.
Verwenden Sie courses.list, um eine Liste der Kurse abzurufen, die der Nutzer unterrichtet, und lassen Sie den Nutzer dann einen oder mehrere Kurse aus der Liste auswählen.
Wenn ein Nutzer in Classroom auf ein link Material klickt, wird der Link in einem neuen Tab geöffnet. Ihr Server erhält keine Informationen von Classroom, wenn die URL geöffnet wird.
Lehrkräfte können Kursmaterial unabhängig vom Entwickler ändern oder löschen. Das bedeutet, dass das Wissen eines Entwicklers über die Kursinhalte veralten kann. Wenn Sie über Änderungen an Kursaufgaben informiert werden möchten, können Sie Push-Benachrichtigungen für Änderungen an Kursaufgaben einrichten.
Lehrkräfte können Kursmaterial in der Classroom-Benutzeroberfläche erstellen und Links zu URLs auf Ihrer Website einfügen. Auf diese Weise erstellte Kursaufgaben gehören ausschließlich der Lehrkraft. Sie können sie daher nicht über die Classroom API ansehen, bearbeiten oder Noten für eingereichte Aufgaben festlegen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 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."]]