Đăng ký quyền truy cập sớm

Nhập tên của bạn cùng email hoặc số điện thoại. Chúng tôi sẽ liên hệ và gửi thông tin truy cập Tajo.

Gửi email

Gửi từng email giao dịch bằng endpoint /v3/smtp/email.

Endpoint

POST /v3/smtp/email

Nội dung yêu cầu

Email cơ bản

{
"sender": {
"name": "Your App",
"email": "[email protected]"
},
"to": [
{
"email": "[email protected]",
"name": "John Doe"
}
],
"subject": "Welcome to our service!",
"htmlContent": "<html><body><h1>Welcome!</h1><p>Thank you for signing up.</p></body></html>"
}

Email nâng cao

{
"sender": {
"name": "Your App",
"email": "[email protected]"
},
"to": [
{
"email": "[email protected]",
"name": "John Doe"
}
],
"cc": [
{
"email": "[email protected]",
"name": "CC User"
}
],
"bcc": [
{
"email": "[email protected]"
}
],
"subject": "Order Confirmation #{{order_id}}",
"htmlContent": "<html><body><h1>Order Confirmed</h1><p>Your order {{order_id}} has been confirmed.</p></body></html>",
"textContent": "Your order {{order_id}} has been confirmed.",
"params": {
"order_id": "12345"
},
"tags": ["transactional", "order-confirmation"],
"headers": {
"X-Custom-Header": "custom-value"
}
}

Ví dụ mã nguồn

JavaScript/Node.js

const brevo = require('@getbrevo/brevo');
const apiInstance = new brevo.TransactionalEmailsApi();
apiInstance.setApiKey(brevo.TransactionalEmailsApiApiKeys.apiKey, process.env.BREVO_API_KEY);
const sendEmail = async () => {
const sendSmtpEmail = new brevo.SendSmtpEmail();
sendSmtpEmail.subject = "Welcome to our service!";
sendSmtpEmail.htmlContent = "<html><body><h1>Welcome!</h1></body></html>";
sendSmtpEmail.sender = { name: "Your App", email: "[email protected]" };
sendSmtpEmail.to = [{ email: "[email protected]", name: "John Doe" }];
try {
const result = await apiInstance.sendTransacEmail(sendSmtpEmail);
console.log('Email sent:', result);
return result;
} catch (error) {
console.error('Error sending email:', error);
throw error;
}
};

Python

import sib_api_v3_sdk
from sib_api_v3_sdk.rest import ApiException
configuration = sib_api_v3_sdk.Configuration()
configuration.api_key['api-key'] = 'YOUR_API_KEY'
api_instance = sib_api_v3_sdk.TransactionalEmailsApi(sib_api_v3_sdk.ApiClient(configuration))
send_smtp_email = sib_api_v3_sdk.SendSmtpEmail(
to=[{"email": "[email protected]", "name": "John Doe"}],
sender={"name": "Your App", "email": "[email protected]"},
subject="Welcome to our service!",
html_content="<html><body><h1>Welcome!</h1></body></html>"
)
try:
api_response = api_instance.send_transac_email(send_smtp_email)
print(api_response)
except ApiException as e:
print("Exception when calling TransactionalEmailsApi->send_transac_email: %s\n" % e)

cURL

Terminal window
curl -X POST "https://api.brevo.com/v3/smtp/email" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
"sender": {
"name": "Your App",
"email": "[email protected]"
},
"to": [
{
"email": "[email protected]",
"name": "John Doe"
}
],
"subject": "Welcome to our service!",
"htmlContent": "<html><body><h1>Welcome!</h1></body></html>"
}'

Phản hồi

Phản hồi thành công (201 Created)

{
"messageId": "<[email protected]>"
}

Phản hồi lỗi

Khóa API không hợp lệ (401)

{
"code": "unauthorized",
"message": "Invalid API key provided"
}

Định dạng email không hợp lệ (400)

{
"code": "invalid_parameter",
"message": "Invalid email format in 'to' field"
}

Vượt giới hạn tần suất (429)

{
"code": "too_many_requests",
"message": "Rate limit exceeded"
}

Tham số

Tham số bắt buộc

Tham sốKiểuMô tả
senderobjectThông tin người gửi
toarrayMảng các đối tượng người nhận
subjectstringDòng tiêu đề email

Tham số tùy chọn

Tham sốKiểuMô tả
htmlContentstringNội dung HTML của email
textContentstringNội dung văn bản của email
ccarrayNgười nhận CC
bccarrayNgười nhận BCC
replyToobjectĐịa chỉ trả lời
attachmentsarrayTệp đính kèm
paramsobjectTham số của mẫu email
tagsarrayThẻ email dùng để theo dõi
headersobjectHeader tùy chỉnh

Biến trong mẫu email

Dùng biến mẫu trong tiêu đề và nội dung email:

{
"subject": "Welcome {{firstName}}!",
"htmlContent": "<h1>Hello {{firstName}} {{lastName}}</h1>",
"params": {
"firstName": "John",
"lastName": "Doe"
}
}

Tệp đính kèm

Thêm tệp đính kèm:

{
"attachments": [
{
"content": "base64_encoded_content",
"name": "invoice.pdf"
},
{
"url": "https://example.com/document.pdf",
"name": "document.pdf"
}
]
}

Thực hành tốt nhất

  1. Luôn kèm cả nội dung HTML và văn bản để cải thiện khả năng gửi đến hộp thư
  2. Dùng biến mẫu thay vì ghép chuỗi nội dung
  3. Điền đầy đủ thông tin người gửi để tránh bộ lọc thư rác
  4. Thêm thẻ phục vụ theo dõi và phân tích
  5. Kiểm tra tính hợp lệ của địa chỉ email trước khi gửi
  6. Xử lý lỗi khéo léo bằng logic thử lại

Giới hạn tần suất

  • Tài khoản miễn phí: 300 email/ngày
  • Tài khoản trả phí: Tùy theo gói của bạn
  • Giới hạn tức thời: 100 email/phút

Theo dõi

Email gửi qua endpoint này được tự động theo dõi các chỉ số:

  • Trạng thái gửi
  • Tỷ lệ mở
  • Theo dõi lượt nhấp
  • Xử lý thư trả về

Xem phân tích chi tiết trong bảng điều khiển Brevo tại StatisticsTransactional.

Endpoint liên quan

Đăng ký quyền truy cập sớm

Nhập tên của bạn cùng email hoặc số điện thoại. Chúng tôi sẽ liên hệ và gửi thông tin truy cập Tajo.

tự động nhận diện
Trợ lý AI

Xin chào! Hãy hỏi tôi về tài liệu.