Skip to content

查看邮件 API

通过 邮件 API 查看邮件

这是一个 python 的例子,使用 requests 库查看邮件。

python
limit = 10
offset = 0
res = requests.get(
    f"https://<你的worker地址>/api/mails?limit={limit}&offset={offset}",
    headers={
        "Authorization": f"Bearer {你的JWT密码}",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
        "Content-Type": "application/json"
    }
)

注意/api/mails 按设计返回的是原始 RFC822 数据(如 source/raw),不保证直接包含 subjecttexthtml 等已解析字段。若要直接读取正文,请在客户端侧解析 raw(例如 mail-parser-wasmpostal-mime)。

admin 邮件 API

支持 address 过滤

python
import requests

url = "https://<你的worker地址>/admin/mails"

querystring = {
    "limit":"20",
    "offset":"0",
    # address 为可选参数
    "address":"[email protected]"
}

headers = {
        "x-admin-auth": "<你的Admin密码>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.get(url, headers=headers, params=querystring)

print(response.json())

注意/admin/mails/api/mails 一致,返回的是邮件数据库中的 raw MIME 内容;如需正文/主题等可读字段,请在客户端自行解析 raw

注意:后端 API 已移除关键词过滤功能。如需按内容过滤邮件,请使用前端界面的过滤输入框,该功能可过滤当前显示的页面。

admin 删除邮件 API

通过邮件 ID 删除单封邮件。

python
import requests

mail_id = 1
url = f"https://<你的worker地址>/admin/mails/{mail_id}"

headers = {
        "x-admin-auth": "<你的Admin密码>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.delete(url, headers=headers)

print(response.json())

admin 删除邮箱地址 API

通过邮箱地址 ID 删除邮箱地址(同时删除该地址关联的邮件、发件权限和用户绑定)。

python
import requests

address_id = 1
url = f"https://<你的worker地址>/admin/delete_address/{address_id}"

headers = {
        "x-admin-auth": "<你的Admin密码>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.delete(url, headers=headers)

print(response.json())

admin 清空收件箱 API

通过邮箱地址 ID 清空该地址的所有收件。

python
import requests

address_id = 1
url = f"https://<你的worker地址>/admin/clear_inbox/{address_id}"

headers = {
        "x-admin-auth": "<你的Admin密码>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.delete(url, headers=headers)

print(response.json())

admin 清空发件箱 API

通过邮箱地址 ID 清空该地址的所有发件。

python
import requests

address_id = 1
url = f"https://<你的worker地址>/admin/clear_sent_items/{address_id}"

headers = {
        "x-admin-auth": "<你的Admin密码>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.delete(url, headers=headers)

print(response.json())

user 邮件 API

注意:用户 JWT vs 地址 JWT

此接口使用用户 JWT(通过 /user_api/login/user_api/register 获得),使用 x-user-token header。

请勿与地址 JWT 混淆

  • 地址 JWT 使用 Authorization: Bearer <jwt> 访问 /api/* 接口
  • 用户 JWT 使用 x-user-token: <jwt> 访问 /user_api/* 接口

支持 address 过滤

python
import requests

url = "https://<你的worker地址>/user_api/mails"

querystring = {
    "limit":"20",
    "offset":"0",
    # address 为可选参数
    "address":"[email protected]"
}

headers = {
        "x-user-token": "<你的用户JWT Token>",
        # "x-custom-auth": "<你的网站密码>", # 如果启用了私有站点密码
    }

response = requests.get(url, headers=headers, params=querystring)

print(response.json())

注意/user_api/mails 同样返回原始 RFC822 内容;请在客户端解析后提取 subjecttexthtml

注意:后端 API 已移除关键词过滤功能。如需按内容过滤邮件,请使用前端界面的过滤输入框,该功能可过滤当前显示的页面。

基于 MIT 许可发布