Send e-mail
Send enkeltstående transaktionelle e-mails med endepunktet /v3/smtp/email.
Endepunkt
POST /v3/smtp/emailForespørgselstekst
Simpel e-mail
{ "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>"}Avanceret e-mail
{ "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" }}Kodeeksempler
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>" }'Svar
Svar ved succes (201 Created)
{}Fejlsvar
Ugyldig API-nøgle (401)
{ "code": "unauthorized", "message": "Invalid API key provided"}Ugyldigt e-mailformat (400)
{ "code": "invalid_parameter", "message": "Invalid email format in 'to' field"}Rategrænsen er overskredet (429)
{ "code": "too_many_requests", "message": "Rate limit exceeded"}Parametre
Påkrævede parametre
| Parameter | Type | Beskrivelse |
|---|---|---|
sender | object | Oplysninger om afsenderen |
to | array | Array af modtagerobjekter |
subject | string | Emnelinjen i e-mailen |
Valgfrie parametre
| Parameter | Type | Beskrivelse |
|---|---|---|
htmlContent | string | E-mailens HTML-indhold |
textContent | string | E-mailens tekstindhold |
cc | array | Modtagere i kopi |
bcc | array | Modtagere i blind kopi |
replyTo | object | Svaradresse |
attachments | array | Vedhæftede filer |
params | object | Skabelonparametre |
tags | array | E-mailtags til sporing |
headers | object | Brugerdefinerede headers |
Skabelonvariabler
Brug skabelonvariabler i emnelinjen og indholdet:
{ "subject": "Welcome {{firstName}}!", "htmlContent": "<h1>Hello {{firstName}} {{lastName}}</h1>", "params": { "firstName": "John", "lastName": "Doe" }}Vedhæftede filer
Medtag vedhæftede filer:
{ "attachments": [ { "content": "base64_encoded_content", "name": "invoice.pdf" }, { "url": "https://example.com/document.pdf", "name": "document.pdf" } ]}Bedste praksis
- Medtag altid både HTML- og tekstindhold for bedre leveringsevne
- Brug skabelonvariabler i stedet for at sammensætte indholdet
- Angiv korrekte afsenderoplysninger for at undgå spamfiltre
- Tilføj tags til sporing og analyser
- Valider e-mailadresser før du sender
- Håndter fejl elegant med logik til nye forsøg
Rategrænser
- API rate limit: på det generelle niveau, som alle abonnementer får, tillader dette endepunkt 1.000 forespørgsler pr. sekund og 3.600.000 pr. time. Det avancerede niveau (Professional og Enterprise) tillader 2.000 pr. sekund, og det udvidede niveau (Enterprise) 6.000.
- Afsendelsesvolumen: hvor mange e-mails du kan sende, afgøres af dit Brevo-abonnement, adskilt fra rate limit.
Se Hastighedsgrænser og Brevos side om rate limits.
Sporing
E-mails sendt via dette endepunkt spores automatisk for:
- Leveringsstatus
- Åbningsrater
- Kliksporing
- Håndtering af afvisninger
Se detaljerede analyser i dit Brevo-dashboard under Statistics → Transactional.
Relaterede endepunkter
- E-mailskabeloner
- Vedhæftede filer
- E-mailstatistik