> For the complete documentation index, see [llms.txt](https://apidocs.d6plus.co.za/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://apidocs.d6plus.co.za/v2/getting-started/errors-and-bad-requests.md).

# Errors and Bad Requests

Errors or bad requests caught by the API will always return an appropriate HTTP status code in the response headers (as described in the [Response Status Codes](/v2/getting-started/response-status-codes.md) section), as well as a body containing details about the error occurred:

* `success` (bool) - Either `true` or `false`. In the event of an error, this will be `false`.
* `message` (string) - A description of the actual problem encountered

In the event of a user input validation failure, the following will be included in the response body:

* `validation_errors` (object) - A list of fields and the validation error message

Example error response body:

```json
{
    "success": false,
    "message": "Validation Failed",
    "validation_errors": {
        "accountable_person_id": "The accountable_person_id is invalid",
        "date": "The Date is not valid date format. Expected format is 'Y-m-d'."
    }
}
```
