Understanding HTTP Status Codes
HTTP status codes are three-digit numbers returned by a web server in response to a client request. They tell the client whether the request was successful, redirected, or resulted in an error. Every web developer, DevOps engineer, and API consumer needs to understand these codes to debug issues, build resilient applications, and design proper error handling.
Status codes are grouped into five categories. 1xx codes are informational, indicating the request was received and the server is continuing to process. 2xx codes indicate success. 3xx codes indicate the client needs to take additional action, usually a redirect. 4xx codes mean the client made an error (bad URL, missing authentication, etc.). 5xx codes mean something went wrong on the server side.
API Access
Look up any status code programmatically:
curl https://toolpipe.com/api/http-status/404
Frequently Asked Questions
What is the difference between 401 and 403?
A 401 (Unauthorized) means the client has not provided valid authentication credentials. A 403 (Forbidden) means the client is authenticated but does not have permission to access the resource. In short: 401 is "who are you?" and 403 is "you are not allowed."
When should I use 301 vs 302 redirects?
Use 301 (Moved Permanently) when a resource has permanently moved to a new URL. Search engines will transfer SEO value to the new URL. Use 302 (Found) for temporary redirects where the original URL should remain the canonical location.
What does a 500 error mean for end users?
A 500 Internal Server Error means something unexpected went wrong on the server. It is not the user's fault. The server administrator needs to check logs to identify and fix the problem.