ย้ายข้อมูลจาก Email Settings API

เอกสารนี้จะช่วยย้ายข้อมูลแอปจาก Email Settings API ที่เลิกใช้งานแล้วไปยัง Gmail API

ให้สิทธิ์คำขอ

Gmail API ใช้โปรโตคอล OAuth 2.0 เพื่อให้สิทธิ์คำขอเช่นเดียวกับ Email Settings API ความแตกต่างที่สำคัญอย่างหนึ่งคือสิทธิ์ของ Gmail API จะกำหนดขอบเขตไว้ที่ผู้ใช้แต่ละราย ไม่ใช่ทั้งโดเมน ซึ่งหมายความว่าการให้สิทธิ์บัญชีผู้ดูแลระบบโดเมนไม่ได้ช่วยให้คุณย้ายข้อมูล อีเมลสำหรับผู้ใช้รายอื่นในโดเมนได้ แต่คุณต้องใช้บัญชีบริการมาตรฐานที่มีสิทธิ์ระดับโดเมนซึ่งเพิ่มลงในรายการที่อนุญาตในคอนโซลผู้ดูแลระบบของ Google เพื่อสร้างโทเค็นการตรวจสอบสิทธิ์ที่เหมาะสม

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

การเปลี่ยนแปลงโปรโตคอล

Email Settings API ใช้โปรโตคอล GDATA ที่อิงตาม XML Gmail API ใช้ JSON เนื่องจากการตั้งค่าส่วนใหญ่ประกอบด้วยคู่คีย์-ค่า เพย์โหลดจึงมีความคล้ายคลึงกันในเชิงแนวคิดระหว่างเวอร์ชันต่างๆ

ตัวอย่างการสร้างป้ายกำกับ

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"
}

ใช้ไลบรารีของไคลเอ็นต์ที่ให้มาแทน การใช้โปรโตคอลโดยตรง

จัดการป้ายกำกับ

หากต้องการจัดการป้ายกำกับใน Gmail API ให้ใช้แหล่งข้อมูล labels

การตั้งค่าเดิม การตั้งค่าใหม่ หมายเหตุ
labelId id
ป้ายกำกับ ชื่อ
unreadCount messagesUnread
การเปิดเผย labelListVisibility SHOW เปลี่ยนชื่อเป็น labelShow
HIDE เปลี่ยนชื่อเป็น labelHide

การเปลี่ยนแปลงอื่นๆ

  • เมื่ออัปเดตหรือลบป้ายกำกับ Gmail API จะอ้างอิงป้ายกำกับ ตามรหัสแทนที่จะอ้างอิงตามชื่อ

จัดการตัวกรอง

หากต้องการจัดการตัวกรองใน Gmail API ให้ใช้แหล่งข้อมูล settings.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 ให้ใช้แหล่งข้อมูล settings.sendAs

การตั้งค่าเดิม การตั้งค่าใหม่
ชื่อ displayName
ที่อยู่ sendAsEmail
replyTo replyToAddress
makeDefault isDefault

จัดการเว็บคลิป

การตั้งค่า Web Clip ไม่พร้อมใช้งานใน Gmail API

จัดการการส่งต่ออัตโนมัติ

หากต้องการจัดการการส่งต่ออัตโนมัติใน Gmail API ให้ใช้แหล่งข้อมูล settings

การตั้งค่าเดิม การตั้งค่าใหม่ หมายเหตุ
เปิดใช้ เปิดใช้อยู่
forwardTo emailAddress
การดำเนินการ การควบคุม KEEP เปลี่ยนชื่อเป็น leaveInInbox
ARCHIVE เปลี่ยนชื่อเป็น archive
DELETE เปลี่ยนชื่อเป็น trash
MARK_READ เปลี่ยนชื่อเป็น markRead

การเปลี่ยนแปลงอื่นๆ

  • คุณต้องสร้างและยืนยันที่อยู่อีเมลสำหรับส่งต่อก่อนใช้งาน
  • คุณจัดการอีเมลที่ส่งต่อได้โดยใช้แหล่งข้อมูล settings.forwardingAddresses

จัดการการตั้งค่า POP

หากต้องการจัดการการเข้าถึง POP ใน Gmail API ให้ใช้แหล่งข้อมูล settings

การตั้งค่าเดิม การตั้งค่าใหม่ หมายเหตุ
เปิดใช้ 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

