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/emailTelo zahteve
Osnovno sporočilo
{ "sender": { "name": "Your App", }, "to": [ { "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", }, "to": [ { "name": "John Doe" } ], "cc": [ { "name": "CC User" } ], "bcc": [ { } ], "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>";
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_sdkfrom 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( 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
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)
{}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
| Parameter | Tip | Opis |
|---|---|---|
sender | object | Podatki o pošiljatelju |
to | array | Polje objektov s prejemniki |
subject | string | Zadeva e-poštnega sporočila |
Neobvezni parametri
| Parameter | Tip | Opis |
|---|---|---|
htmlContent | string | Vsebina sporočila v obliki HTML |
textContent | string | Besedilna vsebina sporočila |
cc | array | Prejemniki kopije |
bcc | array | Prejemniki skrite kopije |
replyTo | object | Naslov za odgovor |
attachments | array | Priponke |
params | object | Parametri predloge |
tags | array | Oznake sporočila za sledenje |
headers | object | Glave 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
- Vedno vključite vsebino v obliki HTML in besedilno vsebino za boljšo dostavljivost
- Uporabljajte spremenljivke predloge namesto lepljenja vsebine
- Navedite pravilne podatke o pošiljatelju, da se izognete filtrom za neželeno pošto
- Dodajte oznake za sledenje in analitiko
- Preverite e-poštne naslove pred pošiljanjem
- 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
- Predloge e-pošte
- Priponke
- Statistika e-pošte