API email

Hiện tại, chúng tôi vẫn chưa phát hành bất kỳ trình bao bọc API nào, nhưng chúng tôi dự định sẽ làm như vậy trong tương lai gần. Gửi email đến api@forwardemail.net nếu bạn muốn được thông báo khi trình bao bọc API của một ngôn ngữ lập trình cụ thể được phát hành. Trong khi đó, bạn có thể sử dụng các thư viện yêu cầu HTTP được đề xuất này trong ứng dụng của mình hoặc đơn giản là sử dụng Xoăn như trong các ví dụ dưới đây.

Ngôn ngữThư viện
Hồng ngọcFaraday
Con trănyêu cầu
JavaĐược rồi
PHPăn tham
JavaScriptsiêu tốc (chúng tôi là người bảo trì)
Node.jssiêu tốc (chúng tôi là người bảo trì)
Đimạng / http
.NETPhần còn lạiSắc nét

Đường dẫn URI cơ sở HTTP hiện tại là: https://api.forwardemail.net.

Tất cả các điểm cuối yêu cầu của bạn Mã API được đặt làm giá trị "tên người dùng" của yêu cầu Ủy quyền cơ bản đầu trang. Đừng lo lắng - các ví dụ được cung cấp bên dưới cho bạn nếu bạn không chắc chắn đây là gì.

Nếu bất kỳ lỗi nào xảy ra, nội dung phản hồi của yêu cầu API sẽ chứa một thông báo lỗi chi tiết.

Tên
200OK
400Yêu cầu xấu
401Không được phép
403Cấm
404Không tìm thấy
429Quá nhiều yêu cầu
500Lỗi máy chủ nội bộ
501Không được thực hiện
502Cổng xấu
503dịch vụ Không sẵn có
504Cổng Time-out
Tiền boa: Nếu bạn nhận được mã trạng thái 5xx (điều này sẽ không xảy ra), vui lòng liên hệ với chúng tôi theo địa chỉ api@forwardemail.net và chúng tôi sẽ giúp bạn giải quyết vấn đề của bạn ngay lập tức.

Dịch vụ của chúng tôi được dịch sang hơn 25 ngôn ngữ khác nhau. Tất cả các thông báo phản hồi API được dịch sang ngôn ngữ cuối cùng được phát hiện của người dùng thực hiện yêu cầu API. Bạn có thể ghi đè điều này bằng cách chuyển một tùy chỉnh Accept-Language đầu trang. Vui lòng dùng thử bằng cách sử dụng trình đơn ngôn ngữ thả xuống ở cuối trang này.

Nếu bạn muốn được thông báo khi có phân trang, vui lòng gửi email api@forwardemail.net.

Tạo tài khoản

POST /v1/account

Thông số cơ thểCần thiếtKiểuSự miêu tả
emailĐúngChuỗi (Email)Địa chỉ email
passwordĐúngChuỗiMật khẩu

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/account \
  -u API_TOKEN: \
  -d "email=user%40gmail.com"

Truy xuất tài khoản

GET /v1/account

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/account \
  -u API_TOKEN:

Cập nhật tài khoản

PUT /v1/account

Thông số cơ thểCần thiếtKiểuSự miêu tả
emailKhôngChuỗi (Email)Địa chỉ email
given_nameKhôngChuỗiTên đầu tiên
family_nameKhôngChuỗiHọ
avatar_urlKhôngChuỗi (URL)Liên kết đến hình đại diện

Yêu cầu ví dụ:

curl -X PUT https://api.forwardemail.net/v1/account \
  -u API_TOKEN: \
  -d "email=user%40gmail.com"

Vui lòng đảm bảo rằng bạn đã làm theo hướng dẫn thiết lập cho miền của mình. Những hướng dẫn này có thể được tìm thấy tại Tài khoản của tôi → Tên miền → Cài đặt → Cấu hình SMTP gửi đi. Bạn cần đảm bảo thiết lập DKIM, Đường dẫn trả lại và DMARC để gửi SMTP ra bên ngoài với miền của bạn.

Liệt kê email

Lưu ý rằng điểm cuối này không trả lại email đã tạo message, headers, accepted, cũng không rejectedErrors của cải.

Để trả về các thuộc tính đó và giá trị của chúng, vui lòng sử dụng Truy xuất email điểm cuối với một ID email.

