# Errors

The Found Hero API uses standard HTTP error and status codes to communicate errors. There are multiple HTTP status codes for different types of errors:

* `200 Ok` — The request was performed successfully.
* `400 Bad Request` — The request was unacceptable, often due to missing a required parameter.
* `401 Unauthorized` — No valid access token provided. The access token was either missing or expired.
* `403 Forbidden` — The access token doesn't have permission to perform the request.
* `404 Not Found` — The requested resource doesn't exist.
* `422 Unprocessable Entity` — The request was malformed.
* `500 Internal Server Error` — An unexpected error ocurred on our server. In most cases, such an error represents a bug on our side. We automatically log such errors and fix them quickly. If anything like this persists, feel free to directly [contact us](https://docs.joinfoundhero.com/master#support).

In case of an error, `status` is set to `false` in the returned JSON object. The `message` property contains an explanation specific to that error. This is the property that is most useful to a human. Here is an example JSON response for `401 Unauthorized`:

```javascript
{
    "status": false,
    "message": "Authentication failed. Wrong password."
}
```
