alle Anleitungen

// so behebst du es

Mailgun „Sandbox subdomains are for test purposes only“ (403): so behebst du es

Mailgun verweigert den Versand von deiner Sandbox-Domain an eine Adresse, die kein autorisierter Empfänger ist. Autorisiere Testadressen oder nutze deine Domain.

Was das bedeutet

Jedes neue Mailgun-Konto bekommt eine Sandbox-Domain mit einem Namen wie sandbox1234abcd.mailgun.org, damit du die API oder SMTP sofort testen kannst. Sie stellt nur an autorisierte Empfänger zu: Adressen, die du hinzugefügt hast und die bestätigt haben. Sendest du an jemand anderen, lehnt Mailgun die Nachricht ab, meist mit dem HTTP-Status 403 und diesem oft gemeldeten Text:

Sandbox subdomains are for test purposes only. Please add your own domain or add the address to authorized recipients in Account Settings.

Mit deinem Code oder deinen Zugangsdaten ist alles in Ordnung: Die Anfrage wurde authentifiziert, aber der Empfänger ist für eine Sandbox-Domain nicht erlaubt.

Warum das passiert

  • Deine App nutzt in der Produktion noch die Sandbox-Domain, weil sie der Standardwert in einem Tutorial, einem Plugin oder einer Umgebungsvariable (MAILGUN_DOMAIN) war.
  • Der Empfänger wurde hinzugefügt, hat aber nicht bestätigt. Mailgun schickt eine Einladung; die Adresse wird erst autorisiert, wenn der Empfänger auf den Link klickt.
  • Das Empfängerlimit ist erreicht. Laut Mailgun-Hilfecenter kannst du bis zu 5 autorisierte Empfänger hinzufügen (zum Zeitpunkt des Schreibens).
  • Dein Tarif schränkt den Versand ein. Laut Mailgun-Hilfecenter können kostenlose Konten ohne hinterlegte Kreditkarte sowie Sandbox-Domains nur an autorisierte Empfänger senden.
  • Mehrere Empfänger in einer Anfrage: Eine einzige nicht autorisierte Adresse in To, Cc oder Bcc reicht aus, um den Fehler auszulösen.
  • Routes und Mailinglisten auf der Sandbox-Domain haben dieselbe Einschränkung: Eine Route, die an eine externe Adresse weiterleitet, oder eine Liste mit nicht autorisierten Mitgliedern schlägt genauso fehl.

Die Sandbox gibt es, damit neue Konten nicht zum Versand von Spam an Fremde genutzt werden können, bevor der Inhaber die Kontrolle über eine echte Domain nachweist. Deshalb gibt es keine Einstellung, die die Einschränkung auf der Sandbox selbst aufhebt: Die Lösung ist immer, die Testadresse zu autorisieren oder auf deine eigene Domain umzusteigen.

So prüfst du es

  1. Sieh dir die Domain in deiner API-URL oder in deinem SMTP-Login an. Eine URL wie https://api.mailgun.net/v3/sandbox1234abcd.mailgun.org/messages oder ein SMTP-Benutzer postmaster@sandbox1234abcd.mailgun.org bedeutet, dass du auf der Sandbox bist.
  2. Öffne im Mailgun-Panel Send, Domains, die Sandbox-Domain und ihren Einrichtungs-Tab: Dort sind die autorisierten Empfänger und ihr Status aufgeführt.
  3. Öffne die Logs der fehlgeschlagenen Nachricht: Dort steht der vollständige Grund.

So behebst du es

Zum Testen: autorisiere den Empfänger

Füge die Testadresse in den Einstellungen der Sandbox-Domain als autorisierten Empfänger hinzu (das können nur Benutzer mit der Rolle Administrator oder Developer). Bitte den Inhaber der Adresse, die Einladung zu öffnen und zu bestätigen. Versuch es dann erneut. Das ist nur für dich und dein Team gedacht, nicht für Kunden.

Für den echten Versand: füge deine eigene Domain hinzu

Füge eine Domain, die dir gehört, unter Send, Domains, Add new domain hinzu. Eine Subdomain wie mg.yourdomain.com ist eine gängige Wahl. Veröffentliche die SPF- und DKIM-Einträge und verifiziere die Domain; die Details und die üblichen DNS-Fehler findest du in Mailgun-Domain nicht verifiziert. Ändere dann die Konfiguration deiner App:

# .env (example)
MAILGUN_DOMAIN=mg.yourdomain.com
MAIL_FROM_ADDRESS=hello@mg.yourdomain.com
# EU domain? use the EU endpoint
MAILGUN_ENDPOINT=api.eu.mailgun.net

Nutze eine From-Adresse auf deiner verifizierten Domain, nie auf der Sandbox. Beschränkt dich das Konto wegen deines Tarifs auf autorisierte Empfänger, hinterlege Zahlungsdaten oder wechsle den Tarif, wie es das Mailgun-Panel angibt.

Bekommst du nach dem Domainwechsel 401 oder „Forbidden“, passen API-Schlüssel oder Region nicht zur neuen Domain: siehe Mailgun 401 Forbidden: API-Schlüssel und EU-Region. SMTP-Zugangsdaten gehören zu einer Domain, erstelle also auch neue für deine eigene Domain.

Prüfe, ob es behoben ist

Sende aus deiner App über deine eigene Mailgun-Domain eine Nachricht an die einmalige Adresse auf der Startseite von Delivmail. Die Testadresse ist kein autorisierter Empfänger: Kommt die Nachricht an, bist du nicht mehr auf der Sandbox. Lies den Bericht: SPF, DKIM und DMARC sollten für deine Domain bestehen. Sende dann erneut an die echten Empfänger, die abgelehnt wurden. Ob die Nachricht im Posteingang landet, hängt weiterhin von deiner Reputation und deinem Inhalt ab.

Prüfe, ob es behoben ist

DNS-Änderungen können ein paar Minuten bis einige Stunden dauern. Sende danach eine neue Test-E-Mail oder scanne deine Domain erneut.

Ähnliche Anleitungen