API: Improve error reporting

This patch improves API errors messages thus fixing some issues (#6878, #3526, #4209, #5335).

`404` statuses have been replaced by omre precise ones:
* `409` when there is a conflict
* `400` when a validation problem occurs

Validation errors are also exposed in API responses.
Use 2 spaces for indentation in a hash, relative to the start of the line where the left curly brace is.