diff --git a/guidelines/http.rst b/guidelines/http.rst index 0a56837..75d24e7 100644 --- a/guidelines/http.rst +++ b/guidelines/http.rst @@ -257,6 +257,10 @@ More generally, CRUD models the four basic functions of persistent storage. An HTTP API is not solely a proxy for persistent storage. It can provide access to such storage, but it can do much more. +Please note that while HEAD is recommended for checking for the existence of a +resource, the corresponding GET should always be implemented too, and should +return an identical response with the addition of a body, if applicable. + **TODO**: HEAD is weird in a bunch of our wsgi frameworks and you don't have access to it. Figure out if there is anything useful there. diff --git a/guidelines/tags.rst b/guidelines/tags.rst index e7a22af..486966a 100644 --- a/guidelines/tags.rst +++ b/guidelines/tags.rst @@ -182,7 +182,7 @@ Response:: Location: http://example.com:8774/servers/1234567890/tags/qux -To check if a tag exists or not, the client should send a GET request to the +To check if a tag exists or not, the client should send a HEAD request to the individual tag URL. If the tag exists, the server responds with a status code 204 and no response body. If the tag does not exist, the server responds with a status code 404.