#java #api #gmail
#java #API #gmail
Вопрос:
Я использую новый GMAIL API v1, который Google запустил несколько дней назад.
Я хочу получить список некоторых электронных писем, фильтруемых с помощью некоторых меток. Если я хочу это сделать, мне нужно получить идентификатор метки для каждого «label_name», но я просто могу получить список всех меток…
Есть идеи?
Диего.
Ответ №1:
Идентификатор метки совпадает с именем метки только для меток, созданных системой. Например, ЧАТ, ОТПРАВЛЕННЫЕ, ВХОДЯЩИЕ, КОРЗИНА и т. Д.
Пользовательские метки имеют идентификаторы, отличные от их имен.
Самый простой способ получить их — использовать API Explorer, о котором упоминал imCaps.
В качестве альтернативы, вы можете использовать это
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)
}
}
Для работы этого кода вам необходимо включить API Gmail в расширенных службах Google.
Ответ №2:
Ну, я использовал:
ListMessagesResponse messagesWithLabels = service.users().messages().list("me").setQ("label:mylabel").execute();
Это работает 🙂
Ответ №3:
ИДЕНТИФИКАТОР МЕТКИ — это то же имя МЕТКИ.
{
"id": "INBOX",
"name": "INBOX",
"messageListVisibility": "hide",
"labelListVisibility": "labelShow",
"type": "system"
}
попробуйте здесь API Explorer с вашими учетными данными.
Комментарии:
1. Только для системных меток. Созданные пользователем метки имеют уникальные идентификаторы