TempMail

Documentation API

Référence TempMail API v1

URL de base

https://mail.taohuaxin.top

Authentification

Tous les endpoints sauf /config nécessitent une authentification.

Ajoutez l'en-tête suivant à toutes les requêtes :

x-api-key: tm_your_token_here

Obtenez votre jeton dans : Tableau de bord → Paramètres → Clés API

Endpoints

MéthodeCheminDescription
GET/api/v1/configConfiguration du serveur (publique — aucune authentification requise)
GET/api/v1/meRécupérer les e-mails de toutes vos boîtes (long-poll)
GET/api/v1/inbox/:addressRécupérer les e-mails d'une seule boîte (long-poll)
DELETE/api/v1/inbox/:addressVider tous les e-mails d'une boîte
GET/api/v1/email/:idObtenir l'e-mail complet analysé (texte + html + pièces jointes)
GET/api/v1/email/:id/renderedObtenir le texte de l'e-mail rendu
GET/api/v1/email/:id/attachments/:attachmentIdTélécharger une pièce jointe par ID
DELETE/api/v1/email/:idSupprimer un seul e-mail
GET/api/v1/domainsLister vos domaines personnalisés
POST/api/v1/domainsAjouter un domaine personnalisé
DELETE/api/v1/domains/:idSupprimer un domaine personnalisé

docs.examples

GET/api/v1/config

Configuration du serveur (publique — aucune authentification requise)

curl https://mail.taohuaxin.top/api/v1/config

docs.response

{
  "domains": ["taohuaxin.top"],
  "smtpPort": 25,
  "smtpsPort": 465,
  "mxPort": 25,
  "version": "1.0.0"
}
GET/api/v1/me

Récupérer les e-mails de toutes vos boîtes (long-poll)

curl -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/me?count=1&limit=20"

docs.response

{
  "emails": [
    {
      "id": "cmcg2a1b40001xyz",
      "fromAddress": "[email protected]",
      "subject": "Your verification code",
      "isRead": false,
      "receivedAt": "2026-07-10T08:30:00.000Z",
      "mailbox": { "address": "alice", "domain": "taohuaxin.top" }
    }
  ],
  "nextSince": "cmcg2a1b40001xyz"
}
GET/api/v1/inbox/:address

Récupérer les e-mails d'une seule boîte (long-poll)

curl -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/inbox/[email protected]?since=cmcg2a1b40001xyz&count=1"

docs.response

{
  "emails": [
    {
      "id": "cmcg9f2c80002abc",
      "fromAddress": "[email protected]",
      "subject": "Welcome!",
      "isRead": false,
      "receivedAt": "2026-07-10T09:00:00.000Z"
    }
  ],
  "nextSince": "cmcg9f2c80002abc"
}
DELETE/api/v1/inbox/:address

Vider tous les e-mails d'une boîte

curl -X DELETE -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/inbox/[email protected]"

docs.response

{ "success": true }
GET/api/v1/email/:id

Obtenir l'e-mail complet analysé (texte + html + pièces jointes)

curl -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/email/cmcg2a1b40001xyz"

docs.response

{
  "id": "cmcg2a1b40001xyz",
  "fromAddress": "[email protected]",
  "toAddress": "[email protected]",
  "subject": "Your verification code",
  "bodyHtml": "<p>Your code is <b>123456</b></p>",
  "bodyText": "Your code is 123456",
  "isRead": true,
  "receivedAt": "2026-07-10T08:30:00.000Z",
  "attachments": [
    { "id": "att_01", "filename": "invoice.pdf", "mimeType": "application/pdf", "size": 24580 }
  ]
}
GET/api/v1/email/:id/rendered

Obtenir le texte de l'e-mail rendu

curl -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/email/cmcg2a1b40001xyz/rendered"

docs.response

From: [email protected]
To: [email protected]
Subject: Your verification code
Date: Fri, 10 Jul 2026 08:30:00 GMT

<p>Your code is <b>123456</b></p>
GET/api/v1/email/:id/attachments/:attachmentId

Télécharger une pièce jointe par ID

curl -OJ -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/email/cmcg2a1b40001xyz/attachments/att_01"

docs.response

HTTP/1.1 200 OK
Content-Type: application/pdf
Content-Disposition: attachment; filename="invoice.pdf"
Content-Length: 24580

<binary file stream>
DELETE/api/v1/email/:id

Supprimer un seul e-mail

curl -X DELETE -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/email/cmcg2a1b40001xyz"

docs.response

{ "success": true }
GET/api/v1/domains

Lister vos domaines personnalisés

curl -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/domains"

docs.response

[
  {
    "id": "dom_01",
    "domain": "mail.example.com",
    "verified": true,
    "receiveMode": "inherit",
    "createdAt": "2026-07-01T00:00:00.000Z"
  }
]
POST/api/v1/domains

Ajouter un domaine personnalisé

curl -X POST -H "x-api-key: tm_your_token_here" \
  -H "Content-Type: application/json" \
  -d '{"domain":"mail.example.com","receiveMode":"inherit"}' \
  "https://mail.taohuaxin.top/api/v1/domains"

docs.response

{
  "id": "dom_02",
  "domain": "mail.example.com",
  "verified": false,
  "receiveMode": "inherit",
  "createdAt": "2026-07-10T10:00:00.000Z"
}
DELETE/api/v1/domains/:id

Supprimer un domaine personnalisé

curl -X DELETE -H "x-api-key: tm_your_token_here" \
  "https://mail.taohuaxin.top/api/v1/domains/dom_02"

docs.response

{ "success": true }

Requêtes longues

Les endpoints de boîte prennent en charge le long-polling. Appelez une fois et le serveur bloque jusqu'à l'arrivée d'un e-mail (max. 25 s). Renvoie 204 si aucun e-mail n'arrive avant le délai.

Paramètres de requête

ParamètreDescription
sinceCurseur de la réponse précédente ; seuls les e-mails postérieurs sont renvoyés
countRenvoyer lorsque N nouveaux e-mails sont arrivés (défaut 1, max. 50)
limitNombre maximal d'e-mails par réponse (défaut 20, max. 50)
fromFiltrer — renvoyer uniquement les e-mails dont l'expéditeur contient cette sous-chaîne
subjectFiltrer — renvoyer uniquement les e-mails dont l'objet contient cette sous-chaîne

Comportement de suppression

Toutes les opérations DELETE sont des suppressions douces : les éléments supprimés sont masqués pour les utilisateurs mais restent accessibles aux administrateurs à des fins d'audit.