In diesem Dokument erfahren Sie, wie Sie Ihre App von der eingestellten Email Settings API zur Gmail API migrieren.
Anfragen autorisieren
Wie die Email Settings API verwendet auch die Gmail API das OAuth 2.0-Protokoll zur Autorisierung von Anfragen. Ein wichtiger Unterschied besteht darin, dass die Berechtigungen der Gmail API auf einen einzelnen Nutzer und nicht auf die gesamte Domain beschränkt sind. Wenn Sie also ein Domainadministrator-Konto autorisieren, können Sie keine E-Mails für andere Nutzer in der Domain migrieren. Stattdessen müssen Sie Standarddienstkonten mit domainweiter Berechtigung verwenden, die in der Admin-Konsole einer Zulassungsliste hinzugefügt werden, um das entsprechende Authentifizierungstoken zu generieren.
Die Email Settings API verwendete den Bereich:
https://apps-apis.google.com/a/feeds/emailsettings/2.0/
Die entsprechenden Bereiche in der Gmail API sind:
https://www.googleapis.com/auth/gmail.settings.basic
https://www.googleapis.com/auth/gmail.settings.sharing
Protokolländerungen
Die Email Settings API verwendet das XML-basierte GDATA-Protokoll. Die Gmail API verwendet JSON. Da Einstellungen hauptsächlich aus Schlüssel-Wert-Paaren bestehen, sind die Nutzlasten zwischen den Versionen konzeptionell ähnlich.
Beispiel für das Erstellen eines Labels:
Email Settings API
POST https://apps-apis.google.com/a/feeds/emailsettings/2.0/{domain name}/{username}/label
<?xml version="1.0" encoding="utf-8"?>
<atom:entry xmlns:atom="http://www.w3.org/2005/Atom" xmlns:apps="http://schemas.google.com/apps/2006">
<apps:property name="label" value="status updates" />
</atom:entry>
Gmail API
POST https://www.googleapis.com/gmail/v1/users/{username}/labels
{
"name": "status updates"
}
Verwenden Sie die bereitgestellten Clientbibliotheken anstatt das Protokoll direkt zu implementieren.
Labels verwalten
Verwenden Sie die
labels Ressource, um Labels in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung | Hinweise |
|---|---|---|
| labelId | id | |
| Label | name | |
| unreadCount | messagesUnread | |
| Sichtbarkeit | labelListVisibility | SHOW ist jetzt labelShowist jetzt HIDElabelHide |
Weitere Änderungen:
- Beim Aktualisieren oder Löschen von Labels verweist die Gmail API anhand der ID und nicht anhand des Namens auf Labels.
Filter verwalten
Verwenden Sie die
settings.filters
Ressource, um Filter in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung | Hinweise |
|---|---|---|
| von | criteria.from | |
| zu | criteria.to | |
| Betreff | criteria.subject | |
| hasTheWord | criteria.query | |
| doesNotHaveTheWord | criteria.negatedQuery | |
| hasAttachment | criteria.hasAttachment | |
| shouldArchive | action.removeLabelIds | Verwenden Sie INBOX als Label-ID. |
| shouldMarkAsRead | action.removeLabelIds | Verwenden Sie UNREAD als Label-ID. |
| shouldStar | action.addLabelIds | Verwenden Sie STARRED als Label-ID. |
| Label | action.addLabelIds | Verwenden Sie die ID des hinzuzufügenden Labels. |
| forwardTo | action.forward | |
| shouldTrash | action.addLabelIds | Verwenden Sie TRASH als Label-ID. |
| neverSpam | action.removeLabelIds | Verwenden Sie SPAM als Label-ID. |
Weitere Änderungen:
- Wenn ein Nutzerlabel noch nicht vorhanden ist, muss es explizit erstellt werden
mit der
labels.createMethode.
„Senden als“-Aliasse verwalten
Verwenden Sie die
settings.sendAs Ressource, um „Senden als“-Aliasse in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| name | displayName |
| Adresse | sendAsEmail |
| replyTo | replyToAddress |
| makeDefault | isDefault |
Webclips verwalten
Einstellungen für Webclips sind in der Gmail API nicht verfügbar.
Automatische Weiterleitung verwalten
Verwenden Sie die
settings Ressource, um die automatische Weiterleitung in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung | Hinweise |
|---|---|---|
| aktivieren | aktiviert | |
| forwardTo | emailAddress | |
| Aktion | disposition | KEEP ist jetzt leaveInInboxARCHIVE ist jetzt archiveDELETE ist jetzt trashMARK_READ ist jetzt markRead |
Weitere Änderungen:
- Weiterleitungsadressen müssen vor der Verwendung erstellt und bestätigt werden.
- Weiterleitungsadressen können mit der
settings.forwardingAddressesRessource verwaltet werden.
POP-Einstellungen verwalten
Verwenden Sie die
settings Ressource, um den POP-Zugriff in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung | Hinweise |
|---|---|---|
| aktivieren | accessWindow | Deaktiviert, wenn auf disabled festgelegt |
| enableFor | accessWindow | ALL_MAIL ist jetzt allMailist jetzt MAIL_FROM_NOW_ONfromNowOn |
| Aktion | disposition | KEEP ist jetzt leaveInInboxARCHIVE ist jetzt archiveDELETE ist jetzt trashMARK_READ ist jetzt markRead |
IMAP-Einstellungen verwalten
Verwenden Sie die
settings Ressource, um den IMAP-Zugriff in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| aktivieren | aktiviert |
Einstellungen für automatische Abwesenheitsnotizen verwalten
Verwenden Sie die
settings Ressource, um automatische Abwesenheitsnotizen in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| contactsOnly | restrictToContacts |
| domainOnly | restrictToDomain |
| aktivieren | enableAutoReply |
| endDate | endTime |
| Nachricht | responseBodyHtml responseBodyPlainText |
| startDate | startTime |
| Betreff | responseSubject |
Signatureinstellungen verwalten
Verwenden Sie die
settings.sendAs
Ressource, um E-Mail-Signaturen in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| Signatur | Signatur |
Weitere Änderungen:
- Signaturen werden jetzt pro Alias verwaltet.
Spracheinstellungen verwalten
Verwenden Sie die
settings Ressource, um Spracheinstellungen in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| Sprache | displayLanguage |
Weitere Informationen finden Sie unter Spracheinstellungen verwalten.
Delegierungseinstellungen verwalten
Verwenden Sie die
settings.delegates
Ressource, um die Delegierung in der Gmail API zu verwalten.
| Alte Einstellung | Neue Einstellung |
|---|---|
| Adresse | delegateEmail |
| Status | verificationStatus |
Weitere Änderungen:
- Allgemein
- Um eine der Delegierungsmethoden zu verwenden (einschließlich
settings.delegates.create) muss der delegierende Nutzer für Gmail aktiviert sein. Das bedeutet beispielsweise, dass der delegierende Nutzer in Google Workspace nicht gesperrt sein darf. - Ein E-Mail-Alias kann für keine der neuen Methoden als E-Mail-Eingabe für den Stellvertreter verwendet werden. Ein Stellvertreter muss mit seiner primären E-Mail-Adresse angegeben werden.
- Um eine der Delegierungsmethoden zu verwenden (einschließlich
settings.delegates.create- Mit dieser Methode können jetzt Stellvertreterbeziehungen über mehrere Domains hinweg erstellt werden, die derselben Google Workspace-Organisation angehören.
- Diese Methode kann jetzt für Nutzer verwendet werden, die bei der nächsten Anmeldung ihr Passwort ändern müssen.
- Bei Erfolg gibt diese Methode eine
settings.delegatesRessource im Antworttext und nicht einen leeren Antworttext zurück. - Wenn einer der delegierenden oder stellvertretenden Nutzer deaktiviert ist (z. B. in Google Workspace gesperrt), schlägt diese Methode mit einem HTTP-Fehler 4XX anstelle eines HTTP-Fehlers 500 fehl.
settings.delegates.delete- Mit dieser Methode können jetzt Stellvertreter mit einem beliebigen
VerificationStatusgelöscht werden, nicht nur Stellvertreter mit dem Statusacceptedoderexpired.
- Mit dieser Methode können jetzt Stellvertreter mit einem beliebigen
settings.delegates.get- Dies ist eine neue Methode, die je nach Bedarf möglicherweise der
settings.delegates.listMethode vorzuziehen ist.
- Dies ist eine neue Methode, die je nach Bedarf möglicherweise der
Allgemeine Einstellungen verwalten
Allgemeine Einstellungen sind in der Gmail API nicht verfügbar.