| Status code | 414 |
|---|---|
| Status text | URI Too Long |
| Category | 4xx Client Error |
| Response has body | Usually |
| Specification | RFC 9110 |
What does 414 URI Too Long mean?
The URL is longer than the server is willing to process. It belongs to the 4xx Client Error class, which means the request contains bad syntax or cannot be fulfilled. Something about the request needs to change.
When do APIs return 414?
A GET request carrying too much in its query string: a long list of IDs, a large filter expression, or Base64 data placed in the URL. It also appears when a redirect loop keeps appending a parameter to itself. Servers and proxies commonly limit the request line to around 8,000 bytes, and some to less.
How to fix a 414 URI Too Long
Move the data out of the URL. Send it in the body of a POST, or split one request with hundreds of IDs into several. If the URL is growing on each redirect, the bug is in the redirect logic. Raising the limit on your own server (large_client_header_buffers in nginx, LimitRequestLine in Apache) only helps until the next proxy in the path enforces its own.
Reproduce a 414 response
The fastest way to understand a status code is to trigger one and read the full response. Open the
API tester and send a request to https://httpbin.org/status/414 — you will
see the 414 status along with every response header the server sent. Comparing those headers against
a working request is often what reveals the cause.
When you are debugging a real endpoint, check the response headers as carefully as the body, and confirm you are using the right HTTP method for the operation.
Related 4xx status codes
400 Bad Request
The server could not understand the request because it is malformed.
401 Unauthorized
The request lacks valid authentication credentials. Despite the name, this means unauthenticated.
402 Payment Required
The request cannot be processed until payment is made.
403 Forbidden
The server understood the request and knows who you are, but refuses to authorise it.
404 Not Found
The server cannot find the requested resource.
405 Method Not Allowed
The endpoint exists but does not support the HTTP method you used.
414 URI Too Long FAQ
What is the maximum length of a URL?
HTTP sets no limit, so each server and proxy chooses its own. The specification recommends supporting at least 8,000 bytes in the request line, and many servers default to roughly that. Staying under about 2,000 characters is safe everywhere.
What is the difference between 414 and 431?
414 means the URL itself is too long. 431 Request Header Fields Too Large means the headers are too big, usually because of an oversized cookie. A very long URL can trigger either, depending on which limit the server checks first.
How do I send a lot of data without getting a 414?
Put it in the request body instead of the query string. A POST with a JSON or form-encoded body has no practical length limit of this kind, whereas everything in a GET has to fit in the URL.
See also
- 413 Payload Too Large — The request body is larger than the server is willing to process.
- 431 Request Header Fields Too Large — The server refuses to process the request because its headers are too large.
References
- RFC 9110, 414 URI Too Long — The specification that defines this status code.
- MDN: 414 URI Too Long — MDN's reference page for this status code.