L'API Gmail utilise des ressources Thread
pour regrouper les réponses aux e-mails contenant leur message d'origine dans une seule conversation ou un seul fil de discussion. Cela vous permet de récupérer tous les messages d'une conversation dans l'ordre, ce qui vous permet d'avoir plus de contexte pour un message ou d'affiner les résultats de recherche.
Comme pour les messages, les fils de discussion peuvent également être associés à des libellés. Toutefois, contrairement aux messages, les threads ne peuvent pas être créés, mais uniquement supprimés. Les messages peuvent toutefois être insérés dans un fil de discussion.
Sommaire
Récupérer des threads
Les fils de discussion permettent de récupérer facilement les messages d'une conversation dans l'ordre.
En répertoriant un ensemble de fils de discussion, vous pouvez choisir de regrouper les messages par conversation et de fournir du contexte supplémentaire. Vous pouvez récupérer une liste de threads à l'aide de la méthode threads.list
ou récupérer un thread spécifique avec threads.get
. Vous pouvez également filtrer les threads en utilisant les mêmes paramètres de requête que pour la ressource Message
. Si un message dans un thread correspond à la requête, ce thread est renvoyé dans le résultat.
L'exemple de code ci-dessous montre comment utiliser les deux méthodes dans un exemple qui affiche les threads les plus brusques dans votre boîte de réception. La méthode threads.list
extrait tous les ID de thread, puis threads.get
récupère tous les messages de chaque thread.
Pour celles qui ont au moins trois réponses, nous extrayons la ligne Subject
et affichons les non vides ainsi que le nombre de messages dans le fil de discussion. Vous trouverez également cet exemple de code dans la vidéo DevByte correspondante.
Python
Ajouter des brouillons et des messages aux fils de discussion
Si vous envoyez ou migrez des messages en réponse à un autre e-mail ou à une partie d'une conversation, votre application doit ajouter ce message au fil de discussion associé. Les utilisateurs de Gmail qui participent à la conversation peuvent ainsi garder plus facilement le message en contexte.
Vous pouvez ajouter un brouillon à un thread lors de la création, de la mise à jour ou de l'envoi d'un brouillon de message. Vous pouvez également ajouter un message à un thread lors de l'insertion ou de l'envoi d'un message.
Pour faire partie d'un fil de discussion, un message ou un brouillon doit répondre aux critères suivants:
- Le
threadId
demandé doit être spécifié sur l'Message
ou l'Draft.Message
que vous fournissez avec votre requête. - Les en-têtes
References
etIn-Reply-To
doivent être définis conformément à la norme RFC 2822. - Les en-têtes
Subject
doivent correspondre.
Consultez les exemples Créer un brouillon ou Envoyer un message. Dans les deux cas, il vous suffit d'ajouter une clé threadId
associée à un ID de thread aux métadonnées d'un message, à savoir l'objet message
.