Sahara REST API v1.1¶
1 General API information¶
This section contains base info about the sahara REST API design.
1.2 Request / Response Types¶
The sahara API supports the JSON data serialization format. This means that
for requests that contain a body, the Content-Type
header must be set to
the MIME type value application/json
. Also, clients should accept JSON
serialized responses by specifying the Accept
header with the MIME type
value application/json
or adding the .json
extension to the resource
name. The default response format is application/json
if the client does
not specify an Accept
header or append the .json
extension in the URL
path.
Example:
GET /v1.1/{project_id}/clusters.json
or
GET /v1.1/{project_id}/clusters
Accept: application/json
1.4 Faults¶
The sahara API returns an error response if a failure occurs while processing a request. Sahara uses only standard HTTP error codes. 4xx errors indicate problems in the particular request being sent from the client and 5xx errors indicate server-side problems.
The response body will contain richer information about the cause of the error. An error response follows the format illustrated by the following example:
HTTP/1.1 400 BAD REQUEST
Content-type: application/json
Content-length: 126
{
"error_name": "CLUSTER_NAME_ALREADY_EXISTS",
"error_message": "Cluster with name 'test-cluster' already exists",
"error_code": 400
}
The error_code
attribute is an HTTP response code. The error_name
attribute indicates the generic error type without any concrete ids or
names, etc. The last attribute, error_message
, contains a human readable
error description.