Faults generated from API requests are .json documents with fault as the object property value. When reading and writing context properties, a path property will usually be available, representing the full property path. A fault may also have children, especially in the case of cortex.invalidArgument.validation, where property validation errors are represented as children, whose path property can be examined to pinpoint the error source.
Here's an example of listing a non-existent object:
$ mdctl api GET /missing
"object": "fault",
"name": "error",
"code": "kInvalidObject",
"errCode": "cortex.invalidArgument.object",
"status": 400,
"message": "Invalid or unknown object.",
"path": "missing"
There are two faults, cortex.success.newLocation and cortex.accepted.mediaNotReady, whose HTTP statuses are in the 2XX range. In these cases, clients must handle a seemingly successful response as a fault.
Some faults may also have child faults represented as a faults array. For example, most validation errors (cortex.invalidArgument.validation) contains child faults so clients can pinpoint the source of each error.
Copy link