HTTP Problem documentation¶
The failure reason of the Krake API HTTP layer is stored as an RFC7807 Problem. It is a way to define uniform, machine-readable details of errors in an HTTP response.
In case of a failure on the Krake API HTTP layer, the Krake API responds with a well-formatted RFC7807 Problem message, which could contain the following fields:
- A URI reference that identifies the problem type. It should point the Krake API users to the concrete part of the Krake documentation where the problem type is explained in detail. Defaults to about:blank.
- A short, human-readable summary of the problem type
- The HTTP status code
- A human-readable explanation of the problem
- A URI reference that identifies the specific occurrence of the problem
When RFC7807 Problem
type is defined, it points Krake API clients to the below
list of better-described HTTP problems.
The RFC7807 Problem
type URI is generated based
--docs-problem-base-url API configuration parameter (see Krake configuration)
and the value from the list of defined HTTP Problems, see
A requested resource cannot be found in the database.
A database transaction failed.
A update of resource field.
An authentication attempt with a keystone token failed.
An authentication attempt with a keycloak token failed.
A resource already defined in the database is requested to be created.