INTEGRITY Dokumentace

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.

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í

  1. 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ídat X-[A-Za-z0-9\-_]+ (podtržítka jsou povolena pouze v hlavičkách X).
  2. Hodnoty hlaviček : povoleno UTF-8, maximálně 2,048 bajtů, žádné samostatné CR/LF. Prázdné hodnoty se odmítají.
  3. 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.
  4. 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.
  5. Jediný výskyt : headers typ 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říklad Keywords nebo Comments), 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.