การตั้งค่าเดิม การตั้งค่าใหม่
เปิดใช้ เปิดใช้อยู่

จัดการการตั้งค่าอีเมลตอบกลับอัตโนมัติเมื่อไม่อยู่

หากต้องการจัดการอีเมลตอบกลับอัตโนมัติเมื่อลางานใน Gmail API ให้ใช้แหล่งข้อมูล settings

การตั้งค่าเดิม การตั้งค่าใหม่
contactsOnly restrictToContacts
domainOnly restrictToDomain
เปิดใช้ enableAutoReply
endDate endTime
ข้อความ responseBodyHtml
responseBodyPlainText
startDate startTime
วัตถุ responseSubject

จัดการการตั้งค่าลายเซ็น

หากต้องการจัดการลายเซ็นอีเมลใน Gmail API ให้ใช้แหล่งข้อมูล settings.sendAs

การตั้งค่าเดิม การตั้งค่าใหม่
ลายเซ็น ลายเซ็น

การเปลี่ยนแปลงอื่นๆ

  • ตอนนี้คุณจัดการลายเซ็นต่ออีเมลแทนได้แล้ว

จัดการการตั้งค่าภาษา

หากต้องการจัดการการตั้งค่าภาษาใน Gmail API ให้ใช้แหล่งข้อมูล settings

การตั้งค่าเดิม การตั้งค่าใหม่
ภาษา displayLanguage

ดูข้อมูลเพิ่มเติมได้ที่จัดการการตั้งค่าภาษา

จัดการการตั้งค่าการมอบสิทธิ์

หากต้องการจัดการการมอบสิทธิ์ใน Gmail API ให้ใช้แหล่งข้อมูล settings.delegates

การตั้งค่าเดิม การตั้งค่าใหม่
ที่อยู่ delegateEmail
สถานะ verificationStatus

การเปลี่ยนแปลงอื่นๆ

  • ทั่วไป
    • หากต้องการใช้วิธีการมอบสิทธิ์ใดก็ตาม (รวมถึง settings.delegates.create) ต้องเปิดใช้ Gmail สำหรับผู้ใช้ที่มอบสิทธิ์ ซึ่งหมายความว่าผู้ใช้ที่มอบสิทธิ์จะไม่สามารถถูกระงับใน Google Workspace ได้
    • คุณไม่สามารถใช้อีเมลแทนเป็นอินพุตอีเมลผู้รับมอบสิทธิ์สำหรับวิธีการใหม่ๆ ได้ ระบบต้องอ้างอิงผู้ใช้ที่ได้รับมอบสิทธิ์ด้วยอีเมลหลัก
  • settings.delegates.create
    • ตอนนี้คุณสามารถใช้วิธีนี้เพื่อสร้างความสัมพันธ์ในการมอบสิทธิ์ในหลายโดเมนที่เป็นขององค์กร Google Workspace เดียวกันได้แล้ว
    • ตอนนี้คุณสามารถใช้วิธีนี้กับผู้ใช้ที่ต้องเปลี่ยนรหัสผ่านเมื่อลงชื่อเข้าใช้ครั้งถัดไปได้แล้ว
    • หากทำสำเร็จ เมธอดนี้จะแสดงผลsettings.delegates ทรัพยากรในเนื้อหาการตอบกลับแทนที่จะเป็นเนื้อหาการตอบกลับที่ว่างเปล่า
    • หากผู้ใช้ที่มอบสิทธิ์หรือผู้รับมอบสิทธิ์ถูกปิดใช้ (เช่น ถูกระงับใน Google Workspace) วิธีนี้จะล้มเหลวโดยมีข้อผิดพลาด HTTP 4XX แทนข้อผิดพลาด HTTP 500
  • settings.delegates.delete
    • ตอนนี้คุณสามารถใช้วิธีนี้เพื่อลบผู้รับมอบสิทธิ์ที่มี VerificationStatus ได้แล้ว ไม่ใช่แค่ผู้รับมอบสิทธิ์ที่เป็น accepted หรือ expired เท่านั้น
  • settings.delegates.get
    • นี่เป็นวิธีใหม่ซึ่งอาจดีกว่าวิธี settings.delegates.list ขึ้นอยู่กับความต้องการ

จัดการการตั้งค่าทั่วไป

การตั้งค่าทั่วไปไม่พร้อมใช้งานใน Gmail API