Damit der Assistent Post in Google Workspace lesen und dort Entwürfe anlegen kann, braucht er Zugriff über die Gmail API. Dafür gibt es zwei Wege, und beide beruhen auf dem, was die Organisation in ihrer eigenen Google Cloud anlegt. draften hat keine gemeinsame App, der Sie nur zustimmen müssten. Das gilt für unseren Dienst ebenso wie für eine Installation auf dem eigenen Server.
Wir gehen von Google Workspace aus. Private Konten @gmail.com unterstützen wir nicht: Mit ihnen kann man sich nicht bei draften anmelden, und ihre Verbindung würde voraussetzen, dass Google die App überprüft.
Welchen Weg wählen
| Für die ganze Organisation | Mit dem Konto des Postfachs | |
|---|---|---|
| In draften | Registrierung (Dienstkonto) unter Organisation → Integrationen | Schaltfläche Gmail verbinden beim Postfach |
| Bei Google | Dienstkonto mit Schlüssel und Domain-wide Delegation | OAuth-Client und Consent Screen vom Typ Internal |
| Wer es anlegt | ein Administrator der Google Cloud und ein Super Admin in Google Admin | ein Administrator der Google Cloud |
| Wer sich anmelden muss | niemand | der Inhaber jedes Postfachs, einmal |
| Welche Postfächer erreicht werden | alle Postfächer der Domain | nur das Postfach, dessen Konto sich angemeldet hat |
| Anmeldung bei draften mit dem Google-Konto | nein, das ist eine eigene Sache | derselbe OAuth-Client dient auch der Anmeldung |
Für eine Organisation mit mehreren Postfächern ist der Weg für die ganze Organisation einfacher. Mit dem Konto des Postfachs eignet sich, wenn Sie nicht einem einzigen Schlüssel Zugriff auf alle Postfächer der Domain geben möchten oder wenn Sie ohnehin die Anmeldung mit dem Google-Konto einführen.
Beide Wege können Sie gleichzeitig nutzen; jedes Postfach verwendet einen davon. draften verlangt nur den Berechtigungsbereich gmail.modify – Lesen und Anlegen von Entwürfen, es sendet nichts.
Weg A: für die ganze Organisation
In der Google Cloud
Sie arbeiten in https://console.cloud.google.com, in der Organisation Ihrer Workspace-Domain.
- Wählen Sie ein Projekt, oder legen Sie ein neues an (etwa
draften). - APIs & Services → Library → Gmail API → Enable.
- IAM & Admin → Service accounts → Create service account. Name etwa
draften-post. Rollen im Projekt braucht es keine – Zugriff auf die Post erhält es erst durch die Delegation in Google Admin. Klicken Sie auf Done. - Öffnen Sie das Dienstkonto und notieren Sie seine Unique ID – die numerische Client-ID.
- Registerkarte Keys → Add key → Create new key → JSON → Create. Eine Datei mit dem Schlüssel wird heruntergeladen.
Lehnt Google das Anlegen des Schlüssels ab, hat Ihre Organisation die Richtlinie iam.disableServiceAccountKeyCreation eingeschaltet (neue Organisationen haben sie standardmäßig). Für dieses Projekt schaltet sie ein Administrator der Organisation unter IAM & Admin → Organization policies aus.
In Google Admin
Sie brauchen einen Super Admin. Öffnen Sie in https://admin.google.com Security → Access and data control → API controls → Manage Domain Wide Delegation → Add new. Client ID: die numerische ID aus Schritt 4. OAuth scopes: https://www.googleapis.com/auth/gmail.modify. Klicken Sie auf Authorize. Die Delegation wirkt meist innerhalb weniger Minuten, in Ausnahmefällen erst nach einigen Stunden.
In draften
- Öffnen Sie Organisation → Integrationen, Karte Zugriff auf die Post für die ganze Organisation. Registrierungen verwalten der Inhaber und die Manager der Organisation.
- System: Google Workspace. Füllen Sie Name aus, wählen Sie bei Schlüssel des Dienstkontos (JSON) die heruntergeladene Datei und klicken Sie auf Registrierung hinzufügen. Der Schlüssel wird verschlüsselt gespeichert; in der Karte sind danach nur die E-Mail-Adresse des Dienstkontos und seine Client-ID zu sehen.
- Wählen Sie auf der Seite jedes Postfachs in der Karte Zugriff auf die Post bei Verwenden diese Registrierung, klicken Sie auf Übernehmen und dann auf Verbindung testen. Den Ablauf mit Bildschirmfotos zeigt die Anleitung Ein Postfach hinzufügen und verbinden.
Löschen Sie danach die heruntergeladene Schlüsseldatei. Wer sie hat, kommt in jedes Postfach der Domain. Einen neuen Schlüssel desselben Dienstkontos laden Sie bei der Registrierung über neuer Schlüssel (JSON) hoch; den Schlüssel eines anderen Dienstkontos fügen Sie als neue Registrierung hinzu. Löschen Sie den alten Schlüssel in der Google Cloud.
Ist Postfach automatisch eingeschaltet (Wie sich Mitglieder anmelden), wird ein neues Postfach von selbst an die Registrierung gebunden, wenn für Google Workspace genau eine aktiv ist.
Weg B: mit dem Konto des Postfachs (Gmail verbinden)
Hier meldet sich der Inhaber des Postfachs mit seinem Google-Konto an und erlaubt den Zugriff nur auf seine eigene Post. Derselbe OAuth-Client dient auch der Anmeldung bei draften mit dem Google-Konto.
In der Google Cloud
- Öffnen Sie zuerst in draften Organisation → Wie sich Mitglieder anmelden, Karte Kontoanmeldung und Postfachverbindungen. Sie zeigt zwei Redirect URIs genau für Ihre Adresse von draften – sie enden auf
/auth/google/callbackund/mailboxes/connect/google/callback. Kopieren Sie sie von dort; sie müssen Zeichen für Zeichen stimmen. - Öffnen Sie im Projekt mit eingeschalteter Gmail API (Schritt 2 von Weg A) APIs & Services → OAuth consent screen. User type: Internal – anmelden kann sich dann nur ein Konto Ihrer Domain, und Google muss die App nicht überprüfen. Tragen Sie den Namen der App (etwa
draften) und eine Kontakt-E-Mail-Adresse ein. - Fügen Sie im Abschnitt mit den Berechtigungsbereichen (Scopes / Data access)
openid,email,profileundhttps://www.googleapis.com/auth/gmail.modifyhinzu. - APIs & Services → Credentials → Create credentials → OAuth client ID. Application type: Web application. Tragen Sie unter Authorized redirect URIs beide Adressen aus der Karte ein und klicken Sie auf Create.
- Kopieren Sie Client ID und Client secret.
In draften
- Der Inhaber der Organisation trägt in der Karte Kontoanmeldung und Postfachverbindungen unter Google-OAuth-Client die Client ID und das Client secret ein und klickt auf Speichern.
- Der Inhaber des Postfachs öffnet die Seite des Postfachs und klickt in der Karte Zugriff auf die Post auf Gmail verbinden. Er meldet sich mit dem Konto dieses Postfachs an – ein anderes Konto lehnt draften ab – und erlaubt den Zugriff. Die Schaltfläche sieht nur der Inhaber des Postfachs, und nur wenn die Organisation den OAuth-Client hat.
- Dann Verbindung testen.
Die Anmeldung mit dem Google-Konto schalten Sie auf derselben Seite ein: Tragen Sie unter E-Mail-Domains der Organisation Ihre Workspace-Domain ein – die primäre, keine Alias-Domain (die sendet Google bei der Anmeldung nicht). Sobald die Organisation den OAuth-Client und die Domain hat, melden sich die Mitglieder mit dem Google-Konto an, und ihre Passwörter gelten nicht mehr – siehe Wie sich Mitglieder anmelden.
Wenn das Postfach getrennt wird
- Das Konto wurde gelöscht oder gesperrt, oder der Zugriff wurde widerrufen – Google stellt keine Tokens mehr aus, und draften trennt das Postfach. Verbinden Sie es erneut (Gmail neu verbinden) oder über Weg A.
- „Der Anbieter hat kein Refresh-Token ausgestellt“ – der Inhaber des Postfachs entfernt die App in den Einstellungen seines Google-Kontos (Sicherheit → Drittanbieter-Apps) und verbindet das Postfach erneut.
- „Es hat sich ein anderes Konto angemeldet als die Adresse des Postfachs“ – wählen Sie beim Verbinden das Konto genau dieses Postfachs.
Fehler beim Verbindungstest
Der Test prüft drei Schritte: Zugriff, Token und Berechtigung und Lesen des Posteingangs.
| In der Meldung | Was es bedeutet | Was zu tun ist |
|---|---|---|
die Delegation für den Berechtigungsbereich ist nicht erlaubt (unauthorized_client) | in Google Admin fehlt die Domain-wide Delegation, oder sie hat eine andere Client-ID oder einen anderen Berechtigungsbereich | die Delegation in Google Admin prüfen: die numerische ID und den genauen Berechtigungsbereich gmail.modify |
invalid_grant beim Dienstkonto | ein solches Postfach gibt es in der Workspace-Domain nicht | die Adresse des Postfachs prüfen |
| „Gmail API has not been used…“ | im Projekt ist die Gmail API nicht eingeschaltet | die Gmail API einschalten (Schritt 2) |
Token ohne gmail.modify | der Delegation oder dem Consent Screen fehlt der Berechtigungsbereich gmail.modify | den Berechtigungsbereich ergänzen |
invalid_grant, deleted_client bei einem verbundenen Konto | die Verbindung wurde widerrufen oder der OAuth-Client gelöscht | Gmail neu verbinden |
Weitere Fehler beschreibt Fehlerbehebung.