mailto: est un schéma d'URI permettant de créer un lien hypertexte vers une adresse électronique.
Employé par exemple dans une page web en HTML, un tel lien permet à l'utilisateur qui l'a suivi de voir son client de messagerie démarrer l'écriture d'un nouveau message électronique, avec quelques champs déjà remplis, comme l'adresse du destinataire ou encore l'objet du message.
mailto: a été défini par plusieurs RFC : la première fois en par la a RFC 1738, puis mis à jour en par la RFC 2368, qui a été finalement remplacée en par la RFC 6068.
Extrait de la syntaxe de l'URI dans la norme :
mailtoURI = "mailto:" [ to ] [ hfields ] to = addr-spec *( "," addr-spec ) hfields = "?" hfield *( "&" hfield ) hfield = hfname "=" hfvalue
où to est donc une ou plusieurs adresses courriel addr-spec de destinataire (séparées par une "," littérale (ou un ";") et ne comprenant chacune aucun caractère parmi ",", ";", "?", "&") et hfields les autres champs (séparés du champ to par un "?" littéral, ces champs étant séparés entre eux par un signe "&" et comprenant chacun deux parties : un nom symbolique de champ (hfield) ne comportant que des lettres ("from", "to", "cc", "bcc", "subject", "body") et une valeur (hfvalue) donnée à ce champ (qui dans le cas des champs nommés "from", "to", "cc" ou "bcc" peut également donner une ou plusieurs adresses courriel séparées par une "," ou un ";" ). Le champ explicitement nommé "to=..." peut remplacer le premier champ facultatif to, ou le compléter en donnant des adresses de destinataires supplémentaires.
mailto:p.dupond@example.com ou mailto:?to=p.dupond@example.commailto:Paul%20Dupond<p.dupond@example.com>mailto:p.dupond@example.com?subject=Sujet%20du%20courriermailto:p.dupond@example.com,j.martin@example.com ou mailto:p.dupond@example.com?to=j.martin@example.commailto:p.dupond@example.com?cc=j.martin@example.orgmailto:p.dupond@example.com?bcc=j.martin@example.orgmailto:p.dupond@example.com?subject=Bonjour%20Paul&body=J’espère%20que%20vous%20allez%20bien.%20--%20Jean.mailto:p.dupond@example.com?body=Bonjour%0d%0aAu%20revoirmailto:p.dupond@example.com?subject=Sujet%20du%20courrier&cc=pierre@example.org&bcc=jacques@example.net&body=BonjourL'intégration de mailto: dans une balise HTML utilise le format suivant :
<a href="mailto:p.dupond@example.com">Cliquer ici pour m’envoyer un courriel.</a>
mailto: pour l'envoi de pourriels.mailto: soit fonctionnel. Sinon, le lien mailto: ne permet pas d'envoyer de courriel. D'autant que les webmails sont très utilisés et ceux-ci sont rarement configurés comme client de messagerie par défaut du système. C'est une des raisons pour lesquelles de nombreux sites web proposent un Formulaire de contact plutôt qu'un lien mailto:.mailto:. Par contre, les logiciels gérant cette commande ont des limitations. Les premiers logiciels limitaient la taille à 255 caractères. De nos jours, les navigateurs acceptent des tailles de plus en plus grandes, déplaçant cette limitation au niveau du Système d'exploitation et du client de messagerie. Cependant, pour rester compatible avec les anciens systèmes, la taille de la commande mailto: doit rester modeste.mailto:p.dupond@example.com;j.martin@example.com%0A peut aussi symboliser un saut de ligne.