Erken erişim talep edin

Adınızı ve iş e-posta adresinizi girin. Tajo erişim talebinizi onaylamanız için size bir bağlantı göndereceğiz.

E-posta Gönderme

/v3/smtp/email uç noktasını kullanarak tek tek işlemsel e-postalar gönderin.

Uç nokta

POST /v3/smtp/email

İstek gövdesi

Temel e-posta

{
"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>"
}

Gelişmiş e-posta

{
"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"
}
}

Kod örnekleri

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>"
}'

Yanıt

Başarılı yanıt (201 Created)

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

Hata yanıtları

Geçersiz API anahtarı (401)

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

Geçersiz e-posta biçimi (400)

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

Hız limiti aşıldı (429)

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

Parametreler

Zorunlu parametreler

ParametreTürAçıklama
senderobjectGönderen bilgileri
toarrayAlıcı nesnelerinden oluşan dizi
subjectstringE-posta konu satırı

İsteğe bağlı parametreler

ParametreTürAçıklama
htmlContentstringE-postanın HTML içeriği
textContentstringE-postanın metin içeriği
ccarrayCC alıcıları
bccarrayBCC alıcıları
replyToobjectYanıtlama adresi
attachmentsarrayDosya ekleri
paramsobjectŞablon parametreleri
tagsarrayİzleme için e-posta etiketleri
headersobjectÖzel başlıklar

Şablon değişkenleri

Konu satırınızda ve içeriğinizde şablon değişkenleri kullanın:

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

Ekler

Dosya ekleri ekleyin:

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

En iyi uygulamalar

  1. Her zaman hem HTML hem de metin içeriği ekleyin, teslim edilebilirliği artırır
  2. İçeriği birleştirmek yerine şablon değişkenleri kullanın
  3. Doğru gönderen bilgilerini ekleyin, spam filtrelerinden kaçınmak için
  4. Etiket ekleyin, izleme ve analiz için
  5. Göndermeden önce e-posta adreslerini doğrulayın
  6. Hataları yeniden deneme mantığıyla düzgün biçimde ele alın

Hız limitleri

  • API hız limiti: her plana verilen genel kademede bu uç nokta saniyede 1.000 isteğe ve saatte 3.600.000 isteğe izin verir. Gelişmiş kademe (Professional ve Enterprise) saniyede 2.000, genişletilmiş kademe (Enterprise) ise 6.000 isteğe izin verir.
  • Gönderim hacmi: kaç e-posta gönderebileceğiniz, hız limitinden ayrı olarak Brevo planınızla belirlenir.

Hız limitleri ve Brevo’nun hız limitleri sayfasına bakın.

İzleme

Bu uç nokta üzerinden gönderilen e-postalar şunlar için otomatik olarak izlenir:

  • Teslim durumu
  • Açılma oranları
  • Tıklama izleme
  • Geri dönen e-postaların (bounce) yönetimi

Ayrıntılı analizleri Brevo yönetim panelinizde Statistics → Transactional bölümünde görüntüleyin.

İlgili uç noktalar

Erken erişim talep edin

Adınızı ve iş e-posta adresinizi girin. Tajo erişim talebinizi onaylamanız için size bir bağlantı göndereceğiz.

AI Asistan

Merhaba! Belgeler hakkında her şeyi sorabilirsiniz.

Bu sayfanın Markdown hâli: send-email.md

Markdown yükleniyor…
Claude ile aç ChatGPT ile aç