GmailApp.getUserLabelByName()不再返回GmailLabel

时间:2017-10-06 16:35:28

标签: google-apps-script

我有一些脚本可以扫描我的收件箱中的某些电子邮件并自动处理其内容。这些停止了一段时间。

我只是尝试重写其中一个,并注意到无论我尝试获取什么标签,GmailApp.getUserLabelByName()始终返回null

示例:

function getLabel(){
  var label = GmailApp.getUserLabelByName("Script Unprocessed");
  Logger.log(label);
}

即使我有Script Unprocessed标签和电子邮件,也会返回null,并为我尝试过的任何标签返回null

知道为什么会这样吗?

2 个答案:

答案 0 :(得分:0)

getInserLabelByName()方法仅检索用户创建的标签,而Inbox是Gmail中的系统标签。该代码似乎适用于用户标签。

function getLabelName(name) {
  var label = GmailApp.getUserLabelByName(name);
  Logger.log(label.getName());
}

答案 1 :(得分:0)

它也在使用我的gmail /标签。获取该标签的线程/消息的另一种方法是使用search()

function getLabel () {
  var label = GmailApp.search('label:Script Unprocessed');
  // returns the message count in the first thread within `Script Unprocessed`
  Logger.log(label[0].getMessageCount()); 
}