我正在使用Google几天前推出的新GMAIL API v1。
我想获取一些使用某些标签过滤的电子邮件列表。如果我想这样做,我需要获得每个“label_name”的标签ID ,但我只能得到所有标签的列表......
有什么想法吗?
迭。
答案 0 :(得分:1)
好吧,我用过:
ListMessagesResponse messagesWithLabels = service.users().messages().list("me").setQ("label:mylabel").execute();
它正在工作:)
答案 1 :(得分:1)
LABEL ID与LABEL NAME相同。
{
"id": "INBOX",
"name": "INBOX",
"messageListVisibility": "hide",
"labelListVisibility": "labelShow",
"type": "system"
}
使用您的凭据尝试API Explorer。
答案 2 :(得分:0)
标签ID仅对于系统生成的标签与“标签名称”相同。例如CHAT,SENT,INBOX,TRASH等。
用户生成的标签的ID与名称不同。
获取它们的最简单方法是使用imCaps提到的API explorer。
或者,您可以使用
function listLabels() {
var request = Gmail.Users.Labels.list('me');
var name, id;
for (var l = 0 ; l < request.labels.length; l++) {
name = request.labels[l].name;
id = request.labels[l].id;
Logger.log("%s. %s %s", l, name, id)
}
}
您需要在高级Google服务中启用Gmail API,此代码才能正常工作。