Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

Pošiljanje e-pošte

Pošiljajte posamezna transakcijska e-poštna sporočila prek končne točke /v3/smtp/email.

Končna točka

POST /v3/smtp/email

Telo zahteve

Osnovno sporočilo

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

Napredno sporočilo

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

Primeri kode

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

Odgovor

Uspešen odgovor (201 Created)

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

Odgovori z napako

Neveljaven ključ API (401)

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

Neveljavna oblika e-poštnega naslova (400)

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

Presežena omejitev števila zahtev (429)

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

Parametri

Obvezni parametri

ParameterTipOpis
senderobjectPodatki o pošiljatelju
toarrayPolje objektov s prejemniki
subjectstringZadeva e-poštnega sporočila

Neobvezni parametri

ParameterTipOpis
htmlContentstringVsebina sporočila v obliki HTML
textContentstringBesedilna vsebina sporočila
ccarrayPrejemniki kopije
bccarrayPrejemniki skrite kopije
replyToobjectNaslov za odgovor
attachmentsarrayPriponke
paramsobjectParametri predloge
tagsarrayOznake sporočila za sledenje
headersobjectGlave po meri

Spremenljivke predloge

V zadevi in vsebini uporabite spremenljivke predloge:

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

Priponke

Sporočilu priložite datoteke:

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

Dobre prakse

  1. Vedno vključite vsebino v obliki HTML in besedilno vsebino za boljšo dostavljivost
  2. Uporabljajte spremenljivke predloge namesto lepljenja vsebine
  3. Navedite pravilne podatke o pošiljatelju, da se izognete filtrom za neželeno pošto
  4. Dodajte oznake za sledenje in analitiko
  5. Preverite e-poštne naslove pred pošiljanjem
  6. Napake obravnavajte premišljeno, z logiko za ponovne poskuse

Omejitve števila zahtev

  • Omejitev API: na splošni ravni, ki jo dobi vsak paket, ta končna točka dovoljuje 1.000 zahtev na sekundo in 3.600.000 na uro. Napredna raven (Professional in Enterprise) dovoljuje 2.000 na sekundo, razširjena raven (Enterprise) pa 6.000.
  • Obseg pošiljanja: koliko e-poštnih sporočil lahko pošljete, določa vaš paket Brevo, ločeno od omejitve števila zahtev.

Oglejte si Omejitve števila zahtev in stran Brevo z omejitvami.

Sledenje

Sporočilom, poslanim prek te končne točke, se samodejno sledi za:

  • stanje dostave
  • stopnjo odprtja
  • sledenje klikom
  • obravnavo zavrnitev

Podrobno analitiko si oglejte na nadzorni plošči Brevo v razdelku Statistics → Transactional.

Sorodne končne točke

Zaprosite za zgodnji dostop

Vnesite svoje ime in službeni e-poštni naslov. Poslali vam bomo povezavo za potrditev zahteve za dostop do Taja.

AI pomočnik

Živjo! Vprašajte me o dokumentaciji.

Ta stran kot Markdown: send-email.md

Nalaganje Markdowna …
Odpri v Claude Odpri v ChatGPT