Here are some sample Response Codes which we will normally see while performing REST API testing through any REST API client.
#1) 100 Series
These are temporary informational Responses
- 100 -Continue
- 101 -Switching Protocols
- 102 -Processing
#2) 200 Series
The client accepts the Request, being processed successfully at the server.
- 200 – OK
- 201 – Created
- 202 – Accepted
- 203 – Non-Authoritative Information
- 204 – No Content
- 205 – Reset Content
- 206 – Partial Content
- 207 – Multi-Status
- 208 – Already Reported
- 226 – IM Used
#3) 300 Series
Most of the codes related to this series are for URL Redirection.
- 300 – Multiple Choices
- 301 – Moved Permanently
- 302 – Found
- 303 – Check Other
- 304 – Not Modified
- 305 – Use Proxy
- 306 – Switch Proxy
- 307 – Temporary Redirect
- 308 – Permanent Redirect
#4) 400 Series
These are specific to client-side error.
- 400 – Bad Request
- 401 – Unauthorised
- 402 – Payment Required
- 403 – Forbidden
- 404 – Not Found
- 405 – Method Not Allowed
- 406 – Not Acceptable
- 407 – Proxy Authentication Required
- 408 – Request Timeout
- 409 – Conflict
- 410 – Gone
- 411 – Length Required
- 412 – Precondition Failed
- 413 – Payload Too Large
- 414 – URI Too Long
- 415 – Unsupported Media Type
- 416 – Range Not Satisfiable
- 417 – Expectation Failed
- 418 – I’m a teapot
- 421 – Misdirected Request
- 422 – Unprocessable Entity
- 423 – Locked
- 424 – Failed Dependency
- 426 – Upgrade Required
- 428 – Precondition Required
- 429 – Too Many Requests
- 431 – Request Header Fields Too Large
- 451 – Unavailable For Legal Reasons
#5) 500 Series
These are specific to the server-side error.
- 500 – Internal Server Error
- 501 – Not Implemented
- 502 – Bad Gateway
- 503 – Service Unavailable
- 504 – Gateway Timeout
- 505 – HTTP Version Not Supported
- 506 – Variant Also Negotiates
- 507 – Insufficient Storage
- 508 – Loop Detected
- 510 – Not Extended
- 511 – Network Authentication Required
Different Type Of REST Requests
Method | Description |
---|---|
GET | Fetch status line, Response body, Header etc. |
HEAD | Same as GET, but only fetch status line and header section |
POST | Perform request using request payload mostly in creating a record at the server |
PUT | Useful in manipulating/updating the resource using Request payload |
DELETE | Deletes information relating to the target resource. |
OPTIONS | Describe the communication options for the target resource |
PATCH | Very much similar to put but it is more like a minor manipulation of resource content |