Databricks Job

The Databricks Job job type triggers a single-task Databricks Job (typically a JAR / Python script / SQL task — anything other than a multi-task workflow or a standalone notebook) via POST jobs/run-now (Jobs API 2.1). The Databricks Job is identified by its numeric Job Id — Polysync stores that id (as a string) in the Job's External Id.

This job type is supported on the Azure Databricks platform.

Multi-task Databricks Jobs are imported as Databricks Workflow instead. Standalone notebooks are imported as Databricks Notebook.

Required job fields

  • External Id — the numeric Databricks Job Id (e.g., 42). Parsed back to a long before the API call.
  • Job TypeDatabricks Job (set automatically on import).

Job discovery

Polysync calls jobs/list (Jobs API 2.0) and classifies each entry based on settings.tasks:

  • 1 task that is not a notebook_taskDatabricks Job.
  • More than one task → Databricks Workflow.
  • A standalone notebook_taskDatabricks Notebook.

A follow-up jobs/get?job_id={id} call populates the parameter schema from settings.job_parameters[], settings.parameters[], and the task's base_parameters.

Parameter handling

Identical to Databricks Workflow — values are sent through job_parameters on the run-now request:

{
  "job_id": <numeric-job-id>,
  "job_parameters": {
    "<parameter-name>": "<value>"
  }
}
Direction Sent in run-now Updated from response
Input
Output (not supported)
Input&Output (not supported)

Output parameters are not supported.

Execution flow

  1. Polysync posts to jobs/run-now.
  2. The response run_id becomes the Polysync RunId.
  3. Status is polled via GET jobs/runs/get?run_id={runId} using the same life_cycle_state + result_state mapping as the other Databricks job types (see table).
  4. Cancel is supported via POST jobs/runs/cancel.

Monitor URL

Polysync uses run_page_url from the run-now response when present, otherwise {workspace_url}/#job/{run_id}/run/1.

Troubleshooting

  • Job not found on importjobs/list paginates; very large workspaces may exceed the default page size. Re-run Get Pipelines to fetch the next page, or filter from the Databricks UI to confirm the Job exists.
  • Parameter ignored at run time — declare the parameter on the Databricks Job's job-level parameters rather than the task's base_parameters, then click Sync Parameters.