Manager API reference
The Imply Cloud Manager API allows you to automate management of clusters in your Imply Cloud account. For more details on the Cloud Manager API and how to get started, see Manager API overview.
Available resources
- Clusters API: Manage Imply clusters.
- ClustersHistorical API: Get a cluster by its previous resource version.
- ClustersServers API: Manage server instances of a cluster.
Object definitions
- Cluster
- ClusterSpec
- ClusterStatus
- CustomFile
- DataConfiguration
- DataTier
- DeepStorage
- Event
- LoadBalancer
- MasterConfiguration
- MetadataStore
- NameValue
- ObjectMeta
- PivotAccess
- QueryConfiguration
- Server
- UpdateState
Error responses
The Imply Cloud Manager API returns standard HTTP status codes. Some API calls also return JSON response bodies with information about the resource. Common error cases and example responses are listed below.
400 Bad Request
An HTTP/1.1 400 Bad Request
error is raised due to invalid user input.
For example, if the cluster name was not specified and the AWS S3 deep storage path was incorrect, the JSON response may look like the following:
{
"error": {
"code": "BadArgument",
"message": "Request contains invalid arguments",
"details": [
{
"code": "NullValue",
"target": "metadata.name",
"message": "Cluster name must not be null"
},
{
"code": "MalformedValue",
"target": "spec.deepStorage.path",
"message": "Path is not a valid s3 path"
}
]
}
}
401 Unauthorized
An HTTP/1.1 401 Unauthorized
error is raised when authentication credentials have not been provided.
Example JSON response:
{
"error": {
"code": "Unauthorized",
"message": "Provided user does not have permissions to complete this request"
}
}
403 Forbidden
An HTTP/1.1 403 Forbidden
error is raised when the attempted action has not been authorized by the user.
Example JSON response:
{
"error": {
"code": "Unauthorized",
"message": "Provided user does not have permissions to complete this request"
}
}
409 Conflict
An HTTP/1.1 409 Conflict
error may be raised when an action is attempted on a cluster that is currently being updated. A cluster can apply only one update at a time.
Example JSON response:
{
"error": {
"code": "StateConflict",
"message": "Cluster [e9e1e18f-a9e8-4dd7-8a18-768039c57f22] cannot transition from [UPDATING] to [STOPPED]"
}
}