cheatshop.asia
开始使用 服务介绍 API 文档 登录注册

接口文档

REST · JSON HTTP Basic

登录后可用真实地址试

认证方式

每次请求带 HTTP Basic:用户名是你的完整邮箱地址,密码是创建邮箱时显示的那串密码(在「我的邮箱」里可以重置)。没有密码的邮箱无法调用接口。

AUTHBasic <base64(邮箱:密码)>
# curl 自动处理编码
curl -u "xxxxxx@cheatshop.asia:你的邮箱密码" \
  https://cheatshop.asia/api/me

GET /api/me

查询当前邮箱的信息和收信总数。

GET/api/me
{
  "address": "xxxxxx@cheatshop.asia",
  "created_at": 1793183599886,
  "message_count": 0
}

GET /api/messages

邮件列表,按时间倒序。limit 默认 20、最大 100;offset 用于翻页。

GET/api/messages?limit=20&offset=0
{
  "total": 42,
  "limit": 20,
  "offset": 0,
  "messages": [
    {
      "id": "4e8cd2ba-0c11-4836-90b4-904abed38bee",
      "from": "someone &lt;someone@example.com&gt;",
      "subject": "验证码",
      "received_at": 1793183599886,
      "is_read": false,
      "attachments": 1
    }
  ]
}

GET /api/messages/:id

单封邮件的完整内容,含纯文本、HTML 和附件清单。

GET/api/messages/{id}
{
  "id": "4e8cd2ba-...",
  "to": "xxxxxx@cheatshop.asia",
  "from": "someone &lt;someone@example.com&gt;",
  "subject": "验证码",
  "received_at": 1793183599886,
  "size": 6451,
  "text": "你的验证码是 123456",
  "html": "&lt;p&gt;你的验证码是 &lt;b&gt;123456&lt;/b&gt;&lt;/p&gt;",
  "attachments": [
    {
      "index": 0,
      "filename": "analytics.settings",
      "mime": "application/octet-stream",
      "size": 127,
      "url": "/api/messages/4e8cd2ba-.../attachments/0"
    }
  ]
}

GET /api/messages/:id/attachments/:idx

下载附件,返回原始二进制,响应头带 Content-Disposition 和原文件名。

GET/api/messages/{id}/attachments/{idx}
curl -u "xxxxxx@cheatshop.asia:你的邮箱密码" \
  -OJ "https://cheatshop.asia/api/messages/4e8cd2ba-.../attachments/0"

GET /api/health

公开接口,不需要认证,用来探活。

GET/api/health
{ "ok": true, "service": "cf-mail" }

错误码

状态码含义处理
200成功—
401未认证 / 密码错误 / 邮箱未设密码检查 Basic 头
404邮件或附件不存在,或不属于这个邮箱确认 id 与归属
500服务端异常稍后重试

说明

· 接口只返回你自己名下邮箱的邮件,越权访问会返回 404。

· 所有响应带 Access-Control-Allow-Origin: *,浏览器里可直接 fetch。

· 邮箱密码在创建或重置时明文显示一次,忘记就在「我的邮箱」点「重置密码」。