0

Gmail APIからスレッドをフェッチしています。labelIdsフィールドにラベルを付けて配列を提供しました。引用されたすべてのラベルに一致するスレッドのみが返されます。表示されているすべてのラベルに一致するのではなく、リストの1つにマッチするスレッドを一覧表示する

指定されたすべてのラベルIDに一致するラベルを持つリターンスレッドのみが返されます。 (文字列)

ただし、リストされたラベルの少なくとも1つに一致するすべてのメッセージを取得したいとします。

gmail.users.threads.list(
{auth: authClient, userId: 'me', labelIds: ["DRAFT","INBOX"]}, 
function(err, resp){ 
    if (err) { 
    console.log(err); 
    return; 
    } 
    console.log(resp); 
}); 

私は、単一のAPIコールでページに与えられたlabelIdsの少なくとも一つに一致するすべてのスレッドをしたいAPIを伝える方法があります:

は、これは私の関数でありますか?あなたは適切な解決策を見つけた場合

答えて

0

はその間、答えを投稿してください。

私の推測では、それはGmailの受信トレイがどのように動作するかではないので、それができないことです。可能なすべてのラベルを含める場合を除き、複数のラベルのページを一度にプレビューすることはできません。

回避策:

var labels = ["INBOX","DRAFT"]; 

for(let label of labels) { 
    gmail.users.threads.list(
    {auth: authClient, userId: 'me', labelIds: label}, 
    function(err, resp){ 
    if (err) { 
     console.log(err); 
     return; 
    } 
    console.log(resp); 
    });//end(threads.list) 
}//end(for-of) 

基本的にこれは、個別に各ラベルのlistメソッドを呼び出します。

関連する問題