mirror of
https://github.com/adidas/api-guidelines.git
synced 2025-10-25 15:19:19 +00:00
40 lines
979 B
Markdown
40 lines
979 B
Markdown
# Use Appropriate Status Codes
|
|
Every API **MUST** use the appropriate [HTTP Status Codes](https://github.com/for-GET/know-your-http-well/blob/master/status-codes.md) to communicate the result of a request operation.
|
|
|
|
Every API designer, implementer and consumer **MUST** understand the semantic of the HTTP Status Code she is using.
|
|
|
|
At a minimum everyone **MUST** be familiar with the semantics of ["Common" HTTP Status Codes](https://github.com/for-GET/know-your-http-well/blob/master/status-codes.md#common).
|
|
|
|
---
|
|
|
|
#### Example: Use Codes 4xx or 5xx to Communicate Errors
|
|
A request:
|
|
|
|
```
|
|
GET /orders/1234 HTTP/1.1
|
|
...
|
|
```
|
|
|
|
resulting in the **200 OK** response, when the requested resource (as identified by the request URI) couldn't be found:
|
|
|
|
```
|
|
HTTP/1.1 200 OK
|
|
Content-Type: application/json
|
|
...
|
|
|
|
|
|
{
|
|
"code": "NOT_FOUND_ERR_CODE"
|
|
"message" "Order 1234 wasn't found"
|
|
}
|
|
```
|
|
is **not acceptable**.
|
|
|
|
Instead the
|
|
|
|
```
|
|
HTTP/1.1 404 Not Found
|
|
...
|
|
```
|
|
|
|
should be returned. |