Test des E-Mail-Anbieters
POST /v1/email-provider:test · Berechtigung email-provider:write · alle Tarife
Prüft die gespeicherte Verbindung, ohne eine Nachricht zu senden:
customer_smtp: Verbindet sich mit Ihrem Server, richtet TLS ein, authentifiziert sich und beendet die Verbindung.customer_api: Ruft mit dem gespeicherten Schlüssel einen schreibgeschützten Endpunkt Ihres Anbieters auf.
Die Antwort ist 200 OK, auch wenn die Prüfung fehlschlägt: result ist ok oder ein fester Fehlercode. Der Antworttext des Servers wird nie zurückgegeben. Das Ergebnis wird in last_test_at und last_test_result von get gespeichert; der ETag ändert sich nicht. Jeder Test schreibt einen Auditeintrag (email_provider.tested).
Eine Umgebung kann 10 Tests pro Stunde ausführen. Der Body ist optional; wenn Sie einen senden, muss es ein leeres JSON-Objekt sein.
Antwort
| Feld | Typ | Beschreibung |
|---|---|---|
result |
string | ok oder ein Fehlercode (unten). |
tested_at |
string | Zeitpunkt des Tests. |
version |
integer | Die geprüfte Konfigurationsversion. |
{
"result": "smtp_auth_failed",
"tested_at": "2026-10-19T09:30:00Z",
"version": 4
}
Häufige Ergebnisse:
| Ergebnis | Bedeutung |
|---|---|
ok |
Verbunden und authentifiziert. |
smtp_auth_failed |
Der SMTP-Server hat Benutzername oder Passwort abgelehnt. |
smtp_auth_unsupported |
Der Server bietet keinen unterstützten AUTH-Mechanismus an. |
smtp_tls_required |
Der Server auf Port 587 bietet kein STARTTLS an. |
smtp_tls_invalid |
Das Serverzertifikat ist für den Hostnamen nicht gültig. |
smtp_temporary, smtp_rejected |
Der Server hat mit einem temporären oder dauerhaften Fehler geantwortet. |
esp_auth_failed |
Der Anbieter hat den Schlüssel abgelehnt. |
esp_access_denied |
Der Anbieter hat den Schlüssel abgelehnt oder der Schlüssel hat kein Leserecht für den geprüften Endpunkt (zum Beispiel ses:GetAccount oder ein Mailgun-Domain-Sending-Key). Das Senden kann trotzdem funktionieren. |
esp_rate_limited, esp_temporary, esp_rejected |
Der Anbieter hat das Limit erreicht, ist vorübergehend nicht verfügbar oder hat die Anfrage abgelehnt. |
egress_dns_failed, egress_dns_private, egress_ssrf_blocked, egress_connect_failed, egress_timeout, egress_tls_invalid |
Der Host lässt sich nicht auflösen, verweist auf eine private Adresse, ist gesperrt, war nicht rechtzeitig erreichbar oder hat (bei API-Anbietern) ein ungültiges Zertifikat vorgelegt. |
delivery_credentials_invalid |
Die gespeicherte Anmeldeinformation kann nicht verwendet werden; speichern Sie sie erneut. |
delivery_mode_unavailable |
Der ausgehende Versand ist in dieser Bereitstellung nicht aktiviert. |
Fehler
| HTTP | Code | Wann |
|---|---|---|
| 400 | unknown_field |
Der Body ist kein leeres JSON-Objekt. |
| 409 | conflict |
Der Modus hat keine Verbindung zum Testen (platform_default, customer_webhook, platform_managed_domain; einen Webhook-Endpunkt testen Sie mit Test eines Webhook-Endpunkts, eine Absenderdomain prüfen Sie mit verify), oder die Konfiguration wurde während des Tests geändert. |
| 429 | rate_limited |
Das stündliche Testlimit oder das API-Ratenlimit wurde erreicht; wiederholen Sie die Anfrage nach dem Zeitraum aus Retry-After. |
| 401 | unauthenticated |
Die Anmeldeinformation fehlt, ist ungültig oder wurde widerrufen. |
| 403 | insufficient_permissions |
Die Anmeldeinformation besitzt nicht die erforderliche Berechtigung. |
| 503 | service_unavailable |
Eine Abhängigkeit ist vorübergehend nicht verfügbar; wiederholen Sie die Anfrage nach dem Zeitraum aus Retry-After. |
Beispiel
curl -X POST https://api.eu.keenauth.com/v1/email-provider:test \
-H "Authorization: Bearer $KEENAUTH_SECRET_KEY"
CLI: keenauth email-provider test