404 Not Found

Never heard of it.

What it properly means

The server cannot find the resource. In a browser the URL is not recognised; in an API the endpoint may be valid but the resource does not exist. Also sent instead of 403 to hide that something exists.

Class
4xx Client error: you fucked up
Defined in
RFC 9110, section 15.5.5

Get one yourself

This endpoint really answers with 404. Point your client at it and see what it does.

curl -i https://httpcodes.dev/api/404

People mix this up with

  • 403 Forbidden404

    Forbidden, or pretending it is not there?

    403 admits the thing exists but refuses to hand it over. 404 says there is nothing here, and servers also use it to hide things from people who are not allowed to know they exist.

  • 404410 Gone

    Missing, or gone for good?

    404 makes no promise either way: it might turn up later. 410 is deliberate: it was here, it has been removed, and it is not coming back, so stop asking and drop your links.