メッセージの検索

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 では実行できません。