# `HTTP.ResponseHeaderLimits`
[🔗](https://github.com/gsmlg-dev/http_fetch/blob/v0.21.19/apps/http_core/lib/http/response_header_limits.ex#L1)

Request-local HTTP/1 response and proxy CONNECT header budgets.

Pass `response_header_limits: [...]` to `HTTP.fetch/2`. Supported positive
integer limits are `:max_head_bytes` (65,540), `:max_field_bytes` (65,536),
`:max_fields` (32,768), `:max_connect_head_bytes` (16,384),
`:max_informational_responses` (16) and `:max_informational_bytes` (1,048,576).
Head bytes include the status line and terminating CRLFs; field bytes include
the field name, colon and value, excluding CRLF. Body bytes are not charged.
Informational counts and bytes accumulate until the final response.

Failures are `{:response_header_limit, %{stage: :response | :connect,
limit: atom, maximum: integer, observed: integer}}`. No header values appear
in this evidence. Callers omitting the option retain the legacy head-limit
errors; informational responses still have finite default budgets.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
