---
title: "Send e-mail | Tajo"
description: "Send transaktionelle e-mails via Brevo API"
url: https://tajo.io/dk/docs/email-messaging/transactional-email/send-email/
markdown: https://tajo.io/dk/docs/email-messaging/transactional-email/send-email.md
lang: da-DK
author: "Set Noa"
author_url: https://tajo.io/dk/set-noa/
robots: noindex
---

Bed om tidlig adgang til Tajo

Indtast dit fornavn og din arbejds-e-mailadresse. Vi sender dig et link til at bekræfte din anmodning om adgang til Tajo.

# Send e-mail

[Set Noa](https://tajo.io/dk/set-noa/)

Send enkeltstående transaktionelle e-mails med endepunktet `/v3/smtp/email`.

## Endepunkt

```http
POST /v3/smtp/email
```

## Forespørgselstekst

### Simpel e-mail

```json
{
  "sender": {
    "name": "Your App",
    "email": "noreply@yourapp.com"
  },
  "to": [
    {
      "email": "user@example.com",
      "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

```json
{
  "sender": {
    "name": "Your App",
    "email": "noreply@yourapp.com"
  },
  "to": [
    {
      "email": "user@example.com",
      "name": "John Doe"
    }
  ],
  "cc": [
    {
      "email": "cc@example.com",
      "name": "CC User"
    }
  ],
  "bcc": [
    {
      "email": "bcc@example.com"
    }
  ],
  "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

```javascript
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: "noreply@yourapp.com" };
  sendSmtpEmail.to = [{ email: "user@example.com", 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

```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": "user@example.com", "name": "John Doe"}],
    sender={"name": "Your App", "email": "noreply@yourapp.com"},
    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

```bash
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": "noreply@yourapp.com"
    },
    "to": [
      {
        "email": "user@example.com",
        "name": "John Doe"
      }
    ],
    "subject": "Welcome to our service!",
    "htmlContent": "<html><body><h1>Welcome!</h1></body></html>"
  }'
```

## Svar

### Svar ved succes (201 Created)

```json
{
  "messageId": "<202301151234.12345@smtp-relay.mailin.fr>"
}
```

### Fejlsvar

**Ugyldig API-nøgle (401)**

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

**Ugyldigt e-mailformat (400)**

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

**Rategrænsen er overskredet (429)**

```json
{
  "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:

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

## Vedhæftede filer

Medtag vedhæftede filer:

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

## Bedste praksis

1. **Medtag altid både HTML- og tekstindhold** for bedre leveringsevne
2. **Brug skabelonvariabler** i stedet for at sammensætte indholdet
3. **Angiv korrekte afsenderoplysninger** for at undgå spamfiltre
4. **Tilføj tags** til sporing og analyser
5. **Valider e-mailadresser** før du sender
6. **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](https://tajo.io/dk/docs/rate-limits/) og Brevos [side om rate limits](https://developers.brevo.com/docs/api-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](https://tajo.io/dk/docs/analytics-reporting/)
