Załączniki i obrazy inline
Frontmail pozwala dodać pliki do e-maila na cztery sposoby. Załączniki są dostępne w płatnych planach; maksymalny łączny rozmiar na żądanie zależy od planu (zobacz Plany).
| Sposób | Gdzie ustawić | Do czego |
|---|---|---|
| Stałe załączniki | Ustawienia szablonu | Ten sam plik w każdym e-mailu (cennik, regulamin w PDF) |
| Dynamiczne base64 | attachments w żądaniu wysyłki |
Małe generowane pliki (≤ kilkaset kB) |
| Przesyłanie plików | POST /v1/uploads, potem attachments: [{ upload_id }] |
Większe pliki, pliki wybrane przez użytkowników |
| Pliki z formularza | Pola plików w sendForm() / /v1/send-form |
Pliki dołączone do formularza HTML |
Stałe załączniki
Dział zatytułowany „Stałe załączniki”Stałe załączniki to pliki dołączane do każdego e-maila wysłanego danym szablonem (do 10 na szablon). Są przechowywane w S3 i wliczają się do limitu rozmiaru na żądanie. Edytor szablonu pokazuje je w Ustawienia → Ochrona → Stałe załączniki; przesyłanie ich z panelu nie jest jeszcze dostępne – jeśli potrzebujesz takiego załącznika, napisz na support@frontmail.dev.
Dynamiczne załączniki
Dział zatytułowany „Dynamiczne załączniki”Najpierw włącz Zezwól na załączniki z formularza w Ustawienia → Ochrona szablonu;
w przeciwnym razie żądania z załącznikami kończą się błędem
attachments_not_allowed.
Base64 w żądaniu
Dział zatytułowany „Base64 w żądaniu”await send('svc_01J9…', 'tpl_invoice', { name: 'Anna' }, { attachments: [ { filename: 'invoice.pdf', contentType: 'application/pdf', contentBase64: pdfBase64 }, ],});"attachments": [ { "filename": "invoice.pdf", "content_type": "application/pdf", "content_base64": "JVBERi0xLjcK…" }]Base64 powiększa żądanie o jedną trzecią – dla wszystkiego większego niż kilkaset kilobajtów użyj przesyłania plików.
Przesyłanie plików
Dział zatytułowany „Przesyłanie plików”-
Poproś o URL do przesłania (klucz publiczny lub prywatny):
Okno terminala curl https://api.frontmail.dev/v1/uploads \-H 'Content-Type: application/json' \-H 'X-Frontmail-Public-Key: pk_4f2a…' \-d '{ "filename": "cv.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"} -
Wyślij plik metodą
PUTnaurlze zwróconymiheadersprzedexpires_at. -
Odwołaj się do niego w wysyłce:
"attachments": [{ "upload_id": "upl_01J9Z3" }].
Zadeklarowany size jest od razu sprawdzany z limitem twojego planu
(attachment_too_large), a zapisany obiekt jest
sprawdzany ponownie przy wysyłce wiadomości.
Pliki z formularza
Dział zatytułowany „Pliki z formularza”W sendForm() każde <input type="file"> w formularzu staje się załącznikiem:
<input type="file" name="cv" accept="application/pdf">Zablokowane typy i nazwy plików
Dział zatytułowany „Zablokowane typy i nazwy plików”Dynamiczne załączniki pochodzą od każdego, kto może użyć twojego formularza, więc Frontmail
odrzuca typy plików, które uruchamiają kod lub typowo przenoszą phishing, z błędem
attachments_not_allowed: pliki wykonywalne
i instalatory (.exe, .msi, .msix, .appx, .scr, .com, .bat, .cmd, .cpl, .dll,
.jar, .app, .pkg, …), skrypty (.js, .jse, .vbs, .wsf, .ps1, .hta, …), skróty
(.lnk, .url, .library-ms, …), obrazy dysków (.iso, .img, .vhd, .vhdx, .dmg),
strony internetowe i grafikę wektorową (.html, .htm, .xhtml, .mht, .svg), OneNote (.one)
oraz pliki Office z makrami (.docm, .xlsm, .pptm, …). Najpierw czyszczone są nazwy plików:
usuwane są niewidoczne znaki i znaki zapisu od prawej do lewej (którymi można przebrać
invoice<U+202E>fdp.exe za invoiceexe.pdf) oraz kropki i spacje na końcu, więc report.exe.
liczy się jako .exe.
Przy kluczu publicznym POST /v1/uploads wymaga też co najmniej jednego szablonu, który zezwala
na załączniki z formularza, a przesyłane pliki mają wspólny dzienny budżet 200 × limit załączników
twojego planu na organizację.
Obrazy inline
Dział zatytułowany „Obrazy inline”Masz dwie możliwości:
- Obrazy hostowane – użyj bezwzględnego URL
https://w<img src>. Najlepsze do logo i ozdobników: e-maile są małe, a klienty pobierają obrazy na żądanie. - Obrazy CID – stały załącznik z content ID, np.
logo, do którego odwołujesz się przez<img src="cid:logo" alt="Example sp. z o.o.">. Obraz jest osadzony w e-mailu, więc wyświetla się nawet przy zablokowanych obrazach zdalnych, ale powiększa każdy e-mail.
Zawsze ustawiaj alt przy obrazach – kontrole szablonu ostrzegają, gdy go brakuje.