Phân tích e-mail (.eml) API

Phân tích e-mail thô (.eml / MIME) thành JSON: tiêu đề và địa chỉ đã giải mã, nội dung text và HTML, phần trả lời mới nhất, tệp đính kèm base64, DKIM.

POSThttps://apibox.io.vn/v1/email-parse
Nội dung & HTML▶ Dùng thử online

Gửi e-mail thô (file .eml, body message/rfc822 hoặc mã nguồn qua raw), API trả JSON gọn: tiêu đề và tên người gửi đã giải mã RFC 2047 (kể cả tiếng Việt), from / to / cc / bcc / reply-to dạng tên + địa chỉ, ngày giờ theo ISO 8601, message id, in-reply-to và references để ghép luồng thư, nội dung text và HTML (đã giải mã quoted-printable, base64 và các bảng mã cũ) cùng mọi tệp đính kèm với tên file, kiểu MIME, dung lượng, content id và nội dung base64.

latest_reply cắt bỏ phần trích dẫn thư cũ ("On … wrote:", Gmail tiếng Việt "Vào … đã viết:", khối "From: / Sent:" của Outlook và các dòng ">"), đúng phần hệ thống ticket cần lưu. Chuỗi Received được tách (from, by, giao thức, IP, thời điểm), Authentication-Results cho kết quả SPF / DKIM / DMARC do máy chủ nhận ghi, DKIM-Signature cho tên miền và selector, List-Unsubscribe trả về cho thư bản tin.

attachments=meta chỉ liệt kê tệp đính kèm không kèm nội dung, none bỏ qua; tệp lớn hơn max_attachment_bytes (mặc định 5 MB) chỉ được liệt kê. Bộ đọc dùng postal-mime (MIT-0), thư viện Cloudflare khuyên dùng cho Email Workers. Thư được xử lý trong bộ nhớ, không lưu lại.

Tham số

TênVị tríKiểuBắt buộcMặc định
filebodyfilekhôngFile .eml (multipart, body thô message/rfc822 hoặc file_base64).
rawbodystringkhôngHoặc mã nguồn thư dạng chuỗi.
attachmentsbody|querystringkhôngbase64base64, meta (không kèm nội dung) hoặc none.
max_attachment_bytesbody|querynumberkhông5000000Tệp lớn hơn chỉ được liệt kê, không kèm nội dung.
headersbody|querybooleankhôngtruefalse: bỏ danh sách header đầy đủ.
no_htmlbody|querybooleankhôngfalseBỏ phần nội dung HTML.

Ví dụ

curl -X POST "https://apibox.io.vn/v1/email-parse" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: message/rfc822" \
  --data-binary 'From: =?UTF-8?B?Tmd1eeG7hW4gVsSDbiBBbg==?= <an@gmail.com>
To: support@example.vn
Subject: =?UTF-8?Q?H=C3=B3a_=C4=91=C6=A1n_th=C3=A1ng_11?=
Date: Tue, 10 Nov 2026 09:15:00 +0700
Message-ID: <CAF123@mail.gmail.com>
Authentication-Results: mx.example.vn; dkim=pass header.d=gmail.com; spf=pass; dmarc=pass
Content-Type: text/plain; charset=utf-8

Chào anh, em gửi hóa đơn.

Vào Th 2, 9 thg 11, 2026 lúc 10:00 Hỗ trợ <support@example.vn> đã viết:
> Anh gửi giúp hóa đơn nhé
'

Kết quả trả về

{
  "subject": "Hóa đơn tháng 11",
  "from": {
    "name": "Nguyễn Văn An",
    "address": "an@gmail.com"
  },
  "sender": null,
  "reply_to": [],
  "to": [
    {
      "name": null,
      "address": "support@example.vn"
    }
  ],
  "cc": [],
  "bcc": [],
  "date": "2026-11-10T02:15:00.000Z",
  "message_id": "<CAF123@mail.gmail.com>",
  "in_reply_to": null,
  "references": [],
  "return_path": null,
  "delivered_to": null,
  "text": "Chào anh, em gửi hóa đơn.\n\nVào Th 2, 9 thg 11, 2026 lúc 10:00 Hỗ trợ <support@example.vn> đã viết:\n> Anh gửi giúp hóa đơn nhé\n",
  "html": null,
  "latest_reply": "Chào anh, em gửi hóa đơn.",
  "attachment_count": 0,
  "attachments": [],
  "authentication": {
    "results": [
      {
        "dkim": "pass",
        "spf": "pass",
        "dmarc": "pass"
      }
    ],
    "dkim_signatures": [],
    "received_spf": []
  },
  "received": [],
  "list": {
    "unsubscribe": null,
    "unsubscribe_post": null,
    "id": null
  },
  "headers": [
    {
      "key": "from",
      "value": "=?UTF-8?B?Tmd1eeG7hW4gVsSDbiBBbg==?= <an@gmail.com>"
    },
    {
      "…": "…"
    }
  ],
  "note": "Signatures are listed, not verified (DKIM / SPF results are those written by the receiving server). Nothing is stored."
}

Ứng dụng

  • Chuyển e-mail gửi đến thành ticket hỗ trợ
  • Tách file PDF, XML hóa đơn đính kèm trong thư nhà cung cấp
  • Lưu trữ hộp thư dạng JSON để tìm kiếm
  • Gỡ lỗi gửi thư: các chặng Received, kết quả SPF / DKIM / DMARC

Hỏi đáp

Có xác thực chữ ký DKIM không?

Không. API báo kết quả máy chủ nhận đã ghi trong Authentication-Results và liệt kê tên miền của DKIM-Signature; dùng /v1/email-auth để kiểm tra bản ghi DNS của tên miền.

Thư tối đa bao nhiêu?

Theo giới hạn dung lượng file của gói. Tệp đính kèm lớn hơn max_attachment_bytes (mặc định 5 MB, tổng 30 MB) chỉ được liệt kê, không kèm nội dung.

Có đọc file .msg của Outlook không?

Không, chỉ đọc MIME (.eml). Trong Outlook hãy lưu hoặc chuyển tiếp thư dạng .eml trước.

API liên quan

Bắt đầu với 1.000 request miễn phí mỗi tháng. Nhận API key miễn phí →