Databricks Job Run
Description
The Databricks Job Run action triggers a job on a Databricks workspace via the Jobs REST API and can wait until the run finishes. It stores Job ID, Run ID, and status in workflow variables for downstream actions.
Use a Databricks Connection (workspace host + personal access token). This is not the JDBC SQL warehouse connection.
Modes
| Mode | Behavior |
|---|---|
Run existing job | Calls |
One-time submit | Calls |
Deploy & run | Uploads fat jar, pipeline |
Wait modes
| Wait mode | Behavior |
|---|---|
Wait for completion | Polls |
Fire and forget | Returns as soon as the run is accepted; does not poll. Pair with Databricks Job Wait later in the workflow (using |
If the parent workflow is stopped while waiting, the action attempts to cancel the Databricks run.
Result variables
Default variable names (configurable on the Run tab):
| Variable | Content |
|---|---|
| Job ID (when known) |
| Run ID |
| Life-cycle or result state ( |
| Run page URL when returned by the API |
| Error message on failure |
Options
Job tab
| Option | Description |
|---|---|
Databricks connection | Databricks Connection metadata name |
Mode | Run existing job / One-time submit / Deploy & run |
Job ID | Numeric job id for run-now or update-existing deploy |
Job name / Update existing job | Name for create; if Update existing job is checked, Job ID is reset with the new settings (Deploy & run) |
Submit JSON | Full JSON body for runs/submit (one-time mode) |
Deploy tab
| Option | Description |
|---|---|
Fat jar / Pipeline / Run configuration | Deploy mode: local fat jar (prefer |
DBFS / Volume base directory | Upload root for deploy artifacts. Fat jar: content-addressed |
Package tab
| Option | Description |
|---|---|
Upload Spark project package | When checked, export (or upload an existing zip) a Native Spark project package so nested Simple Mapping / Pipeline Executor files under |
Project home / Project package file | Home used for export (default |
Environment config file | Optional described-variables JSON uploaded as |
Compute tab
| Option | Description |
|---|---|
Cluster / compute | Classic existing: paste the all-purpose cluster id — cluster access mode must be Dedicated (not Standard/shared; Standard is Spark Connect and has no |
new_cluster spark_version / node_type_id / num_workers / JSON | Used when compute is |
Serverless environment_key / client | Used when compute is |
Run tab
| Option | Description |
|---|---|
Wait mode | Wait for completion or fire and forget |
Timeout (seconds) | Maximum wait; |
Poll interval (seconds) | Delay between status polls (default 15) |
Result variable names | Override default variable names above |
Related
-
Native Spark on Databricks — workspace tiers, classic vs serverless, UC Volumes, Deploy & run checklist
-
Databricks Job Wait — poll a run after fire-and-forget
-
Native Spark — fat jar / MainSpark for JAR tasks on the cluster
-
Databricks JDBC — SQL warehouse (different use case)
Deploy tips
-
See the full guide: Native Spark on Databricks.
-
Generate a fat jar with
hop-conf.sh --generate-fat-jar=… --spark-client-version=native-providedwhen the cluster already provides Spark. -
The run configuration name must exist in the project metadata that is exported at deploy time.
-
UC Volumes (
/Volumes/…): uploads use the Files API (PUT /api/2.0/fs/files/…, up to ~5 GiB). -
Classic DBFS (
dbfs:/FileStore/…): uploads use DBFS create / add-block / close. Public DBFS root is often disabled on newer workspaces — use a volume instead. -
Large jar uploads can take several minutes.