Content Negotiation
An HTTP mechanism where the same URL returns different representations based on request headers such as Accept.
- term
- Content Negotiation
- category
- protocols
- short_def
- An HTTP mechanism where the same URL returns different representations based on request headers such as Accept.
- long_def
- Standardized in HTTP/1.1 (RFC 9110, HTTP Semantics), it is the clean way to serve HTML to browsers and markdown to agents from one URL, advertised with a Vary: Accept response header so caches behave.
- see_also
markdown-twin- etymology_origin
- Specified by the IETF as part of HTTP semantics; current normative reference is RFC 9110 'HTTP Semantics' (June 2022), which obsoletes the earlier RFC 7231 / RFC 2616 definitions.
- related_to
markdown-twinrobots-txt- contrast_with
- Unlike URL-based routing, which serves different content from different paths, content negotiation serves different representations from ONE URL based on request headers (Accept, Accept-Language).
- example
- A server sets Vary: Accept and returns text/markdown to an agent and text/html to a browser from the same URL, as defined in RFC 9110 (June 2022).
- source
- https://www.rfc-editor.org/rfc/rfc9110.html#name-content-negotiation
- status
- active
- why_it_matters
- Content negotiation is the standards-compliant mechanism that makes markdown twins possible without breaking caches, SEO or canonical URLs.
- sameAs
https://en.wikipedia.org/wiki/Content_negotiation- bridge_entity
- agent-readiness
- last_verified
- 2026-06-15
- md_twin
- /glossary/content-negotiation.md