Solicită acces anticipat

Spune-ne prenumele și o adresă de e-mail sau un număr de telefon. Îți vom trimite detaliile de acces la Tajo.

Trimite un e-mail

Trimite e-mailuri tranzacționale individuale folosind endpointul /v3/smtp/email.

Endpoint

POST /v3/smtp/email

Corpul cererii

E-mail simplu

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

E-mail avansat

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

Exemple de cod

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

Răspuns

Răspuns de succes (201 Created)

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

Răspunsuri de eroare

Cheie API invalidă (401)

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

Format de e-mail invalid (400)

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

Limită de rată depășită (429)

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

Parametri

Parametri obligatorii

ParametruTipDescriere
senderobjectInformații despre expeditor
toarrayLista obiectelor destinatar
subjectstringSubiectul e-mailului

Parametri opționali

ParametruTipDescriere
htmlContentstringConținutul HTML al e-mailului
textContentstringConținutul text al e-mailului
ccarrayDestinatari în copie
bccarrayDestinatari în copie ascunsă
replyToobjectAdresa de răspuns
attachmentsarrayFișiere atașate
paramsobjectParametrii șablonului
tagsarrayEtichete de e-mail pentru urmărire
headersobjectAnteturi personalizate

Variabile de șablon

Folosește variabile de șablon în subiect și în conținut:

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

Atașamente

Include fișiere atașate:

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

Bune practici

  1. Include mereu atât conținut HTML, cât și text pentru o livrabilitate mai bună
  2. Folosește variabile de șablon în loc să concatenezi conținutul
  3. Completează corect datele expeditorului ca să eviți filtrele antispam
  4. Adaugă etichete pentru urmărire și analize
  5. Validează adresele de e-mail înainte de trimitere
  6. Tratează erorile elegant, cu logică de reîncercare

Limite de rată

  • Conturi gratuite: 300 de e-mailuri/zi
  • Conturi plătite: în funcție de planul tău
  • Limită de vârf: 100 de e-mailuri/minut

Urmărire

E-mailurile trimise prin acest endpoint sunt urmărite automat pentru:

  • Starea livrării
  • Rata de deschidere
  • Urmărirea clicurilor
  • Gestionarea respingerilor

Vezi analize detaliate în panoul tău de administrare Brevo, la StatisticsTransactional.

Endpointuri conexe

Solicită acces anticipat

Spune-ne prenumele și o adresă de e-mail sau un număr de telefon. Îți vom trimite detaliile de acces la Tajo.

detectare automată
Asistent AI

Bună! Întreabă-mă orice despre documentație.