این سند تفاوت های کلیدی بین API تنظیمات ایمیل و API Gmail را پوشش می دهد. می توانید از این راهنما برای کمک به انتقال برنامه خود به Gmail API استفاده کنید.
درخواست های مجاز
مانند API تنظیمات ایمیل، API Gmail از پروتکل OAuth 2.0 برای تأیید درخواست ها استفاده می کند. یکی از تفاوتهای کلیدی این است که مجوزهای Gmail API به یک کاربر اختصاص داده میشود، نه به کل دامنه. این بدان معناست که مجوز یک حساب سرپرست دامنه به شما اجازه نمیدهد که نامه را برای سایر کاربران در دامنه منتقل کنید. درعوض، باید از حسابهای خدمات استاندارد با اختیارات گسترده دامنه استفاده کنید که در لیست سفید کنسول Admin قرار دارند تا کد احراز هویت مناسب را ایجاد کنید.
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 استفاده می کند. از آنجایی که تنظیمات عمدتاً از جفتهای کلید/مقدار تشکیل شدهاند، محمولهها از نظر مفهومی بین نسخهها مشابه هستند.
نمونه ای از ایجاد یک برچسب:
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"
}
به جای اجرای مستقیم پروتکل از کتابخانه های Client ارائه شده استفاده کنید.
مدیریت برچسب ها
برای مدیریت برچسبها در Gmail API، از منبع Labels استفاده کنید.
تنظیمات قدیمی | تنظیم جدید | یادداشت ها |
---|---|---|
labelId | شناسه | |
برچسب زدن | نام | |
تعداد خوانده نشده | پیام های خوانده نشده | |
دید | labelListVisibility | SHOW اکنون labelShow استHIDE اکنون labelHide است |
سایر تغییرات:
- هنگام بهروزرسانی یا حذف برچسبها، Gmail API برچسبها را به جای نام، با شناسه ارجاع میدهد.
مدیریت فیلترها
برای مدیریت فیلترها در Gmail API، از منبع فیلترها استفاده کنید.
تنظیمات قدیمی | تنظیم جدید | یادداشت ها |
---|---|---|
از | معیارها.از | |
به | معیارها.به | |
موضوع | معیار.موضوع | |
کلمه دارد | معیار.پرس و جو | |
کلمه ندارد | kriter.negatedQuery | |
پیوست دارد | معیارها.پیوست | |
باید بایگانی شود | action.removeLabelIds | از INBOX به عنوان شناسه برچسب استفاده کنید |
بایدMarkAsRead | action.removeLabelIds | از UNREAD به عنوان شناسه برچسب استفاده کنید |
باید ستاره | action.addLabelIds | از STARRED به عنوان شناسه برچسب استفاده کنید |
برچسب زدن | action.addLabelIds | از شناسه برچسب برای افزودن استفاده کنید |
به جلو به | اقدام.به جلو | |
باید سطل زباله | action.addLabelIds | از TRASH به عنوان شناسه برچسب استفاده کنید |
neverSpam | action.removeLabelIds | از SPAM به عنوان شناسه برچسب استفاده کنید |
سایر تغییرات:
- اگر افزودن برچسب کاربر از قبل وجود ندارد، باید به صراحت با استفاده از روش labels.create ایجاد شود.
مدیریت send-as مستعار
برای مدیریت نام مستعار send-as در Gmail API، از منبع SendAs استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
نام | نمایش نام |
آدرس | sendAsEmail |
پاسخ به | replyToAddress |
makeDefault | پیش فرض است |
مدیریت کلیپ های وب
تنظیمات Web Clip دیگر از طریق API در دسترس نیستند.
مدیریت تنظیمات ارسال خودکار
برای مدیریت بازارسال خودکار در Gmail API، از منبع تنظیمات استفاده کنید.
تنظیمات قدیمی | تنظیم جدید | یادداشت ها |
---|---|---|
فعال کردن | فعال شد | |
به جلو به | آدرس ایمیل | |
اقدام | منش | KEEP اکنون leaveInInbox استARCHIVE در حال حاضر archive استDELETE اکنون trash استMARK_READ اکنون markRead است |
سایر تغییرات:
- آدرسهای ارسال باید قبل از استفاده ایجاد و تأیید شوند
- آدرس های ارسال را می توان از طریق منبع ForwardingAddresses مدیریت کرد.
مدیریت تنظیمات POP
برای مدیریت دسترسی POP در Gmail API، از منبع تنظیمات استفاده کنید.
تنظیمات قدیمی | تنظیم جدید | یادداشت ها |
---|---|---|
فعال کردن | دسترسی به پنجره | وقتی روی disabled تنظیم شود غیرفعال می شود |
enableFor | دسترسی به پنجره | ALL_MAIL اکنون allMail استMAIL_FROM_NOW_ON اکنون fromNowOn است |
اقدام | منش | KEEP اکنون leaveInInbox استARCHIVE در حال حاضر archive استDELETE اکنون trash استMARK_READ اکنون markRead است |
مدیریت تنظیمات IMAP
برای مدیریت دسترسی IMAP در Gmail API، از منبع تنظیمات استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
فعال کردن | فعال شد |
مدیریت تنظیمات پاسخ خودکار تعطیلات
برای مدیریت پاسخ خودکار تعطیلات در Gmail API، از منبع تنظیمات استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
فقط مخاطبین | limitedToContacts |
فقط دامنه | limitedToDomain |
فعال کردن | فعال کردن پاسخ خودکار |
تاریخ پایان | پایان زمان |
پیام | answerBodyHtml پاسخBodyPlainText |
تاریخ شروع | زمان شروع |
موضوع | پاسخ موضوع |
مدیریت تنظیمات امضا
برای مدیریت امضای ایمیل در Gmail API، از منبع SendAs استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
امضا | امضا |
سایر تغییرات:
- اکنون امضاها با نام مستعار مدیریت می شوند.
مدیریت تنظیمات زبان
برای مدیریت تنظیمات زبان در Gmail API، از منبع تنظیمات استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
زبان | زبان نمایش |
لطفاً برای اطلاعات بیشتر به راهنمای تنظیمات زبان مدیریت مراجعه کنید.
مدیریت تنظیمات تفویض اختیار
برای مدیریت تفویض اختیار در Gmail API، از منبع Delegates استفاده کنید.
تنظیمات قدیمی | تنظیم جدید |
---|---|
آدرس | delegateEmail |
وضعیت | وضعیت تأیید |
سایر تغییرات:
- ژنرال
- برای استفاده از هر یک از روشهای تفویض اختیار (از جمله delegates.create )، کاربر نماینده باید برای Gmail فعال باشد. به عنوان مثال، این بدان معناست که کاربر delegator را نمی توان به حالت تعلیق درآوردGoogle Workspace.
- نام مستعار ایمیل را نمی توان به عنوان ورودی ایمیل نماینده برای هیچ یک از روش های جدید استفاده کرد. کاربر نماینده باید با آدرس ایمیل اصلی خود ارجاع داده شود.
- نمایندگان.ایجاد
- اکنون می توان از این روش برای ایجاد روابط نمایندگی در چندین دامنه متعلق به یک دامنه استفاده کرد Google Workspaceسازمان.
- اکنون می توان از این روش برای کاربرانی استفاده کرد که در ورود بعدی خود نیاز به تغییر رمز عبور دارند.
- در صورت موفقیت آمیز بودن، این روش به جای یک بدنه پاسخ خالی، یک منبع Users.settings.delegates را در بدنه پاسخ برمی گرداند.
- اگر یکی از کاربران نماینده یا نماینده غیرفعال باشد (به عنوان مثال، در حالت تعلیق در Google Workspace) این روش با خطای HTTP 4XX به جای خطای HTTP 500 شکست می خورد.
- نمایندگان.حذف
- اکنون می توان از این روش برای حذف نمایندگان با هر گونه وضعیت تأیید استفاده کرد، نه فقط نمایندگانی که
accepted
یاexpired
اند.
- اکنون می توان از این روش برای حذف نمایندگان با هر گونه وضعیت تأیید استفاده کرد، نه فقط نمایندگانی که
- delegates.get
- این یک روش جدید است که ممکن است بسته به نیاز بر روش delegates.list ترجیح داده شود.
مدیریت تنظیمات عمومی
تنظیمات عمومی دیگر از طریق API در دسترس نیستند.