@Generated public interface JobsService
You can use a Databricks job to run a data processing or data analysis task in a Databricks cluster with scalable resources. Your job can consist of a single task or can be a large, multi-task workflow with complex dependencies. Databricks manages the task orchestration, cluster management, monitoring, and error reporting for all of your jobs. You can run your jobs immediately or periodically through an easy-to-use scheduling system. You can implement job tasks using notebooks, JARS, Spark Declarative Pipelines, or Python, Scala, Spark submit, and Java applications.
You should never hard code secrets or store them in plain text. Use the [Secrets CLI] to manage secrets in the [Databricks CLI]. Use the [Secrets utility] to reference secrets in notebooks and jobs.
[Databricks CLI]: https://docs.databricks.com/dev-tools/cli/index.html [Secrets CLI]: https://docs.databricks.com/dev-tools/cli/secrets-cli.html [Secrets utility]: https://docs.databricks.com/dev-tools/databricks-utils.html#dbutils-secrets
This is the high-level interface, that contains generated methods.
Evolving: this interface is under development. Method signatures may change.
| Modifier and Type | Method and Description |
|---|---|
void |
cancelAllRuns(CancelAllRuns cancelAllRuns)
Cancels all active runs of a job.
|
void |
cancelRun(CancelRun cancelRun)
Cancels a job run or a task run.
|
CreateResponse |
create(CreateJob createJob)
Create a new job.
|
void |
delete(DeleteJob deleteJob)
Deletes a job.
|
void |
deleteRun(DeleteRun deleteRun)
Deletes a non-active run.
|
ExportRunOutput |
exportRun(ExportRunRequest exportRunRequest)
Export and retrieve the job run task.
|
Job |
get(GetJobRequest getJobRequest)
Retrieves the details for a single job.
|
GetJobPermissionLevelsResponse |
getPermissionLevels(GetJobPermissionLevelsRequest getJobPermissionLevelsRequest)
Gets the permission levels that a user can have on an object.
|
JobPermissions |
getPermissions(GetJobPermissionsRequest getJobPermissionsRequest)
Gets the permissions of a job.
|
Run |
getRun(GetRunRequest getRunRequest)
Retrieves the metadata of a run.
|
RunOutput |
getRunOutput(GetRunOutputRequest getRunOutputRequest)
Retrieve the output and metadata of a single task run.
|
ListJobsResponse |
list(ListJobsRequest listJobsRequest)
Retrieves a list of jobs.
|
ListRunsResponse |
listRuns(ListRunsRequest listRunsRequest)
List runs in descending order by start time.
|
RepairRunResponse |
repairRun(RepairRun repairRun)
Re-run one or more tasks.
|
void |
reset(ResetJob resetJob)
Overwrite all settings for the given job.
|
RunNowResponse |
runNow(RunNow runNow)
Run a job and return the `run_id` of the triggered run.
|
JobPermissions |
setPermissions(JobPermissionsRequest jobPermissionsRequest)
Sets permissions on an object, replacing existing permissions if they exist.
|
SubmitRunResponse |
submit(SubmitRun submitRun)
Submit a one-time run.
|
void |
update(UpdateJob updateJob)
Add, update, or remove specific settings of an existing job.
|
JobPermissions |
updatePermissions(JobPermissionsRequest jobPermissionsRequest)
Updates the permissions on a job.
|
void cancelAllRuns(CancelAllRuns cancelAllRuns)
void cancelRun(CancelRun cancelRun)
CreateResponse create(CreateJob createJob)
void delete(DeleteJob deleteJob)
void deleteRun(DeleteRun deleteRun)
ExportRunOutput exportRun(ExportRunRequest exportRunRequest)
Job get(GetJobRequest getJobRequest)
Large arrays in the results will be paginated when they exceed 100 elements. A request for a single job will return all properties for that job, and the first 100 elements of array properties (`tasks`, `job_clusters`, `environments` and `parameters`). Use the `next_page_token` field to check for more results and pass its value as the `page_token` in subsequent requests. If any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.
GetJobPermissionLevelsResponse getPermissionLevels(GetJobPermissionLevelsRequest getJobPermissionLevelsRequest)
JobPermissions getPermissions(GetJobPermissionsRequest getJobPermissionsRequest)
Run getRun(GetRunRequest getRunRequest)
Large arrays in the results will be paginated when they exceed 100 elements. A request for a single run will return all properties for that run, and the first 100 elements of array properties (`tasks`, `job_clusters`, `job_parameters` and `repair_history`). Use the next_page_token field to check for more results and pass its value as the page_token in subsequent requests. If any array properties have more than 100 elements, additional results will be returned on subsequent requests. Arrays without additional results will be empty on later pages.
RunOutput getRunOutput(GetRunOutputRequest getRunOutputRequest)
This endpoint validates that the __run_id__ parameter is valid and returns an HTTP status code 400 if the __run_id__ parameter is invalid. Runs are automatically removed after 60 days. If you to want to reference them beyond 60 days, you must save old run results before they expire.
ListJobsResponse list(ListJobsRequest listJobsRequest)
ListRunsResponse listRuns(ListRunsRequest listRunsRequest)
RepairRunResponse repairRun(RepairRun repairRun)
void reset(ResetJob resetJob)
RunNowResponse runNow(RunNow runNow)
JobPermissions setPermissions(JobPermissionsRequest jobPermissionsRequest)
SubmitRunResponse submit(SubmitRun submitRun)
**Important:** Jobs submitted using this endpoint are not saved as a job. They do not show up in the Jobs UI, and do not retry when they fail. Because they are not saved, Databricks cannot auto-optimize serverless compute in case of failure. If your job fails, you may want to use classic compute to specify the compute needs for the job. Alternatively, use the `POST /jobs/create` and `POST /jobs/run-now` endpoints to create and run a saved job.
void update(UpdateJob updateJob)
JobPermissions updatePermissions(JobPermissionsRequest jobPermissionsRequest)
Copyright © 2026. All rights reserved.