# Erste E-Mail per SMTP senden

> Holen Sie sich Ihre SMTP-Zugangsdaten, wählen Sie einen Port und senden Sie eine Test-E-Mail über smtp.emailit.com mit swaks, OpenSSL oder Python. Verbinden Sie dann Ihre App oder Ihr Framework.

Dieser Schnellstart zeigt, wie Sie eine Test-E-Mail aus Ihrem Terminal über das SMTP-Relay von Emailit senden und dann Ihre eigene App verbinden. Verwenden Sie SMTP, wenn Ihre Software bereits SMTP-Einstellungen hat. Für neuen Code bietet die [API](/de/docs/quickstart/api/) mehr.

## Voraussetzungen

- Eine verifizierte Versanddomain. Wenn Sie noch keine haben, folgen Sie dem ersten Abschnitt des [API-Schnellstarts](/de/docs/quickstart/api/#add-and-verify-your-domain) oder der Anleitung [Versanddomain hinzufügen](/de/docs/domains/add-a-domain/).
- Ein API-Schlüssel. Erstellen Sie einen unter **Email API → API Keys** mit **Add API key**. Ihr API-Schlüssel ist Ihr SMTP-Passwort.

## Ihre SMTP-Zugangsdaten

| Einstellung | Wert |
| --- | --- |
| Host | `smtp.emailit.com` |
| Port | `587` mit STARTTLS (empfohlen). Alternativen finden Sie in der Tabelle unten. |
| Benutzername | `emailit` |
| Passwort | Ihr API-Schlüssel, beginnend mit `secret_` |
| Authentifizierung | `PLAIN` oder `LOGIN` |
| Absenderadresse | Jede Adresse auf einer verifizierten Versanddomain, z. B. `Acme <hello@acme.com>` |

Diese Einstellungen sehen Sie auch auf der Karte **SMTP Info**, wenn Sie einen Schlüssel unter **Email API → API Keys** öffnen.

| Port | Verschlüsselung | Wann verwenden |
| --- | --- | --- |
| `587` | STARTTLS | Der Standard für die meisten Apps und Bibliotheken |
| `465` | TLS ab dem ersten Byte (implizites TLS) | Wenn Ihr Client es „SSL“ oder „SMTPS“ nennt |
| `2525` | STARTTLS | Wenn Ihr Netzwerk oder Hosting-Anbieter 587 blockiert |
| `2587` | STARTTLS | Eine weitere Alternative, wenn 587 und 2525 blockiert sind |
| `25` | STARTTLS | Relaying von Server zu Server. Viele Cloud-Anbieter blockieren ausgehenden Verkehr auf Port 25. |

Das Relay bietet TLS auf jedem Port an, erzwingt es aber nicht. Aktivieren Sie TLS in Ihrem Client immer, damit Ihr API-Schlüssel nicht im Klartext gesendet wird.

## Test-E-Mail senden

Wählen Sie eines dieser Tools. Ersetzen Sie `hello@acme.com` durch eine Adresse auf Ihrer verifizierten Domain und `ada@example.com` durch die E-Mail-Adresse, mit der Sie sich registriert haben.

> **Sandbox-Modus:** Solange Ihr Workspace keinen Produktionszugang hat, können Sie nur an die Konto-E-Mail-Adressen von Workspace-Mitgliedern senden. Andere Empfänger werden mit `550 Unverified workspaces can only send to workspace members' account emails` abgelehnt. Siehe [Produktionszugang](/de/docs/workspaces/production-access/).

### swaks

[swaks](https://github.com/jetmore/swaks) ist ein Kommandozeilen-Tool zum Testen von SMTP. Installieren Sie es mit `brew install swaks` oder `apt install swaks` und führen Sie dann Folgendes aus:

```bash
swaks --server smtp.emailit.com:587 --tls \
  --auth-user emailit --auth-password "$EMAILIT_API_KEY" \
  --from hello@acme.com --to ada@example.com \
  --header "Subject: Hello from Emailit SMTP" \
  --body "This is my first email sent through the Emailit SMTP relay."
```

swaks gibt die gesamte SMTP-Unterhaltung aus. Die letzte Antwort des Servers enthält die E-Mail-ID:

```text
<~  250 2.0.0 OK: queued as em_2pX7cN4kQ9vLm3RtB8yWd1Zs
```

### OpenSSL

OpenSSL ist auf den meisten Systemen vorinstalliert und lässt Sie die SMTP-Befehle selbst eingeben. Kodieren Sie zuerst Ihre Zugangsdaten für `AUTH PLAIN`:

```bash
printf '\0emailit\0%s' "$EMAILIT_API_KEY" | base64
```

Öffnen Sie dann eine Verbindung und geben Sie die folgenden Befehle ein; fügen Sie dabei die kodierte Zeichenfolge nach `AUTH PLAIN` ein:

```bash
openssl s_client -connect smtp.emailit.com:587 -starttls smtp -crlf -quiet
```

```text
EHLO localhost
AUTH PLAIN AGVtYWlsaXQAc2VjcmV0X...
MAIL FROM:<hello@acme.com>
RCPT TO:<ada@example.com>
DATA
From: Acme <hello@acme.com>
To: ada@example.com
Subject: Hello from Emailit SMTP

This is my first email sent through the Emailit SMTP relay.
.
QUIT
```

Nach `AUTH PLAIN` antwortet der Server mit `235`. Nach der Zeile mit einem einzelnen `.` antwortet er mit `250 2.0.0 OK: queued as em_…`.

### Python

Das integrierte `smtplib` von Python braucht keine zusätzlichen Pakete:

```python title="send_smtp.py"
from email.message import EmailMessage

msg = EmailMessage()
msg["From"] = "Acme <hello@acme.com>"
msg["To"] = "ada@example.com"
msg["Subject"] = "Hello from Emailit SMTP"
msg.set_content("This is my first email sent through the Emailit SMTP relay.")
msg.add_alternative("<p>This is my first email sent through the Emailit SMTP relay.</p>", subtype="html")

with smtplib.SMTP("smtp.emailit.com", 587) as smtp:
    smtp.starttls()
    smtp.login("emailit", os.environ["EMAILIT_API_KEY"])
    smtp.send_message(msg)

print("Accepted by Emailit")
```

Wenn das Skript ohne Exception durchläuft, hat Emailit die E-Mail angenommen.

## In der Weboberfläche prüfen

Öffnen Sie **Email API → Emails**. Ihre E-Mail steht oben im Tab **Outgoing**, und ihr Status wechselt von **accepted** zu **delivered**, sobald der Server des Empfängers sie annimmt. Jede SMTP-Sitzung erscheint außerdem unter **Email API → Logs** mit der Quelle **SMTP**, sodass Sie auch fehlgeschlagene Anmeldungen und abgelehnte Nachrichten sehen.

## Häufige Antworten

| Antwort | Ursache | Lösung |
| --- | --- | --- |
| `535 Authentication failed` | Falscher oder gelöschter API-Schlüssel | Verwenden Sie einen aktuellen API-Schlüssel als Passwort. Siehe [535-Fehler](/de/docs/kb/smtp-535-authentication-failed/). |
| `530 From/Sender domain is not verified for this workspace` | Die Absenderadresse liegt nicht auf einer verifizierten Domain | Verifizieren Sie die Domain oder ändern Sie die Absenderadresse. Siehe [530-Fehler](/de/docs/kb/smtp-530-from-domain-not-verified/). |
| `550 Unverified workspaces can only send to workspace members' account emails` | Sandbox-Modus | Senden Sie an die Konto-E-Mail-Adresse eines Mitglieds oder beantragen Sie Produktionszugang |
| `452 4.4.5 Messages per second limit exceeded` | Ihr Limit pro Sekunde ist überschritten | Senden Sie langsamer und versuchen Sie es erneut. Die Limits gelten gemeinsam mit der API. |
| `452 4.5.3 Daily message limit exceeded` | Sie haben das heutige Limit erreicht | Warten Sie bis Mitternacht UTC oder [beantragen Sie eine Erhöhung](/de/docs/limits/) |
| Verbindungs-Timeout | Ihr Netzwerk blockiert den Port | Versuchen Sie `2525` oder `2587`. Siehe [Verbindungs-Timeouts](/de/docs/kb/smtp-connection-timeout-port-25/). |

Alle Antwortcodes finden Sie unter [SMTP-Fehlerbehebung](/de/docs/smtp/troubleshooting/).

## App verbinden

Tragen Sie dieselben Einstellungen in Ihre App oder Ihr Framework ein. Diese Anleitungen zeigen die genaue Konfiguration:

  - [Laravel](/de/docs/frameworks/laravel/)
  - [PHP](/de/docs/frameworks/php/)
  - [WordPress](/de/docs/frameworks/wordpress/)
  - [Node.js](/de/docs/frameworks/nodejs/)
  - [Next.js](/de/docs/frameworks/nextjs/)
  - [Nuxt](/de/docs/frameworks/nuxt/)
  - [Python](/de/docs/frameworks/python/)
  - [Rails](/de/docs/frameworks/rails/)
  - [Go](/de/docs/frameworks/go/)
  - [Java](/de/docs/frameworks/java/)
  - [.NET](/de/docs/frameworks/dotnet/)

## Nächste Schritte

  - [SMTP-Einstellungen](/de/docs/smtp/settings/): Ports, TLS, Nachrichtengröße und wie Emailit Ihre Header behandelt.
  - [SMTP-Header](/de/docs/smtp/headers/): Welche Header Emailit hinzufügt, ändert oder entfernt.
  - [Webhooks einrichten](/de/docs/webhooks/set-up/): Events zu Zustellungen und Bounces auch für SMTP-E-Mails erhalten.
  - [API oder SMTP](/de/docs/get-started/api-or-smtp/): Was die API kann, was SMTP nicht kann.

---
Quelle: https://emailit.com/de/docs/quickstart/smtp/
