Altimate AI Databricks Clusters API
The Databricks Clusters API from Altimate AI — 15 operation(s) for databricks clusters.
The Databricks Clusters API from Altimate AI — 15 operation(s) for databricks clusters.
openapi: 3.1.0
info:
title: Fast ACCOUNT_COSTS Databricks Clusters API
version: 0.1.0
tags:
- name: Databricks Clusters
paths:
/api/v1/databricks/clusters/filters:
get:
tags:
- Databricks Clusters
summary: Get filter options for clusters
description: Get distinct filter values for cluster filtering.
operationId: get_cluster_filters_api_v1_databricks_clusters_filters_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: prefix
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search prefix for name filters
title: Prefix
description: Search prefix for name filters
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Workspace ID to filter by
title: Workspace Id
description: Workspace ID to filter by
- name: compute_type
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
title: Compute Type
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: 1-indexed page for the dropdown's load-more; offsets results by (page - 1) * size.
default: 1
title: Page
description: 1-indexed page for the dropdown's load-more; offsets results by (page - 1) * size.
- name: size
in: query
required: false
schema:
anyOf:
- type: integer
maximum: 100
minimum: 1
- type: 'null'
description: Maximum number of filter options to return.
title: Size
description: Maximum number of filter options to return.
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterFilterOptions'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/filters/cluster_names:
get:
tags:
- Databricks Clusters
summary: Get paginated distinct cluster names for filtering
description: Get a paginated list of distinct cluster-name filter options.
operationId: get_cluster_name_filters_api_v1_databricks_clusters_filters_cluster_names_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: prefix
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search substring for cluster names (case-insensitive)
title: Prefix
description: Search substring for cluster names (case-insensitive)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Workspace ID to filter by
title: Workspace Id
description: Workspace ID to filter by
- name: compute_type
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
title: Compute Type
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: Inclusive start of the metrics window. Defaults to 30 days before end_date.
title: Start Date
description: Inclusive start of the metrics window. Defaults to 30 days before end_date.
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: Inclusive end. Defaults to today.
title: End Date
description: Inclusive end. Defaults to today.
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: Page number (1-indexed)
default: 1
title: Page
description: Page number (1-indexed)
- name: size
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Items per page
default: 20
title: Size
description: Items per page
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedNamesResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/filters/workspaces:
get:
tags:
- Databricks Clusters
summary: Get paginated distinct cluster workspaces for filtering
description: Get a paginated list of distinct workspace filter options.
operationId: get_cluster_workspace_filters_api_v1_databricks_clusters_filters_workspaces_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: prefix
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Search substring for workspace names (case-insensitive)
title: Prefix
description: Search substring for workspace names (case-insensitive)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Workspace ID to filter by
title: Workspace Id
description: Workspace ID to filter by
- name: compute_type
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
title: Compute Type
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: Inclusive start of the metrics window. Defaults to 30 days before end_date.
title: Start Date
description: Inclusive start of the metrics window. Defaults to 30 days before end_date.
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: Inclusive end. Defaults to today.
title: End Date
description: Inclusive end. Defaults to today.
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: Page number (1-indexed)
default: 1
title: Page
description: Page number (1-indexed)
- name: size
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Items per page
default: 20
title: Size
description: Items per page
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedNamesResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters:
get:
tags:
- Databricks Clusters
summary: Get all Databricks clusters
description: Get list of all clusters with utilization metrics.
operationId: get_clusters_api_v1_databricks_clusters_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by workspace ID
title: Workspace Id
description: Filter by workspace ID
- name: start_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: Start date (inclusive) for utilization/cost metrics. Defaults to 30 days before `end_date`.
title: Start Date
description: Start date (inclusive) for utilization/cost metrics. Defaults to 30 days before `end_date`.
- name: end_date
in: query
required: false
schema:
anyOf:
- type: string
format: date
- type: 'null'
description: End date (inclusive). Defaults to today.
title: End Date
description: End date (inclusive). Defaults to today.
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: Page number (1-indexed)
default: 1
title: Page
description: Page number (1-indexed)
- name: page_size
in: query
required: false
schema:
type: integer
maximum: 100
minimum: 1
description: Items per page
default: 20
title: Page Size
description: Items per page
- name: sortAttribute
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: 'Sort column name. Valid columns: avg_cpu, avg_memory, total_cost, auto_tune_savings. Sorting by inventory columns (cluster_name, node types, ...) is not supported.'
title: Sortattribute
description: 'Sort column name. Valid columns: avg_cpu, avg_memory, total_cost, auto_tune_savings. Sorting by inventory columns (cluster_name, node types, ...) is not supported.'
- name: sortOrder
in: query
required: false
schema:
anyOf:
- enum:
- asc
- desc
type: string
- type: 'null'
description: 'Sort direction: ''asc'' or ''desc'''
title: Sortorder
description: 'Sort direction: ''asc'' or ''desc'''
- name: cluster_names
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: Filter by cluster names
title: Cluster Names
description: Filter by cluster names
- name: workspaces
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: Filter by workspace names
title: Workspaces
description: Filter by workspace names
- name: compute_type
in: query
required: false
schema:
anyOf:
- type: array
items:
type: string
- type: 'null'
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
title: Compute Type
description: 'Filter by compute type(s): ''all_purpose'', ''jobs'', ''dlt'''
- name: enable_photon
in: query
required: false
schema:
anyOf:
- type: boolean
- type: 'null'
description: Filter by Photon enablement. True returns only Photon-enabled clusters; False returns only clusters where Photon is off. Omit to include all.
title: Enable Photon
description: Filter by Photon enablement. True returns only Photon-enabled clusters; False returns only clusters where Photon is off. Omit to include all.
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClustersResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/oversized:
get:
tags:
- Databricks Clusters
summary: Get oversized clusters
description: Get clusters that appear to be oversized based on low utilization.
operationId: get_oversized_clusters_api_v1_databricks_clusters_oversized_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cpu_threshold
in: query
required: false
schema:
type: number
description: Maximum average CPU threshold
default: 30.0
title: Cpu Threshold
description: Maximum average CPU threshold
- name: memory_threshold
in: query
required: false
schema:
type: number
description: Maximum average memory threshold
default: 30.0
title: Memory Threshold
description: Maximum average memory threshold
- name: days
in: query
required: false
schema:
type: integer
description: Days for utilization metrics
default: 30
title: Days
description: Days for utilization metrics
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by workspace ID
title: Workspace Id
description: Filter by workspace ID
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/app__schemas__databricks__cluster__OversizedClustersResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/cost-trends:
get:
tags:
- Databricks Clusters
summary: Get cluster cost trends by compute type
description: Get all clusters cost trends over time broken down by compute type.
operationId: get_clusters_cost_trends_api_v1_databricks_clusters_cost_trends_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: start_date
in: query
required: true
schema:
type: string
format: date
description: Start date
title: Start Date
description: Start date
- name: end_date
in: query
required: false
schema:
type: string
format: date
description: End date
title: End Date
description: End date
- name: granularity
in: query
required: false
schema:
type: string
description: Time granularity (day, week, month)
default: day
title: Granularity
description: Time granularity (day, week, month)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Filter by workspace ID
title: Workspace Id
description: Filter by workspace ID
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClustersCostTrendsResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}:
get:
tags:
- Databricks Clusters
summary: Get cluster details
description: Get detailed information for a specific cluster.
operationId: get_cluster_detail_api_v1_databricks_clusters__cluster_id__get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterDetail'
'403':
description: Not authorized
'404':
description: Cluster not found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/utilization:
get:
tags:
- Databricks Clusters
summary: Get cluster utilization metrics
description: Get utilization metrics and timeseries for a specific cluster.
operationId: get_cluster_utilization_api_v1_databricks_clusters__cluster_id__utilization_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: start_date
in: query
required: true
schema:
type: string
format: date
description: Start date for metrics
title: Start Date
description: Start date for metrics
- name: end_date
in: query
required: false
schema:
type: string
format: date
description: End date for metrics
title: End Date
description: End date for metrics
- name: granularity
in: query
required: false
schema:
type: string
description: 'Time granularity: ''day'', ''week'', or ''month'''
default: day
title: Granularity
description: 'Time granularity: ''day'', ''week'', or ''month'''
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterUtilizationResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/state-history:
get:
tags:
- Databricks Clusters
summary: Get cluster state history
description: Get state change history for a specific cluster.
operationId: get_cluster_state_history_api_v1_databricks_clusters__cluster_id__state_history_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: start_date
in: query
required: true
schema:
type: string
format: date
description: Start date
title: Start Date
description: Start date
- name: end_date
in: query
required: false
schema:
type: string
format: date
description: End date
title: End Date
description: End date
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterStateHistoryResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/cost:
get:
tags:
- Databricks Clusters
summary: Get cluster cost data
description: Get cost data for a specific cluster.
operationId: get_cluster_cost_api_v1_databricks_clusters__cluster_id__cost_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: start_date
in: query
required: true
schema:
type: string
format: date
description: Start date for cost data
title: Start Date
description: Start date for cost data
- name: end_date
in: query
required: false
schema:
type: string
format: date
description: End date for cost data
title: End Date
description: End date for cost data
- name: granularity
in: query
required: false
schema:
type: string
description: Time granularity (day, week, month)
default: day
title: Granularity
description: Time granularity (day, week, month)
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterCostResponse'
'403':
description: Not authorized
'404':
description: No ClickHouse database configured
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/auto-tune/status:
get:
tags:
- Databricks Clusters
summary: Page-level Auto Tune status for an all-purpose cluster
description: 'Read-only status for the Auto Tune tab on mount. Surfaces the
master toggle position, a live preflight snapshot for UI gating, and
the recommendation / enabled counts. No DB writes.'
operationId: get_cluster_auto_tune_status_api_v1_databricks_clusters__cluster_id__auto_tune_status_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: instance_id
in: query
required: true
schema:
type: integer
description: Tenant instance ID (workspace)
title: Instance Id
description: Tenant instance ID (workspace)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Optional Databricks workspace_id to scope the lookup.
title: Workspace Id
description: Optional Databricks workspace_id to scope the lookup.
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/AutoTuneStatusResponse'
'403':
description: Not authorized
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/auto-tune/recommendations:
get:
tags:
- Databricks Clusters
summary: Active Auto Tune recommendations for an all-purpose cluster
description: 'Worker Sizing (resize) + Auto Termination (auto_terminate) recs for
the cluster, each annotated with its resolved sub-toggle state.'
operationId: get_cluster_auto_tune_recommendations_api_v1_databricks_clusters__cluster_id__auto_tune_recommendations_get
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: instance_id
in: query
required: true
schema:
type: integer
description: Tenant instance ID (workspace)
title: Instance Id
description: Tenant instance ID (workspace)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Optional Databricks workspace_id to scope the lookup.
title: Workspace Id
description: Optional Databricks workspace_id to scope the lookup.
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterAutoTuneRecommendationsResponse'
'403':
description: Not authorized
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/databricks/clusters/{cluster_id}/auto-tune/toggle:
patch:
tags:
- Databricks Clusters
summary: Toggle Auto Tune for an all-purpose cluster (master or sub-toggle)
description: 'Enable/disable Auto Tune for the cluster. ``rec_type=None`` is the
master toggle (flips both sub-toggles). Records config + audit only;
no Databricks edit. On enable, the cluster permission preflight runs
first and blocks the write if the SP can''t manage the cluster.'
operationId: toggle_cluster_auto_tune_api_v1_databricks_clusters__cluster_id__auto_tune_toggle_patch
deprecated: true
security:
- HTTPBearer: []
- HTTPBearer: []
parameters:
- name: cluster_id
in: path
required: true
schema:
type: string
title: Cluster Id
- name: instance_id
in: query
required: true
schema:
type: integer
description: Tenant instance ID (workspace)
title: Instance Id
description: Tenant instance ID (workspace)
- name: workspace_id
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
description: Optional Databricks workspace_id to scope the lookup.
title: Workspace Id
description: Optional Databricks workspace_id to scope the lookup.
- name: navigationSource
in: query
required: false
schema:
anyOf:
- type: string
- type: 'null'
title: Navigationsource
- name: x-tenant
in: header
required: true
schema:
type: string
title: X-Tenant
requestBody
# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/altimate-ai/refs/heads/main/openapi/altimate-ai-databricks-clusters-api-openapi.yml