REST API
Unravel's REST API allows you to query and collect data from your cluster, using either HTTP or HTTPS protocol. The API returns information similar to what you see in Unravel UI. All requests and responses are in JSON format.
Authentication
If you're running the API through Unravel UI's Manage | API, authenticate through the UI; be sure to select the correct protocol (HTTPS or HTTP).
Authenticate through the /signIn request.
Your access level is determined by your RBAC role. Unravel Server returns a session token which you then include in all subsequent requests.
Base URL
All endpoints are relative to the base URL, http://
or unravel-host
:3000/api/v1https://
unravel-host
:3000/api/v1
Methods
The API adheres to the standard create-read-update-delete (CRUD) semantics in which the request path defines the endpoint, and the method specifies the action to perform on the resource.
Method | Action |
---|---|
POST | Creates a resource. |
GET | Retrieves a resource. |
PUT | Updates or edits a resource. |
DELETE | Deletes a resource. |
Endpoints
Endpoint | Description |
---|---|
Authenticates your API session and gets a token which you include in all requests in this session. | |
Gets all apps filtered by app type, status, username, queue, and tags. | |
Gets average number of jobs by type. | |
Gets tags for a given app. | |
Gets total job count per status in a given time window (at one hour intervals). | |
Gets a time series for CPU allocations by app type. | |
Gets a time series for allocated memory by app type. | |
Gets a time series of finished apps. | |
Gets a list of running apps. | |
Gets the status code for a killed YARN app. | |
Gets the status code for a moved YARN app. | |
Gets a summary of a given app. | |
Gets the errors associated with a given app. | |
Gets a detailed summary of a given app. | |
Gets the logs associated with a given app. | |
Gets Unravel's recommendations for the given application. | |
Gets the status of a given app. | |
Under construction. | |
Under construction. | |
/reports/data/diskusage/get_latest_reports?task_name=capacity_prediction_task | |
/reports/data/diskusage/get_latest_reports?task_name=cloud_mappings_grouped_reports_task | |
/reports/data/diskusage/get_latest_reports?task_name=cloud_reports_task | |
/reports/data/diskusage/get_latest_reports?task_name=cluster_discovery_task | |
/reports/data/diskusage/get_latest_reports?task_name=queue_analysis_task | |
/reports/data/diskusage/get_latest_reports?task_name=small_files_report | |
/reports/data/diskusage/get_latest_reports?task_name=topx_report | |
/reports/data/diskusage/get_latest_success_reports?task_name=cloud_mappings_grouped_reports_task | |
/reports/data/diskusage/get_latest_success_reports?task_name=cloud_reports_task | |
/reports/data/diskusage/get_latest_success_reports?task_name=cluster_discovery_task | |
/reports/data/diskusage/get_latest_success_reports?task_name=queue_analysis_task | |
/reports/data/diskusage/get_latest_success_reports?task_name=topx_report | |
Generates a Key Performance Indicator (KPI) report. | |
Gets details about the small file report. | |
Under construction. | |
Under construction. | |
Under construction. | |
/reports/operational/clusterstats?st={timestamp}&et={timestamp}&mode={summary_type} | |
/reports/operational/clusterworkload?gte={timestamp}<e={timestamp}&reportBy={interval} | |
Under construction. | |
Gets chargeback reports by application type. Gives the count of all applications in all queues for all users across all clusters. | |
Gets chargeback reports by queue. | |
Gets chargeback reports by user. | |
Generates a Queue Analysis report. | |
Generates a Cloud Mapping grouped report. | |
Generates a Cloud Mappping report. | |
Generates a report on cloud providers. | |
Generates a Cluster Discovery report. | |
Generates a cluster app parameter report. | |
Generates a Forecasting report. | |
Gets the Small Files report. | |
Gets a list of all active and inactive AutoActions. | |
Gets a list of AutoAction metrics. | |
Gets a list of recent AutoAction violations. | |
Gets a list of recent AutoAction violations filtered by app type. | |
Gets a list of Unravel's predefined AutoAction templates. | |
Gets total job count, at one hour intervals. | |
Gets the number of jobs in a given timeframe, grouped by state, app type, user, or queue. | |
Gets the total job count per job type, at one hour intervals, in a given time window. | |
Gets the total job count per job type, at one hour intervals, in a given time window. | |
Gets a list of clusters. | |
Gets a summary of cluster nodes. | |
Gets a time series of CPU allocations across all clusters. | |
Gets a time series of memory allocations across all clusters. | |
Gets total CPU usage across all clusters. | |
Gets total memory usage across all clusters. | |
Gets a time series for allocated CPU in a given cluster. | |
Gets a time series for allocated memory in a given cluster. | |
Gets a time series for total CPU usage in a given cluster. | |
Gets a time series for total memory usage in a given cluster. | |
Gets a time series of all the nodes of given cluster grouped by node state. | |
/kafka/brokers?cluster_id={cluster_name}&start_time={timestamp}&end_time={timestamp} | Gets a list of Kafka brokers active on a given cluster during a given timeframe. |
Gets KPIs for a given Kafka broker. | |
Gets KPIs for a given Kafka cluster. | |
Gets KPIs for the Kafka topics within a given timespan. | |
Gets Kafka cluster metrics. | |
Gets details about a given partition. | |
Gets chargeback reports per app type and the number of apps in all queues for all users across all clusters. | |
Gets chargeback reports by application type for a specific queue. | |
Gets chargeback reports per queue. | |
Lists all workflows. | |
Lists workflows with missed SLA. |
Error codes
Unravel Server returns these HTTP error codes:
Error Code | Description |
---|---|
400 | Invalid request parameters or malformed requests. |
401 | Authentication failure. |
403 | Authorization failure. |
404 | Object not found. |
500 | Internal API error. |
503 | Response is temporarily unavailable; try again later. |