Content Negotiation
In plain terms
Letting client and server agree on the response format.
Going deeper
Content negotiation uses headers so the client requests and the server returns the best-matching format (JSON, XML) or language. It tailors responses to client needs.
Under the hood
Driven by Accept/Content-Type headers; supports multiple representations of the same resource.
Examples
Accept: application/json, language selection, API format options.
Think of it like...
Like a waiter asking your language preference and serving the menu accordingly.