Product

API de Mailgun 2.0 : oubliez le format MIME !

Vous n'avez plus besoin de gérer le format de message d'email MIME pour soumettre des messages enrichis avec des corps HTML, des pièces jointes, etc., dans Mailgun. En savoir plus...
Image pour API de Mailgun 2.0 : oubliez le format MIME !

Cet article a été initialement publié le 18 octobre 2011

Bonne nouvelle à tous !

L’équipe de Mailgun est restée dans son laboratoire, claviers en main, pour sortir du code, et Mailgun 2.0 est maintenant disponible. Aujourd’hui, nous lançons une courte série d’articles de blog pour vous présenter toutes les nouvelles fonctionnalités passionnantes que nous avons développées. Si vous êtes impatients, vous pouvez toujours lire notre documentation sur toutes les nouveautés de cette version.

Nous voulons commencer par dire : « FINI LE MIME ! »

C’est exact, vous n’avez plus à gérer le format de message d’email MIME pour soumettre des messages enrichis avec des corps HTML, des pièces jointes, etc.

L’amère vérité est que tous les langages de programmation ne bénéficient pas de bibliothèques MIME faciles à utiliser, bien documentées et sans bugs. Pourtant, presque tout le monde sait comment effectuer une requête HTTP POST de nos jours, ce qui est ironique car les formats de données sous-jacents sont les mêmes.

Une autre tendance que nous avons remarquée est que beaucoup de développeurs ne sont pas des experts en email… et pourquoi devraient-ils l’être ? Par exemple, on nous a souvent demandé comment implémenter la fonctionnalité « Cci » ou comment joindre un fichier à un message.

Dans notre objectif d’être la meilleure plateforme d’email, nous avons décidé d’examiner plus en détail comment les messages d’email sont créés et envoyés. Nous avons fini de demander à notre équipe de développement de lire des articles Wikipédia sur les emails en plusieurs parties et de se débattre avec des bibliothèques MIME de qualité douteuse.

La nouvelle API d’envoi de messages de Mailgun est simple. Envoyez-nous les paramètres via HTTP, nous générons le MIME et nous expédions votre message. Quels paramètres ? Ceux auxquels vous vous attendez : « From », « To », « Cc », « Bcc », « Subject », « HTML body », « attachment file ». Vous voyez l’idée : les mêmes éléments que ceux proposés par l’interface de Gmail.

Cela signifie que vous pouvez envoyer des emails complexes en utilisant le bon vieux curl… ou même du JavaScript côté navigateur ! Bien sûr, les adeptes de la vieille école peuvent toujours utiliser leur propre MIME avec SMTP ou soumettre du MIME via HTTP : nous sommes entièrement rétrocompatibles.

Assez parlé, passons au code. La plupart des langages de programmation disposent d’un support intégré pour effectuer des requêtes HTTP, mais pour plus de confort, nous recommandons restclient pour Ruby ou demandes pour Python.

Pour commencer, envoyons un simple SMS :

                                

                                    curl --user api:key https://api.mailgun.net/v2/farfaraway.uk/messages -F from='Shrek ' -F to='Fiona ' -F subject='Status update' -F text='The cat is off the hook'
                                
                            

Que diriez-vous d’un message en plusieurs parties avec du texte et du HTML, plusieurs destinataires, quelques pièces jointes et un destinataire en Cci ? En toute simplicité :

                                

                                    curl --user api:key https://api.mailgun.net/v2/farfaraway.uk/messages -F from='Shrek ' -F to='Fiona ' -F bcc='Donkey ' -F subject='Status update' -F text='The cat is off the hook' -F html='The cat is off the hook!' -F attachment=@kitchen-photo.jpg
                                
                            

Les utilisateurs qui souhaitent définir des en-têtes MIME personnalisés peuvent toujours le faire sans jamais toucher au MIME. Si un paramètre POST commence par le préfixe « h: », Mailgun le reconnaît comme un en-tête MIME personnalisé. Voici un exemple d’envoi d’un message avec un en-tête Message-Id personnalisé :

                                

                                    curl --user api:key https://api.mailgun.net/v2/farfaraway.uk/messages -F from='Shrek ' -F to='Fiona ' -F subject='Status update' -F text='The cat is off the hook' -F h:Message-Id='mycustomid-1231@farfaraway.uk'
                                
                            

Et voilà : une façon simple et propre d’éviter les tracas du format MIME. Vous pouvez découvrir plus d’astuces sur l’API dans le lien vers la documentation ci-dessous. Quelques autres astuces sympas que vous pouvez inclure l’envoi en mode test ou la programmation pour une heure de livraison spécifique.

Jetez un œil : https://documentation.mailgun.com/en/latest/user_manual.html#sending-via-api

À bientôt ! — L’équipe de Mailgun