Back to Reference

HTTP Headers Reference

A complete reference for HTTP request and response headers — what they do, how to use them, and when they matter.

Accept-Encoding
content request

Lists the compression algorithms the client supports — so the server knows which encoding to use on the response body.

Accept-Language
content request

Lists the client's preferred natural languages for the response — the client's half of HTTP language negotiation.

Accept-Ranges
transfer response

Tells the client whether the server supports range requests for this resource.

Accept
content request

Tells the server which content types the client can handle — the client's half of HTTP content negotiation.

Age
caching response

How many seconds a cached response has been sitting in a shared cache — tells you how fresh the response still is.

Allow
general response

Lists the HTTP methods the server supports for the requested resource — always sent with 405 Method Not Allowed.

Alt-Svc
proxy response

Advertises alternative services for the origin — the mechanism servers use to announce HTTP/3 (QUIC) support and tell clients to upgrade.

Alt-Used
proxy request

Identifies which alternative service the client is currently using — sent by clients after connecting via an Alt-Svc advertisement.

Authentication-Info
auth response

Sent by the server after successful authentication to provide mutual auth confirmation and updated credentials — primarily used with Digest auth.

Authorization
auth request

Carries the client's credentials to authenticate with the server — the most fundamental header in HTTP authentication.

Cache-Control
caching both

The primary mechanism for controlling how and for how long responses are cached by browsers, CDNs, and proxies.

Cache-Status
proxy response

Tells the client exactly what each cache in the chain did with the request — hit, miss, stale, expired, or bypassed.

CDN-Cache-Control
proxy response

Like Cache-Control but targets only CDN caches — lets you set different TTLs for CDNs vs browsers from a single response.

CDN-Loop
proxy request

Detects infinite request loops between CDN nodes — each CDN appends its identifier so loops are caught before they spiral.

Conditional Request Headers
conditional request

