Zum Inhalt springen

Anhänge und eingebettete Bilder

Frontmail kennt vier Wege, Dateien zu einer E-Mail hinzuzufügen. Anhänge sind in bezahlten Tarifen verfügbar; die maximale Gesamtgröße pro Anfrage hängt vom Tarif ab (siehe Tarife).

Methode Einrichtung Geeignet für
Feste Anhänge Einstellungen der Vorlage Dieselbe Datei in jeder E-Mail (Preisliste, AGB als PDF)
Dynamisch als Base64 attachments in der Sendeanfrage Kleine generierte Dateien (≤ einige hundert kB)
Uploads POST /v1/uploads, dann attachments: [{ upload_id }] Größere Dateien, von Nutzern ausgewählte Dateien
Dateien aus Formularen Dateifelder bei sendForm() / /v1/send-form Dateien, die an ein HTML-Formular angehängt werden

Feste Anhänge sind Dateien, die jeder mit der Vorlage gesendeten E-Mail beigefügt werden (bis zu 10 pro Vorlage). Sie liegen in S3 und zählen zum Größenlimit pro Anfrage. Der Vorlageneditor listet sie unter Einstellungen → Schutz → Feste Anhänge auf; hochladen können Sie sie im Dashboard noch nicht – wenn Sie einen festen Anhang brauchen, schreiben Sie an support@frontmail.dev.

Aktivieren Sie zuerst Anhänge aus dem Formular erlauben unter Einstellungen → Schutz der Vorlage; sonst schlagen Anfragen mit Anhängen mit attachments_not_allowed fehl.

await send('svc_01J9…', 'tpl_invoice', { name: 'Anna' }, {
attachments: [
{ filename: 'rechnung.pdf', contentType: 'application/pdf', contentBase64: pdfBase64 },
],
});
"attachments": [
{ "filename": "rechnung.pdf", "content_type": "application/pdf", "content_base64": "JVBERi0xLjcK…" }
]

Base64 vergrößert die Anfrage um ein Drittel – für alles über einige hundert Kilobyte verwenden Sie Uploads.

  1. Fordern Sie eine Upload-URL an (öffentlicher oder privater Schlüssel):

    Terminal-Fenster
    curl https://api.frontmail.dev/v1/uploads \
    -H 'Content-Type: application/json' \
    -H 'X-Frontmail-Public-Key: pk_4f2a…' \
    -d '{ "filename": "lebenslauf.pdf", "content_type": "application/pdf", "size": 482113 }'
    {
    "upload_id": "upl_01J9Z3",
    "url": "https://uploads.frontmail.dev/…",
    "method": "PUT",
    "headers": { "Content-Type": "application/pdf" },
    "expires_at": "2026-09-24T11:00:00Z"
    }
  2. Laden Sie die Datei vor expires_at per PUT mit den zurückgegebenen headers an url hoch.

  3. Verweisen Sie beim Senden darauf: "attachments": [{ "upload_id": "upl_01J9Z3" }].

Die angegebene size wird vorab gegen das Limit Ihres Tarifs geprüft (attachment_too_large), und das gespeicherte Objekt wird beim Senden der Nachricht noch einmal geprüft.

Mit sendForm() wird jedes <input type="file"> im Formular zu einem Anhang:

<input type="file" name="cv" accept="application/pdf">

Dynamische Anhänge kommen von jedem, der Ihr Formular nutzen kann. Deshalb lehnt Frontmail Dateitypen, die Code ausführen oder typische Phishing-Träger sind, mit attachments_not_allowed ab: ausführbare Dateien und Installer (.exe, .msi, .msix, .appx, .scr, .com, .bat, .cmd, .cpl, .dll, .jar, .app, .pkg, …), Skripte (.js, .jse, .vbs, .wsf, .ps1, .hta, …), Verknüpfungen (.lnk, .url, .library-ms, …), Disk-Images (.iso, .img, .vhd, .vhdx, .dmg), Webseiten und Vektorgrafiken (.html, .htm, .xhtml, .mht, .svg), OneNote (.one) und Office-Dateien mit Makros (.docm, .xlsm, .pptm, …). Dateinamen werden vorher bereinigt: Unsichtbare Zeichen und Rechts-nach-links-Zeichen (mit denen sich invoice<U+202E>fdp.exe als invoiceexe.pdf tarnen lässt) sowie Punkte oder Leerzeichen am Ende werden entfernt, sodass report.exe. als .exe gilt.

Mit dem öffentlichen Schlüssel braucht POST /v1/uploads außerdem mindestens eine Vorlage, die Anhänge aus dem Formular erlaubt, und Uploads teilen sich pro Organisation ein Tagesbudget von 200 × dem Anhangslimit Ihres Tarifs.

Sie haben zwei Möglichkeiten:

  • Gehostete Bilder – verwenden Sie eine absolute https://-URL in <img src>. Ideal für Logos und Dekorationen: kleine E-Mails, und die Programme laden die Bilder bei Bedarf.
  • CID-Bilder – ein fester Anhang mit einer Content-ID, z. B. logo, referenziert als <img src="cid:logo" alt="Beispiel GmbH">. Das Bild ist in die E-Mail eingebettet und wird daher auch angezeigt, wenn externe Bilder blockiert sind – macht aber jede E-Mail größer.

Geben Sie bei Bildern immer alt an – die Prüfungen der Vorlage warnen, wenn es fehlt.