messages.list
メソッドと threads.list
メソッドを使用して、ファイルを検索またはフィルタできます。これらのメソッドは、Gmail ウェブ インターフェースと同じ 高度な検索構文のほとんどをサポートする q
パラメータを受け取ります。Gmail UI と Gmail API の検索とフィルタの違いの一覧については、検索フィルタの違い: Gmail UI と Gmail API をご覧ください。
この高度な構文を使用すると、検索クエリを使用して、送信者、日付、ラベルなどのプロパティでメッセージをフィルタできます。たとえば、次のクエリは、2014 年 1 月にユーザーが送信したすべてのメッセージを取得します。
GET https://www.googleapis.com/gmail/v1/users/me/messages?q=in:sent after:2014/01/01 before:2014/02/01
検索クエリに加えて、labelIds
パラメータを使用して、ラベルでメッセージとスレッドをフィルタすることもできます。これにより、指定したシステムラベルまたはユーザーラベルが適用されたメールやスレッドを検索できます。詳細については、messages.list
メソッドまたは threads.list
メソッドのリファレンスをご覧ください。
検索とフィルタリングの違い: Gmail UI と Gmail API
Gmail UI はエイリアス展開を実行し、Google Workspace アカウントからアカウント エイリアスを推測できます。たとえば、
myprimary@mycompany.net
というアカウントがあり、管理者がそのアカウントのエイリアスとしてmyalias@mycompany.net
を設定したとします。myalias@mycompany.net
がメールを送信したときに、ユーザーが「from: myprimary@mycompany.net)
」を検索すると、myalias@mycompany.net
が送信したメールが Gmail UI の検索結果に表示されますが、API レスポンスには表示されません。Gmail UI ではスレッド全体の検索を実行できますが、API では実行できません。