205 Reset Content
The request succeeded, and the client should reset the document view (e.g., clear a form).
Meaning & Description
Common Causes
- The server explicitly requested the client to reset its UI state after a successful submission.
How to fix a 205 error
- If your form is clearing unexpectedly, check if the server is returning a 205.
- If using fetch() or Axios, remember that they do not automatically clear the DOM. You must handle the 205 status in JavaScript and clear the form manually.
Browser & SEO Behaviour
Browser Behavior
When a standard HTML `<form>` submission results in a 205, the browser will keep the user on the same page but reset all form inputs to their default values.
SEO Impact
Neutral. Never return this for a GET request.
CDN Behavior
Not cached.
Code Examples
HTTP/1.1 205 Reset Content
Date: Mon, 23 May 2026 22:38:34 GMT
app.post('/submit-form', (req, res) => {
// Process the form data
// Instruct the browser to clear the form
res.status(205).end();
});from fastapi import FastAPI, status, Response
app = FastAPI()
@app.post("/submit", status_code=status.HTTP_205_RESET_CONTENT)
def submit_form():
return Nonefunc handleForm(w http.ResponseWriter, r *http.Request) {
w.WriteHeader(http.StatusResetContent)
}[HttpPost]
public IActionResult SubmitData()
{
return StatusCode(205);
}curl -X POST https://api.example.com/form -d "name=Alice" -iRaw HTTP Response Example
HTTP/1.1 205 Reset Content
Date: Mon, 23 May 2026 22:38:34 GMTReal-world Examples
Frequently Asked Questions
What is the difference between 204 No Content and 205 Reset Content?
Both indicate success and have no response body. However, 204 tells the browser "do nothing, stay where you are," while 205 tells the browser "stay where you are, but clear the form you just submitted."
Does 205 Reset Content work in React or Angular applications?
Not automatically. Modern JavaScript frameworks intercept form submissions using fetch or XMLHttpRequest. These APIs do not natively clear the DOM when they receive a 205. You must write code to check `if (response.status === 205)` and call your form reset logic manually.
Should 205 Reset Content include a response body?
No. Just like the 204 status code, the HTTP specification requires that a 205 response must not contain a message body.
Is 205 commonly used in modern REST APIs?
No. Modern APIs typically return 200 OK or 201 Created with JSON data, leaving UI state management entirely up to the frontend JavaScript application. 205 is a relic of server-driven HTML applications.
Can I use 205 for a GET request?
It doesn't make sense to do so. 205 is specifically designed as a response to form submissions (POST/PUT), asking the client to reset the input mechanism.
Did You Know?
The 205 status was created for a very specific UX pattern in the late 90s: repetitive data entry clerks who needed a form to immediately clear upon hitting Enter, without waiting for a full page reload.
It is one of the least utilized status codes in modern web development.
Developer Tips
- Avoid using 205 in modern SPAs (Single Page Applications). Return a standard 200 or 201, and let your frontend state management (like Redux or React State) handle clearing the form.
- If you do use it, ensure your server framework does not accidentally inject a Content-Length header or body, as this breaks the spec.
Interview Questions
These are questions you might face in a backend or API design interview that touch on HTTP 205.
What is the purpose of the 205 Reset Content status?
It indicates that a request (usually a form POST) was successful, and instructs the browser to reset the document view (clear the form fields) so the user can begin entering another submission immediately. It contains no response body.
Why is 205 Reset Content rarely used today?
Because most modern web applications are SPAs built with React, Vue, or Angular. They do not rely on the browser's native HTML form submission behavior. UI state and form clearing are handled purely via JavaScript state management, not server-driven HTTP headers.
Common Interview Mistakes
- Confusing 205 with a 3xx redirect. 205 does not navigate the user away; it specifically keeps them on the current page.
- Assuming that a JavaScript fetch() call will automatically clear the DOM if it receives a 205. It will not.