Документация API
Справочник TempMail API v1
Базовый URL
https://mail.taohuaxin.topАутентификация
Все эндпоинты, кроме /config, требуют аутентификации.
Добавьте следующий заголовок ко всем запросам:
x-api-key: tm_your_token_hereПолучите токен в: Панель → Настройки → Ключи API
Эндпоинты
| Метод | Путь | Описание |
|---|---|---|
| GET | /api/v1/config | Конфигурация сервера (публичная — аутентификация не требуется) |
| GET | /api/v1/me | Получить письма из всех почтовых ящиков (длинный опрос) |
| GET | /api/v1/inbox/:address | Получить письма для одного почтового ящика (длинный опрос) |
| DELETE | /api/v1/inbox/:address | Очистить все письма в почтовом ящике |
| GET | /api/v1/email/:id | Получить полное разобранное письмо (текст + html + вложения) |
| GET | /api/v1/email/:id/rendered | Получить отрендеренный текст письма |
| GET | /api/v1/email/:id/attachments/:attachmentId | Скачать одно вложение по ID |
| DELETE | /api/v1/email/:id | Удалить одно письмо |
| GET | /api/v1/domains | Список ваших пользовательских доменов |
| POST | /api/v1/domains | Добавить пользовательский домен |
| DELETE | /api/v1/domains/:id | Удалить пользовательский домен |
docs.examples
/api/v1/configКонфигурация сервера (публичная — аутентификация не требуется)
curl https://mail.taohuaxin.top/api/v1/configdocs.response
{
"domains": ["taohuaxin.top"],
"smtpPort": 25,
"smtpsPort": 465,
"mxPort": 25,
"version": "1.0.0"
}/api/v1/meПолучить письма из всех почтовых ящиков (длинный опрос)
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"
}/api/v1/inbox/:addressПолучить письма для одного почтового ящика (длинный опрос)
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"
}/api/v1/inbox/:addressОчистить все письма в почтовом ящике
curl -X DELETE -H "x-api-key: tm_your_token_here" \
"https://mail.taohuaxin.top/api/v1/inbox/[email protected]"docs.response
{ "success": true }/api/v1/email/:idПолучить полное разобранное письмо (текст + html + вложения)
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 }
]
}/api/v1/email/:id/renderedПолучить отрендеренный текст письма
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>/api/v1/email/:id/attachments/:attachmentIdСкачать одно вложение по 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>/api/v1/email/:idУдалить одно письмо
curl -X DELETE -H "x-api-key: tm_your_token_here" \
"https://mail.taohuaxin.top/api/v1/email/cmcg2a1b40001xyz"docs.response
{ "success": true }/api/v1/domainsСписок ваших пользовательских доменов
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"
}
]/api/v1/domainsДобавить пользовательский домен
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"
}/api/v1/domains/:idУдалить пользовательский домен
curl -X DELETE -H "x-api-key: tm_your_token_here" \
"https://mail.taohuaxin.top/api/v1/domains/dom_02"docs.response
{ "success": true }Длинный опрос
Эндпоинты почтовых ящиков поддерживают длинный опрос. Вызовите один раз, и сервер будет ждать до поступления письма (до 25 с). Возвращает 204, если письмо не поступило до тайм-аута.
Параметры запроса
| Параметр | Описание |
|---|---|
| since | Курсор из предыдущего ответа; возвращаются только письма после этого момента |
| count | Вернуть после поступления N новых писем (по умолчанию 1, макс. 50) |
| limit | Максимум писем в теле ответа (по умолчанию 20, макс. 50) |
| from | Фильтр — возвращать только письма, у которых От содержит эту подстроку |
| subject | Фильтр — возвращать только письма, у которых Тема содержит эту подстроку |
Поведение при удалении
Все операции DELETE — это мягкое удаление: удалённые элементы скрыты от пользователей, но остаются доступными администраторам для целей аудита.