Headers that make HTTP requests conditional — only proceed if the resource has (or hasn't) changed since you last saw it.

Connection
general both

Controls whether the TCP connection stays open after the current request — and lists hop-by-hop headers to strip before forwarding.

Content-Disposition
content response

Controls whether the browser displays the response inline or downloads it as a file, and sets the suggested filename.

Content-Encoding
content both

Describes the compression or transformation applied to the message body, so the recipient knows how to decode it.

Content-Language
content both

Describes the natural language(s) of the intended audience for the message body.

Content-Length
content both

The size of the message body in bytes. Lets the recipient know exactly how much data to read.

Content-Location
content response

Indicates the specific URL for the content being returned — useful when the request URL and the canonical content URL differ.

Content-Range
content response

Indicates where a partial response body fits within the full content — sent alongside 206 Partial Content responses.

Content-Security-Policy-Report-Only
security response

Tests a Content Security Policy without enforcing it — violations are reported but resources are still loaded.

Content-Security-Policy
security response

Tells the browser exactly which sources are allowed to load scripts, styles, images, and other resources — the primary defence against XSS attacks.

Content-Type
content both

Tells the recipient what media type the message body is, and how it's encoded — so it knows how to parse it.

Cookie
auth request

Sends stored cookies back to the server — the client's half of the cookie mechanism, paired with Set-Cookie.

CORS Headers
cors both

The 9 headers that make Cross-Origin Resource Sharing work — controlling which origins, methods, and headers are allowed across origins.

Cross-Origin-Embedder-Policy
security response

Requires all cross-origin resources loaded by this page to explicitly opt in — needed alongside COOP to enable SharedArrayBuffer.

Cross-Origin-Opener-Policy
security response

Isolates your browsing context from cross-origin popups and windows — required to enable SharedArrayBuffer and high-resolution timers.

Cross-Origin-Resource-Policy
security response

Restricts which origins can load this resource — a defence against cross-origin information leaks and Spectre-style attacks.

Date
general both

The date and time the message was generated — used for caching calculations and request timing.

ETag
caching response

A unique identifier for a specific version of a resource — used for cache validation and optimistic concurrency control.

Expect
general request

Lets a client ask the server to check conditions before the client sends a large request body — avoiding wasted bandwidth on rejected requests.

Expires
caching response

An HTTP/1.0 header that sets an absolute expiry date for a cached response. Superseded by Cache-Control but still widely sent.

Forwarded
proxy request

The standardised header for passing client IP and protocol info through proxies — the RFC 7239 replacement for X-Forwarded-For.

From
general request

Contains the email address of the human user controlling the requesting agent — intended for automated bots to identify themselves.

Host
general request

Specifies which host and port the client wants to reach — the only mandatory HTTP/1.1 request header.

Last-Modified
caching response

The date and time the server last changed the resource — used for cache validation and conditional requests.

Link
proxy response

The HTTP equivalent of the HTML <link> element — declares relationships between resources, powers preload/prefetch hints, and enables API pagination.

Location
general response

Points the client to a different URL — used for redirects and to identify newly created resources.

Max-Forwards
general request

Limits how many times a request can be forwarded through proxies — used exclusively with TRACE and OPTIONS.

NEL
observability response

Network Error Logging — instructs browsers to report network-level failures like DNS errors, TCP failures, and TLS issues to a reporting endpoint.

Priority
proxy both

Signals the relative priority of a request to servers and intermediaries — part of the Extensible Prioritization Scheme for HTTP.

Proxy-Authenticate
auth response

Tells the client what authentication is needed to access a resource through a proxy — the proxy equivalent of WWW-Authenticate.

Proxy-Authentication-Info
auth response

Sent by a proxy after successful authentication to provide mutual auth confirmation — the proxy equivalent of Authentication-Info.

Proxy-Authorization
auth request

Carries credentials to authenticate with an intermediate proxy — the client's response to a 407 Proxy Authentication Required challenge.

Proxy-Status
proxy response

Provides structured information about what an intermediary proxy did with a request — errors, forwarding decisions, and why things failed.

Range
transfer request

Requests a specific portion of a resource by byte range — enabling resumable downloads and video seeking.

Referer
general request

The URL of the page that linked to the current request — used for analytics, logging, and access control.

Referrer-Policy
security response

Controls how much URL information is sent in the Referer header when users navigate away from your site.

Retry-After
general response

Tells the client how long to wait before making another request — used with 429, 503, and 3xx responses.

Sec-Fetch Metadata Headers
fetch-metadata request

Four browser-set headers that tell servers exactly where a request is coming from and why — enabling server-side isolation policies.

Server-Timing
observability response

Communicates server-side timing metrics for a request — how long the database took, cache lookup, rendering, and more.

Server
general response

Identifies the software the origin server used to handle the request — and a common target for security hardening.

Set-Cookie
auth response

Creates or updates a cookie in the browser — the server's mechanism for persisting state across HTTP requests.

Strict-Transport-Security
security response

Tells browsers to only ever connect to this site over HTTPS — and to remember that for a specified duration.

Traceparent
observability both

Carries distributed tracing context across service boundaries — the W3C standard for propagating trace IDs in microservices.

Tracestate
observability both

Carries vendor-specific distributed tracing metadata alongside Traceparent — allows multiple tracing systems to coexist on the same request.

Trailer
transfer both

Declares which header fields will appear in the trailer section at the end of a chunked message.

Transfer-Encoding
transfer both

Specifies how the message body is encoded for transfer — the most important value being chunked, which allows streaming responses without a known Content-Length.

Upgrade
general both

Asks the server to switch to a different protocol on the same connection — the mechanism behind WebSocket connections.

User-Agent
general request

Identifies the client software making the request — browser, bot, or API client.

Vary
caching response

Tells caches which request headers affect the response — so they store separate cached versions per unique combination.

Via
general both

Tracks the intermediate proxies and gateways a message passed through — a breadcrumb trail of the request's journey.

WebSocket Handshake Headers
websocket both

The 5 headers that negotiate a WebSocket connection — turning an HTTP/1.1 connection into a persistent full-duplex WebSocket channel.

WWW-Authenticate
auth response

Tells the client what authentication scheme is required to access the resource — sent on 401 responses.

X-Content-Type-Options
security response

Stops browsers from guessing the content type and forces them to use what the server declared — preventing MIME sniffing attacks.

X-Frame-Options
security response

Controls whether the browser can render this page inside an iframe — preventing clickjacking attacks.

No headers match your search.