---
title: "Get Databricks auto right-sizing recommendations for a job"
method: GET
path: "/api/v1/databricks/jobs/{job_id}/auto-recommendations"
tags: ["DATABRICKS", "Databricks", "Databricks Jobs"]
---

# Get Databricks auto right-sizing recommendations for a job

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

Return rows from `dbx_auto_recommendation` scoped to this job.

Each row carries ``auto_tune_mode`` projected via LEFT JOIN on
``databricks_auto_tune_configuration`` (PRD §6 Option A — single
source of truth for the toggle position) plus a server-computed
``monthly_savings_usd``.

Each item also carries ``depends_on`` (upstream task DAG edges from
``dbx_job_tasks_inventory.depends_on_keys``) and
``latest_action_event_type`` (most recent audit event_type per
task_key — drives the FE status pill).

## Path parameters

- `job_id` string, required

## Query parameters

- `instance_id` integer, required — Tenant instance ID (workspace) to scope the lookup
- `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 None, falls back to (instance_id, entity_id) lookup.
- `start_date` string, date, nullable — Start of the window the savings figures are summed over. Matches the shape of /auto-tune/savings-trends so the FE's date-range picker can drive both the chart and this drawer consistently. Defaults to 30 days before end_date when omitted.
- `end_date` string, date, nullable — End of the savings window (inclusive). Defaults to today (UTC) when omitted.
- `navigationSource` string, nullable

## Headers

- `x-tenant` string, required

## Response `200`

Successful Response

- DbxAutoRecommendationsResponse — List response for Databricks auto-recommendations.
  - `recommendations` DbxAutoRecommendationItem[], required
    - `entity_id` string, nullable
    - `entity_name` string, nullable
    - `entity_type` string, nullable
    - `task_key` string, nullable
    - `owned_by` string, nullable
    - `current_worker_node_type` string, nullable
    - `current_driver_node_type` string, nullable
    - `current_min_workers` integer, nullable
    - `current_max_workers` integer, nullable
    - `current_cost_per_hr` number, nullable
    - `recommended_worker_instance` string, nullable
    - `recommended_driver_instance` string, nullable
    - `recommended_min_workers` integer, nullable
    - `recommended_max_workers` integer, nullable
    - `recommended_cost_per_hr` number, nullable
    - `estimated_savings_pct` number, nullable
    - `efficiency_score` number, nullable
    - `reasoning` string, nullable
    - `model_confidence` number, nullable
    - `model_profile` string, nullable
    - `inference_start_date` string, date-time, nullable
    - `inference_end_date` string, date-time, nullable
    - `instance_id` integer, required
    - `updated_on` string, date-time, nullable
    - `monthly_savings_usd` number, nullable
    - `monthly_savings_min_usd` number, nullable
    - `realized_savings_usd` number, nullable
    - `monthly_dbu_savings_usd` number, nullable
    - `current_cost_per_hr_low` number, nullable
    - `recommended_cost_per_hr_low` number, nullable
    - `auto_tune_mode` string, nullable
    - `depends_on` string[]
    - `latest_action_event_type` string, nullable
  - `total_count` integer — Total number of recommendations returned

## Other responses

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

---

[API](https://skmtc.net/myaltimate/apis/fastapi.md) · [All operations](https://skmtc.net/myaltimate/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/myaltimate/fastapi/revisions/a71fce1f5c26/schema)
