在Gmail API邮件上传中设置internalDateSource

时间:2015-03-04 08:12:14

标签: google-apps gmail-api

我正在尝试通过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中显示原始投放或发送日期?

1 个答案:

答案 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页面,我们绝对值得一读。