DevToolsmith

HTTP 501 Not Implemented

HTTP 501 Not Implemented means the server doesn’t support the functionality needed for the request. The server failed to fulfil a valid request. The problem is on the server side.

Class
5xx Server error
Standard
RFC 9110
Cacheable by default
Yes
Safe to retry
Rarely
Go constant
http.StatusNotImplemented

What HTTP 501 means

Usually the HTTP method isn’t recognised by the server at all, such as PROPFIND on a server without WebDAV. If the method exists but isn’t allowed on that URL, use 405. Some APIs return 501 for endpoints that are planned but not built yet.

Retrying

Rarely. The server can’t handle this request, so retrying it unchanged is unlikely to help.

Example response

HTTP/1.1 501 Not Implemented
Date: Wed, 21 Oct 2026 10:30:00 GMT
Content-Type: application/json

How to return 501

Node.js (Express)
res.status(501).json({ error: 'Not Implemented' });
Python (FastAPI)
from fastapi import HTTPException

raise HTTPException(status_code=501, detail="Not Implemented")
Go (net/http)
http.Error(w, http.StatusText(http.StatusNotImplemented), http.StatusNotImplemented)
nginx
location /private/ {
    return 501;
}

Related status codes

Other 5xx status codes

500 Internal Server Error · 502 Bad Gateway · 503 Service Unavailable · 504 Gateway Timeout · 505 HTTP Version Not Supported · 507 Insufficient Storage · 508 Loop Detected · 511 Network Authentication Required · 520 Web Server Returned an Unknown Error · 521 Web Server Is Down · 522 Connection Timed Out · 523 Origin Is Unreachable · 524 A Timeout Occurred · 525 SSL Handshake Failed · 526 Invalid SSL Certificate

See the full list of HTTP status codes.

Sources

Spotted a mistake? Email hello@devtoolsmith.com and we’ll fix it.

Frequently asked questions

What does HTTP 501 Not Implemented mean?

HTTP 501 Not Implemented means the server doesn’t support the functionality needed for the request. Usually the HTTP method isn’t recognised by the server at all, such as PROPFIND on a server without WebDAV. If the method exists but isn’t allowed on that URL, use 405. Some APIs return 501 for endpoints that are planned but not built yet.