200 OK
The HTTP 200 OK
successful response status code indicates that a request has succeeded.
A 200 OK
response is cacheable by default.
A 200 OK
response has a different meaning and format depending on the HTTP request method.
Here's how they vary for different methods:
GET
: A resource was retrieved by the server and included in the response body.POST
: An action succeeded; the response has a message body describing the result.HEAD
: Identical toGET
, except there is no message body.TRACE
: The response has a message body containing the request as received by the server.
Although possible, successful PUT
or DELETE
requests often do not result in a 200 OK
response.
It is more common to see 201 Created
if the resource is uploaded or created for the first time, or 204 No Content
upon successful deletion of a resource.
Status
200 OK
Examples
Receiving a 200 OK
for a GET
request
In this example, a successful GET
request to https://example.com
returns a 200 OK
response.
The response includes representation headers and a message body with the HTML content:
HTTP/1.1 200 OK
Accept-Ranges: bytes
Age: 294510
Cache-Control: max-age=604800
Content-Type: text/html; charset=UTF-8
Date: Fri, 21 Jun 2024 14:18:33 GMT
Etag: "3147526947"
Expires: Fri, 28 Jun 2024 14:18:33 GMT
Last-Modified: Thu, 17 Oct 2019 07:18:26 GMT
Server: ECAcc (nyd/D10E)
X-Cache: HIT
Content-Length: 1256
<!doctype html>
<!-- HTML content follows here -->
Receiving a 200 OK
for a POST
request in form submission
Assuming a form exists to send data to an endpoint for managing subscriptions at http://example.com/subscribe
.
A POST
request to subscribe a user may look like the following:
POST /subscribe HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 50
name=Brian%20Smith&email=brian.smith%40example.com
In this example, a response with a 200 OK
status could look like this:
HTTP/1.1 200 OK
Content-Type: application/json
{
"message": "User subscription pending. A confirmation email has been sent.",
"subscription": {
"name": "Brian Smith",
"email": "brian.smith@example.com",
"id": 123,
"feed": "default"
}
}
Specifications
Specification |
---|
HTTP Semantics # status.200 |