200 OK
2xx Successful

The 200 (OK) status code indicates that the request has succeeded.

The payload sent in a 200 response depends on the request method. For the methods defined by this specification, the intended meaning of the payload can be summarized as:

If no payload is desired, an origin server ought to send 204 (No Content) instead.

RFC 7231 6.3.1

Notes

The 200 is the standard successful response for when you’re returning some kind of a body in the response. If you don’t have a body, one of the other 200-level status codes is more appropriate.

What you should return in the body of a 200 aligns with the “meaning” of the HTTP method used for the request.

For instance, with a GET request, the expectation is that you’re returning the representation that the user asked for. So, if the route is /book/1 the expectation is that you return whatever your representation of a Book is (JSON, html, whatever).

For a POST, you’re often returning the thing that the user changed. If a book has a new title, you’re returning the book with the new title in place.

For something like a DELETE, the actual resource is gone, and so the response is usually some indication that the delete action has been successful.

Caching

Cachable by default. Usually only cached on the GET.

Links