En este documento, se explica cómo consultar y buscar mensajes con la API de Gmail.
Puedes buscar o filtrar archivos con los métodos messages.list y threads.list. Estos métodos aceptan el parámetro de consulta q, que admite la mayoría de la misma sintaxis de búsqueda avanzada que la interfaz web de Gmail. Para obtener una lista de las diferencias entre la búsqueda y los filtros de la IU de Gmail y la API de Gmail, consulta Diferencias con la IU de Gmail.
Esta sintaxis de búsqueda avanzada te permite usar consultas para filtrar mensajes por propiedades como el remitente, la fecha o la etiqueta. Por ejemplo, la siguiente consulta del método messages.list recupera todos los mensajes que envió el usuario en enero de 2014:
GET https://www.googleapis.com/gmail/v1/users/me/messages?q=in:sent after:2014/01/01 before:2014/02/01
Además de las búsquedas, también puedes filtrar mensajes y conversaciones por etiqueta con el parámetro labelIds[]. Esto te permite buscar mensajes y conversaciones con las etiquetas de sistema o de usuario especificadas. Para obtener más información, consulta los métodos messages.list y threads.list. Para obtener más información sobre las etiquetas, consulta Administra etiquetas.
Diferencias con la IU de Gmail
Si bien la API de Gmail admite la mayoría de la sintaxis de búsqueda avanzada que se usa en la IU de Gmail, existen algunas diferencias:
La IU de Gmail realiza una expansión de alias, lo que le permite inferir un alias de cuenta a partir de una cuenta de Google Workspace. Por ejemplo, supongamos que tienes una cuenta de
myprimary@cymbalgroup.comy tu administrador configura un alias para esa cuenta demyalias@cymbalgroup.com. Simyalias@cymbalgroup.comenvía un correo electrónico, pero buscas "from: myprimary@cymbalgroup.com", el correo electrónico que enviómyalias@cymbalgroup.comaparecerá en los resultados de la búsqueda en la IU de Gmail, pero no en la respuesta de la API.La IU de Gmail permite a los usuarios realizar búsquedas en todo el subproceso, pero la API no.