There are no strict rules on which HTTP status code is the correct one for each method. It depends on what exactly happened, what information you need to send to the client, etc. I can think of a few examples:
-
A successful
DELETE
, with no further information.204 No Content
-
A successful
DELETE
, but you have a warning about related orphan resources that should be deleted too.200 OK
. -
You accepted the
DELETE
request, but it might take a long time and you’re going to do it asynchronously. The client should check it later.202 Accepted
. -
You accepted the
DELETE
request, but the resource can’t be removed and the URI is instead reset to a default.205 Reset Content
.