← Cloudflare Email Service / email-service / reference
E-mailové hlavičky
Při odesílání e-mailů pomocí služby Cloudflare Email Service můžete nastavit vlastní hlavičky pomocí headers v Workers API nebo REST API. Email Service používá přístup založený na allowlistu : přijímají se pouze explicitně schválená záhlaví. Jakékoli záhlaví, které není na seznamu povolených (a není X- předponou vlastní hlavička) je odmítnuta již na úrovni API s jasnou chybovou zprávou.
Při odesílání přes SMTP, nastavte hlavičky přímo ve zprávě MIME, a ne prostřednictvím headers pole. Platí stejný seznam povolených hodnot.
Hlavičky řízené platformou
Tyto hlavičky automaticky generuje infrastruktura Cloudflare Email Service. Nelze je nastavit ani přepsat. Pokud některou z nich uvedete v headers objekt, API vrací E_HEADER_NOT_ALLOWED.
| Hlavička | Chování |
|---|---|
Date |
Časové razítko UTC nastavené v okamžiku přijetí |
Message-ID |
Generováno s doménou Cloudflare pro jedinečné sledování |
MIME-Version |
Vždy 1.0 |
Content-Type |
Generováno z poskytnutých částí těla zprávy |
Content-Transfer-Encoding |
Generováno na základě analýzy obsahu |
DKIM-Signature |
Podepsáno infrastrukturou Cloudflare |
Return-Path |
Nastaveno na procesor nedoručených zpráv Cloudflare |
Received |
Přidáno podle RFC 5321 na každém přeskoku |
Feedback-ID |
Generováno pro zpětnou vazbu o reputaci z Google Postmaster Tools |
ARC-* |
Autentizační řetězec pro přeposílání |
TLS-Required |
Nastavení doručovací infrastruktury řízené platformou |
TLS-Report-Domain |
Zprávy o selhání TLS se směrují do infrastruktury Cloudflare |
TLS-Report-Submitter |
Odkazuje na odesílající doménu Cloudflare |
CFBL-Address |
Adresa smyčky zpětné vazby o stížnostech (RFC 9477) |
CFBL-Feedback-ID |
ID smyčky zpětné vazby o stížnostech (RFC 9477) |
Hlavičky odpovídající standardním polím API, From, To, Cc, Bcc, Subject, Reply-To : jsou také odmítnuty v headers objekt s E_HEADER_USE_API_FIELD. Nastavte je pomocí vyhrazených polí API (from, to, cc, bcc, subject, replyTo pro Workers / reply_to pro REST).
Schválené vlastní hlavičky
Tyto hlavičky lze nastavit prostřednictvím headers pole. Jakákoli hlavička, která zde není uvedena a nezačíná na X- je odmítnuto s E_HEADER_NOT_ALLOWED.
Pokud požadavek na odeslání obsahuje nepovolenou hlavičku, Email Service celý požadavek odmítne. Hlavičku neodstraní a zprávu neodešle dál.
Hlavičky vláken a odpovědí
| Hlavička | RFC | Poznámky |
|---|---|---|
In-Reply-To |
RFC 5322 ↗ | Klíčové pro seskupování e-mailů do vláken ve všech klientech |
References |
RFC 5322 ↗ | Klíčové pro seskupování e-mailů do vláken ve všech klientech |
Thread-Index |
Microsoft (nestandardní) | Index konverzace používaný aplikacemi Outlook a Exchange Online |
Thread-Topic |
Microsoft (nestandardní) | Předmět konverzace používaný aplikacemi Outlook a Exchange Online |
Hlavičky pro správu seznamů
| Hlavička | RFC | Poznámky |
|---|---|---|
List-Unsubscribe |
RFC 2369 ↗ | Musí obsahovat <https://...> a/nebo <mailto:...> URI. Adresy URI přes HTTP (bez TLS) se odmítají. Gmail a Yahoo to u hromadných odesílatelů vyžadují. Vždy podepsáno DKIM podle RFC 8058. |
List-Unsubscribe-Post |
RFC 8058 ↗ | Musí být přesně List-Unsubscribe=One-Click (rozlišuje velká a malá písmena). Vyžaduje List-Unsubscribe s URI HTTPS. |
List-Id |
RFC 2919 ↗ | Identifikace seznamu |
List-Archive |
RFC 2369 ↗ | URL adresa seznamu archivu |
List-Help |
RFC 2369 ↗ | URL adresa nápovědy |
List-Owner |
RFC 2369 ↗ | Kontakt na vlastníka seznamu |
List-Post |
RFC 2369 ↗ | Adresa pro odesílání |
List-Subscribe |
RFC 2369 ↗ | URL nebo adresa pro přihlášení k odběru |
Precedence |
De facto standard | Přijímané hodnoty: bulk, list, junk |
Identifikace automatizovaných zpráv
| Hlavička | RFC | Poznámky |
|---|---|---|
Auto-Submitted |
RFC 3834 ↗ | Hodnoty: auto-generated, auto-replied, auto-notified |
Obsah a zobrazení
| Hlavička | RFC | Poznámky |
|---|---|---|
Content-Language |
RFC 3282 ↗ | Jazyk obsahu (například en, fr) |
Keywords |
RFC 5322 ↗ | Klíčová slova zprávy (více hodnot oddělte čárkou) |
Comments |
RFC 5322 ↗ | Další komentáře (více hodnot oddělte čárkou) |
Importance |
RFC 2156 ↗ | Hodnoty: high, normal, low |
Priority |
RFC 2156 ↗ | Hodnoty: normal, non-urgent, urgent |
Sensitivity |
RFC 2156 ↗ | Hodnoty: personal, private, company-confidential |
Organization |
RFC 4021 ↗ | Název organizace odesílatele |
Doručování a oznámení
| Hlavička | RFC | Poznámky |
|---|---|---|
Require-Recipient-Valid-Since |
RFC 7293 ↗ | Ochrana proti opětovnému použití adresy |
Expires |
RFC 2156 ↗ | Datum a čas, po kterém zpráva přestává být platná |
Reply-By |
RFC 2156 ↗ | Datum a čas, do kterého je vyžadována odpověď |
Moderní standardy
| Hlavička | RFC | Poznámky |
|---|---|---|
Archived-At |
RFC 5064 ↗ | URL adresa, na které je zpráva archivována |
Vlastní X-headers
Jakákoli hlavička začínající na X- je povoleno. To zahrnuje běžné hlavičky jako X-Mailer, X-Priority, X-Campaign-ID, a jakékoli vlastní sledovací hlavičky, které vaše aplikace potřebuje.
- Formát názvu:
X-[A-Za-z0-9\-_]+, maximálně 100 znaků - Hodnota: UTF-8, maximálně 2,048 bajtů
- Bez limitu počtu na X-hlavičkách (v rámci celkového limitu payloadu 16 KB)
Příklady použití
curl "https://api.cloudflare.com/client/v4/accounts/{account_id}/email/sending/send" \
--header "Authorization: Bearer <API_TOKEN>" \
--header "Content-Type: application/json" \
--data '{
"to": "[email protected]",
"from": "[email protected]",
"subject": "Your weekly digest",
"html": "<h1>Weekly Digest</h1>",
"headers": {
"In-Reply-To": "<[email protected]>",
"References": "<[email protected]>",
"List-Unsubscribe": "<https://yourdomain.com/unsubscribe?id=abc123>",
"List-Unsubscribe-Post": "List-Unsubscribe=One-Click",
"X-Campaign-ID": "weekly-digest-2026-03",
"X-User-Segment": "premium"
}
}'const response = await env.EMAIL.send({
to: "[email protected]",
from: "[email protected]",
subject: "Your weekly digest",
html: "<h1>Weekly Digest</h1>",
headers: {
// Threading
"In-Reply-To": "<[email protected]>",
References: "<[email protected]>",
// List management (required by Gmail/Yahoo for bulk senders)
"List-Unsubscribe": "<https://yourdomain.com/unsubscribe?id=abc123>",
"List-Unsubscribe-Post": "List-Unsubscribe=One-Click",
// Custom tracking
"X-Campaign-ID": "weekly-digest-2026-03",
"X-User-Segment": "premium",
},
});Limity hlaviček
| Limit | Hodnota |
|---|---|
| Maximální počet vlastních hlaviček na seznamu povolených (jiných než X) | 20 |
| Maximální délka názvu hlavičky | 100 bajtů |
| Maximální délka hodnoty hlavičky | 2,048 bajtů |
| Celková velikost dat vlastních hlaviček | 16 KB |
Celkový payload se počítá jako sum(len(name) + 2 + len(value) + 2) pro všechny vlastní hlavičky (název + : + hodnota + CRLF). Hlavičky ze seznamu povolených a hlavičky X se do tohoto limitu započítávají společně.
Pravidla ověřování
- Názvy hlaviček : pouze ASCII, žádné mezery, žádné dvojtečky, 1-100 znaků. Povolené záhlaví musí odpovídat
[A-Za-z0-9\-]+. X-hlavičky musí odpovídatX-[A-Za-z0-9\-_]+(podtržítka jsou povolena pouze v hlavičkách X). - Hodnoty hlaviček : povoleno UTF-8, maximálně 2,048 bajtů, žádné samostatné CR/LF. Prázdné hodnoty se odmítají.
- Porovnávání bez rozlišování velkých a malých písmen : Názvy záhlaví se porovnávají bez rozlišení velkých a malých písmen podle RFC 5322 §2.2 ↗. Ve vygenerované zprávě se použije zápis velkých a malých písmen tak, jak je uvedený v allowlistu.
- Správné zalamování řádků : Dlouhá záhlaví se zalamují na 78 znaků podle RFC 5322 pomocí CRLF+WSP, nikoli pomocí kódování MIME.
- Jediný výskyt :
headerstyp je{ [key]: string }, takže se každý název hlavičky může objevit nejvýše jednou. U hlaviček, které podporují více hodnot (napříkladKeywordsneboComments), použijte hodnoty oddělené čárkami v jednom řetězci.
Kódy chyb
| Kód chyby | Kdy | Příklad zprávy |
|---|---|---|
E_HEADER_NOT_ALLOWED |
Hlavičku řídí platforma, nebo není na allowlistu | Header 'Date' is not allowed. It is auto-generated by the platform. |
E_HEADER_USE_API_FIELD |
Hlavička odpovídá standardnímu poli API | Header 'From' must be set via the 'from' API field, not the 'headers' object. |
E_HEADER_VALUE_INVALID |
Hodnota hlavičky má neplatný formát nebo je prázdná | Header 'List-Unsubscribe' must contain angle-bracket HTTPS or mailto URI(s). |
E_HEADER_VALUE_TOO_LONG |
Hodnota hlavičky přesahuje limit 2 048 bajtů | Header 'X-Campaign-ID' value exceeds 2048 byte limit. |
E_HEADER_NAME_INVALID |
Název hlavičky obsahuje neplatné znaky nebo přesahuje 100 bajtů | Header name 'Bad Header!' contains invalid characters. |
E_HEADERS_TOO_LARGE |
Celková velikost dat vlastních hlaviček přesahuje 16 KB | Total custom headers payload (17.2KB) exceeds 16KB limit. |
E_HEADERS_TOO_MANY |
Příliš mnoho vlastních hlaviček na seznamu povolených (jiných než X) | 21 allowlisted headers provided, maximum is 20. |