במסמך הזה מפורטים ההבדלים העיקריים בין Email Settings API לבין Gmail API. המדריך הזה יעזור לכם להעביר את האפליקציה שלכם ל-Gmail API.
אישור בקשות
בדומה ל-Email Settings API, גם Gmail API משתמש בפרוטוקול OAuth 2.0 כדי לאשר בקשות. הבדל חשוב אחד הוא שההרשאות של Gmail API מוגבלות למשתמש ספציפי, ולא לכל הדומיין. כלומר, אישור של חשבון אדמין בדומיין לא מאפשר לכם להעביר את הדואר של משתמשים אחרים בדומיין. במקום זאת, צריך להשתמש בחשבונות שירות רגילים עם הרשאה לכל הדומיין שנמצאים ברשימת ההיתרים במסוף Admin כדי ליצור את אסימון האימות המתאים.
ממשק Email Settings API השתמש בהיקף ההרשאות:
https://apps-apis.google.com/a/feeds/emailsettings/2.0/
ההיקפים המקבילים ב-Gmail API הם:
https://www.googleapis.com/auth/gmail.settings.basic
https://www.googleapis.com/auth/gmail.settings.sharing
שינויים בפרוטוקול
ה-API של הגדרות האימייל משתמש בפרוטוקול GDATA שמבוסס על XML. Gmail API משתמש ב-JSON. מכיוון שההגדרות מורכבות בעיקר מצמדי מפתח/ערך, המטען הייעודי (payload) דומה בין הגרסאות מבחינה רעיונית.
דוגמה ליצירת תווית:
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>
ממשק ה-API של Gmail
POST https://www.googleapis.com/gmail/v1/users/{username}/labels
{
"name": "status updates"
}
במקום להטמיע את הפרוטוקול ישירות, צריך להשתמש בספריות הלקוח שסופקו.
ניהול תוויות
כדי לנהל תוויות ב-Gmail API, צריך להשתמש במשאב Labels.
ההגדרה הקודמת | הגדרה חדשה | הערות |
---|---|---|
labelId | id [מזהה] | |
תווית | שם | |
unreadCount | messagesUnread | |
חשיפה | labelListVisibility | SHOW נקרא עכשיו labelShow HIDE נקרא עכשיו labelHide |
שינויים אחרים:
- כשמעדכנים או מוחקים תוויות, Gmail API מפנה לתוויות לפי מזהה ולא לפי שם.
ניהול המסננים
כדי לנהל מסננים ב-Gmail API, משתמשים במשאב Filters.
ההגדרה הקודמת | הגדרה חדשה | הערות |
---|---|---|
החל מ- | criteria.from | |
עד | criteria.to | |
נושא | criteria.subject | |
hasTheWord | criteria.query | |
doesNotHaveTheWord | criteria.negatedQuery | |
hasAttachment | criteria.hasAttachment | |
shouldArchive | action.removeLabelIds | שימוש ב-INBOX כמזהה התווית |
shouldMarkAsRead | action.removeLabelIds | שימוש ב-UNREAD כמזהה התווית |
shouldStar | action.addLabelIds | שימוש ב-STARRED כמזהה התווית |
תווית | action.addLabelIds | שימוש במזהה של התווית להוספה |
forwardTo | action.forward | |
shouldTrash | action.addLabelIds | שימוש ב-TRASH כמזהה התווית |
neverSpam | action.removeLabelIds | שימוש ב-SPAM כמזהה התווית |
שינויים אחרים:
- אם התווית שרוצים להוסיף למשתמש עדיין לא קיימת, צריך ליצור אותה במפורש באמצעות השיטה labels.create.
ניהול כינויים לשליחה בתור
כדי לנהל כתובות אימייל חלופיות לשליחה ב-Gmail API, צריך להשתמש במשאב SendAs.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
שם | displayName |
כתובת | sendAsEmail |
replyTo | replyToAddress |
makeDefault | isDefault |
ניהול קליפים מהאינטרנט
ההגדרות של Web Clip כבר לא זמינות דרך ה-API.
ניהול ההגדרות של העברה אוטומטית
כדי לנהל את ההעברה האוטומטית ב-Gmail API, משתמשים במשאב Settings.
ההגדרה הקודמת | הגדרה חדשה | הערות |
---|---|---|
enable | פעיל | |
forwardTo | emailAddress | |
פעולה | מחיקה | KEEP נקרא עכשיו leaveInInbox ARCHIVE נקרא עכשיו archive DELETE נקרא עכשיו trash MARK_READ נקרא עכשיו markRead |
שינויים אחרים:
- צריך ליצור ולאמת את הכתובות להעברה לפני שמשתמשים בהן
- אפשר לנהל כתובות להעברה באמצעות מקור המידע ForwardingAddresses.
ניהול הגדרות POP
כדי לנהל את הגישה ל-POP ב-Gmail API, משתמשים במשאב Settings.
ההגדרה הקודמת | הגדרה חדשה | הערות |
---|---|---|
enable | accessWindow | האפשרות מושבתת כשהערך הוא disabled |
enableFor | accessWindow | ALL_MAIL נקרא עכשיו allMail MAIL_FROM_NOW_ON נקרא עכשיו fromNowOn |
פעולה | מחיקה | KEEP נקרא עכשיו leaveInInbox ARCHIVE נקרא עכשיו archive DELETE נקרא עכשיו trash MARK_READ נקרא עכשיו markRead |
ניהול הגדרות IMAP
כדי לנהל את הגישה ל-IMAP ב-Gmail API, משתמשים במשאב Settings.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
enable | פעיל |
ניהול ההגדרות של מענה אוטומטי בחופשה
כדי לנהל את המענה האוטומטי לחופשה ב-Gmail API, משתמשים במשאב Settings.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
contactsOnly | restrictToContacts |
domainOnly | restrictToDomain |
enable | enableAutoReply |
endDate | endTime |
הודעה | responseBodyHtml responseBodyPlainText |
startDate | startTime |
נושא | responseSubject |
ניהול הגדרות החתימה
כדי לנהל חתימות אימייל ב-Gmail API, צריך להשתמש במשאב SendAs.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
signature | signature |
שינויים אחרים:
- חתימות מנוהלות עכשיו לכל כתובת אימייל חלופית.
ניהול הגדרות השפה
כדי לנהל את הגדרות השפה ב-Gmail API, משתמשים במשאב Settings.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
language | displayLanguage |
מידע נוסף זמין במדריך לניהול הגדרות השפה.
ניהול הגדרות ההאצלה
כדי לנהל הקצאת הרשאות ב-Gmail API, צריך להשתמש במשאב Delegates.
ההגדרה הקודמת | הגדרה חדשה |
---|---|
כתובת | delegateEmail |
status | verificationStatus |
שינויים אחרים:
- כללי
- כדי להשתמש באחת משיטות ההענקה (כולל delegates.create), צריך להפעיל את Gmail למשתמש שמעניק את הגישה. לדוגמה, אי אפשר להשעות את המשתמש שהעניק את ההרשאה ב-Google Workspace.
- אי אפשר להשתמש בכתובת אימייל חלופית כקלט של כתובת האימייל של הנציג באף אחת מהשיטות החדשות. צריך להפנות למשתמש עם הרשאת גישה באמצעות כתובת האימייל הראשית שלו.
- delegates.create
- מעכשיו אפשר להשתמש בשיטה הזו כדי ליצור יחסי גומלין של הקצאת הרשאות בכמה דומיינים ששייכים לאותו ארגון Google Workspace.
- עכשיו אפשר להשתמש בשיטה הזו גם עבור משתמשים שנדרשים לשנות את הסיסמה שלהם בכניסה הבאה.
- אם הפעולה בוצעה ללא שגיאות, השיטה הזו מחזירה משאב Users.settings.delegates בגוף התגובה, ולא גוף תגובה ריק.
- אם אחד מהמשתמשים (המשתמש שהוקצו לו הרשאות או המשתמש שהקצה הרשאות) מושבת (לדוגמה, מושעה ב- Google Workspace), השיטה הזו תיכשל עם שגיאת HTTP 4XX במקום שגיאת HTTP 500.
- delegates.delete
- עכשיו אפשר להשתמש בשיטה הזו כדי למחוק נציגים עם כל verificationStatus, ולא רק נציגים עם הערכים
accepted
אוexpired
.
- עכשיו אפשר להשתמש בשיטה הזו כדי למחוק נציגים עם כל verificationStatus, ולא רק נציגים עם הערכים
- delegates.get
- זו שיטה חדשה, ויכול להיות שהיא עדיפה על השיטה delegates.list, בהתאם לצורך.
ניהול הגדרות כלליות
ההגדרות הכלליות לא זמינות יותר דרך ה-API.