303 See Other
When the result of a request is viewable at a different URI, the server responds with 303 See Other. The Location header links to an alternative page, such as an upload confirmation message, rather than the recently uploaded resource. The method for the follow-up request is GET or HEAD.
Usage
The 303 See Other status code is typically returned after a POST, PUT, or DELETE request. The result of the operation is viewable at a different URL, and the client fetches the new resource with a GET request to the specified Location.
Note
Many servers historically send 302 when they mean 303, and many clients treat 302 as 303 by changing the request method to GET.
SEO impact
Google classifies 303 as a temporary redirect alongside 302 and 307. Googlebot follows the redirect but treats 303 as a weak signal the target is the preferred URL.
Example
The client requests deletion of a specific resource. The server sends 303 See Other because the original location no longer holds a viewable resource and points to a confirmation page at the new Location.
Request
DELETE /tasks/314 HTTP/1.1
Host: www.example.re
Response
HTTP/1.1 303 See Other
Location: http://www.example.re/confirmation/delete.html
303 vs 307
Both 303 and 307 are temporary redirects, but the method handling differs. A 303 response changes the request method to GET (or HEAD), regardless of the original method. A 307 response preserves the original method and body. Use 303 after a POST when the client needs to retrieve a result page. Use 307 when the exact request must repeat at the new location.
Code references
.NET
HttpStatusCode.SeeOther
Rust
http::StatusCode::SEE_OTHER
Rails
:see_other
Go
http.StatusSeeOther
Symfony
Response::HTTP_SEE_OTHER
Python3.5+
http.HTTPStatus.SEE_OTHER
Java
java.net.HttpURLConnection.HTTP_SEE_OTHER
Apache HttpComponents Core
org.apache.hc.core5.http.HttpStatus.SC_SEE_OTHER
Angular
@angular/common/http/HttpStatusCode.SeeOther
See also
- RFC 9110: HTTP Semantics
- Google: HTTP status codes and network errors
- 302
- 307
- Redirects
- HTTP status codes