Anfragefehler
Ein Classroom API-Fehler kann einen Fehlercode enthalten, mit dem Sie die Ursache ermitteln und den Fehler richtig beheben können. Je nach Code können Sie die Anfrage wiederholen oder Nutzer zu einer bestimmten Aktion weiterleiten.
Auf dieser Seite werden die möglichen Fehlercodes nach HTTP-Code gruppiert. Weitere Informationen zur Struktur der Fehlermeldung finden Sie unter Struktur der Fehlermeldung.
Auf dieser Seite werden die möglichen Fehlercodes nach HTTP-Code gruppiert. In der Referenzdokumentation können Sie nachlesen, welche Methoden einen bestimmten Fehlercode zurückgeben.
HTTP 400: FAILED_PRECONDITION
Ein FAILED_PRECONDITION
wird zurückgegeben, wenn der Nutzer versucht, eine Aktion durchzuführen, die nicht zulässig ist, weil der Nutzer entweder ein Limit oder einen Anwendungsstatus wie CourseNotModifiable
erreicht hat. Um ein FAILED_PRECONDITION
-Problem zu beheben, bitten Sie den Nutzer, eine Aktion auszuführen und es dann noch einmal zu versuchen. In einigen Fällen können Sie auch alternative Endpunkte verwenden, um den Status für den Nutzer zu korrigieren.
PendingInvitationExists
PendingInvitationExists
gibt an, dass jemand bereits eingeladen wurde, die Inhaberschaft des Kurses zu übernehmen. Dieser Fehler tritt bei der Übertragung der Eigentümerschaft eines Kurses auf, wenn bereits eine Übertragung gestartet, aber noch nicht vom neuen Eigentümer akzeptiert wurde.
Kursmitgliedslimit erreicht
CourseMemberLimitReached
gibt an, dass die gewünschte Aktion die maximal zulässige Anzahl von Kursmitgliedern überschreiten würde. Dieser Code wird in der Regel vom students.create()
zurückgegeben. Weitere Informationen finden Sie im Hilfeartikel Schüler oder Studenten zu einem Kurs einladen im Abschnitt „Beschränkungen der Kursgröße“.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, unnötige Kursmitglieder zu entfernen.
Kurs nicht änderbar
CourseNotModifiable
gibt an, dass die Eigenschaften des entsprechenden Kurses nicht geändert werden dürfen (abgesehen vom Kursstatus selbst).
Mögliche Aktion: Fordert den Nutzer auf, den Kurs in einen änderbaren Kursstatus zu ändern. Verwenden Sie courses.patch()
, um den Status zu ändern. Der Kursstatus kann in einer Anfrage geändert werden, bei der andere Eigenschaften geändert werden.
KursTeacherLimitReached
CourseTeacherLimitReached
gibt an, dass die angeforderte Aktion die maximal zulässige Anzahl von Kurslehrern überschreiten würde. Dieser Code wird normalerweise vom teachers.create()
zurückgegeben. Weitere Informationen finden Sie im Hilfeartikel Kursen zusätzliche Lehrkräfte hinzufügen im Abschnitt „Beschränkungen der Kursgröße“.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, nicht erforderliche Kursleiter zu entfernen. Sie können gegebenenfalls mit Teachers.delete() die Teilnehmerlisten der Lehrkräfte im Namen des Nutzers verwalten.
UserGroupsMembershipLimitReached
UserGroupsMembershipLimitReached
gibt an, dass der Nutzer bereits Mitglied der maximal zulässigen Anzahl von Gruppen ist und an keinem Kurs teilnehmen kann. Dieser Code wird normalerweise von students.create()
oder teachers.create()
zurückgegeben. Weitere Informationen finden Sie im Hilfeartikel Schüler oder Studenten zu einem Kurs einladen im Abschnitt „Beschränkungen der Kursgröße“.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, alle Kurse zu verlassen, an denen er nicht teilnimmt. Der Nutzer kann ein zusätzliches Konto erstellen, wenn er an weiteren Kursen teilnehmen möchte. Gegebenenfalls können Sie mit students.create()
oder teachers.delete()
Teilnehmerlisten im Namen des Nutzers verwalten.
AttachmentNotSichtbar
AttachmentNotVisible
gibt an, dass mindestens ein Anhang entweder nicht für den Nutzer sichtbar ist, nicht den angeforderten Typ hat oder nicht vorhanden ist. Dieser Fehler tritt beispielsweise bei Drive-Elementen auf, die nicht für den Nutzer freigegeben wurden.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, die Kennzeichnungen (z. B. Drive-Datei-IDs) noch einmal zu prüfen. Stellen Sie außerdem sicher, dass der Nutzer die erforderlichen Berechtigungen zum Ansehen des Anhangs hat.
Kursordnerinhaber kann nicht entfernt werden
CannotRemoveCourseFolderOwner
gibt an, dass der Eigentümer des Drive-Ordners des Kurses nicht entfernt werden darf.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, die Eigentümerschaft des Drive-Ordners des Kurses auf einen anderen Nutzer zu übertragen und es noch einmal zu versuchen.
Kursinhaber kann nicht entfernt werden
CannotRemoveCourseOwner
gibt an, dass der Kursinhaber nicht entfernt werden darf.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie vor, dass der Kursinhaber möglicherweise nicht entfernt wird. In den meisten Fällen versuchen Nutzer, sich selbst zu entfernen, was nicht zulässig ist.
Kursinhaber kann nicht entfernt werden
CannotRemoveCourseOwnerTransferIncomplete
gibt an, dass der Kursinhaber möglicherweise nicht entfernt werden kann, weil die Übertragung der Eigentümerschaft für diesen Kurs noch läuft.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, einige Minuten zu warten, bis die asynchrone Aktion zur Übertragung der Eigentümerschaft der Klasse abgeschlossen ist, und es dann noch einmal zu versuchen.
NichtentfernenLehrerohneKursinhaber
CannotRemoveTeacherWithNoCourseOwner
gibt an, dass eine Lehrkraft nicht aus einem Kurs ohne Inhaber entfernt werden kann.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie vor, dass die Lehrkraft möglicherweise nicht entfernt wird. In den meisten Fällen wurde das Nutzerkonto des Kursinhabers gelöscht, wodurch ein ungültiger Kursstatus verursacht wurde.
Inaktiver Kursinhaber
InactiveCourseOwner
gibt an, dass die angeforderte Aktion nicht zulässig ist, weil das Konto des Kursinhabers gelöscht wurde. Der Administrator des Kursinhabers muss das Konto des Kursinhabers wiederherstellen, bevor er die angeforderte Aktion ausführen kann.
Mögliche Maßnahme: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Administrator vor, das Konto des Kursinhabers wiederherzustellen, bevor Sie den Vorgang wiederholen.
Nicht berechtigter Inhaber
IneligibleOwner
gibt an, dass der Nutzer nicht als Inhaber des Kurses hinzugefügt werden kann, weil er keine zusätzliche Lehrkraft ist.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers. Wenn der anfragende Nutzer kein Administrator ist, schlagen Sie vor, dass er dem Nutzer zuerst eine Einladung sendet, Lehrkraft für den Kurs zu werden, bevor er den Eigentümer aktualisiert. Wenn der anfragende Nutzer ein Administrator ist, schlagen Sie ihm vor, ihn zuerst als zusätzliche Lehrkraft des Kurses hinzuzufügen.
Nutzer kann Kurs nicht besitzen
UserCannotOwnCourse
gibt an, dass der Nutzer nicht als Inhaber des Kurses hinzugefügt werden kann.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers und schlagen Sie vor, dass der Kurs nicht mit dem Nutzer als Kursinhaber erstellt werden kann. Dieser Fehler wird möglicherweise angezeigt, wenn ein Nutzer ohne Administratorberechtigungen versucht, einen Kurs mit einem anderen Nutzer als dem Eigentümer zu erstellen. Ein Administrator, der einen Nutzer anfordert, kann diesen Fehler sehen, wenn das als Inhaber angegebene Nutzerkonto nicht existiert oder der Nutzer sich nicht in seiner Domain befindet.
HTTP 429: RESOURCE_EXHAUSTED
RESOURCE_EXHAUSTED
wird zurückgegeben, wenn die angeforderte Aktion nicht zulässig ist, weil eine Ressource, z. B. ein Kontingent oder eine Serverkapazität, erschöpft ist. Solche Anfragefehler treten normalerweise auf, wenn Ihre Anwendung übermäßig belastet wurde.
Verwenden Sie Wiederholungsmechanismen, um das Auslösen dieser Limits zu vermeiden und die Zuverlässigkeit Ihrer Anwendung zu erhöhen. Gültige Wiederholungsmechanismen sind:
Verwenden Sie einen abgeschnittenen exponentiellen Backoff, um die Anfrage noch einmal zu senden und den Durchsatz von Anfragen in gleichzeitigen Umgebungen zu maximieren.
Ziehen Sie einen abgeschnittenen exponentiellen Backoff mit Jitter in Betracht, um Konflikte zu vermeiden. Der Einführung von Jitter kann dazu beitragen, dass Ihre Anfragen schneller erfolgreich sind. Dazu wird eine zufällige Verzögerung eingeführt, die Spitzen in Anfragen verteilt.
Wenn Ihre Anwendung aufgrund von Kontingentbeschränkungen RESOURCE_EXHAUSTED
Fehler zurückgibt, reichen Sie eine Kontingenterhöhung ein. Weitere Informationen finden Sie im Hilfeartikel API-Kontingente überwachen.
UserCourseJoinRateLimitReached
UserCourseJoinRateLimitReached
gibt an, dass der Nutzer bereits an der maximal zulässigen Anzahl von Kursen an einem Tag teilgenommen hat. Weitere Informationen finden Sie im Hilfeartikel Gruppenrichtlinien und -beschränkungen im Abschnitt „Gruppeneinladungen und -größe“.
Mögliche Aktion: Beschreiben Sie die Ursache des Fehlers und schlagen Sie dem Nutzer vor, einen Tag zu warten, bevor er am Kurs teilnimmt.
HTTP 500: INTERNAL
INTERNAL
gibt an, dass beim Verarbeiten der Anfrage ein unerwarteter Fehler aufgetreten ist. Fehler bei INTERNAL
-Anfragen können oft auch durch exponentiellen Backoff behoben werden, um die Anfrage noch einmal zu senden. Wenn der Fehler INTERNAL
weiterhin besteht, können Sie ihn über die öffentliche Problemverfolgung für die Classroom API melden.