---
title: "Page-level Auto Tune status for a job"
method: GET
path: "/api/v1/databricks/jobs/{job_id}/auto-tune/status"
tags: ["DATABRICKS", "Databricks", "Databricks Jobs"]
---

# Page-level Auto Tune status for a job

`GET /api/v1/databricks/jobs/{job_id}/auto-tune/status`

## Request

- Base URL: `https://api.myaltimate.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.myaltimate.com/api/v1/databricks/jobs/{job_id}/auto-tune/status`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Read-only status endpoint consumed by the Auto Tune tab on mount.

Aggregates ``auto_tune_mode`` across every (entity_id, task_key) row
for this job: master is "enabled" if ANY task is enabled. Surfaces a
job-level preflight result so the FE can disable the master Switch
when the SP can't act on the workspace, with the exact actionable
message we'd show on a real toggle attempt. Also returns
``recommendation_count`` so the FE can gate the Auto Tune tab.
Savings figures are not computed here — the FE derives its overall
savings tiles from the per-day ``/auto-tune/savings-trends`` series
(ClickHouse ``dbx_jobs_cost_savings``).

No DB writes — the preflight result is a snapshot for UI gating only.

## Path parameters

- `job_id` string, required

## Query parameters

- `instance_id` integer, required: Tenant instance ID (workspace) the job runs in
- `workspace_id` string, nullable: Optional Databricks workspace_id to scope queries to a specific workspace within the tenant's Databricks account. Defends against cross-workspace job_id collisions. When omitted, resolves ownership from job inventory.
- `navigationSource` string, nullable

## Headers

- `x-tenant` string, required

## Response `200`

Successful Response

- AutoTuneStatusResponse: Page-level status for the Auto Tune tab. Returned by GET /databricks/jobs/{job_id}/auto-tune/status. The FE uses this on JobDetail page mount to drive: - Master toggle position in the page header (auto_tune_mode). - Explicit active/monitoring/disabled/unavailable UI state (state). - Whether the toggle is interactive or disabled with a HoverCard explaining why (preflight.blocked + actionable_message). - Whether the Auto Tune tab content renders the full panel or the empty state (recommendation_count + auto_tune_mode). Read-only — no DB writes happen on this call.
  - `state` 'enabled_active' | 'enabled_monitoring' | 'disabled' | 'unavailable', nullable
  - `has_applied` boolean
  - `auto_tune_mode` string, nullable: "enabled" if any task on the job has Auto Tune turned on. "disabled" if all active-recommendation tasks are off. None when there are no recommendations and no stored enrollment.
  - `preflight` ToggleAutoTunePreflight: Surfaced to the FE so it can render an actionable error inline. When ``blocked=False`` the toggle pipeline ran. When ``blocked=True`` no DB writes happened and ``actionable_message`` should be shown to the user verbatim (e.g. "ask your workspace admin to add r5.xlarge to the policy allowlist").
    - `blocked` boolean
    - `reason` string, nullable
    - `actionable_message` string, nullable
    - `can_manage_blocked` boolean
    - `turn_off_allowed` boolean
  - `recommendation_count` integer
  - `axis_flags` object, nullable
  - `axis_preflight` object, nullable
  - `at_scoped_spend_usd` number, nullable
  - `tasks_enabled` integer
  - `tasks_total` integer
  - `annualized_cost_savings_usd` number, nullable
  - `additional_potential_savings_usd_per_month` number, nullable
  - `realized_savings_usd` number, nullable
  - `infra_cost_available` boolean, nullable

## Other responses

- `403`: Not authorized
- `422`: Validation Error

## Changes

- **2026-10-14** `1b2d675195d7`: 2 info
  - added the optional property `axis_preflight/anyOf[subschema #1]/additionalProperties/turn_off_allowed` to the response with the `200` status
  - added the optional property `preflight/turn_off_allowed` to the response with the `200` status
- **2026-09-30** `a1870d258a3a`: 2 info
  - added the optional property `axis_preflight` to the response with the `200` status
  - added the optional property `preflight/can_manage_blocked` to the response with the `200` status
- **2026-09-11** `70e0a3e5cb0d`: 2 info
  - added the optional property `has_applied` to the response with the `200` status
  - added the optional property `state` to the response with the `200` status
- **2026-09-02** `fcb62c79da95`: 4 info
  - added the optional property `additional_potential_savings_usd_per_month` to the response with the `200` status
  - added the optional property `annualized_cost_savings_usd` to the response with the `200` status
  - added the optional property `infra_cost_available` to the response with the `200` status
  - added the optional property `realized_savings_usd` to the response with the `200` status
- **2026-08-14** `7b73a4034706`: 1 info
  - added the optional property `axis_flags` to the response with the `200` status

[Operation history](https://skmtc.dev/myaltimate/apis/fastapi/changes/api/v1/databricks/jobs/:job_id/auto-tune/status/get.md)

---

[API](https://skmtc.dev/myaltimate/apis/fastapi.md) - [All operations](https://skmtc.dev/myaltimate/apis/fastapi/llms.txt) - [OpenAPI document](https://skmtc.dev/myaltimate/apis/fastapi/revisions/e0c123b49501?raw)
