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 |