我正在尝试通过Gmail API v1将消息从imap导入Gmail。如果我使用API调用进行插入,我可以将internalDateSource指定为dateHeader。使用该设置,邮件将在Gmail中显示原始发送日期,而不是导入日期。
如果我使用Gmail API Upload方法,我看不到在multipart消息头中指定internalDateSource的任何选项。因此,Gmail将使用最新的接收标头,即导入。
Received: from 661831859263-hlgnfsakj37rged896gvl0mitub85lii.apps.googleusercontent.com
named unknown
by gmailapi.google.com
with HTTPREST;
Wed, 4 Mar 2015 00:01:04 -0800
通过上传请求上传邮件时,如何在Gmail中显示原始投放或发送日期?
答案 0 :(得分:1)
internalDateSource
应设置为URI的一部分,而不是标题:
https://www.googleapis.com/upload/gmail/v1/users/<userId>/messages?internalDateSource=dateHeader
另外,请注意messages.insert()不会重复删除邮件,也不会执行自动线程。对于从其他系统迁移邮件,messages.import()可能是更好的选择。
通过Migrating from the Email Migration API页面,我们绝对值得一读。