Paulund
2012-07-14 #development

Explaining The Different HTTP Status Codes

When a URL is requested by the client to a server the server will return the resource and a HTTP Status code. The status code will let the client know different information about the request, if it was success, if it failed or if the resource has moved. Here is a list of all the HTTP codes and what they mean. - 100's are informational codes

  • 200's are success codes
  • 300's are redirection codes
  • 400's are client error codes
  • 500's are server error codes

100 - Continue

This code means that the request header has been received and that the request body can continue to be sent.

101 - Switch protocols

This code means that the server has asked for the client to switch protocols.

102 - Processing

This code means that the server is processing the request from the client.

103 - Resume request

This code means that the server can proceed to process POST requests.

122 - Exceeds maximum characters

This code means that the URL requested exceeds the maximum 2083 characters.

200 - Successful

This is the standard response to a successfully HTTP request.

201 - Created

This code means that the requests has been received and a new resource has been created.

202 - Accepted

This code means that the request has been accepted and it is currently being processed.

203 - Non-Authoritative Information

This code means that the request has been accepted but the resource is returning to a different source.

204 - No Content

This code means the process has been successful but no content has returned.

205 - Reset Content

This code means that the request is successful and no content is returned but the client must reset the document view.

206 - Partial Content

This code means that the request is successful but the server can only return part of the request due to limitations in the request header.

207 - Multi-status

This code means that the response message is an XML message which contains multiple status codes.

208 - Already Reported

This code means that the response has been previously returned.

226 - IM Used

This code means that the request is successful but the response is a result of one or more instance-manipulations.

300 - Multiple Choices

This code means that the request returns multiple options for the client to follow.

301 - Moved Permanently

This code means that the resource has been moved and all future requests should be given the new URL.

302 - Found Different Location

This code means that the resource was found but at a different location

303 - Found Different Location since HTTP/1.1

This code means that the resource was found but at a different location

304 - Not Modified

This code is returned if the resource has not been modified since the last request.

305 - Use Proxy

This means that the resource was found but in a different location and needs to be accessed through a proxy.

306 - Switch Proxy

This code means that all requests should use a different proxy.

307 - Temporary Redirect

This code means that resource has temporary been moved to another location and all future requests should use the original URL.

308 - Permanent Redirect

This code means that the resource has been moved and all future requests should use another URL.

400 - Bad Request

This code means that the request can not be processed due to bad syntax.

401 - Unauthorized

This code means that the request has failed authentication.

402 - Payment Required

This code means that a payment is required to process the request.

403 - Forbidden

This code means that the server refuses to response to the request.

404 - Not Found

This code means that the resource requested can not be found.

405 - Method Not Allowed

This code means that the request method being made is not supported on the server.

406 - Not Acceptable

This code means that according to the requested resource is not capable of returning the requested content.

407 - Proxy Authentication Required

This code means that the proxy has to authenticate itself with the proxy.

408 - Request Timeout

This code means that the server timed out waiting for a request.

409 - Conflict

This code means that that request could not be processed because a conflict in the request has taken place.

410 - Gone

This code means that the resource has been deleted and will never be available again. When the client get this status code it should not request this resource in the future.

411 - Length Required

This code means that the request did not specific the length of the content it needs.

412 - Precondition Failed

This code means that the request did not meet any of the server preconditions.

413 - Request Entity Too Large

This code means that the request is larger than what the server can deal with.

414 - Request-URI Too Long

This code means that the URI for the request was too long for the server to process.

415 - Unsupported Media Type

This means that the request entity has a media type that the server does not accept.

416 - Requested Range Not Satisfiable

This code means that the requester has asked for a portion of the resource but the server can not provide it. ## 417 - Expectation Failed

This code means that the server can not meet the expectation of the request header type.

423 - Locked

This code means that the requested resource is locked and can not be accessed.

424 - Failed Dependency

This code means that the request has failed because of a previous request.

429 - Too Many Requests

This code means that the requester has sent too many requests at the same time.

500 - Internal Server Error

This code means that there was an error which doesn't fit any other error message.

501 - Not Implemented

This code means that the server does not recognise the method request.

502 - Bad Gateway

This code means that the server was acting as a proxy and received a bad request.

503 - Service Unavailable

This code means that the service is unavailable, which generally means that the server is overloaded or is down for maintenance.

504 - Gateway Timeout

This code means that the server was acting as a proxy and the request timed out.

505 - HTTP Version Not Supported

This code means that the server does not support the HTTP version used in the request.

507 - Insufficient Storage

This code means that server was unable to store the resource of the request.

508 - Loop

This code means that the server was unable to complete the request as it detected an infinite loop.

Any Other Important Error Codes Missed?