Fichier .eml
Un fichier .eml est un e-mail enregistré tel quel. Cette capacité l’ouvre directement dans votre navigateur et en affiche les éléments utiles : expéditeur, destinataires, objet, date, corps du message et liste des pièces jointes. Tout se passe sur cette page, sans envoi : le fichier ne quitte pas votre poste.
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Les en-têtes d’un e-mail, enfin lisibles
Un .eml renferme bien plus que le texte visible d’un message : les vraies adresses d’expédition, l’horodatage, le chemin suivi, les identifiants techniques. La capacité déplie ces en-têtes et vous les présente clairement, sans que vous ayez à ouvrir le fichier dans un éditeur ni à déchiffrer un format brut. Pratique pour vérifier qui a réellement envoyé un message, ou à quelle date exacte il est parti.
Corps du message et pièces jointes
Au-delà des en-têtes, la capacité restitue le corps du message et dresse la liste des pièces jointes, avec leur nom et leur type. Vous retrouvez ainsi le contenu d’un e-mail archivé sans dépendre du logiciel qui l’avait produit. C’est utile pour rouvrir un vieux message exporté, retrouver un fichier attaché ou reconstituer un échange conservé au format .eml pour archive.
Gratuit parce que tout reste chez vous
Cette lecture s’effectue entièrement dans votre navigateur : le fichier .eml n’est pas transmis, rien n’est déposé sur un serveur. C’est pourquoi elle est gratuite et sans limite d’usage sur cette page, sans inscription. Pour automatiser le traitement de nombreux .eml — par exemple extraire l’objet et l’expéditeur d’un flux entrant — la même capacité existe par l’API, à $0.002 la requête.
Cas d’usage
Lire l’en-tête complet d’un message
Julien Lefèvre exporte en .eml un e-mail litigieux et en lit l’en-tête complet pour vérifier l’adresse d’expédition réelle et l’horodatage, sans rien installer.
Récupérer une pièce jointe archivée
Sophie Nguyen rouvre un ancien message enregistré en .eml pour en retrouver la pièce jointe, alors que le logiciel de messagerie d’origine n’est plus utilisé.
Extraire objet et expéditeur en masse
Un service qui reçoit des .eml en nombre en extrait automatiquement l’objet et l’expéditeur par l’API, pour alimenter un suivi sans ouvrir chaque message.
Questions fréquentes
Qu’est-ce qu’un fichier .eml exactement ?
C’est un e-mail sauvegardé dans un fichier unique, en-têtes, texte et pièces jointes compris. La plupart des logiciels de messagerie permettent d’enregistrer ou d’exporter un message sous ce format.
Les pièces jointes sont-elles accessibles ?
Oui. La capacité dresse la liste des pièces jointes du message, avec leur nom et leur type, telles qu’elles sont contenues dans le fichier.
Mon e-mail est-il envoyé quelque part ?
Non. La lecture se fait localement dans votre navigateur ; le fichier .eml n’est ni transmis ni conservé. Aucune donnée du message ne quitte votre poste.
Est-ce vraiment gratuit ?
Oui, dans le navigateur, sans limite ni inscription, parce que rien n’est envoyé. Seul l’usage automatisé par l’API est facturé, à $0.002 la requête, en dollars US.
Faut-il créer un compte ?
Non. La lecture sur cette page ne demande aucun compte ni aucune inscription.
Quelle taille de fichier puis-je ouvrir ?
Jusqu’à 25 Mo par fichier .eml.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/ocr/eml \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/ocr/eml", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/ocr/eml",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/ocr/eml", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/ocr/eml", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"input": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "ocr.eml",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 25 |
max_pages | 10 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |