Этот расширенный синтаксис позволяет использовать поисковые запросы для фильтрации сообщений по таким свойствам, как отправитель, дата или метка, и это лишь некоторые из возможных вариантов. Например, следующий запрос извлекает все сообщения, отправленные пользователем в январе 2014 года:
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 выполняет расширение псевдонимов , что позволяет ему вывести псевдоним учётной записи из учётной записи Google Workspace. Например, предположим, что у вас есть учётная запись myprimary@mycompany.net , и ваш администратор настроил для неё псевдоним myalias@mycompany.net . Если myalias@mycompany.net отправляет электронное письмо, но вы ищете « from: myprimary@mycompany.net) », письмо, отправленное с myalias@mycompany.net отображается в результатах поиска в интерфейсе Gmail, но не в ответе API.
Пользовательский интерфейс Gmail позволяет пользователям выполнять поиск по всему потоку сообщений, а вот API такой возможности не предоставляет.
[null,null,["Последнее обновление: 2025-07-30 UTC."],[],[],null,["# Searching for Messages\n\nYou can search or filter files using the\n[`messages.list`](/workspace/gmail/api/v1/reference/users/messages/list) and\n[`threads.list`](/workspace/gmail/api/v1/reference/users/threads/list) methods.\nThese methods accept the `q` parameter which supports most of the same\n[advanced search syntax](https://support.google.com/mail/answer/7190) as\nthe Gmail web-interface. For a list of search and filter differences between\nthe Gmail UI and Gmail API, see\n[Search filter differences: Gmail UI versus Gmail API](#differences).\n\nThis advanced syntax allows you to use search queries\nto filter messages by properties such as the sender, date, or label to name a\nfew possibilities. For example, the following query retrieves all messages sent\nby the user in January of 2014: \n\n GET https://www.googleapis.com/gmail/v1/users/me/messages?q=in:sent after:2014/01/01 before:2014/02/01\n\n| **Warning:** All dates used in the search query are interpreted as midnight on that date in the PST timezone. To specify accurate dates for other timezones pass the value in seconds instead: \n|\n| ```\n| ?q=in:sent after:1388552400 before:1391230800\n| ```\n\nIn addition to search queries, you can also filter messages and threads by label\nwith the `labelIds` parameter. This allows you to search for messages and\nthreads with the specified system or user labels applied. For more information,\nsee the [`messages.list`](/workspace/gmail/api/v1/reference/users/messages/list) or\n[`threads.list`](/workspace/gmail/api/v1/reference/users/threads/list) method reference.\n\nSearch and filter differences: Gmail UI versus Gmail API\n--------------------------------------------------------\n\n- The Gmail UI performs *alias expansion* which allows it to infer an\n account alias from a Google Workspace account. For example, suppose you have an\n account\n of `myprimary@mycompany.net` and your admin sets up an alias for that account of\n `myalias@mycompany.net`. If `myalias@mycompany.net` sends an email, but you\n search for \"`from: myprimary@mycompany.net)`\" the email sent by\n `myalias@mycompany.net` shows up as a search result the Gmail UI, but not in\n the API response.\n\n- The Gmail UI allows users to perform thread-wide searches, but the API\n doesn't."]]