Điểm cuối này sẽ quay trở lại nhiều nhất 50 kết quả tại một thời điểm. Nếu bạn muốn truy vấn nhiều trang thì hãy nối thêm ?page=NUMBER Ở đâu NUMBER là một số nguyên, ví dụ: ?page=1.

GET /v1/emails

Tham số chuỗi truy vấnCần thiếtKiểuSự miêu tả
qKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm email theo siêu dữ liệu
domainKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm email theo tên miền
pageKhôngCon sốTrang trả về kết quả (mặc định là 1)
`giới hạnKhôngCon sốSố kết quả trên mỗi trang trả về (mặc định là 50 – mức tối đa là 50 và tối thiểu là 10)

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/emails \
  -u API_TOKEN:

tạo email

API của chúng tôi để tạo email được lấy cảm hứng và tận dụng cấu hình tùy chọn thư của Nodemailer. xin vui lòng trì hoãn để Cấu hình tin nhắn Nodemailer cho tất cả các thông số cơ thể dưới đây.

Lưu ý rằng ngoại trừ envelopedkim (vì chúng tôi tự động đặt những tùy chọn đó cho bạn), chúng tôi hỗ trợ tất cả các tùy chọn của Nodemailer. Chúng tôi tự động thiết lập disableFileAccessdisableUrlAccess tùy chọn để true vì mục đích an ninh.

Bạn nên vượt qua tùy chọn duy nhất của raw với email đầy đủ thô của bạn bao gồm cả tiêu đề hoặc là vượt qua các tùy chọn tham số cơ thể riêng lẻ bên dưới.

POST /v1/emails

Thông số cơ thểCần thiếtKiểuSự miêu tả
fromKhôngChuỗi (Email)Địa chỉ email của người gửi (phải tồn tại dưới dạng bí danh của miền).
toKhôngChuỗi hoặc mảngDanh sách được phân tách bằng dấu phẩy hoặc một Mảng người nhận cho tiêu đề "Tới".
ccKhôngChuỗi hoặc mảngDanh sách được phân tách bằng dấu phẩy hoặc một Mảng người nhận cho tiêu đề "Cc".
bccKhôngChuỗi hoặc mảngDanh sách được phân tách bằng dấu phẩy hoặc một Mảng người nhận cho tiêu đề "Bcc".
subjectKhôngChuỗiChủ đề của email.
textKhôngChuỗi hoặc Bộ đệmPhiên bản rõ ràng của tin nhắn.
htmlKhôngChuỗi hoặc Bộ đệmPhiên bản HTML của tin nhắn.
attachmentsKhôngMảngMột mảng các đối tượng đính kèm (xem Các trường chung của Nodemailer).
senderKhôngChuỗiĐịa chỉ email cho tiêu đề "Người gửi" (xem Các trường nâng cao hơn của Nodemailer).
replyToKhôngChuỗiĐịa chỉ email cho tiêu đề "Trả lời".
inReplyToKhôngChuỗiId tin nhắn mà tin nhắn được trả lời.
referencesKhôngChuỗi hoặc mảngDanh sách được phân tách bằng dấu cách hoặc một Mảng Id Thông báo.
attachDataUrlsKhôngBooleanNếu như true sau đó chuyển đổi data: hình ảnh trong nội dung HTML của tin nhắn vào tệp đính kèm được nhúng.
watchHtmlKhôngChuỗiPhiên bản HTML dành riêng cho Apple Watch của thông báo (theo tài liệu Nodemailer, những chiếc đồng hồ mới nhất không yêu cầu thiết lập điều này).
ampKhôngChuỗiPhiên bản HTML dành riêng cho AMP4EMAIL của thư (xem Ví dụ của Nodemailer).
icalEventKhôngSự vậtMột sự kiện iCalendar để sử dụng làm nội dung thư thay thế (xem Sự kiện lịch của Nodemailer).
alternativesKhôngMảngMảng nội dung thư thay thế (xem Nội dung thay thế của Nodemailer).
encodingKhôngChuỗiMã hóa cho chuỗi văn bản và HTML (mặc định là "utf-8", nhưng hỗ trợ "hex""base64" giá trị mã hóa là tốt).
rawKhôngChuỗi hoặc Bộ đệmThông báo có định dạng RFC822 được tạo tùy chỉnh để sử dụng (thay vì thông báo được tạo bởi Nodemailer – xem Nguồn tùy chỉnh của Nodemailer).
textEncodingKhôngChuỗiMã hóa buộc phải được sử dụng cho các giá trị văn bản (hoặc "quoted-printable" hoặc là "base64"). Giá trị mặc định là giá trị gần nhất được phát hiện (để sử dụng ASCII "quoted-printable").
priorityKhôngChuỗiMức độ ưu tiên cho email (có thể là "high", "normal" (mặc định) hoặc "low"). Lưu ý rằng một giá trị của "normal" không đặt tiêu đề ưu tiên (đây là hành vi mặc định). Nếu một giá trị của "high" hoặc là "low" được thiết lập, sau đó X-Priority, X-MSMail-Priority, và Importance tiêu đề sẽ được thiết lập cho phù hợp.
headersKhôngĐối tượng hoặc MảngMột đối tượng hoặc một mảng các trường tiêu đề bổ sung để đặt (xem Tiêu đề tùy chỉnh của Nodemailer).
messageIdKhôngChuỗiGiá trị Message-ID tùy chọn cho tiêu đề "Message-ID" (giá trị mặc định sẽ được tạo tự động nếu không được đặt – lưu ý rằng giá trị này phải tuân thủ thông số kỹ thuật RFC2822).
dateKhôngChuỗi hoặc NgàyGiá trị Ngày tùy chọn sẽ được sử dụng nếu tiêu đề Ngày bị thiếu sau khi phân tích cú pháp, nếu không, chuỗi UTC hiện tại sẽ được sử dụng nếu không được đặt. Tiêu đề ngày không được quá 30 ngày trước thời điểm hiện tại.
listKhôngSự vậtMột đối tượng tùy chọn của List-* tiêu đề (xem Tiêu đề danh sách của Nodemailer).

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/emails \
  -u API_TOKEN: \
  -d "from=alias@example.com" \
  -d "to=user%40gmail.com" \
  -d "subject=test" \
  -d "text=test"

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/emails \
  -u API_TOKEN: \
  -d "raw=`cat file.eml`"

Truy xuất email

GET /v1/emails/:id

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/emails/:id \
  -u API_TOKEN:

xóa email

Việc xóa email sẽ đặt trạng thái thành "rejected" (và sau đó không xử lý nó trong hàng đợi) khi và chỉ khi trạng thái hiện tại là một trong "pending", "queued", hoặc "deferred". Chúng tôi có thể tự động xóa các email sau 30 ngày kể từ khi chúng được tạo và/hoặc gửi đi – do đó, bạn nên giữ một bản sao của các email SMTP gửi đi trong ứng dụng khách, cơ sở dữ liệu hoặc ứng dụng của mình. Bạn có thể tham khảo giá trị ID email của chúng tôi trong cơ sở dữ liệu của mình nếu muốn – giá trị này được trả về từ cả hai tạo emailTruy xuất email thiết bị đầu cuối.

DELETE /v1/emails/:id

Yêu cầu ví dụ:

curl -X DELETE https://api.forwardemail.net/v1/emails/:id \
  -u API_TOKEN:

Tiền boa: Điểm cuối miền có tên miền /v1/domains/:domain_name vì đường dẫn của chúng có thể hoán đổi cho nhau bằng ID của miền :domain_id. Điều này có nghĩa là bạn có thể tham chiếu đến miền bằng name hoặc là id giá trị.

Liệt kê tên miền

GET /v1/domains

Tham số chuỗi truy vấnCần thiếtKiểuSự miêu tả
qKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm tên miền theo tên
nameKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm tên miền theo tên

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains \
  -u API_TOKEN:

Tạo tên miền

POST /v1/domains

Thông số cơ thểCần thiếtKiểuSự miêu tả
domainĐúngChuỗi (FQDN hoặc IP)Tên miền đủ điều kiện ("FQDN") hoặc địa chỉ IP
planKhôngChuỗi (liệt kê)Loại kế hoạch (phải là "free", "enhanced_protection", hoặc "team", mặc định là "free" hoặc gói trả phí hiện tại của người dùng nếu trên một)
catchallKhôngChuỗi (địa chỉ email được phân tách) hoặc BooleanTạo bí danh nhận toàn bộ thư mặc định, mặc định là true (nếu true nó sẽ sử dụng địa chỉ email của người dùng API làm người nhận và nếu false không có tất cả sẽ được tạo). Nếu một Chuỗi được chuyển, thì đó là danh sách địa chỉ email được phân tách để sử dụng làm người nhận (được phân tách bằng dấu ngắt dòng, dấu cách và / hoặc dấu phẩy)
has_adult_content_protectionKhôngBooleanCó bật tính năng bảo vệ nội dung người lớn Spam Scanner trên miền này hay không
has_phishing_protectionKhôngBooleanCó bật tính năng bảo vệ chống lừa đảo Spam Scanner trên miền này hay không
has_executable_protectionKhôngBooleanCó bật tính năng bảo vệ thực thi Spam Scanner trên miền này hay không
has_virus_protectionKhôngBooleanCó bật tính năng bảo vệ chống vi-rút Spam Scanner trên miền này hay không
has_recipient_verificationKhôngBooleanMiền toàn cầu mặc định về việc có yêu cầu người nhận bí danh nhấp vào liên kết xác minh email để email đi qua hay không

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/domains \
  -u API_TOKEN: \
  -d domain=example.com \
  -d plan=free

Lấy tên miền

GET /v1/domains/example.com

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/example.com \
  -u API_TOKEN:

Xác nhận hồ sơ tên miền

GET /v1/domains/example.com/verify-records

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/example.com/verify-records \
  -u API_TOKEN:

Cập nhật tên miền

PUT /v1/domains/example.com

Thông số cơ thểCần thiếtKiểuSự miêu tả
smtp_portKhôngChuỗi hoặc sốCổng tùy chỉnh để định cấu hình cho chuyển tiếp SMTP (mặc định là "25")
has_adult_content_protectionKhôngBooleanCó bật tính năng bảo vệ nội dung người lớn Spam Scanner trên miền này hay không
has_phishing_protectionKhôngBooleanCó bật tính năng bảo vệ chống lừa đảo Spam Scanner trên miền này hay không
has_executable_protectionKhôngBooleanCó bật tính năng bảo vệ thực thi Spam Scanner trên miền này hay không
has_virus_protectionKhôngBooleanCó bật tính năng bảo vệ chống vi-rút Spam Scanner trên miền này hay không
has_recipient_verificationKhôngBooleanMiền toàn cầu mặc định về việc có yêu cầu người nhận bí danh nhấp vào liên kết xác minh email để email đi qua hay không

Yêu cầu ví dụ:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com \
  -u API_TOKEN:

Xóa tên miền

DELETE /v1/domains/:domain_name

Yêu cầu ví dụ:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name \
  -u API_TOKEN:

Chấp nhận lời mời tên miền

GET /v1/domains/:domain_name/invites

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/:domain_name/invites \
  -u API_TOKEN:

Tạo tên miền mời

POST /v1/domains/example.com/invites

Thông số cơ thểCần thiếtKiểuSự miêu tả
emailĐúngChuỗi (Email)Địa chỉ email để mời vào danh sách thành viên tên miền
groupĐúngChuỗi (liệt kê)Nhóm để thêm người dùng vào tư cách thành viên miền với (có thể là một trong số "admin" hoặc là "user")

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/domains/example.com/invites \
  -u API_TOKEN: \
  -d "email=user%40gmail.com" \
  -d group=admin

Xóa tên miền mời

DELETE /v1/domains/:domain_name/invites

Thông số cơ thểCần thiếtKiểuSự miêu tả
emailĐúngChuỗi (Email)Địa chỉ email để xóa khỏi danh sách thành viên tên miền

Yêu cầu ví dụ:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/invites \
  -u API_TOKEN:

Cập nhật thành viên tên miền

PUT /v1/domains/example.com/members/:member_id

Thông số cơ thểCần thiếtKiểuSự miêu tả
groupĐúngChuỗi (liệt kê)Nhóm để cập nhật người dùng lên thành viên miền với (có thể là một trong số "admin" hoặc là "user")

Yêu cầu ví dụ:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com/members/:member_id \
  -u API_TOKEN:

Xóa thành viên tên miền

DELETE /v1/domains/:domain_name/members/:member_id

Yêu cầu ví dụ:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/members/:member_id \
  -u API_TOKEN:

Liệt kê bí danh miền

GET /v1/domains/example.com/aliases

Tham số chuỗi truy vấnCần thiếtKiểuSự miêu tả
qKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm bí danh trong miền theo tên, nhãn hoặc người nhận
nameKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm bí danh trong miền theo tên
recipientKhôngChuỗi (được hỗ trợ RegExp)Tìm kiếm bí danh trong miền của người nhận

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/example.com/aliases \
  -u API_TOKEN:

Tạo bí danh tên miền mới

POST /v1/domains/example.com/aliases

Thông số cơ thểCần thiếtKiểuSự miêu tả
nameKhôngChuỗiTên bí danh (nếu không được cung cấp hoặc nếu để trống, bí danh ngẫu nhiên sẽ được tạo)
recipientsKhôngChuỗi hoặc mảngDanh sách người nhận (phải được ngắt dòng/dấu cách/Chuỗi được phân tách bằng dấu phẩy hoặc Mảng địa chỉ email hợp lệ, tên miền đủ điều kiện ("FQDN"), địa chỉ IP và/hoặc URL của webhook – và nếu không được cung cấp hoặc trống Array, thì email của người dùng thực hiện yêu cầu API sẽ được đặt làm người nhận)
descriptionKhôngChuỗiMô tả bí danh
labelsKhôngChuỗi hoặc mảngDanh sách các nhãn (phải là chuỗi hoặc mảng được phân tách bằng dấu phẩy / dấu cách
has_recipient_verificationKhôngBooleanCó bật để yêu cầu người nhận nhấp vào liên kết xác minh email để email đi qua hay không (mặc định là cài đặt của miền nếu không được đặt rõ ràng trong nội dung yêu cầu)
is_enabledKhôngBooleanCó bật hay không để tắt bí danh này (nếu bị tắt, email sẽ không được định tuyến nhưng sẽ trả về mã trạng thái thành công). Mặc định là true, nhưng nếu một giá trị được chuyển, nó sẽ được chuyển đổi thành boolean bằng cách sử dụng boolean)

Yêu cầu ví dụ:

curl -X POST https://api.forwardemail.net/v1/domains/example.com/aliases \
  -u API_TOKEN:

Truy xuất bí danh miền

Bạn có thể truy xuất bí danh miền bằng cách id Hoặc của nó name giá trị.

GET /v1/domains/:domain_name/aliases/:alias_id

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
  -u API_TOKEN:

GET /v1/domains/:domain_name/aliases/:alias_name

Yêu cầu ví dụ:

curl https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_name \
  -u API_TOKEN:

Cập nhật bí danh tên miền

PUT /v1/domains/example.com/aliases/:alias_id

Thông số cơ thểCần thiếtKiểuSự miêu tả
nameKhôngChuỗiTên bí danh
recipientsĐúngChuỗi hoặc mảngDanh sách người nhận (phải là chuỗi ngắt dòng / dấu cách / dấu cách được phân tách bằng dấu phẩy hoặc Mảng địa chỉ email hợp lệ, tên miền đủ điều kiện ("FQDN"), địa chỉ IP và / hoặc URL của webhook)
descriptionKhôngChuỗiMô tả bí danh
labelsKhôngChuỗi hoặc mảngDanh sách các nhãn (phải là chuỗi hoặc mảng được phân tách bằng dấu phẩy / dấu cách
has_recipient_verificationKhôngBooleanCó bật để yêu cầu người nhận nhấp vào liên kết xác minh email để email đi qua hay không (mặc định là cài đặt của miền nếu không được đặt rõ ràng trong nội dung yêu cầu)
is_enabledKhôngBooleanCó bật hay không để tắt bí danh này (nếu bị tắt, email sẽ không được chuyển đến đâu nhưng trả về mã trạng thái thành công)

Yêu cầu ví dụ:

curl -X PUT https://api.forwardemail.net/v1/domains/example.com/aliases/:alias_id \
  -u API_TOKEN:

Xóa bí danh tên miền

DELETE /v1/domains/:domain_name/aliases/:alias_id

Yêu cầu ví dụ:

curl -X DELETE https://api.forwardemail.net/v1/domains/:domain_name/aliases/:alias_id \
  -u API_TOKEN: