Email

Qu'est-ce que le fil de discussion e-mail, et comment les réponses restent-elles groupées ?

Le fil de discussion e-mail garde les réponses groupées en reliant chaque message à l'identifiant du message d'origine via les en-têtes In-Reply-To et References.

Un client regroupe une réponse avec les messages précédents en inspectant ses en-têtes. Les identifiants de message dans In-Reply-To et References lui permettent d'afficher une seule conversation.

Quels en-têtes gardent les réponses dans un même fil ?

Le message de réponse place le Message-ID du message parent dans In-Reply-To. Il transporte aussi la chaîne d'identifiants de messages liés dans References. Un client peut reconstituer la conversation lorsque plusieurs réponses partent d'un même message.

La RFC 5322 section 3.6.4 indique que In-Reply-To peut identifier le ou les messages auxquels le nouveau message répond. References peut identifier les messages liés dans le fil.

À quoi ressemble une réponse dans un fil ?

Un message avec Message-ID: <m1@example.com> peut recevoir une réponse avec ces en-têtes :

In-Reply-To: <m1@example.com>
References: <m1@example.com>

Une réponse à cette réponse ajoute le nouveau parent à References :

In-Reply-To: <m2@example.com>
References: <m1@example.com> <m2@example.com>

Conservez chaque identifiant exactement tel que l'expéditeur l'a fourni. N'inventez pas un nouvel identifiant pour le parent et ne copiez pas un objet de message comme substitut.

En-têteValeur illustrativeRôle
Message-ID<reply@example.com>Identifie ce message
In-Reply-To<original@example.com>Désigne le message auquel on répond
References<original@example.com>Porte la chaîne d'ascendance

Ces valeurs sont des exemples fictifs. Un objet Re: seul n'identifie pas le message parent.

Pourquoi une réponse peut-elle quitter le fil ?

Un client peut démarrer une nouvelle conversation lorsque In-Reply-To et References sont absents ou pointent vers un message différent. Modifier l'objet peut aussi affecter le regroupement, car les clients combinent les en-têtes avec leurs propres règles d'objet.

Un message transféré est généralement une nouvelle conversation. Il contient l'ancien contenu pour contexte. Il n'identifie pas automatiquement le message d'origine comme son parent.

Répondre envoie à l'auteur ou à l'adresse Reply-To. Répondre à tous conserve aussi les destinataires To et Cc d'origine, sous réserve des règles de boîte aux lettres de l'expéditeur. Un client peut tout de même regrouper ou séparer les messages différemment, car le rendu et le regroupement relèvent du comportement du client.

Comment conserver un fil avec Bird ?

Lorsque vous répondez via une boîte aux lettres Bird, appelez replyEmailThreadMessage pour le message reçu à POST /v1/email/threads/{thread_id}/messages/{message_id}/reply. L'opération utilise le scope d'écriture mailbox. Bird dérive l'objet et les en-têtes de réponse. Le message sortant reste dans ce fil. Utilisez compose pour un nouveau fil. Le guide des boîtes aux lettres présente le flux de réponse et les événements webhook pour le courrier entrant.

Si votre intégration envoie du courrier brut, conservez le Message-ID parent dans In-Reply-To et la chaîne complète dans References. Stockez ces en-têtes avec l'enregistrement du message pour que les réessais utilisent la même relation.

En résumé

  • In-Reply-To désigne le message auquel on répond.
  • References porte la chaîne de messages liés.
  • Un en-tête manquant ou sans rapport peut démarrer une nouvelle conversation.
  • Les réponses via une boîte aux lettres Bird restent dans le fil du message reçu.

Développez sur le même réseau.

Une clé API de test est disponible immédiatement. La production est activée dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Commencez avec un seul canal.
Ajoutez les autres quand vous êtes prêt.

Une clé API de test est disponible immédiatement. L'accès production se débloque dès que vous ajoutez un moyen de paiement et vérifiez un expéditeur.

Vous utilisez Claude Code, Cursor ou Codex ? Copiez un prompt de configuration et votre agent installe la CLI Bird et les compétences pour vous. Choisissez le vôtre :

Cursor