La taille sur disque n'est qu'une partie du message généré. Les en-têtes MIME et l'encodage base64 ajoutent une surcharge, si bien qu'un fichier respectant la limite affichée par un fournisseur peut quand même rendre le message trop volumineux.
Pourquoi une pièce jointe est-elle plus volumineuse en transit ?
L'encodage Base64 ajoute environ un tiers à la taille d'un fichier binaire avant l'ajout des sauts de ligne et des en-têtes MIME. L'e-mail transporte ce fichier encodé comme une partie MIME, aux côtés du corps et des en-têtes.
Par exemple, un fichier binaire de 12 Mo devient environ 16 Mo en base64, avant les sauts de ligne, les en-têtes et le corps. Considérez cela comme une estimation, pas comme une limite de fournisseur.
Quelle limite utiliser ?
Utilisez la limite la plus basse entre votre service d'envoi, le fournisseur du destinataire et le chemin entre les deux. Les fournisseurs publient des limites différentes et peuvent les modifier. Renvoyez vers la limite actuelle du fournisseur plutôt que de coder en dur un nombre universel.
Si un fichier approche de la limite, placez-le derrière un lien de téléchargement authentifié. Le message reste léger. Vous pouvez expirer ou révoquer l'accès indépendamment de l'e-mail.
| Limite | Ce qu'elle restreint | Conséquence possible |
|---|---|---|
| Plafond par pièce jointe | Un fichier ou un champ de pièce jointe | Le API rejette cet élément |
| Plafond du message entier | Corps, en-têtes et pièces jointes encodées | L'expéditeur rejette le message généré |
| Transfert par lien cloud | Le service de téléchargement lié | Le destinataire suit une politique d'accès distincte |
L'aide personnelle de Gmail décrit une limite totale de 25 Mo pour les pièces jointes. Les administrateurs Workspace peuvent définir des limites différentes pour les comptes professionnels et scolaires. Traitez les deux comme des valeurs propres au fournisseur.
Comment une API doit-elle gérer les fichiers volumineux ?
Vérifiez la taille du message encodé avant l'envoi. Refusez ou remplacez une pièce jointe surdimensionnée par un lien de téléchargement clair. Indiquez à l'utilisateur quel fichier a déclenché la décision. Ne réessayez pas un message surdimensionné inchangé.
Conservez des noms de pièces jointes et des types de contenu exacts. Le fournisseur du destinataire peut rejeter un message en raison de la taille totale, d'un type de fichier bloqué ou d'une politique appliquée au lien.
Comment Bird gère-t-il les pièces jointes ?
Définissez le tableau attachments dans votre requête POST /v1/email/messages. Consultez le guide des pièces jointes pour connaître le budget de message généré actuel de Bird. Un envoi HTTP surdimensionné renvoie 413. Maintenez le contenu brut des pièces jointes bien en dessous du budget documenté pour que les corps et l'enveloppe MIME tiennent.
En résumé
- La limite couvre le message encodé, le corps, les en-têtes et les pièces jointes.
- Base64 ajoute environ un tiers à la taille d'un fichier binaire.
- Vérifiez chaque fournisseur dans le chemin de livraison.
- Un lien de téléchargement évite les échecs liés à la taille des pièces jointes pour les fichiers volumineux.