我尝试使用list thread方法:
GET https://www.googleapis.com/gmail/v1/users/{MyEmailAddress}/threads?labelIds=INBOX&labelIds=UNREAD&key={YOUR_API_KEY}
resultSizeEstimate与Gmail网络应用中我的收件箱旁边的数字不匹配。
还有其他办法吗?
答案 0 :(得分:7)
Gmail API现在使用Labels.Get()方法为每个Label上的消息和线程提供总计和未读计数。看到: https://developers.google.com/gmail/api/release-notes 和 https://developers.google.com/gmail/api/v1/reference/users/labels
答案 1 :(得分:4)
在Gmail用户界面中关闭对话视图,以便准确计算收件箱中的邮件(而不是帖子)。
您也可以使用:
in:inbox is:unread
作为UI和API中的查询。删除labelId参数。
答案 2 :(得分:0)
GET https://www.googleapis.com/gmail/v1/users/{email}/messages?labelIds=UNREAD&labelIds=INBOX&fields=messages%2FthreadId
"消息/ threadId所"将计算未读线程的数量,但如果线程有多个消息,则会多次列出同一个线程。将它们存储在一个数组中,并在填充数据时检查数组以匹配" threadId"标识符并忽略重复项。