🔐 验证: 大多数端点不需要身份验证。仅有的 /api/all-domains/ 需要 X-Domain-Token 标头。

GET/api/email/{domain}/{user}/

获取用户电子邮件的分页列表。列表响应仅包含元数据(无 body / html_body).

范围地点描述
domain小路电子邮件域名,例如 example.com
user小路用户名,例如 testuser
page查询,可选页码(默认1)
limit查询,可选每页项目数(默认 20 个,最多 100 个)
curl -X GET "https://BASE_URL/api/email/example.com/testuser/?page=1&limit=20"
{
  "emails": [
    {
      "id": 123,
      "subject": "Welcome",
      "sender": "[email protected]",
      "date": "2026-09-30T10:30:00.000Z",
      "has_attachments": false,
      "size": 1234
    }
  ],
  "total": 5,
  "page": 1,
  "limit": 20,
  "has_more": false
}

GET/api/email/{domain}/{user}/{email_id}

获取电子邮件的完整详细信息。

curl -X GET "https://BASE_URL/api/email/example.com/testuser/123"

DELETE/api/email/{domain}/{user}/{email_id}

删除特定电子邮件。

curl -X DELETE "https://BASE_URL/api/email/example.com/testuser/123"
{ "status": "deleted" }

POST/api/add-domain/{domain}

添加新域或更新现有域的在线状态。该域必须有一条 MX 记录指向要接受的系统主机名(状态 added, is_online: true).

curl -X POST "https://BASE_URL/api/add-domain/newdomain.com"
// 添加成功
{ "status": "added", "domain": "newdomain.com", "is_online": true }

// 现有域:更新其状态
{ "status": "updated", "domain": "newdomain.com", "is_online": false }
⚠️ 如果 MX 记录未指向正确的主机,API 将返回 400 错误并提供指导。

GET/api/all-domains/ & /api/random-domains/

所有在线域(私有,需要令牌):

curl -X GET "https://BASE_URL/api/all-domains/" \
  -H "X-Domain-Token: YOUR_TOKEN"

随机在线域(公共):

curl -X GET "https://BASE_URL/api/random-domains/?limit=10"
{ "domains": ["domain1.com", "domain2.com"], "total": 2 }

GET/api/check-mx/{domain}

检查域是否有指向系统的有效 MX 记录。

curl -X GET "https://BASE_URL/api/check-mx/example.com"
{ "result": "online" }   // 或者 "offline"

错误处理

代码意义
200成功
400无效请求(例如格式错误的域名/电子邮件)
401专用端点的令牌丢失或无效
404未找到电子邮件
429超出速率限制
{ "detail": "Domain not found" }

重要提示