TempMail Pro

TempMail API Docs

Tài liệu nhanh cho bộ tempmail dùng Cloudflare Email Worker + D1 + PHP proxy.

1. Kiến trúc

📥 Email Worker

Nhận email inbound từ Cloudflare Email Routing, parse subject/body/OTP, lưu vào D1.

🗄️ Cloudflare D1

Lưu email_sessionsemails. Không cần server nhận request inbound từ Cloudflare.

🧩 PHP Proxy

Server gọi Worker API bằng token bí mật, frontend chỉ gọi PHP local.

Email đến @mewit.io.vn
→ Cloudflare Email Worker
→ D1 database
→ tempmail-api Worker
→ PHP proxy trên server
→ index.php hiển thị mail/OTP

2. PHP API local

Đặt các file trong cùng thư mục, ví dụ: /public_html/tempmail/.

FileMô tả
config.phpCấu hình Worker URL, token, domain. Không public nội dung token.
create.phpTạo/refresh session email.
reademail.phpĐọc status/latest/otp/list mail.
index.phpGiao diện đọc mail nhanh.

Tạo email/session

POST/tempmail/create.php
fetch('/tempmail/create.php', {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: JSON.stringify({ username: 'testxem' })
})

Response:

{
  "success": true,
  "email": "testxem@mewit.io.vn",
  "username": "testxem"
}

Đọc OTP

GET/tempmail/reademail.php?type=otp&email=testxem@mewit.io.vn
{
  "success": true,
  "otp": "815915",
  "email_id": 2,
  "created_at": "2026-07-19 14:16:36"
}

Đọc mail mới nhất

GET/tempmail/reademail.php?type=latest&email=testxem@mewit.io.vn
{
  "success": true,
  "email": {
    "id": 2,
    "from_email": "...",
    "to_email": "testxem@mewit.io.vn",
    "subject": "Xác minh email của bạn",
    "otp": "815915",
    "snippet": "Xác minh địa chỉ email...",
    "body_text": "...",
    "body_html": "...",
    "created_at": "2026-07-19 14:16:36"
  }
}

Danh sách mail

GET/tempmail/reademail.php?type=list&email=testxem@mewit.io.vn&limit=10

Trạng thái session

GET/tempmail/reademail.php?type=status&email=testxem@mewit.io.vn

3. Worker API nội bộ

Worker API hiện tại:

https://tempmail-api.neox97.workers.dev

PHP gọi Worker bằng header:

X-API-Token: ********
Không gọi Worker API trực tiếp từ browser nếu phải lộ token. Frontend nên gọi PHP proxy.
MethodPathMô tả
POST/session/createTạo/refresh session
GET/session/status?email=...Kiểm tra session
GET/latest?email=...Lấy mail mới nhất
GET/otp?email=...Lấy OTP mới nhất
GET/emails?email=...&limit=10Danh sách mail
POST/cleanupDọn session/mail cũ

4. Giao diện index.php

Giao diện có random email, tạo session, copy email, auto refresh 5 giây, hiển thị OTP và xem body HTML bằng iframe sandbox.

Mở:

https://api.mewit.io.vn/tempmail/

5. Bảo mật & vận hành

Đổi token mặc định. Token test ngắn không nên dùng production.

SQL cleanup thủ công trong D1

DELETE FROM email_sessions
WHERE created_at < datetime('now', '-1 hour');

DELETE FROM emails
WHERE created_at < datetime('now', '-1 day');