import { z } from "zod"; //#region src/v2/model.d.ts declare const AuthenticationMethod: { readonly OAUTH: "OAUTH"; readonly PAT: "PAT"; }; type AuthenticationMethod = (typeof AuthenticationMethod)[keyof typeof AuthenticationMethod] | (string & {}); /** * Availability type used for all subsequent nodes past the `first_on_demand` ones. * * Note: If `first_on_demand` is zero, this availability type will be used for the entire cluster. */ declare const AwsAvailability: { /** Use spot instances. */readonly SPOT: "SPOT"; /** Use on-demand instances. */ readonly ON_DEMAND: "ON_DEMAND"; /** * Preferably use spot instances, but fall back to on-demand instances if spot instances cannot * be acquired (e.g., if AWS spot prices are too high). */ readonly SPOT_WITH_FALLBACK: "SPOT_WITH_FALLBACK"; }; type AwsAvailability = (typeof AwsAvailability)[keyof typeof AwsAvailability] | (string & {}); /** * Availability type used for all subsequent nodes past the `first_on_demand` ones. * Note: If `first_on_demand` is zero, this availability type will be used for the entire cluster. */ declare const AzureAvailability: { /** Use spot instances. */readonly SPOT_AZURE: "SPOT_AZURE"; /** Use on-demand instances. */ readonly ON_DEMAND_AZURE: "ON_DEMAND_AZURE"; /** * Preferably use spot instances, but fall back to on-demand instances if spot instances cannot * be acquired (e.g., if Azure is out of Quota). */ readonly SPOT_WITH_FALLBACK_AZURE: "SPOT_WITH_FALLBACK_AZURE"; }; type AzureAvailability = (typeof AzureAvailability)[keyof typeof AzureAvailability] | (string & {}); /** * The kind of compute described by this compute specification. * * Depending on `kind`, different validations and default values will be applied. * * Clusters with `kind = CLASSIC_PREVIEW` support the following fields, whereas clusters with no specified `kind` do not. * * [is_single_node](/api/workspace/clusters/create#is_single_node) * * [use_ml_runtime](/api/workspace/clusters/create#use_ml_runtime) * * By using the [simple form](https://docs.databricks.com/compute/simple-form.html), your clusters are automatically using `kind = CLASSIC_PREVIEW`. */ declare const ComputeKind: { readonly COMPUTE_KIND_UNSPECIFIED: "COMPUTE_KIND_UNSPECIFIED"; readonly CLASSIC_PREVIEW: "CLASSIC_PREVIEW"; }; type ComputeKind = (typeof ComputeKind)[keyof typeof ComputeKind] | (string & {}); /** * Confidential computing technology for GCP instances. * Aligns with gcloud's --confidential-compute-type flag and the REST API's * confidentialInstanceConfig.confidentialInstanceType field. * See: https://cloud.google.com/confidential-computing/confidential-vm/docs/create-a-confidential-vm-instance */ declare const ConfidentialComputeType: { readonly CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED: "CONFIDENTIAL_COMPUTE_TYPE_UNSPECIFIED"; readonly CONFIDENTIAL_COMPUTE_TYPE_NONE: "CONFIDENTIAL_COMPUTE_TYPE_NONE"; readonly SEV_SNP: "SEV_SNP"; }; type ConfidentialComputeType = (typeof ConfidentialComputeType)[keyof typeof ConfidentialComputeType] | (string & {}); /** * Data security mode decides what data governance model to use when accessing data * from a cluster. * * * `DATA_SECURITY_MODE_AUTO`: will choose the most appropriate access mode depending on your compute configuration. * * `DATA_SECURITY_MODE_STANDARD`: A secure cluster that can be shared by multiple users. Cluster users are fully isolated so that they cannot see each other’s data and credentials. Most data governance features are supported in this mode. But programming languages and cluster features might be limited. * * `DATA_SECURITY_MODE_DEDICATED`: A secure cluster that can only be exclusively used by a single user specified in `single_user_name`. Most programming languages, cluster features and data governance features are available in this mode. * * The following modes are legacy aliases for the above modes: * * * `USER_ISOLATION`: Legacy alias for `DATA_SECURITY_MODE_STANDARD`. * * `SINGLE_USER`: Legacy alias for `DATA_SECURITY_MODE_DEDICATED`. * * The following modes are deprecated starting with Databricks Runtime 15.0 and * will be removed for future Databricks Runtime versions: * * * `LEGACY_TABLE_ACL`: This mode is for users migrating from legacy Table ACL clusters. * * `LEGACY_PASSTHROUGH`: This mode is for users migrating from legacy Passthrough on high concurrency clusters. * * `LEGACY_SINGLE_USER`: This mode is for users migrating from legacy Passthrough on standard clusters. * * `LEGACY_SINGLE_USER_STANDARD`: This mode provides a way that doesn’t have UC nor passthrough enabled. */ declare const DataSecurityMode: { /** * No security isolation for multiple users sharing the cluster. Data governance features * are not available in this mode. */ readonly NONE: "NONE"; /** Legacy alias for `DATA_SECURITY_MODE_DEDICATED`. */ readonly SINGLE_USER: "SINGLE_USER"; /** Legacy alias for `DATA_SECURITY_MODE_STANDARD`. */ readonly USER_ISOLATION: "USER_ISOLATION"; /** This mode is for users migrating from legacy Table ACL clusters. */ readonly LEGACY_TABLE_ACL: "LEGACY_TABLE_ACL"; /** This mode is for users migrating from legacy Passthrough on high concurrency clusters. */ readonly LEGACY_PASSTHROUGH: "LEGACY_PASSTHROUGH"; /** This mode is for users migrating from legacy Passthrough on standard clusters. */ readonly LEGACY_SINGLE_USER: "LEGACY_SINGLE_USER"; /** This is mode where single user is enforced but no actual security feature enabled. */ readonly LEGACY_SINGLE_USER_STANDARD: "LEGACY_SINGLE_USER_STANDARD"; /** * A secure cluster that can be shared by multiple users. Cluster users are fully isolated * so that they cannot see each other's data and credentials. Most data governance features * are supported in this mode. But programming languages and cluster features might be limited. */ readonly DATA_SECURITY_MODE_STANDARD: "DATA_SECURITY_MODE_STANDARD"; /** * A secure cluster that can only be exclusively used by a single user specified in * `single_user_name`. Most programming languages, cluster features and data governance * features are available in this mode. */ readonly DATA_SECURITY_MODE_DEDICATED: "DATA_SECURITY_MODE_DEDICATED"; /** * Databricks will choose `DATA_SECURITY_MODE_STANDARD` or `DATA_SECURITY_MODE_DEDICATED` * depending on the compute configuration. */ readonly DATA_SECURITY_MODE_AUTO: "DATA_SECURITY_MODE_AUTO"; }; type DataSecurityMode = (typeof DataSecurityMode)[keyof typeof DataSecurityMode] | (string & {}); /** Response enumeration from calling the dbt platform API, for inclusion in output */ declare const DbtPlatformRunStatus: { readonly DBT_PLATFORM_RUN_STATUS_UNSPECIFIED: "DBT_PLATFORM_RUN_STATUS_UNSPECIFIED"; readonly QUEUED: "QUEUED"; readonly STARTING: "STARTING"; readonly RUNNING: "RUNNING"; readonly SUCCESS: "SUCCESS"; readonly ERROR: "ERROR"; readonly CANCELLED: "CANCELLED"; }; type DbtPlatformRunStatus = (typeof DbtPlatformRunStatus)[keyof typeof DbtPlatformRunStatus] | (string & {}); /** * Controls dependency configuration for the cluster. * * * `DEPENDENCY_MODE_AUTO`: will choose the most appropriate dependency mode based on your compute configuration. * * `DEPENDENCY_MODE_ENVIRONMENTS`: Enables a unified dependency management experience across classic and serverless, resulting in increased stability and performance. Supported only on DBR 19+ in Standard access mode. * * `DEPENDENCY_MODE_CLUSTER_LIBRARIES`: Legacy mode: dependencies come from cluster libraries and init scripts. */ declare const DependencyMode: { readonly DEPENDENCY_MODE_UNSPECIFIED: "DEPENDENCY_MODE_UNSPECIFIED"; readonly DEPENDENCY_MODE_ENVIRONMENTS: "DEPENDENCY_MODE_ENVIRONMENTS"; readonly DEPENDENCY_MODE_CLUSTER_LIBRARIES: "DEPENDENCY_MODE_CLUSTER_LIBRARIES"; readonly DEPENDENCY_MODE_AUTO: "DEPENDENCY_MODE_AUTO"; }; type DependencyMode = (typeof DependencyMode)[keyof typeof DependencyMode] | (string & {}); /** * All EBS volume types that supports. * See https://aws.amazon.com/ebs/details/ for details. */ declare const EbsVolumeType: { /** Provision extra storage using AWS gp2 EBS volumes. */readonly GENERAL_PURPOSE_SSD: "GENERAL_PURPOSE_SSD"; /** Provision extra storage using AWS st1 volumes. */ readonly THROUGHPUT_OPTIMIZED_HDD: "THROUGHPUT_OPTIMIZED_HDD"; }; type EbsVolumeType = (typeof EbsVolumeType)[keyof typeof EbsVolumeType] | (string & {}); declare const Format: { readonly SINGLE_TASK: "SINGLE_TASK"; readonly MULTI_TASK: "MULTI_TASK"; }; type Format = (typeof Format)[keyof typeof Format] | (string & {}); /** * This field determines whether the instance pool will contain preemptible * VMs, on-demand VMs, or preemptible VMs with a fallback to on-demand VMs if the former is unavailable. */ declare const GcpAvailability: { readonly PREEMPTIBLE_GCP: "PREEMPTIBLE_GCP"; readonly ON_DEMAND_GCP: "ON_DEMAND_GCP"; readonly PREEMPTIBLE_WITH_FALLBACK_GCP: "PREEMPTIBLE_WITH_FALLBACK_GCP"; }; type GcpAvailability = (typeof GcpAvailability)[keyof typeof GcpAvailability] | (string & {}); /** * HardwareAcceleratorType: The type of hardware accelerator to use for compute workloads. * NOTE: This enum is referenced and is intended to be used by other services * that need to specify hardware accelerator requirements for AI compute workloads. */ declare const HardwareAcceleratorType: { /** GPU_1xA10: Single A10 GPU configuration. */readonly GPU_1X_A10: "GPU_1xA10"; /** GPU_8xH100: 8x H100 GPU configuration. */ readonly GPU_8X_H100: "GPU_8xH100"; }; type HardwareAcceleratorType = (typeof HardwareAcceleratorType)[keyof typeof HardwareAcceleratorType] | (string & {}); /** * Edit mode of the job. * * * `UI_LOCKED`: The job is in a locked UI state and cannot be modified. * * `EDITABLE`: The job is in an editable state and can be modified. */ declare const JobEditMode: { readonly UI_LOCKED: "UI_LOCKED"; readonly EDITABLE: "EDITABLE"; }; type JobEditMode = (typeof JobEditMode)[keyof typeof JobEditMode] | (string & {}); /** * Specifies the health metric that is being evaluated for a particular health rule. * * * `RUN_DURATION_SECONDS`: Expected total time for a run in seconds. * * `STREAMING_BACKLOG_BYTES`: An estimate of the maximum bytes of data waiting to be consumed across all streams. This metric is in Public Preview. * * `STREAMING_BACKLOG_RECORDS`: An estimate of the maximum offset lag across all streams. This metric is in Public Preview. * * `STREAMING_BACKLOG_SECONDS`: An estimate of the maximum consumer delay across all streams. This metric is in Public Preview. * * `STREAMING_BACKLOG_FILES`: An estimate of the maximum number of outstanding files across all streams. This metric is in Public Preview. */ declare const JobsHealthMetric: { readonly RUN_DURATION_SECONDS: "RUN_DURATION_SECONDS"; readonly STREAMING_BACKLOG_BYTES: "STREAMING_BACKLOG_BYTES"; readonly STREAMING_BACKLOG_RECORDS: "STREAMING_BACKLOG_RECORDS"; readonly STREAMING_BACKLOG_SECONDS: "STREAMING_BACKLOG_SECONDS"; readonly STREAMING_BACKLOG_FILES: "STREAMING_BACKLOG_FILES"; }; type JobsHealthMetric = (typeof JobsHealthMetric)[keyof typeof JobsHealthMetric] | (string & {}); /** Specifies the operator used to compare the health metric value with the specified threshold. */ declare const JobsHealthOperator: { readonly GREATER_THAN: "GREATER_THAN"; }; type JobsHealthOperator = (typeof JobsHealthOperator)[keyof typeof JobsHealthOperator] | (string & {}); /** * The repair history item type. Indicates whether a run is the original run or * a repair run. */ declare const RepairType: { readonly ORIGINAL: "ORIGINAL"; readonly REPAIR: "REPAIR"; }; type RepairType = (typeof RepairType)[keyof typeof RepairType] | (string & {}); /** * The type of a run. * * `JOB_RUN`: Normal job run. A run created with :method:jobs/runNow. * * `WORKFLOW_RUN`: Workflow run. A run created with [dbutils.notebook.run](/dev-tools/databricks-utils.html#dbutils-workflow). * * `SUBMIT_RUN`: Submit run. A run created with :method:jobs/submit. */ declare const RunType: { readonly JOB_RUN: "JOB_RUN"; readonly WORKFLOW_RUN: "WORKFLOW_RUN"; readonly SUBMIT_RUN: "SUBMIT_RUN"; }; type RunType = (typeof RunType)[keyof typeof RunType] | (string & {}); declare const RuntimeEngine: { /** * Default value. In this case, ignore the RUNTIME_ENGINE * parameter and do a spark version lookup entirely on the sparkVersion string. */ readonly NULL: "NULL"; /** Use standard engine */ readonly STANDARD: "STANDARD"; /** Use Photon engine */ readonly PHOTON: "PHOTON"; }; type RuntimeEngine = (typeof RuntimeEngine)[keyof typeof RuntimeEngine] | (string & {}); declare const SchedulePauseStatus: { readonly UNPAUSED: "UNPAUSED"; readonly PAUSED: "PAUSED"; }; type SchedulePauseStatus = (typeof SchedulePauseStatus)[keyof typeof SchedulePauseStatus] | (string & {}); /** * Optional location type of the SQL file. When set to `WORKSPACE`, the SQL file will be retrieved\ * from the local workspace. When set to `GIT`, the SQL file will be retrieved from a Git repository * defined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise. * * * `WORKSPACE`: SQL file is located in workspace. * * `GIT`: SQL file is located in cloud Git provider. */ declare const Source: { readonly WORKSPACE: "WORKSPACE"; readonly GIT: "GIT"; }; type Source = (typeof Source)[keyof typeof Source] | (string & {}); /** * The strategy used to evaluate a SQL condition trigger against a query result set. * * * `SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED`: Sentinel zero-value. Not a valid input — the * validator rejects this when sent explicitly. Internally treated as `QUERY_RETURNS_ROWS` * when reading legacy data that predates this field. * * `QUERY_RETURNS_ROWS`: Fires whenever the result set has at least one row. Zero rows means * the condition is not met. This is the original SQL condition behavior. * * `RESULT_VALUE_CHANGES`: Fires whenever the query's single result value differs from the * previous evaluation. The first evaluation always fires. Queries must return exactly one * cell (one row, one column). */ declare const SqlConditionTriggerMode: { readonly SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED: "SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED"; readonly QUERY_RETURNS_ROWS: "QUERY_RETURNS_ROWS"; readonly RESULT_VALUE_CHANGES: "RESULT_VALUE_CHANGES"; }; type SqlConditionTriggerMode = (typeof SqlConditionTriggerMode)[keyof typeof SqlConditionTriggerMode] | (string & {}); declare const StorageMode: { readonly DIRECT_QUERY: "DIRECT_QUERY"; readonly IMPORT: "IMPORT"; readonly DUAL: "DUAL"; }; type StorageMode = (typeof StorageMode)[keyof typeof StorageMode] | (string & {}); /** * An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`. * * Possible values are: * * `ALL_SUCCESS`: All dependencies have executed and succeeded * * `AT_LEAST_ONE_SUCCESS`: At least one dependency has succeeded * * `NONE_FAILED`: None of the dependencies have failed and at least one was executed * * `ALL_DONE`: All dependencies have been completed * * `AT_LEAST_ONE_FAILED`: At least one dependency failed * * `ALL_FAILED`: ALl dependencies have failed */ declare const TaskDependencyType: { readonly ALL_SUCCESS: "ALL_SUCCESS"; readonly ALL_DONE: "ALL_DONE"; readonly NONE_FAILED: "NONE_FAILED"; readonly AT_LEAST_ONE_SUCCESS: "AT_LEAST_ONE_SUCCESS"; readonly ALL_FAILED: "ALL_FAILED"; readonly AT_LEAST_ONE_FAILED: "AT_LEAST_ONE_FAILED"; }; type TaskDependencyType = (typeof TaskDependencyType)[keyof typeof TaskDependencyType] | (string & {}); /** * task retry mode of the continuous job * * NEVER: The failed task will not be retried. * * ON_FAILURE: Retry a failed task if at least one other task in the job is still running its first attempt. * When this condition is no longer met or the retry limit is reached, the job run is cancelled and a new run is started. */ declare const TaskRetryMode: { readonly NEVER: "NEVER"; readonly ON_FAILURE: "ON_FAILURE"; }; type TaskRetryMode = (typeof TaskRetryMode)[keyof typeof TaskRetryMode] | (string & {}); /** * The type of trigger that fired this run. * * * `PERIODIC`: Schedules that periodically trigger runs, such as a cron scheduler. * * `ONE_TIME`: One time triggers that fire a single run. This occurs you triggered a single run on demand through the UI or the API. * * `RETRY`: Indicates a run that is triggered as a retry of a previously failed run. This occurs when you request to re-run the job in case of failures. * * `RUN_JOB_TASK`: Indicates a run that is triggered using a Run Job task. * * `FILE_ARRIVAL`: Indicates a run that is triggered by a file arrival. * * `CONTINUOUS`: Indicates a run that is triggered by a continuous job. * * `TABLE`: Indicates a run that is triggered by a table update. * * `CONTINUOUS_RESTART`: Indicates a run created by user to manually restart a continuous job run. * * `MODEL`: Indicates a run that is triggered by a model update. */ declare const TriggerType: { readonly PERIODIC: "PERIODIC"; readonly ONE_TIME: "ONE_TIME"; readonly RETRY: "RETRY"; readonly RUN_JOB_TASK: "RUN_JOB_TASK"; readonly FILE_ARRIVAL: "FILE_ARRIVAL"; readonly CONTINUOUS: "CONTINUOUS"; readonly TABLE: "TABLE"; readonly CONTINUOUS_RESTART: "CONTINUOUS_RESTART"; }; type TriggerType = (typeof TriggerType)[keyof typeof TriggerType] | (string & {}); /** * * `NOTEBOOK`: Notebook view item. * * `DASHBOARD`: Dashboard view item. */ declare const ViewType: { readonly NOTEBOOK: "NOTEBOOK"; readonly DASHBOARD: "DASHBOARD"; }; type ViewType = (typeof ViewType)[keyof typeof ViewType] | (string & {}); /** * * `CODE`: Code view of the notebook. * * `DASHBOARDS`: All dashboard views of the notebook. * * `ALL`: All views of the notebook. */ declare const ViewsToExport: { readonly CODE: "CODE"; readonly DASHBOARDS: "DASHBOARDS"; readonly ALL: "ALL"; }; type ViewsToExport = (typeof ViewsToExport)[keyof typeof ViewsToExport] | (string & {}); declare const AccessControlRequest_JobPermission: { readonly CAN_VIEW: "CAN_VIEW"; readonly CAN_MANAGE_RUN: "CAN_MANAGE_RUN"; readonly IS_OWNER: "IS_OWNER"; readonly CAN_MANAGE: "CAN_MANAGE"; }; type AccessControlRequest_JobPermission = (typeof AccessControlRequest_JobPermission)[keyof typeof AccessControlRequest_JobPermission] | (string & {}); /** Same alert evaluation state as in redash-v2/api/proto/alertsv2/alerts.proto */ declare const AlertEvaluationState_AlertEvaluationState: { readonly ALERT_EVALUATION_STATE_UNSPECIFIED: "ALERT_EVALUATION_STATE_UNSPECIFIED"; readonly UNKNOWN: "UNKNOWN"; readonly TRIGGERED: "TRIGGERED"; readonly OK: "OK"; readonly ERROR: "ERROR"; }; type AlertEvaluationState_AlertEvaluationState = (typeof AlertEvaluationState_AlertEvaluationState)[keyof typeof AlertEvaluationState_AlertEvaluationState] | (string & {}); /** * Copied from elastic-spark-common/api/messages/runs.proto. * Using the original definition to remove coupling with jobs API definition */ declare const CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState: { readonly RUN_LIFE_CYCLE_STATE_UNSPECIFIED: "RUN_LIFE_CYCLE_STATE_UNSPECIFIED"; readonly PENDING: "PENDING"; readonly RUNNING: "RUNNING"; readonly TERMINATING: "TERMINATING"; readonly TERMINATED: "TERMINATED"; readonly SKIPPED: "SKIPPED"; readonly INTERNAL_ERROR: "INTERNAL_ERROR"; readonly BLOCKED: "BLOCKED"; readonly WAITING_FOR_RETRY: "WAITING_FOR_RETRY"; readonly QUEUED: "QUEUED"; }; type CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState = (typeof CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState)[keyof typeof CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState] | (string & {}); /** * Copied from elastic-spark-common/api/messages/runs.proto. * Using the original definition to avoid cyclic dependency. */ declare const CleanRoomTaskRunResultState_CleanRoomTaskRunResultState: { readonly RUN_RESULT_STATE_UNSPECIFIED: "RUN_RESULT_STATE_UNSPECIFIED"; readonly SUCCESS: "SUCCESS"; readonly FAILED: "FAILED"; readonly TIMEDOUT: "TIMEDOUT"; readonly CANCELED: "CANCELED"; readonly MAXIMUM_CONCURRENT_RUNS_REACHED: "MAXIMUM_CONCURRENT_RUNS_REACHED"; readonly UPSTREAM_CANCELED: "UPSTREAM_CANCELED"; readonly UPSTREAM_FAILED: "UPSTREAM_FAILED"; readonly EXCLUDED: "EXCLUDED"; readonly EVICTED: "EVICTED"; readonly SUCCESS_WITH_FAILURES: "SUCCESS_WITH_FAILURES"; readonly UPSTREAM_EVICTED: "UPSTREAM_EVICTED"; /** 12 is reserved for previously used SUCCESS_WITH_SKIPPED_CELLS */ readonly DISABLED: "DISABLED"; }; type CleanRoomTaskRunResultState_CleanRoomTaskRunResultState = (typeof CleanRoomTaskRunResultState_CleanRoomTaskRunResultState)[keyof typeof CleanRoomTaskRunResultState_CleanRoomTaskRunResultState] | (string & {}); /** * Hardware accelerator type for the AiRuntime workload. Per-node * accelerator count is encoded in the value name (e.g. `GPU_8xH100` means * 8 H100s per node). */ declare const ComputeSpec_AcceleratorType: { /** Single A10 GPU per node. Good for development and small workloads. */readonly GPU_1X_A10: "GPU_1xA10"; /** Single H100 GPU per node. */ readonly GPU_1X_H100: "GPU_1xH100"; /** Eight H100 GPUs per node. Typical for distributed training. */ readonly GPU_8X_H100: "GPU_8xH100"; }; type ComputeSpec_AcceleratorType = (typeof ComputeSpec_AcceleratorType)[keyof typeof ComputeSpec_AcceleratorType] | (string & {}); /** * * `EQUAL_TO`, `NOT_EQUAL` operators perform string comparison of their operands. This means that `“12.0” == “12”` will evaluate to `false`. * * `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL` operators perform numeric comparison of their operands. `“12.0” >= “12”` will evaluate to `true`, `“10.0” >= “12”` will evaluate to `false`. * * The boolean comparison to task values can be implemented with operators `EQUAL_TO`, `NOT_EQUAL`. If a task value was set to a boolean value, it will be serialized to `“true”` or `“false”` for the comparison. */ declare const ConditionTask_ConditionTaskOperator: { readonly EQUAL_TO: "EQUAL_TO"; readonly GREATER_THAN: "GREATER_THAN"; readonly GREATER_THAN_OR_EQUAL: "GREATER_THAN_OR_EQUAL"; readonly LESS_THAN: "LESS_THAN"; readonly LESS_THAN_OR_EQUAL: "LESS_THAN_OR_EQUAL"; readonly NOT_EQUAL: "NOT_EQUAL"; }; type ConditionTask_ConditionTaskOperator = (typeof ConditionTask_ConditionTaskOperator)[keyof typeof ConditionTask_ConditionTaskOperator] | (string & {}); /** * * `BUNDLE`: The job is managed by Databricks Asset Bundle. * * `SYSTEM_MANAGED`: The job is managed by and is read-only. */ declare const JobDeployment_DeploymentKind: { readonly BUNDLE: "BUNDLE"; readonly SYSTEM_MANAGED: "SYSTEM_MANAGED"; }; type JobDeployment_DeploymentKind = (typeof JobDeployment_DeploymentKind)[keyof typeof JobDeployment_DeploymentKind] | (string & {}); /** * Dirty state indicates the job is not fully synced with the job specification * in the remote repository. * * Possible values are: * * `NOT_SYNCED`: The job is not yet synced with the remote job specification. Import the remote job specification from UI to make the job fully synced. * * `DISCONNECTED`: The job is temporary disconnected from the remote job specification and is allowed for live edit. Import the remote job specification again from UI to make the job fully synced. */ declare const JobSource_DirtyState: { readonly NOT_SYNCED: "NOT_SYNCED"; readonly DISCONNECTED: "DISCONNECTED"; }; type JobSource_DirtyState = (typeof JobSource_DirtyState)[keyof typeof JobSource_DirtyState] | (string & {}); declare const ModelTriggerConfiguration_ModelTriggerCondition: { readonly CONDITION_UNSPECIFIED: "CONDITION_UNSPECIFIED"; readonly MODEL_CREATED: "MODEL_CREATED"; readonly MODEL_VERSION_READY: "MODEL_VERSION_READY"; readonly MODEL_ALIAS_SET: "MODEL_ALIAS_SET"; }; type ModelTriggerConfiguration_ModelTriggerCondition = (typeof ModelTriggerConfiguration_ModelTriggerCondition)[keyof typeof ModelTriggerConfiguration_ModelTriggerCondition] | (string & {}); /** * PerformanceTarget defines how performant (lower latency) or cost efficient the execution of run on serverless compute should be. * The performance mode on the job or pipeline should map to a performance setting that is passed to Cluster Manager * (see cluster-common PerformanceTarget). */ declare const PerformanceTarget_PerformanceTarget: { readonly PERFORMANCE_TARGET_UNSPECIFIED: "PERFORMANCE_TARGET_UNSPECIFIED"; readonly PERFORMANCE_OPTIMIZED: "PERFORMANCE_OPTIMIZED"; readonly STANDARD: "STANDARD"; }; type PerformanceTarget_PerformanceTarget = (typeof PerformanceTarget_PerformanceTarget)[keyof typeof PerformanceTarget_PerformanceTarget] | (string & {}); declare const PeriodicTriggerConfiguration_TimeUnit: { readonly TIME_UNIT_UNSPECIFIED: "TIME_UNIT_UNSPECIFIED"; readonly HOURS: "HOURS"; readonly DAYS: "DAYS"; readonly WEEKS: "WEEKS"; /** Run the job every N minutes. */ readonly MINUTES: "MINUTES"; }; type PeriodicTriggerConfiguration_TimeUnit = (typeof PeriodicTriggerConfiguration_TimeUnit)[keyof typeof PeriodicTriggerConfiguration_TimeUnit] | (string & {}); /** * The reason for queuing the run. * * `ACTIVE_RUNS_LIMIT_REACHED`: The run was queued due to reaching the workspace limit of active task runs. * * `MAX_CONCURRENT_RUNS_REACHED`: The run was queued due to reaching the per-job limit of concurrent job runs. * * `ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED`: The run was queued due to reaching the workspace limit of active run job tasks. */ declare const QueueDetailsCode_Code: { readonly ACTIVE_RUNS_LIMIT_REACHED: "ACTIVE_RUNS_LIMIT_REACHED"; readonly MAX_CONCURRENT_RUNS_REACHED: "MAX_CONCURRENT_RUNS_REACHED"; readonly ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED: "ACTIVE_RUN_JOB_TASKS_LIMIT_REACHED"; }; type QueueDetailsCode_Code = (typeof QueueDetailsCode_Code)[keyof typeof QueueDetailsCode_Code] | (string & {}); /** * A value indicating the run's lifecycle state. The possible values are: * * `QUEUED`: The run is queued. * * `PENDING`: The run is waiting to be executed while the cluster and execution context are being prepared. * * `RUNNING`: The task of this run is being executed. * * `TERMINATING`: The task of this run has completed, and the cluster and execution context are being cleaned up. * * `TERMINATED`: The task of this run has completed, and the cluster and execution context have been cleaned up. This state is terminal. * * `SKIPPED`: This run was aborted because a previous run of the same job was already active. This state is terminal. * * `INTERNAL_ERROR`: An exceptional state that indicates a failure in the Jobs service, such as network failure over a long period. If a run on a new cluster ends in the `INTERNAL_ERROR` state, the Jobs service terminates the cluster as soon as possible. This state is terminal. * * `BLOCKED`: The run is blocked on an upstream dependency. * * `WAITING_FOR_RETRY`: The run is waiting for a retry. */ declare const RunLifeCycleState_RunLifeCycleState: { readonly PENDING: "PENDING"; readonly RUNNING: "RUNNING"; readonly TERMINATING: "TERMINATING"; readonly TERMINATED: "TERMINATED"; readonly SKIPPED: "SKIPPED"; readonly INTERNAL_ERROR: "INTERNAL_ERROR"; readonly BLOCKED: "BLOCKED"; readonly WAITING_FOR_RETRY: "WAITING_FOR_RETRY"; readonly QUEUED: "QUEUED"; }; type RunLifeCycleState_RunLifeCycleState = (typeof RunLifeCycleState_RunLifeCycleState)[keyof typeof RunLifeCycleState_RunLifeCycleState] | (string & {}); /** The current state of the run. */ declare const RunLifecycleStateV2_State: { readonly BLOCKED: "BLOCKED"; readonly PENDING: "PENDING"; readonly QUEUED: "QUEUED"; readonly RUNNING: "RUNNING"; readonly TERMINATING: "TERMINATING"; readonly TERMINATED: "TERMINATED"; /** * Runs in the Waiting state (e.g. cost-optimized runs) are intentionally delayed until an * optimal compute scheduling time */ readonly WAITING: "WAITING"; }; type RunLifecycleStateV2_State = (typeof RunLifecycleStateV2_State)[keyof typeof RunLifecycleStateV2_State] | (string & {}); /** * A value indicating the run's result. The possible values are: * * `SUCCESS`: The task completed successfully. * * `FAILED`: The task completed with an error. * * `TIMEDOUT`: The run was stopped after reaching the timeout. * * `CANCELED`: The run was canceled at user request. * * `MAXIMUM_CONCURRENT_RUNS_REACHED`: The run was skipped because the maximum concurrent runs were reached. * * `EXCLUDED`: The run was skipped because the necessary conditions were not met. * * `SUCCESS_WITH_FAILURES`: The job run completed successfully with some failures; leaf tasks were successful. * * `UPSTREAM_FAILED`: The run was skipped because of an upstream failure. * * `UPSTREAM_CANCELED`: The run was skipped because an upstream task was canceled. * * `DISABLED`: The run was skipped because it was disabled explicitly by the user. */ declare const RunResultState_RunResultState: { readonly SUCCESS: "SUCCESS"; readonly FAILED: "FAILED"; readonly TIMEDOUT: "TIMEDOUT"; readonly CANCELED: "CANCELED"; readonly MAXIMUM_CONCURRENT_RUNS_REACHED: "MAXIMUM_CONCURRENT_RUNS_REACHED"; readonly UPSTREAM_CANCELED: "UPSTREAM_CANCELED"; readonly UPSTREAM_FAILED: "UPSTREAM_FAILED"; readonly EXCLUDED: "EXCLUDED"; readonly SUCCESS_WITH_FAILURES: "SUCCESS_WITH_FAILURES"; readonly DISABLED: "DISABLED"; }; type RunResultState_RunResultState = (typeof RunResultState_RunResultState)[keyof typeof RunResultState_RunResultState] | (string & {}); /** * The state of the SQL alert. * * * UNKNOWN: alert yet to be evaluated * * OK: alert evaluated and did not fulfill trigger conditions * * TRIGGERED: alert evaluated and fulfilled trigger conditions */ declare const SqlAlertState_SqlAlertState: { readonly UNKNOWN: "UNKNOWN"; readonly OK: "OK"; readonly TRIGGERED: "TRIGGERED"; }; type SqlAlertState_SqlAlertState = (typeof SqlAlertState_SqlAlertState)[keyof typeof SqlAlertState_SqlAlertState] | (string & {}); declare const SqlTask_SqlTaskQueryStatus: { readonly PENDING: "PENDING"; readonly RUNNING: "RUNNING"; readonly SUCCESS: "SUCCESS"; readonly FAILED: "FAILED"; readonly CANCELLED: "CANCELLED"; }; type SqlTask_SqlTaskQueryStatus = (typeof SqlTask_SqlTaskQueryStatus)[keyof typeof SqlTask_SqlTaskQueryStatus] | (string & {}); declare const TableTriggerConfiguration_Condition: { readonly ANY_UPDATED: "ANY_UPDATED"; readonly ALL_UPDATED: "ALL_UPDATED"; }; type TableTriggerConfiguration_Condition = (typeof TableTriggerConfiguration_Condition)[keyof typeof TableTriggerConfiguration_Condition] | (string & {}); /** * The code indicates why the run was terminated. Additional codes might be introduced in future releases. * * `SUCCESS`: The run was completed successfully. * * `SUCCESS_WITH_FAILURES`: The run was completed successfully but some child runs failed. * * `USER_CANCELED`: The run was successfully canceled during execution by a user. * * `CANCELED`: The run was canceled during execution by the platform; for example, if the maximum run duration was exceeded. * * `SKIPPED`: Run was never executed, for example, if the upstream task run failed, the dependency type condition was not met, or there were no material tasks to execute. * * `INTERNAL_ERROR`: The run encountered an unexpected error. Refer to the state message for further details. * * `DRIVER_ERROR`: The run encountered an error while communicating with the Spark Driver. * * `CLUSTER_ERROR`: The run failed due to a cluster error. Refer to the state message for further details. * * `REPOSITORY_CHECKOUT_FAILED`: Failed to complete the checkout due to an error when communicating with the third party service. * * `INVALID_CLUSTER_REQUEST`: The run failed because it issued an invalid request to start the cluster. * * `WORKSPACE_RUN_LIMIT_EXCEEDED`: The workspace has reached the quota for the maximum number of concurrent active runs. Consider scheduling the runs over a larger time frame. * * `FEATURE_DISABLED`: The run failed because it tried to access a feature unavailable for the workspace. * * `CLUSTER_REQUEST_LIMIT_EXCEEDED`: The number of cluster creation, start, and upsize requests have exceeded the allotted rate limit. Consider spreading the run execution over a larger time frame. * * `STORAGE_ACCESS_ERROR`: The run failed due to an error when accessing the customer blob storage. Refer to the state message for further details. * * `RUN_EXECUTION_ERROR`: The run was completed with task failures. For more details, refer to the state message or run output. * * `UNAUTHORIZED_ERROR`: The run failed due to a permission issue while accessing a resource. Refer to the state message for further details. * * `LIBRARY_INSTALLATION_ERROR`: The run failed while installing the user-requested library. Refer to the state message for further details. The causes might include, but are not limited to: The provided library is invalid, there are insufficient permissions to install the library, and so forth. * * `MAX_CONCURRENT_RUNS_EXCEEDED`: The scheduled run exceeds the limit of maximum concurrent runs set for the job. * * `MAX_SPARK_CONTEXTS_EXCEEDED`: The run is scheduled on a cluster that has already reached the maximum number of contexts it is configured to create. See: [Link](https://kb.databricks.com/en_US/notebooks/too-many-execution-contexts-are-open-right-now). * * `RESOURCE_NOT_FOUND`: A resource necessary for run execution does not exist. Refer to the state message for further details. * * `INVALID_RUN_CONFIGURATION`: The run failed due to an invalid configuration. Refer to the state message for further details. * * `CLOUD_FAILURE`: The run failed due to a cloud provider issue. Refer to the state message for further details. * * `MAX_JOB_QUEUE_SIZE_EXCEEDED`: The run was skipped due to reaching the job level queue size limit. * * `DISABLED`: The run was never executed because it was disabled explicitly by the user. * * `BREAKING_CHANGE`: Run failed because of an intentional breaking change in Spark, but it will be retried with a mitigation config. * * `CLUSTER_TERMINATED_BY_USER`: The run failed because the externally managed cluster entered an unusable state, likely due to the user terminating or restarting it outside the jobs service. */ declare const TerminationCode_Code: { readonly SUCCESS: "SUCCESS"; readonly CANCELED: "CANCELED"; /** DriverError represents failures when the driver restarted, or became unhealthy or unreachable during the run. */ readonly DRIVER_ERROR: "DRIVER_ERROR"; /** * ClusterError represents failures due to cluster issues. These include the failures that occur during * creation of a new cluster / starting up an existing cluster, cluster issues and timeouts during the job run */ readonly CLUSTER_ERROR: "CLUSTER_ERROR"; /** Returned if [[ProjectCheckoutInternalRepo]] RPC fails */ readonly REPOSITORY_CHECKOUT_FAILED: "REPOSITORY_CHECKOUT_FAILED"; /** * * * InvalidClusterRequest represents failures when the user provides invalid input for a cluster * configuration for the run. For example, providing invalid parameter Values in the request/ * providing a bad request etc */ readonly INVALID_CLUSTER_REQUEST: "INVALID_CLUSTER_REQUEST"; /** * * * Returned if an org set a limit for number of their concurrent active runs and the run couldn't start * because it would exceed this limit. * TODO: JOBS-12528: The original comment (on the issue) does not seem to reflect how this is actually used in code * It should be looked into how we're handling the scenario where a given job exceeds its own internal concurrency * limits. */ readonly WORKSPACE_RUN_LIMIT_EXCEEDED: "WORKSPACE_RUN_LIMIT_EXCEEDED"; readonly FEATURE_DISABLED: "FEATURE_DISABLED"; /** * * * ClusterRequestLimitExceeded represents failures when cluster * creation, start, and upsize requests for a workspace exceeded the rate limit of * [[com.databricks.backend.cluster.ClusterSizeConf.upsizeRefillRatePerMinPerOrg]] nodes per min. */ readonly CLUSTER_REQUEST_LIMIT_EXCEEDED: "CLUSTER_REQUEST_LIMIT_EXCEEDED"; /** * * * StorageAccessError represents failures when the access to user's file system fails. * For example, misconfiguration on user's side like deleting AWS S3 bucket without cancelling the workspace, * their Azure account being disabled, the storage buckets not being found etc. */ readonly STORAGE_ACCESS_ERROR: "STORAGE_ACCESS_ERROR"; readonly RUN_EXECUTION_ERROR: "RUN_EXECUTION_ERROR"; readonly UNAUTHORIZED_ERROR: "UNAUTHORIZED_ERROR"; /** * * * LibraryInstallationError represents failures due to issues related library installation. * These include the failures that occur when the user provided invalid library or user not having * enough permissions to install the library or any cloud dependency/ infrastructure failures during * library installation etc */ readonly LIBRARY_INSTALLATION_ERROR: "LIBRARY_INSTALLATION_ERROR"; readonly MAX_CONCURRENT_RUNS_EXCEEDED: "MAX_CONCURRENT_RUNS_EXCEEDED"; readonly MAX_SPARK_CONTEXTS_EXCEEDED: "MAX_SPARK_CONTEXTS_EXCEEDED"; readonly RESOURCE_NOT_FOUND: "RESOURCE_NOT_FOUND"; readonly INVALID_RUN_CONFIGURATION: "INVALID_RUN_CONFIGURATION"; readonly INTERNAL_ERROR: "INTERNAL_ERROR"; readonly CLOUD_FAILURE: "CLOUD_FAILURE"; readonly MAX_JOB_QUEUE_SIZE_EXCEEDED: "MAX_JOB_QUEUE_SIZE_EXCEEDED"; readonly SKIPPED: "SKIPPED"; readonly USER_CANCELED: "USER_CANCELED"; readonly BUDGET_POLICY_LIMIT_EXCEEDED: "BUDGET_POLICY_LIMIT_EXCEEDED"; readonly DISABLED: "DISABLED"; /** * SuccessWithFailures represents that some child runs failed * but the run was ultimately successful. */ readonly SUCCESS_WITH_FAILURES: "SUCCESS_WITH_FAILURES"; /** Run failed because of an intentional breaking change in Spark, but it will be retried with a mitigation config. */ readonly BREAKING_CHANGE: "BREAKING_CHANGE"; }; type TerminationCode_Code = (typeof TerminationCode_Code)[keyof typeof TerminationCode_Code] | (string & {}); /** * * `SUCCESS`: The run terminated without any issues * * `INTERNAL_ERROR`: An error occurred in the platform. Please look at the [status page](https://status.databricks.com/) or contact support if the issue persists. * * `CLIENT_ERROR`: The run was terminated because of an error caused by user input or the job configuration. * * `CLOUD_FAILURE`: The run was terminated because of an issue with your cloud provider. */ declare const TerminationType_Type: { readonly SUCCESS: "SUCCESS"; readonly INTERNAL_ERROR: "INTERNAL_ERROR"; readonly CLIENT_ERROR: "CLIENT_ERROR"; readonly CLOUD_FAILURE: "CLOUD_FAILURE"; }; type TerminationType_Type = (typeof TerminationType_Type)[keyof typeof TerminationType_Type] | (string & {}); interface AccessControlRequest { principalName?: { $case: 'userName'; userName: string; } | { $case: 'groupName'; groupName: string; } | { $case: 'servicePrincipalName'; servicePrincipalName: string; } | undefined; permissionLevel?: AccessControlRequest_JobPermission | undefined; } /** A storage location in Adls Gen2 */ interface Adlsgen2Info { /** abfss destination, e.g. `abfss://@.dfs.core.windows.net/`. */ destination?: string | undefined; } /** * AiRuntimeTask: multi-node GPU compute task definition for Databricks AI * Runtime workloads. * * Jobs-framework-level concepts (retries, per-task timeout, idempotency * token, usage/budget policy, permissions) live on the surrounding * TaskSettings / run-submit request and are intentionally NOT duplicated * here. Users compose `ai_runtime_task` with the standard Jobs/DABs task * wrapper to get those. */ interface AiRuntimeTask { /** * MLflow experiment name for this run. If an experiment with this name * already exists under the calling user, the run is appended to it; * otherwise a new experiment is created. To target a specific MLflow * storage location (for example, when running as a service principal), set * `mlflow_experiment_directory`. */ experiment?: string | undefined; /** * Deployment specs for this task. Exactly one deployment is currently * supported (a single entry where every node runs the same command); this * is a current-Preview constraint. Role-split workloads (driver + worker, * parameter server, separate eval node, etc.) with multiple entries are the * eventual intent but not yet supported. */ deployments?: DeploymentSpec[] | undefined; /** * Workspace or UC volume path of the code-source archive, unpacked on * each node and exposed through `$CODE_SOURCE`. Set by first-party * tooling; not for direct callers. */ codeSourcePath?: string | undefined; /** * Optional display name for the MLflow run created under `experiment`. If * omitted, MLflow generates a default name. */ mlflowRun?: string | undefined; /** * Optional workspace directory under which the MLflow experiment named in * `experiment` is created. Must start with `/Workspace`. Set this when * running as a service principal that has no default user directory; for * regular users the experiment defaults to the user's home directory. */ mlflowExperimentDirectory?: string | undefined; /** * Optional Docker image URL for a custom container image. When set, * the task runs on the specified container image instead of the default * client image. Format: * `{organization}/{repository}:{tag}` */ dockerImageUrl?: string | undefined; /** * Optional root location for MLflow artifacts logged by the run. * If this field isn't specified the default artifact location will be in dbfs * i.e. `dbfs:/databricks/mlflow-tracking//...` * If dbfs access is restricted or UC is preferred this can be a custom location in UC: * `dbfs:/Volumes////...` * The location should be unique for each experiment. */ mlflowArtifactLocation?: string | undefined; } /** * AiRuntimeTaskOutput: output identifiers for an AiRuntimeTask run — the * MLflow experiment and run IDs the task wrote to. * * Run lifecycle and termination status are not on this message; they live * on the surrounding `RunTask.status` field (see `runs.proto:RunTask.status`). */ interface AiRuntimeTaskOutput { /** * MLflow experiment ID the run was logged to. Use it to look up the * experiment in MLflow APIs or the workspace MLflow UI. */ mlflowExperimentId?: string | undefined; /** * MLflow run ID for this task execution. Use it to look up the run in * MLflow APIs or the workspace MLflow UI. */ mlflowRunId?: string | undefined; /** * Human-readable status message for this run, suitable for display to the * user (for example, that the run is still waiting for GPU compute). Set by * the server only when there is something to surface; empty otherwise. */ statusMessage?: string | undefined; } interface AlertEvaluationState {} interface AlertTask { /** The alert_id is the canonical identifier of the alert. */ alertId?: string | undefined; /** The warehouse_id identifies the warehouse settings used by the alert task. */ warehouseId?: string | undefined; /** * The workspace_path is the path to the alert file in the workspace. The path: * * must start with "/Workspace" * * must be a normalized path. * User has to select only one of alert_id or workspace_path to identify the alert. */ workspacePath?: string | undefined; /** * The subscribers receive alert evaluation result notifications after the alert task is completed. * The number of subscriptions is limited to 100. */ subscribers?: AlertTaskSubscriber[] | undefined; } interface AlertTaskOutput { alertState?: AlertEvaluationState_AlertEvaluationState | undefined; } /** * Represents a subscriber that will receive alert notifications. * A subscriber can be either a user (via email) or a notification destination (via destination_id). */ interface AlertTaskSubscriber { subscriberType?: { $case: 'userName'; /** A valid workspace email address. */ userName: string; } | { $case: 'destinationId'; destinationId: string; } | undefined; } interface AutoScale { /** * The minimum number of workers to which the cluster can scale down when underutilized. * It is also the initial number of workers the cluster will have after creation. */ minWorkers?: number | undefined; /** * The maximum number of workers to which the cluster can scale up when overloaded. * Note that `max_workers` must be strictly greater than `min_workers`. */ maxWorkers?: number | undefined; } /** Attributes set during cluster creation which are related to Amazon Web Services. */ interface AwsAttributes { /** * The first `first_on_demand` nodes of the cluster will be placed on on-demand instances. * If this value is greater than 0, the cluster driver node in particular will be placed on an * on-demand instance. If this value is greater than or equal to the current cluster size, all * nodes will be placed on on-demand instances. If this value is less than the current cluster * size, `first_on_demand` nodes will be placed on on-demand instances and the remainder will * be placed on `availability` instances. Note that this value does not affect * cluster size and cannot currently be mutated over the lifetime of a cluster. */ firstOnDemand?: number | undefined; availability?: AwsAvailability | undefined; /** * Identifier for the availability zone/datacenter in which the cluster resides. * This string will be of a form like "us-west-2a". The provided availability * zone must be in the same region as the deployment. For example, "us-west-2a" * is not a valid zone id if the deployment resides in the "us-east-1" region. * This is an optional field at cluster creation, and if not specified, the zone "auto" will be used. * If the zone specified is "auto", will try to place cluster in a zone with high availability, * and will retry placement in a different AZ if there is not enough capacity. * * The list of available zones as well as the default value can be found by using the * `List Zones` method. */ zoneId?: string | undefined; /** * Nodes for this cluster will only be placed on AWS instances with this instance profile. If * ommitted, nodes will be placed on instances without an IAM instance profile. The instance * profile must have previously been added to the environment by an account * administrator. * * This feature may only be available to certain customer plans. */ instanceProfileArn?: string | undefined; /** * The bid price for AWS spot instances, as a percentage of the corresponding instance type's * on-demand price. * For example, if this field is set to 50, and the cluster needs a new `r3.xlarge` spot * instance, then the bid price is half of the price of * on-demand `r3.xlarge` instances. Similarly, if this field is set to 200, the bid price is twice * the price of on-demand `r3.xlarge` instances. If not specified, the default value is 100. * When spot instances are requested for this cluster, only spot instances whose bid price * percentage matches this field will be considered. * Note that, for safety, we enforce this field to be no more than 10000. */ spotBidPricePercent?: number | undefined; /** The type of EBS volumes that will be launched with this cluster. */ ebsVolumeType?: EbsVolumeType | undefined; /** * The number of volumes launched for each instance. Users can choose up to 10 volumes. * This feature is only enabled for supported node types. Legacy node types cannot specify * custom EBS volumes. * For node types with no instance store, at least one EBS volume needs to be specified; * otherwise, cluster creation will fail. * * These EBS volumes will be mounted at `/ebs0`, `/ebs1`, and etc. * Instance store volumes will be mounted at `/local_disk0`, `/local_disk1`, and etc. * * If EBS volumes are attached, will configure Spark to use only the EBS volumes for * scratch storage because heterogenously sized scratch devices can lead to inefficient disk * utilization. If no EBS volumes are attached, will configure Spark to use instance * store volumes. * * Please note that if EBS volumes are specified, then the Spark configuration `spark.local.dir` * will be overridden. */ ebsVolumeCount?: number | undefined; /** * The size of each EBS volume (in GiB) launched for each instance. For general purpose * SSD, this value must be within the range 100 - 4096. For throughput optimized HDD, * this value must be within the range 500 - 4096. */ ebsVolumeSize?: number | undefined; /** If using gp3 volumes, what IOPS to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used. */ ebsVolumeIops?: number | undefined; /** If using gp3 volumes, what throughput to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used. */ ebsVolumeThroughput?: number | undefined; } /** Attributes set during cluster creation which are related to Microsoft Azure. */ interface AzureAttributes { /** Defines values necessary to configure and run Azure Log Analytics agent */ logAnalyticsInfo?: LogAnalyticsInfo | undefined; /** * The first `first_on_demand` nodes of the cluster will be placed on on-demand instances. * This value should be greater than 0, to make sure the cluster driver node is placed on an * on-demand instance. If this value is greater than or equal to the current cluster size, all * nodes will be placed on on-demand instances. If this value is less than the current cluster * size, `first_on_demand` nodes will be placed on on-demand instances and the remainder will * be placed on `availability` instances. Note that this value does not affect * cluster size and cannot currently be mutated over the lifetime of a cluster. */ firstOnDemand?: number | undefined; /** * Availability type used for all subsequent nodes past the `first_on_demand` ones. * Note: If `first_on_demand` is zero, this availability * type will be used for the entire cluster. */ availability?: AzureAvailability | undefined; /** * The max bid price to be used for Azure spot instances. * The Max price for the bid cannot be higher than the on-demand price of the instance. * If not specified, the default value is -1, which specifies that the instance cannot be evicted * on the basis of price, and only on the basis of availability. Further, the value should > 0 or -1. */ spotBidMaxPrice?: number | undefined; /** * The Azure capacity reservation group resource ID to use for launching VMs. * When specified, VMs will be launched using the provided capacity reservation. * * Capacity reservations can only be specified when the workspace uses injected vnet (i.e. customer defined vnet not * managed by databricks). Ensure the databricks-login-prod Enterprise Application is granted the following four permissions: * 1. Microsoft.Compute/capacityReservationGroups/read * 2. Microsoft.Compute/capacityReservationGroups/deploy/action * 3. Microsoft.Compute/capacityReservationGroups/capacityReservations/read * 4. Microsoft.Compute/capacityReservationGroups/capacityReservations/deploy/action * * Format: `/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/capacityReservationGroups/{capacityReservationGroupName}` */ capacityReservationGroup?: string | undefined; } interface BaseJob { /** The canonical identifier for this job. */ jobId?: bigint | undefined; /** The creator user name. This field won’t be included in the response if the user has already been deleted. */ creatorUserName?: string | undefined; /** * The email of an active workspace user or the application ID of a service principal that the job runs as. This value can be changed by setting the `run_as` field when creating or updating a job. * * By default, `run_as_user_name` is based on the current job settings and is set to the creator of the job if job access control is disabled or to the user with the `is_owner` permission if job access control is enabled. */ runAsUserName?: string | undefined; /** Settings for this job and all of its runs. These settings can be updated using the `resetJob` method. */ settings?: JobSettings | undefined; /** The time at which this job was created in epoch milliseconds (milliseconds since 1/1/1970 UTC). */ createdTime?: bigint | undefined; /** State of the trigger associated with the job. */ triggerState?: TriggerState | undefined; /** * Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/get endpoint. * It is only relevant for API 2.2 :method:jobs/list requests with `expand_tasks=true`. */ hasMore?: boolean | undefined; /** * The id of the budget policy used by this job for cost attribution purposes. * This may be set through (in order of precedence): * 1. Budget admins through the account or workspace console * 2. Jobs UI in the job details page and Jobs API using `budget_policy_id` * 3. Inferred default based on accessible budget policies of the run_as identity on job creation or modification. */ effectiveBudgetPolicyId?: string | undefined; /** The id of the usage policy used by this job for cost attribution purposes. */ effectiveUsagePolicyId?: string | undefined; /** * Per-trigger runtime information for the multi-trigger surface. Same length * and order as `JobSettings.triggers`; `trigger_details[i]` corresponds to * `triggers[i]`. Sub-fields (`state`, `history`) are populated independently * based on the `GetJob.include_trigger_state` / `include_trigger_history` flags. */ triggerDetails?: TriggerDetails[] | undefined; } interface BaseRun { /** The canonical identifier of the job that contains this run. */ jobId?: bigint | undefined; /** The canonical identifier of the run. This ID is unique across all runs of all jobs. */ runId?: bigint | undefined; /** The creator user name. This field won’t be included in the response if the user has already been deleted. */ creatorUserName?: string | undefined; /** A unique identifier for this job run. This is set to the same value as `run_id`. */ numberInJob?: bigint | undefined; /** If this run is a retry of a prior run attempt, this field contains the run_id of the original attempt; otherwise, it is the same as the run_id. */ originalAttemptRunId?: bigint | undefined; /** Deprecated. Please use the `status` field instead. */ state?: RunState | undefined; /** The cron schedule that triggered this run if it was triggered by the periodic scheduler. */ schedule?: CronSchedule | undefined; /** A snapshot of the job’s cluster specification when this run was created. */ clusterSpec?: ClusterSpec | undefined; /** The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run. */ clusterInstance?: ClusterInstance | undefined; /** Job-level parameters used in the run */ jobParameters?: Run_JobLevelParameters[] | undefined; /** The parameters used for this run. */ overridingParameters?: RunParameters | undefined; trigger?: TriggerType | undefined; triggerInfo?: RunTriggerInfo | undefined; /** An optional name for the run. The maximum length is 4096 bytes in UTF-8 encoding. */ runName?: string | undefined; /** The URL to the detail page of the run. */ runPageUrl?: string | undefined; runType?: RunType | undefined; /** * The list of tasks performed by the run. Each task has its own `run_id` which you can use to call `JobsGetOutput` to retrieve the run results. * If more than 100 tasks are available, you can paginate through them using :method:jobs/getrun. Use the `next_page_token` field at the object root to determine if more results are available. */ tasks?: RunTask[] | undefined; /** Description of the run */ description?: string | undefined; /** The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` > 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job. */ attemptNumber?: number | undefined; /** * A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings. * If more than 100 job clusters are available, you can paginate through them using :method:jobs/getrun. */ jobClusters?: JobCluster[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** The repair history of the run. */ repairHistory?: Repair[] | undefined; status?: RunStatus | undefined; /** * ID of the job run that this run belongs to. * For legacy and single-task job runs the field is populated with the job run ID. * For task runs, the field is populated with the ID of the job run that the task run belongs to. */ jobRunId?: bigint | undefined; /** * Indicates if the run has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/getrun endpoint. * It is only relevant for API 2.2 :method:jobs/listruns requests with `expand_tasks=true`. */ hasMore?: boolean | undefined; /** * The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ effectivePerformanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** The id of the usage policy used by this run for cost attribution purposes. */ effectiveUsagePolicyId?: string | undefined; /** * ID of the deployment that produced the job when this run was created. Used to look up * deployment metadata from the Deployment Metadata service. Only set for job runs of jobs * with a `BUNDLE` deployment. */ deploymentId?: string | undefined; /** * ID of the deployment version that produced the job when this run was created. Identifies * a specific snapshot of the deployment in the Deployment Metadata service. Only set for * job runs of jobs with a `BUNDLE` deployment. */ versionId?: string | undefined; /** The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued. */ startTime?: bigint | undefined; /** The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ setupDuration?: bigint | undefined; /** The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ executionDuration?: bigint | undefined; /** The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ cleanupDuration?: bigint | undefined; /** The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running. */ endTime?: bigint | undefined; /** The time in milliseconds it took the job run and all of its repairs to finish. */ runDuration?: bigint | undefined; /** The time in milliseconds that the run has spent in the queue. */ queueDuration?: bigint | undefined; } interface CancelAllRunsRequest { /** The canonical identifier of the job to cancel all runs of. */ jobId?: bigint | undefined; /** Optional boolean parameter to cancel all queued runs. If no job_id is provided, all queued runs in the workspace are canceled. */ allQueuedRuns?: boolean | undefined; } /** All runs were cancelled successfully. */ interface CancelAllRunsResponse {} interface CancelRunRequest { /** This field is required. */ runId?: bigint | undefined; } /** Run was cancelled successfully. */ interface CancelRunResponse {} interface CleanRoomTaskRunLifeCycleState {} interface CleanRoomTaskRunResultState {} /** Stores the run state of the clean rooms notebook task. */ interface CleanRoomTaskRunState { /** A value indicating the run's current lifecycle state. This field is always available in the response. Note: Additional states might be introduced in future releases. */ lifeCycleState?: CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState | undefined; /** A value indicating the run's result. This field is only available for terminal lifecycle states. Note: Additional states might be introduced in future releases. */ resultState?: CleanRoomTaskRunResultState_CleanRoomTaskRunResultState | undefined; } /** * Clean Rooms notebook task for V1 Clean Room service (GA). * Replaces the deprecated CleanRoomNotebookTask (defined above) which was for V0 service. */ interface CleanRoomsNotebookTask { /** The clean room that the notebook belongs to. */ cleanRoomName?: string | undefined; /** Name of the notebook being run. */ notebookName?: string | undefined; /** * Checksum to validate the freshness of the notebook resource (i.e. the notebook being run is the latest version). * It can be fetched by calling the :method:cleanroomassets/get API. */ etag?: string | undefined; /** Base parameters to be used for the clean room notebook job. */ notebookBaseParameters?: Record | undefined; } interface CleanRoomsNotebookTask_CleanRoomsNotebookTaskOutput { /** The run state of the clean rooms notebook task. */ cleanRoomJobRunState?: CleanRoomTaskRunState | undefined; /** The notebook output for the clean room run */ notebookOutput?: NotebookTask_NotebookOutput | undefined; /** Information on how to access the output schema for the clean room run */ outputSchemaInfo?: OutputSchemaInfo | undefined; } interface ClusterInstance { /** * The canonical identifier for the cluster used by a run. This field is always available for runs on existing clusters. For runs on new clusters, it becomes available once the cluster is created. This value can be used to view logs by browsing to `/#setting/sparkui/$cluster_id/driver-logs`. The logs continue to be available after the run completes. * * The response won’t include this field if the identifier is not available yet. */ clusterId?: string | undefined; /** * The canonical identifier for the Spark context used by a run. This field is filled in once the run begins execution. This value can be used to view the Spark UI by browsing to `/#setting/sparkui/$cluster_id/$spark_context_id`. The Spark UI continues to be available after the run has completed. * * The response won’t include this field if the identifier is not available yet. */ sparkContextId?: string | undefined; } /** Cluster log delivery config */ interface ClusterLogConf { storageInfo?: { $case: 'dbfs'; /** * destination needs to be provided. e.g. * `{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } }` */ dbfs: DbfsStorageInfo; } | { $case: 's3'; /** * destination and either the region or endpoint need to be provided. e.g. * `{ "s3": { "destination" : "s3://cluster_log_bucket/prefix", "region" : "us-west-2" } }` * Cluster iam role is used to access s3, please make sure the cluster iam role in * `instance_profile_arn` has permission to write data to the s3 destination. */ s3: S3StorageInfo; } | { $case: 'volumes'; /** * destination needs to be provided, e.g. * `{ "volumes": { "destination": "/Volumes/catalog/schema/volume/cluster_log" } }` */ volumes: VolumesStorageInfo; } | undefined; } interface ClusterSpec { spec?: { $case: 'existingClusterId'; /** * If existing_cluster_id, the ID of an existing cluster that is used for all runs. * When running jobs or tasks on an existing cluster, you may need to manually restart * the cluster if it stops responding. We suggest running jobs and tasks on new clusters for * greater reliability */ existingClusterId: string; } | { $case: 'newCluster'; /** If new_cluster, a description of a new cluster that is created for each run. */ newCluster: ClusterSpec_NewCluster; } | { $case: 'jobClusterKey'; /** If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`. */ jobClusterKey: string; } | undefined; /** * An optional list of libraries to be installed on the cluster. * The default value is an empty list. */ libraries?: Library[] | undefined; } interface ClusterSpec_NewCluster { applyPolicyDefaultValues?: boolean | undefined; /** * Cluster name requested by the user. This doesn't have to be unique. * If not specified at creation, the cluster name will be an empty string. * For job clusters, the cluster name is automatically set based on the job and job run IDs. */ clusterName?: string | undefined; /** * The Spark version of the cluster, e.g. `3.3.x-scala2.11`. * A list of available Spark versions can be retrieved by using * the [clusters/sparkVersions](https://docs.databricks.com/api/workspace/clusters/sparkversions) API call. */ sparkVersion?: string | undefined; /** * An object containing a set of optional, user-specified Spark configuration key-value pairs. * Users can also pass in a string of extra JVM options to the driver and the executors via * `spark.driver.extraJavaOptions` and `spark.executor.extraJavaOptions` respectively. */ sparkConf?: Record | undefined; /** * Attributes related to clusters running on Amazon Web Services. * If not specified at cluster creation, a set of default values will be used. */ awsAttributes?: AwsAttributes | undefined; /** * Attributes related to clusters running on Microsoft Azure. * If not specified at cluster creation, a set of default values will be used. */ azureAttributes?: AzureAttributes | undefined; /** * Attributes related to clusters running on Google Cloud Platform. * If not specified at cluster creation, a set of default values will be used. */ gcpAttributes?: GcpAttributes | undefined; /** * This field encodes, through a single value, the resources available to each of * the Spark nodes in this cluster. For example, the Spark nodes can be provisioned * and optimized for memory or compute intensive workloads. A list of available node * types can be retrieved by using the [clusters/listNodeTypes](https://docs.databricks.com/api/workspace/clusters/listnodetypes) API call. */ nodeTypeId?: string | undefined; /** * The node type of the Spark driver. * Note that this field is optional; if unset, the driver node type will be set as the same value * as `node_type_id` defined above. * * This field, along with node_type_id, should not be set if virtual_cluster_size is set. * If both driver_node_type_id, node_type_id, and virtual_cluster_size are specified, driver_node_type_id and node_type_id take precedence. */ driverNodeTypeId?: string | undefined; /** Flexible node type configuration for worker nodes. */ workerNodeTypeFlexibility?: NodeTypeFlexibility | undefined; /** Flexible node type configuration for the driver node. */ driverNodeTypeFlexibility?: NodeTypeFlexibility | undefined; /** * SSH public key contents that will be added to each Spark node in this cluster. The * corresponding private keys can be used to login with the user name `ubuntu` on port `2200`. * Up to 10 keys can be specified. */ sshPublicKeys?: string[] | undefined; /** * Additional tags for cluster resources. will tag all cluster resources (e.g., AWS * instances and EBS volumes) with these tags in addition to `default_tags`. Notes: * * - Currently, allows at most 45 custom tags * * - Clusters can only reuse cloud resources if the resources' tags are a subset of the cluster tags */ customTags?: Record | undefined; /** * The configuration for delivering spark logs to a long-term storage destination. * Three kinds of destinations (DBFS, S3 and Unity Catalog volumes) are supported. Only one destination can be specified * for one cluster. If the conf is given, the logs will be delivered to the destination every * `5 mins`. The destination of driver logs is `$destination/$clusterId/driver`, while * the destination of executor logs is `$destination/$clusterId/executor`. */ clusterLogConf?: ClusterLogConf | undefined; /** * An object containing a set of optional, user-specified environment variable key-value pairs. * Please note that key-value pair of the form (X,Y) will be exported as is (i.e., * `export X='Y'`) while launching the driver and workers. * * In order to specify an additional set of `SPARK_DAEMON_JAVA_OPTS`, we recommend appending * them to `$SPARK_DAEMON_JAVA_OPTS` as shown in the example below. This ensures that all * default databricks managed environmental variables are included as well. * * Example Spark environment variables: * `{"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"}` or * `{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"}` */ sparkEnvVars?: Record | undefined; /** * Automatically terminates the cluster after it is inactive for this time in minutes. If not set, * this cluster will not be automatically terminated. If specified, the threshold must be between * 10 and 10000 minutes. * Users can also set this value to 0 to explicitly disable automatic termination. */ autoterminationMinutes?: number | undefined; /** * Autoscaling Local Storage: when enabled, this cluster will dynamically acquire additional disk * space when its Spark workers are running low on disk space. */ enableElasticDisk?: boolean | undefined; /** * The configuration for storing init scripts. Any number of destinations can be specified. * The scripts are executed sequentially in the order provided. * If `cluster_log_conf` is specified, init script logs are sent to `//init_scripts`. */ initScripts?: InitScriptInfo[] | undefined; /** Custom docker image BYOC */ dockerImage?: DockerImage | undefined; /** The optional ID of the instance pool to which the cluster belongs. */ instancePoolId?: string | undefined; /** Single user name if data_security_mode is `SINGLE_USER` */ singleUserName?: string | undefined; /** The ID of the cluster policy used to create the cluster if applicable. */ policyId?: string | undefined; /** Whether to enable LUKS on cluster VMs' local disks */ enableLocalDiskEncryption?: boolean | undefined; /** * The optional ID of the instance pool for the driver of the cluster belongs. * The pool cluster uses the instance pool with id (instance_pool_id) if the driver pool is not * assigned. */ driverInstancePoolId?: string | undefined; workloadType?: WorkloadType | undefined; dataSecurityMode?: DataSecurityMode | undefined; /** * Determines the cluster's runtime engine, either standard or Photon. * * This field is not compatible with legacy `spark_version` values that contain `-photon-`. * Remove `-photon-` from the `spark_version` and set `runtime_engine` to `PHOTON`. * * If left unspecified, the runtime engine defaults to standard unless the spark_version * contains -photon-, in which case Photon will be used. */ runtimeEngine?: RuntimeEngine | undefined; kind?: ComputeKind | undefined; /** * This field can only be used when `kind = CLASSIC_PREVIEW`. * * `effective_spark_version` is determined by `spark_version` (DBR release), this field `use_ml_runtime`, and whether `node_type_id` is gpu node or not. */ useMlRuntime?: boolean | undefined; /** * This field can only be used when `kind = CLASSIC_PREVIEW`. * * When set to true, will automatically set single node related `custom_tags`, `spark_conf`, and `num_workers` */ isSingleNode?: boolean | undefined; /** If set, what the configurable throughput (in Mb/s) for the remote disk is. Currently only supported for GCP HYPERDISK_BALANCED disks. */ remoteDiskThroughput?: number | undefined; /** If set, what the total initial volume size (in GB) of the remote disks should be. Supported for GCP. */ totalInitialRemoteDiskSize?: number | undefined; /** Controls dependency configuration for the cluster. */ dependencyMode?: DependencyMode | undefined; size?: { $case: 'numWorkers'; /** * Number of worker nodes that this cluster should have. A cluster has one Spark Driver * and `num_workers` Executors for a total of `num_workers` + 1 Spark nodes. * * Note: When reading the properties of a cluster, this field reflects the desired number * of workers rather than the actual current number of workers. For instance, if a cluster * is resized from 5 to 10 workers, this field will immediately be updated to reflect * the target size of 10 workers, whereas the workers listed in `spark_info` will gradually * increase from 5 to 10 as the new nodes are provisioned. */ numWorkers: number; } | { $case: 'autoscale'; /** * Parameters needed in order to automatically scale clusters up and down based on load. * Note: autoscaling works best with DB runtime versions 3.0 or later. */ autoscale: AutoScale; } | undefined; } interface Compute { /** Hardware accelerator configuration for Serverless GPU workloads. */ hardwareAccelerator?: HardwareAcceleratorType | undefined; } interface ComputeConfig { /** Number of GPUs. */ numGpus?: number | undefined; /** IDof the GPU pool to use. */ gpuNodePoolId?: string | undefined; /** GPU type. */ gpuType?: string | undefined; } /** * ComputeSpec: compute configuration — accelerator type and total * accelerator count across all nodes. */ interface ComputeSpec { /** * Hardware accelerator type (for example, `GPU_1xA10` or `GPU_8xH100`). * The number of accelerators per node is encoded in the enum value — * `GPU_8xH100` means 8 H100 GPUs per node. */ acceleratorType?: ComputeSpec_AcceleratorType | undefined; /** * Total number of accelerators across all nodes. Must be a positive * multiple of the per-node accelerator count encoded in `accelerator_type`. * For example, `GPU_8xH100` with `accelerator_count: 16` allocates 2 nodes * (8 GPUs per node). */ acceleratorCount?: number | undefined; } interface ConditionTask { /** * * `EQUAL_TO`, `NOT_EQUAL` operators perform string comparison of their operands. This means that `“12.0” == “12”` will evaluate to `false`. * * `GREATER_THAN`, `GREATER_THAN_OR_EQUAL`, `LESS_THAN`, `LESS_THAN_OR_EQUAL` operators perform numeric comparison of their operands. `“12.0” >= “12”` will evaluate to `true`, `“10.0” >= “12”` will evaluate to `false`. * * The boolean comparison to task values can be implemented with operators `EQUAL_TO`, `NOT_EQUAL`. If a task value was set to a boolean value, it will be serialized to `“true”` or `“false”` for the comparison. */ op?: ConditionTask_ConditionTaskOperator | undefined; /** The left operand of the condition task. Can be either a string value or a job state or parameter reference. */ left?: string | undefined; /** The right operand of the condition task. Can be either a string value or a job state or parameter reference. */ right?: string | undefined; /** The condition expression evaluation result. Filled in if the task was successfully completed. Can be `"true"` or `"false"` */ outcome?: string | undefined; } interface ContinuousSettings { /** Indicate whether the continuous execution of the job is paused or not. Defaults to UNPAUSED. */ pauseStatus?: SchedulePauseStatus | undefined; /** Indicate whether the continuous job is applying task level retries or not. Defaults to NEVER. */ taskRetryMode?: TaskRetryMode | undefined; } /** * Continuous trigger. Stripped-down counterpart to `ContinuousSettings`: `pause_status` is owned by the enclosing * `TriggerConfiguration` and intentionally omitted here. */ interface ContinuousTriggerConfiguration { /** Whether the continuous job applies task-level retries. Defaults to NEVER. */ taskRetryMode?: TaskRetryMode | undefined; } interface ContinuousTriggerState { consecutiveFailures?: number | undefined; nextAttemptMs?: bigint | undefined; isBackingOff?: boolean | undefined; } interface CreateJobRequest { /** List of permissions to set on the job. */ accessControlList?: AccessControlRequest[] | undefined; /** An optional name for the job. The maximum length is 4096 bytes in UTF-8 encoding. */ name?: string | undefined; /** An optional description for the job. The maximum length is 27700 characters in UTF-8 encoding. */ description?: string | undefined; /** An optional set of email addresses that is notified when runs of this job begin or complete as well as when this job is deleted. */ emailNotifications?: JobEmailNotifications | undefined; /** A collection of system notification IDs to notify when runs of this job begin or complete. */ webhookNotifications?: WebhookNotifications | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this job. */ notificationSettings?: NotificationSettings | undefined; /** An optional timeout applied to each run of this job. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; health?: JobsHealthRules | undefined; /** An optional periodic schedule for this job. The default behavior is that the job only runs when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`. */ schedule?: CronSchedule | undefined; /** A configuration to trigger a run when certain conditions are met. The default behavior is that the job runs only when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`. */ trigger?: TriggerSettings | undefined; /** * An optional continuous property for this job. The continuous property will ensure that there is always one run executing. Only one of `schedule` and `continuous` can be used. * * Pipelines started by a continuous job also run continuously, regardless of their own pipeline mode setting. */ continuous?: ContinuousSettings | undefined; /** * An optional maximum allowed number of concurrent runs of the job. * Set this value if you want to be able to execute multiple runs of the same job concurrently. * This is useful for example if you trigger your job on a frequent schedule and want to allow consecutive runs to overlap with each other, or if you want to trigger multiple runs which differ by their input parameters. * This setting affects only new runs. For example, suppose the job’s concurrency is 4 and there are 4 concurrent active runs. Then setting the concurrency to 3 won’t kill any of the active runs. * However, from then on, new runs are skipped unless there are fewer than 3 active runs. * This value cannot exceed 1000. Setting this value to `0` causes all new runs to be skipped. */ maxConcurrentRuns?: number | undefined; /** * A list of task specifications to be executed by this job. * It supports up to 1000 elements in write endpoints (:method:jobs/create, :method:jobs/reset, :method:jobs/update, :method:jobs/submit). * Read endpoints return only 100 tasks. If more than 100 tasks are available, you can paginate through them using :method:jobs/get. Use the `next_page_token` field at the object root to determine if more results are available. */ tasks?: TaskSettings[] | undefined; /** A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings. */ jobClusters?: JobCluster[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** A map of tags associated with the job. These are forwarded to the cluster as cluster tags for jobs clusters, and are subject to the same limitations as cluster tags. A maximum of 25 tags can be added to the job. */ tags?: Record | undefined; /** Used to tell what is the format of the job. This field is ignored in Create/Update/Reset calls. When using the Jobs API 2.1 this value is always set to `"MULTI_TASK"`. */ format?: Format | undefined; /** The queue settings of the job. */ queue?: QueueSettings | undefined; /** Job-level parameter definitions */ parameters?: JobLevelParameter[] | undefined; /** * The user or service principal that the job runs as, if specified in the request. * This field indicates the explicit configuration of `run_as` for the job. * To find the value in all cases, explicit or implicit, use `run_as_user_name`. */ runAs?: JobRunAs | undefined; /** * Edit mode of the job. * * * `UI_LOCKED`: The job is in a locked UI state and cannot be modified. * * `EDITABLE`: The job is in an editable state and can be modified. */ editMode?: JobEditMode | undefined; /** Deployment information for jobs managed by external sources. */ deployment?: JobDeployment | undefined; /** * A list of task execution environment specifications that can be referenced by serverless tasks of this job. * For serverless notebook tasks, if the environment_key is not specified, the notebook environment will be used if present. If a jobs environment is specified, it will override the notebook environment. * For other serverless tasks, the task environment is required to be specified using environment_key in the task settings. */ environments?: JobEnvironment[] | undefined; /** * The id of the user specified budget policy to use for this job. * If not specified, a default budget policy may be applied when creating or modifying the job. * See `effective_budget_policy_id` for the budget policy used by this workload. */ budgetPolicyId?: string | undefined; /** * The id of the user specified usage policy to use for this job. * If not specified, a default usage policy may be applied when creating or modifying the job. * See `effective_usage_policy_id` for the usage policy used by this workload. */ usagePolicyId?: string | undefined; /** * The performance mode on a serverless job. This field determines the level of compute performance or cost-efficiency for the run. * The performance target does not apply to tasks that run on Serverless GPU compute. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ performanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** Path of the job parent folder in workspace file tree. If absent, the job doesn't have a workspace object. */ parentPath?: string | undefined; /** * List of triggers attached to this job. A run starts when any active trigger evaluates to true. Cannot be set in * the same request as the legacy `schedule`, `trigger`, or `continuous` fields. Gated behind the "Multiple Triggers" feature preview. */ triggers?: TriggerConfiguration[] | undefined; /** An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry. */ maxRetries?: number | undefined; /** An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried. */ minRetryIntervalMillis?: number | undefined; /** * An optional policy to specify whether to retry a job when it times out. The default behavior * is to not retry on timeout. */ retryOnTimeout?: boolean | undefined; /** An option to disable auto optimization in serverless */ disableAutoOptimization?: boolean | undefined; } /** Job was created successfully */ interface CreateJobResponse { /** The canonical identifier for the newly created job. */ jobId?: bigint | undefined; } interface CronSchedule { /** A Cron expression using Quartz syntax that describes the schedule for a job. See [Cron Trigger](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) for details. This field is required. */ quartzCronExpression?: string | undefined; /** A Java timezone ID. The schedule for a job is resolved with respect to this timezone. See [Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details. This field is required. */ timezoneId?: string | undefined; /** Indicate whether this schedule is paused or not. */ pauseStatus?: SchedulePauseStatus | undefined; /** * SQL condition that must be satisfied before a scheduled run is triggered. The condition is evaluated * after the cron expression fires and must return a truthy result for the run to proceed. */ sqlCondition?: SqlConditionConfiguration | undefined; } /** * Cron schedule trigger. Stripped-down counterpart to `CronSchedule`: `pause_status` and `sql_condition` are owned * by the enclosing `TriggerConfiguration` and intentionally omitted here. */ interface CronTriggerConfiguration { /** * A Cron expression using Quartz syntax that describes the schedule for this trigger. See * [Cron Trigger](http://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) for details. */ quartzCronExpression?: string | undefined; /** * A Java timezone ID. The schedule is resolved with respect to this timezone. See * [Java TimeZone](https://docs.oracle.com/javase/7/docs/api/java/util/TimeZone.html) for details. */ timezoneId?: string | undefined; } interface DashboardPageSnapshot { pageDisplayName?: string | undefined; widgetErrorDetails?: WidgetErrorDetail[] | undefined; } /** Configures the Lakeview Dashboard job task type. */ interface DashboardTask { /** Optional: subscription configuration for sending the dashboard snapshot. */ subscription?: Subscription | undefined; /** * Optional: The warehouse id to execute the dashboard with for the schedule. * If not specified, the default warehouse of the dashboard will be used. */ warehouseId?: string | undefined; /** The identifier of the dashboard to refresh. */ dashboardId?: string | undefined; /** * Dashboard task parameters. Used to apply dashboard filter values during dashboard task execution. Parameter values get applied to any dashboard filters that have a matching URL identifier as the parameter key. * The parameter value format is dependent on the filter type: * - For text and single-select filters, provide a single value (e.g. `"value"`) * - For date and datetime filters, provide the value in ISO 8601 format (e.g. `"2000-01-01T00:00:00"`) * - For multi-select filters, provide a JSON array of values (e.g. `"[\"value1\",\"value2\"]"`) * - For range and date range filters, provide a JSON object with `start` and `end` (e.g. `"{\"start\":\"1\",\"end\":\"10\"}"`) */ filters?: Record | undefined; } interface DashboardTaskOutput { /** Should only be populated for manual PDF download jobs. */ pageSnapshots?: DashboardPageSnapshot[] | undefined; } /** A storage location in DBFS */ interface DbfsStorageInfo { /** dbfs destination, e.g. `dbfs:/my/path` */ destination?: string | undefined; } /** * Format of response retrieved from dbt Cloud, for inclusion in output * Deprecated in favor of DbtPlatformJobRunStep */ interface DbtCloudJobRunStep { /** Orders the steps in the job */ index?: number | undefined; /** Name of the step in the job */ name?: string | undefined; /** State of the step */ status?: DbtPlatformRunStatus | undefined; /** Output of the step */ logs?: string | undefined; } /** Deprecated in favor of DbtPlatformTask */ interface DbtCloudTask { /** Id of the dbt Cloud job to be triggered */ dbtCloudJobId?: bigint | undefined; /** The resource name of the UC connection that authenticates the dbt Cloud for this task */ connectionResourceName?: string | undefined; } /** Deprecated in favor of DbtPlatformTaskOutput */ interface DbtCloudTaskOutput { /** Id of the job run in dbt Cloud */ dbtCloudJobRunId?: bigint | undefined; /** Url where full run details can be viewed */ dbtCloudJobRunUrl?: string | undefined; /** Steps of the job run as received from dbt Cloud */ dbtCloudJobRunOutput?: DbtCloudJobRunStep[] | undefined; } /** Format of response retrieved from dbt platform, for inclusion in output */ interface DbtPlatformJobRunStep { /** Orders the steps in the job */ index?: number | undefined; /** Name of the step in the job */ name?: string | undefined; /** State of the step */ status?: DbtPlatformRunStatus | undefined; /** Output of the step */ logs?: string | undefined; /** Whether the name of the job has been truncated. If true, the name has been truncated to 100 characters. */ nameTruncated?: boolean | undefined; /** Whether the logs of this step have been truncated. If true, the logs has been truncated to 10000 characters. */ logsTruncated?: boolean | undefined; } interface DbtPlatformTask { /** Id of the dbt platform job to be triggered. Specified as a string for maximum compatibility with clients. */ dbtPlatformJobId?: string | undefined; /** The resource name of the UC connection that authenticates the dbt platform for this task */ connectionResourceName?: string | undefined; } interface DbtPlatformTaskOutput { /** Id of the job run in dbt platform. Specified as a string for maximum compatibility with clients. */ dbtPlatformJobRunId?: string | undefined; /** Url where full run details can be viewed */ dbtPlatformJobRunUrl?: string | undefined; /** Steps of the job run as received from dbt platform */ dbtPlatformJobRunOutput?: DbtPlatformJobRunStep[] | undefined; /** Whether the number of steps in the output has been truncated. If true, the output will contain the first 20 steps of the output. */ stepsTruncated?: boolean | undefined; } interface DbtTask { /** * Path to the project directory. Optional for Git sourced tasks, in which * case if no value is provided, the root of the Git repository is used. */ projectDirectory?: string | undefined; /** A list of dbt commands to execute. All commands must start with `dbt`. This parameter must not be empty. A maximum of up to 10 commands can be provided. */ commands?: string[] | undefined; /** Optional schema to write to. This parameter is only used when a warehouse_id is also provided. If not provided, the `default` schema is used. */ schema?: string | undefined; /** ID of the SQL warehouse to connect to. If provided, we automatically generate and provide the profile and connection details to dbt. It can be overridden on a per-command basis by using the `--profiles-dir` command line argument. */ warehouseId?: string | undefined; /** Optional (relative) path to the profiles directory. Can only be specified if no warehouse_id is specified. If no warehouse_id is specified and this folder is unset, the root directory is used. */ profilesDirectory?: string | undefined; /** Optional name of the catalog to use. The value is the top level in the 3-level namespace of Unity Catalog (catalog / schema / relation). The catalog value can only be specified if a warehouse_id is specified. Requires dbt-databricks >= 1.1.1. */ catalog?: string | undefined; /** * Optional location type of the project directory. When set to `WORKSPACE`, the project will be retrieved * from the local workspace. When set to `GIT`, the project will be retrieved from a Git repository * defined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise. * * * `WORKSPACE`: Project is located in workspace. * * `GIT`: Project is located in cloud Git provider. */ source?: Source | undefined; } interface DbtTask_DbtTaskOutput { /** A pre-signed URL to download the (compressed) dbt artifacts. This link is valid for a limited time (30 minutes). This information is only available after the run has finished. */ artifactsLink?: string | undefined; /** An optional map of headers to send when retrieving the artifact from the `artifacts_link`. */ artifactsHeaders?: Record | undefined; } interface DeleteJobRequest { /** The canonical identifier of the job to delete. This field is required. */ jobId?: bigint | undefined; } /** Job was deleted successfully. */ interface DeleteJobResponse {} interface DeleteRunRequest { /** ID of the run to delete. */ runId?: bigint | undefined; } /** Run was deleted successfully. */ interface DeleteRunResponse {} /** * DeploymentSpec: configuration for one deployment within an AiRuntimeTask. * Each entry in `AiRuntimeTask.deployments` describes a group of nodes that * share the same command and compute. Many single-program training * algorithms use a single entry where every node runs the same command; * role-split workloads (driver + worker, parameter server, separate eval * node, etc.) use multiple entries. */ interface DeploymentSpec { /** * Workspace path of the script to run on each node in this deployment. * Upload the script to this path and supply the path here. When the task * runs, the file at this path is run on each node; if it fails, the task * fails with its exit code. * * Example script contents: * * # Plain Python: * python train.py --epochs 10 * * # Multi-GPU via accelerate: * accelerate launch train.py --config config.yaml * * # Distributed via torchrun: * torchrun --nproc_per_node=8 train.py */ commandPath?: string | undefined; /** Compute resources allocated to each node in this deployment. */ compute?: ComputeSpec | undefined; /** * Optional human-readable name for this deployment (for example, `driver`, * `worker`, `param_server`). Used for log and UI display. Distinct names * are recommended so deployments can be told apart, but uniqueness is not * enforced. */ name?: string | undefined; } interface DockerBasicAuth { /** Name of the user */ username?: string | undefined; /** Password of the user */ password?: string | undefined; } interface DockerImage { /** URL of the docker image. */ url?: string | undefined; credsOneof?: { $case: 'basicAuth'; /** Basic auth with username and password */ basicAuth: DockerBasicAuth; } | undefined; } interface EnforcePolicyComplianceForJob { /** The ID of the job you want to enforce policy compliance on. */ jobId?: bigint | undefined; /** * If set, previews changes made to the job to comply with its policy, but * does not update the job. */ validateOnly?: boolean | undefined; } interface EnforcePolicyComplianceResponse { /** * Whether any changes have been made to the job cluster settings for the job to * become compliant with its policies. */ hasChanges?: boolean | undefined; /** * A list of job cluster changes that have been made to the job’s cluster * settings in order for all job clusters to become compliant with their * policies. */ jobClusterChanges?: EnforcePolicyComplianceResponse_JobClusterSettingsChange[] | undefined; /** * Updated job settings after policy enforcement. Policy enforcement only * applies to job clusters that are created when running the job (which are * specified in new_cluster) and does not apply to existing all-purpose clusters. * Updated job settings are derived by applying policy default values to the * existing job clusters in order to satisfy policy requirements. */ settings?: JobSettings | undefined; } /** * Represents a change to the job cluster's settings that would be required for the * job clusters to become compliant with their policies. */ interface EnforcePolicyComplianceResponse_JobClusterSettingsChange { /** The field where this change would be made, prepended with the job cluster key. */ field?: string | undefined; /** * The previous value of this field before enforcing policy compliance * (either a number, a boolean, or a string) converted to a string. * This is intended to be read by a human. The type of the field * can be retrieved by reading the settings field in the API response. */ previousValue?: string | undefined; /** * The new value of this field after enforcing policy compliance * (either a number, a boolean, or a string) converted to a string. * This is intended to be read by a human. The typed new value of this field * can be retrieved by reading the settings field in the API response. */ newValue?: string | undefined; } /** * The environment entity used to preserve serverless environment side panel, jobs' environment for non-notebook task, and SDP's environment for classic and serverless pipelines. * In this minimal environment spec, only pip and java dependencies are supported. */ interface Environment { /** Use `environment_version` instead. */ client?: string | undefined; /** * List of pip dependencies, as supported by the version of pip in this environment. * Each dependency is a valid pip requirements file line per https://pip.pypa.io/en/stable/reference/requirements-file-format/. * Allowed dependencies include a requirement specifier, an archive URL, a local project path (such as WSFS or UC Volumes in ), or a VCS project URL. */ dependencies?: string[] | undefined; /** * The base environment this environment is built on top of. A base environment defines the environment version and a * list of dependencies for serverless compute. The value can be a file path to a custom `env.yaml` file * (e.g., `/Workspace/path/to/env.yaml`). Support for a -provided base environment ID * (e.g., `workspace-base-environments/databricks_ai_v4`) and workspace base environment ID * (e.g., `workspace-base-environments/dbe_b849b66e-b31a-4cb5-b161-1f2b10877fb7`) is in Beta. * Either `environment_version` or `base_environment` can be provided. * For more information about -provided base environments, see the * [list workspace base environments](:method:Environments/ListWorkspaceBaseEnvironments) API. * For more information, see */ baseEnvironment?: string | undefined; /** * Either `environment_version` or `base_environment` needs to be provided. Environment version used by the environment. * Each version comes with a specific Python version and a set of Python packages. * The version is a string, consisting of an integer. */ environmentVersion?: string | undefined; /** List of java dependencies. Each dependency is a string representing a java library path. For example: `/Volumes/path/to/test.jar`. */ javaDependencies?: string[] | undefined; } /** Retrieves the export of a job run task. */ interface ExportRunRequest { /** The canonical identifier for the run. This field is required. */ runId?: bigint | undefined; /** Which views to export (CODE, DASHBOARDS, or ALL). Defaults to CODE. */ viewsToExport?: ViewsToExport | undefined; } /** Run was exported successfully. */ interface ExportRunResponse { /** The exported content in HTML format (one for every view item). To extract the HTML notebook from the JSON response, download and run this [Python script](/_static/examples/extract.py). */ views?: ViewItem[] | undefined; } interface FileArrivalTriggerConfiguration { /** URL to be monitored for file arrivals. The path must point to the root or a subpath of the external location. */ url?: string | undefined; /** * If set, the trigger starts a run only after the specified amount of time passed since * the last time the trigger fired. The minimum allowed value is 60 seconds */ minTimeBetweenTriggersSeconds?: number | undefined; /** * If set, the trigger starts a run only after no file activity has occurred for the specified amount of time. * This makes it possible to wait for a batch of incoming files to arrive before triggering a run. The * minimum allowed value is 60 seconds. */ waitAfterLastChangeSeconds?: number | undefined; } interface FileArrivalTriggerState { /** Indicates whether the trigger leverages file events to detect file arrivals. */ usingFileEvents?: boolean | undefined; } interface ForEachTask { /** * Array for task to iterate on. This can be a JSON string or a reference to * an array parameter. */ inputs?: string | undefined; /** * An optional maximum allowed number of concurrent runs of the task. * Set this value if you want to be able to execute multiple runs of the task concurrently. */ concurrency?: number | undefined; /** Configuration for the task that will be run for each element in the array */ task?: TaskSettings | undefined; } /** Attributes set during cluster creation which are related to GCP. */ interface GcpAttributes { /** * This field determines whether the spark executors will be scheduled to run on preemptible * VMs (when set to true) versus standard compute engine VMs (when set to false; default). * Note: Soon to be deprecated, use the 'availability' field instead. */ usePreemptibleExecutors?: boolean | undefined; /** * If provided, the cluster will impersonate the google service account when accessing * gcloud services (like GCS). The google service account * must have previously been added to the environment by an account * administrator. */ googleServiceAccount?: string | undefined; /** Boot disk size in GB */ bootDiskSize?: number | undefined; /** * This field determines whether the spark executors will be scheduled to run on preemptible * VMs, on-demand VMs, or preemptible VMs with a fallback to on-demand VMs if the former is unavailable. */ availability?: GcpAvailability | undefined; /** * Identifier for the availability zone in which the cluster resides. * This can be one of the following: * - "HA" => High availability, spread nodes across availability zones for a * deployment region [default]. * - "AUTO" => picks an availability zone to schedule the cluster on. * - A GCP availability zone => Pick One of the available zones for (machine type + region) from * https://cloud.google.com/compute/docs/regions-zones. */ zoneId?: string | undefined; /** * If provided, each node (workers and driver) in the cluster will have this number of local SSDs attached. * Each local SSD is 375GB in size. * Refer to [GCP documentation](https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds) * for the supported number of local SSDs for each instance type. */ localSsdCount?: number | undefined; /** * The first `first_on_demand` nodes of the cluster will be placed on on-demand instances. * This value should be greater than 0, to make sure the cluster driver node is placed on an * on-demand instance. If this value is greater than or equal to the current cluster size, all * nodes will be placed on on-demand instances. If this value is less than the current cluster * size, `first_on_demand` nodes will be placed on on-demand instances and the remainder will * be placed on `availability` instances. Note that this value does not affect * cluster size and cannot currently be mutated over the lifetime of a cluster. */ firstOnDemand?: number | undefined; /** * The confidential computing technology for this cluster's instances. * Currently only SEV_SNP is supported, and only on N2D instance types. * When not set, no confidential computing is applied. */ confidentialComputeType?: ConfidentialComputeType | undefined; } /** A storage location in Google Cloud Platform's GCS */ interface GcsStorageInfo { /** GCS destination/URI, e.g. `gs://my-bucket/some-prefix` */ destination?: string | undefined; } /** * DEPRECATED — use `AiRuntimeTask` for all new BYOT multi-node GPU * workloads (see ai_runtime_task.proto). `AiRuntimeTask` is the only * supported BYOT task type for new workloads; this proto is retained only * for AIR CLI (fka SGCLI) pywheel backwards compatibility and will be * removed once the pywheel → databricks-cli migration completes (post- * PuPr). */ interface GenAiComputeTask { /** Runtime image */ dlRuntimeImage?: string | undefined; compute?: ComputeConfig | undefined; /** Command launcher to run the actual script, e.g. bash, python etc. */ command?: string | undefined; /** * Optional location type of the training script. When set to `WORKSPACE`, the script will be retrieved from the local workspace. When set to `GIT`, the script will be retrieved from a Git repository * defined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise. * * `WORKSPACE`: Script is located in workspace. * * `GIT`: Script is located in cloud Git provider. */ source?: Source | undefined; /** The training script file path to be executed. Cloud file URIs (such as dbfs:/, s3:/, adls:/, gcs:/) and workspace paths are supported. For python files stored in the workspace, the path must be absolute and begin with `/`. For files stored in a remote repository, the path must be relative. This field is required. */ trainingScriptPath?: string | undefined; /** Optional path to a YAML file containing model parameters passed to the training script. */ yamlParametersFilePath?: string | undefined; /** * Optional string containing model parameters passed to the training script in yaml format. * If present, then the content in yaml_parameters_file_path will be ignored. */ yamlParameters?: string | undefined; /** * Optional string containing the name of the MLflow experiment to log the run to. If name is not * found, backend will create the mlflow experiment using the name. */ mlflowExperimentName?: string | undefined; } /** Retrieves information about a single job. */ interface GetJobRequest { /** The canonical identifier of the job to retrieve information about. This field is required. */ jobId?: bigint | undefined; /** Flag that indicates that trigger state should be included in the response. */ includeTriggerState?: boolean | undefined; /** Use `next_page_token` returned from the previous GetJob response to request the next page of the job's array properties. */ pageToken?: string | undefined; } /** Job was retrieved successfully. */ interface GetJobResponse { /** A token that can be used to list the next page of array properties. */ nextPageToken?: string | undefined; /** The canonical identifier for this job. */ jobId?: bigint | undefined; /** The creator user name. This field won’t be included in the response if the user has already been deleted. */ creatorUserName?: string | undefined; /** * The email of an active workspace user or the application ID of a service principal that the job runs as. This value can be changed by setting the `run_as` field when creating or updating a job. * * By default, `run_as_user_name` is based on the current job settings and is set to the creator of the job if job access control is disabled or to the user with the `is_owner` permission if job access control is enabled. */ runAsUserName?: string | undefined; /** Settings for this job and all of its runs. These settings can be updated using the `resetJob` method. */ settings?: JobSettings | undefined; /** The time at which this job was created in epoch milliseconds (milliseconds since 1/1/1970 UTC). */ createdTime?: bigint | undefined; /** State of the trigger associated with the job. */ triggerState?: TriggerState | undefined; /** * Indicates if the job has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/get endpoint. * It is only relevant for API 2.2 :method:jobs/list requests with `expand_tasks=true`. */ hasMore?: boolean | undefined; /** * The id of the budget policy used by this job for cost attribution purposes. * This may be set through (in order of precedence): * 1. Budget admins through the account or workspace console * 2. Jobs UI in the job details page and Jobs API using `budget_policy_id` * 3. Inferred default based on accessible budget policies of the run_as identity on job creation or modification. */ effectiveBudgetPolicyId?: string | undefined; /** The id of the usage policy used by this job for cost attribution purposes. */ effectiveUsagePolicyId?: string | undefined; /** * Per-trigger runtime information for the multi-trigger surface. Same length * and order as `JobSettings.triggers`; `trigger_details[i]` corresponds to * `triggers[i]`. Sub-fields (`state`, `history`) are populated independently * based on the `GetJob.include_trigger_state` / `include_trigger_history` flags. */ triggerDetails?: TriggerDetails[] | undefined; } interface GetPolicyComplianceForJobRequest { /** The ID of the job whose compliance status you are requesting. */ jobId?: bigint | undefined; } interface GetPolicyComplianceForJobResponse { /** * Whether the job is compliant with its policies or not. Jobs could be out of * compliance if a policy they are using was updated after the job was * last edited and some of its job clusters no longer comply with * their updated policies. */ isCompliant?: boolean | undefined; /** * An object containing key-value mappings representing the first 200 policy * validation errors. * The keys indicate the path where the policy validation error is occurring. * An identifier for the job cluster is prepended to the path. * The values indicate an error message describing the policy validation error. */ violations?: Record | undefined; } /** Retrieves both the output and the metadata of a run. */ interface GetRunOutputRequest { /** The canonical identifier for the run. */ runId?: bigint | undefined; } /** Run output was retrieved successfully. */ interface GetRunOutputResponse { /** All details of the run except for its output. */ metadata?: Run | undefined; /** An error message indicating why a task failed or why output is not available. The message is unstructured, and its exact format is subject to change. */ error?: string | undefined; info?: string | undefined; result?: { $case: 'notebookOutput'; /** * The output of a notebook task, if available. A notebook task that terminates (either successfully or with a failure) * without calling `dbutils.notebook.exit()` is considered to have an empty output. * This field is set but its result value is empty. restricts this API to return the first 5 MB of the output. * To return a larger result, use the [ClusterLogConf](/dev-tools/api/latest/clusters.html#clusterlogconf) field to configure log storage * for the job cluster. */ notebookOutput: NotebookTask_NotebookOutput; } | { $case: 'sqlOutput'; /** The output of a SQL task, if available. */ sqlOutput: SqlTask_SqlOutput; } | { $case: 'dbtOutput'; /** The output of a dbt task, if available. */ dbtOutput: DbtTask_DbtTaskOutput; } | { $case: 'runJobOutput'; /** The output of a run job task, if available */ runJobOutput: RunJobTask_RunJobTaskOutput; } | { $case: 'cleanRoomsNotebookOutput'; /** The output of a clean rooms notebook task, if available */ cleanRoomsNotebookOutput: CleanRoomsNotebookTask_CleanRoomsNotebookTaskOutput; } | { $case: 'dashboardOutput'; /** The output of a dashboard task, if available */ dashboardOutput: DashboardTaskOutput; } | { $case: 'dbtCloudOutput'; /** Deprecated in favor of the new dbt_platform_output */ dbtCloudOutput: DbtCloudTaskOutput; } | { $case: 'dbtPlatformOutput'; dbtPlatformOutput: DbtPlatformTaskOutput; } | { $case: 'alertOutput'; /** The output of an alert task, if available */ alertOutput: AlertTaskOutput; } | { $case: 'aiRuntimeTaskOutput'; /** * The output of an AiRuntimeTask, if available — MLflow identifiers, * artifact paths, and per-replica allocated compute. Run lifecycle / * termination status lives on the surrounding framework `RunTask.status` * (`runs.proto:RunTask.status` of type `RunStatus`), not on this output. * See `tasks/genai/ai_runtime_task.proto:AiRuntimeTaskOutput`. */ aiRuntimeTaskOutput: AiRuntimeTaskOutput; } | undefined; /** * The output from tasks that write to standard streams (stdout/stderr) such as * spark_jar_task, spark_python_task, python_wheel_task. * * It's not supported for the notebook_task, pipeline_task or spark_submit_task. * * restricts this API to return the last 5 MB of these logs. */ logs?: string | undefined; /** Whether the logs are truncated. */ logsTruncated?: boolean | undefined; /** If there was an error executing the run, this field contains any available stack traces. */ errorTrace?: string | undefined; } interface GetRunRequest { /** * The canonical identifier of the run for which to retrieve the metadata. * This field is required. */ runId?: bigint | undefined; /** Whether to include the repair history in the response. */ includeHistory?: boolean | undefined; /** Whether to include resolved parameter values in the response. */ includeResolvedValues?: boolean | undefined; /** Use `next_page_token` returned from the previous GetRun response to request the next page of the run's array properties. */ pageToken?: string | undefined; } /** Run was retrieved successfully */ interface GetRunResponse { /** A token that can be used to list the next page of array properties. */ nextPageToken?: string | undefined; /** The canonical identifier of the job that contains this run. */ jobId?: bigint | undefined; /** The canonical identifier of the run. This ID is unique across all runs of all jobs. */ runId?: bigint | undefined; /** The creator user name. This field won’t be included in the response if the user has already been deleted. */ creatorUserName?: string | undefined; /** A unique identifier for this job run. This is set to the same value as `run_id`. */ numberInJob?: bigint | undefined; /** If this run is a retry of a prior run attempt, this field contains the run_id of the original attempt; otherwise, it is the same as the run_id. */ originalAttemptRunId?: bigint | undefined; /** Deprecated. Please use the `status` field instead. */ state?: RunState | undefined; /** The cron schedule that triggered this run if it was triggered by the periodic scheduler. */ schedule?: CronSchedule | undefined; /** A snapshot of the job’s cluster specification when this run was created. */ clusterSpec?: ClusterSpec | undefined; /** The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run. */ clusterInstance?: ClusterInstance | undefined; /** Job-level parameters used in the run */ jobParameters?: Run_JobLevelParameters[] | undefined; /** The parameters used for this run. */ overridingParameters?: RunParameters | undefined; trigger?: TriggerType | undefined; triggerInfo?: RunTriggerInfo | undefined; /** An optional name for the run. The maximum length is 4096 bytes in UTF-8 encoding. */ runName?: string | undefined; /** The URL to the detail page of the run. */ runPageUrl?: string | undefined; runType?: RunType | undefined; /** * The list of tasks performed by the run. Each task has its own `run_id` which you can use to call `JobsGetOutput` to retrieve the run results. * If more than 100 tasks are available, you can paginate through them using :method:jobs/getrun. Use the `next_page_token` field at the object root to determine if more results are available. */ tasks?: RunTask[] | undefined; /** Description of the run */ description?: string | undefined; /** The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` > 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job. */ attemptNumber?: number | undefined; /** * A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings. * If more than 100 job clusters are available, you can paginate through them using :method:jobs/getrun. */ jobClusters?: JobCluster[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** The repair history of the run. */ repairHistory?: Repair[] | undefined; status?: RunStatus | undefined; /** * ID of the job run that this run belongs to. * For legacy and single-task job runs the field is populated with the job run ID. * For task runs, the field is populated with the ID of the job run that the task run belongs to. */ jobRunId?: bigint | undefined; /** * Indicates if the run has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/getrun endpoint. * It is only relevant for API 2.2 :method:jobs/listruns requests with `expand_tasks=true`. */ hasMore?: boolean | undefined; /** * The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ effectivePerformanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** The id of the usage policy used by this run for cost attribution purposes. */ effectiveUsagePolicyId?: string | undefined; /** * ID of the deployment that produced the job when this run was created. Used to look up * deployment metadata from the Deployment Metadata service. Only set for job runs of jobs * with a `BUNDLE` deployment. */ deploymentId?: string | undefined; /** * ID of the deployment version that produced the job when this run was created. Identifies * a specific snapshot of the deployment in the Deployment Metadata service. Only set for * job runs of jobs with a `BUNDLE` deployment. */ versionId?: string | undefined; /** The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued. */ startTime?: bigint | undefined; /** The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ setupDuration?: bigint | undefined; /** The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ executionDuration?: bigint | undefined; /** The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ cleanupDuration?: bigint | undefined; /** The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running. */ endTime?: bigint | undefined; /** The time in milliseconds it took the job run and all of its repairs to finish. */ runDuration?: bigint | undefined; /** The time in milliseconds that the run has spent in the queue. */ queueDuration?: bigint | undefined; } /** Read-only state of the remote repository at the time the job was run. This field is only included on job runs. */ interface GitMetadataSnapshot { /** Commit that was used to execute the run. If git_branch was specified, this points to the HEAD of the branch at the time of the run; if git_tag was specified, this points to the commit the tag points to. */ usedCommit?: string | undefined; } /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ interface GitSource { /** URL of the repository to be cloned by this job. */ gitUrl?: string | undefined; /** Unique identifier of the service used to host the Git repository. The value is case insensitive. */ gitProvider?: string | undefined; gitReference?: { $case: 'gitBranch'; /** Name of the branch to be checked out and used by this job. This field cannot be specified in conjunction with git_tag or git_commit. */ gitBranch: string; } | { $case: 'gitTag'; /** Name of the tag to be checked out and used by this job. This field cannot be specified in conjunction with git_branch or git_commit. */ gitTag: string; } | { $case: 'gitCommit'; /** Commit to be checked out and used by this job. This field cannot be specified in conjunction with git_branch or git_tag. */ gitCommit: string; } | undefined; gitSnapshot?: GitMetadataSnapshot | undefined; /** The source of the job specification in the remote repository when the job is source controlled. */ jobSource?: JobSource | undefined; sparseCheckout?: SparseCheckout | undefined; } /** Config for an individual init script */ interface InitScriptInfo { storageInfo?: { $case: 'dbfs'; /** * destination needs to be provided. e.g. * `{ "dbfs": { "destination" : "dbfs:/home/cluster_log" } }` */ dbfs: DbfsStorageInfo; } | { $case: 's3'; /** * destination and either the region or endpoint need to be provided. e.g. * `{ \"s3\": { \"destination\": \"s3://cluster_log_bucket/prefix\", \"region\": \"us-west-2\" } }` * Cluster iam role is used to access s3, please make sure the cluster iam role in * `instance_profile_arn` has permission to write data to the s3 destination. */ s3: S3StorageInfo; } | { $case: 'file'; /** * destination needs to be provided, e.g. * `{ "file": { "destination": "file:/my/local/file.sh" } }` */ file: LocalFileInfo; } | { $case: 'gcs'; /** * destination needs to be provided, e.g. * `{ "gcs": { "destination": "gs://my-bucket/file.sh" } }` */ gcs: GcsStorageInfo; } | { $case: 'abfss'; /** * destination needs to be provided, e.g. * `abfss://@.dfs.core.windows.net/` */ abfss: Adlsgen2Info; } | { $case: 'workspace'; /** * destination needs to be provided, e.g. * `{ "workspace": { "destination": "/cluster-init-scripts/setup-datadog.sh" } }` */ workspace: WorkspaceStorageInfo; } | { $case: 'volumes'; /** * destination needs to be provided. e.g. * `{ \"volumes\" : { \"destination\" : \"/Volumes/my-init.sh\" } }` */ volumes: VolumesStorageInfo; } | undefined; } interface JobCluster { /** * A unique name for the job cluster. This field is required and must be unique within the job. * `JobTaskSettings` may refer to this field to determine which cluster to launch for the task execution. */ jobClusterKey?: string | undefined; /** If new_cluster, a description of a cluster that is created for each task. */ newCluster?: ClusterSpec_NewCluster | undefined; /** * The ID of the serverless compute object to bind this cluster to. At most one * JobCluster per job may set this field; the rate limit defined on the referenced * serverless compute applies across all tasks bound to this cluster. */ serverlessComputeId?: string | undefined; } interface JobDeployment { /** * The kind of deployment that manages the job. * * * `BUNDLE`: The job is managed by Databricks Asset Bundle. * * `SYSTEM_MANAGED`: The job is managed by and is read-only. */ kind?: JobDeployment_DeploymentKind | undefined; /** Path of the file that contains deployment metadata. */ metadataFilePath?: string | undefined; /** * ID of the deployment that manages this job. Only set when `kind` is * `BUNDLE`. Used to look up deployment metadata from the Deployment * Metadata service. */ deploymentId?: string | undefined; /** * ID of the version of the deployment that produced this job. Only set * when `kind` is `BUNDLE`. Identifies a specific snapshot of the deployment * in the Deployment Metadata service. */ versionId?: string | undefined; } interface JobEmailNotifications { /** A list of email addresses to be notified when a run begins. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent. */ onStart?: string[] | undefined; /** A list of email addresses to be notified when a run successfully completes. A run is considered to have completed successfully if it ends with a `TERMINATED` `life_cycle_state` and a `SUCCESS` result_state. If not specified on job creation, reset, or update, the list is empty, and notifications are not sent. */ onSuccess?: string[] | undefined; /** A list of email addresses to be notified when a run unsuccessfully completes. A run is considered to have completed unsuccessfully if it ends with an `INTERNAL_ERROR` `life_cycle_state` or a `FAILED`, or `TIMED_OUT` result_state. If this is not specified on job creation, reset, or update the list is empty, and notifications are not sent. */ onFailure?: string[] | undefined; /** A list of email addresses to be notified when the duration of a run exceeds the threshold specified for the `RUN_DURATION_SECONDS` metric in the `health` field. If no rule for the `RUN_DURATION_SECONDS` metric is specified in the `health` field for the job, notifications are not sent. */ onDurationWarningThresholdExceeded?: string[] | undefined; /** * A list of email addresses to notify when any streaming backlog thresholds are exceeded for any stream. * Streaming backlog thresholds can be set in the `health` field using the following metrics: `STREAMING_BACKLOG_BYTES`, `STREAMING_BACKLOG_RECORDS`, `STREAMING_BACKLOG_SECONDS`, or `STREAMING_BACKLOG_FILES`. * Alerting is based on the 10-minute average of these metrics. If the issue persists, notifications are resent every 30 minutes. */ onStreamingBacklogExceeded?: string[] | undefined; /** * If true, do not send email to recipients specified in `on_failure` if the run is skipped. * This field is `deprecated`. Please use the `notification_settings.no_alert_for_skipped_runs` field. */ noAlertForSkippedRuns?: boolean | undefined; } interface JobEnvironment { /** The key of an environment. It has to be unique within a job. */ environmentKey?: string | undefined; spec?: Environment | undefined; } interface JobLevelParameter { /** The name of the defined parameter. May only contain alphanumeric characters, `_`, `-`, and `.` */ name?: string | undefined; /** Default value of the parameter. */ default?: string | undefined; } /** * Write-only setting. Specifies the user or service principal that the job runs as. If not specified, the job runs as the user who created the job. * * Either `user_name` or `service_principal_name` should be specified. If not, an error is thrown. */ interface JobRunAs { identity?: { $case: 'userName'; /** The email of an active workspace user. Non-admin users can only set this field to their own email. */ userName: string; } | { $case: 'servicePrincipalName'; /** Application ID of an active service principal. Setting this field requires the `servicePrincipal/user` role. */ servicePrincipalName: string; } | { $case: 'groupName'; /** Group name of an account group assigned to the workspace. Setting this field requires being a member of the group. */ groupName: string; } | undefined; } interface JobSettings { /** An optional name for the job. The maximum length is 4096 bytes in UTF-8 encoding. */ name?: string | undefined; /** An optional description for the job. The maximum length is 27700 characters in UTF-8 encoding. */ description?: string | undefined; /** An optional set of email addresses that is notified when runs of this job begin or complete as well as when this job is deleted. */ emailNotifications?: JobEmailNotifications | undefined; /** A collection of system notification IDs to notify when runs of this job begin or complete. */ webhookNotifications?: WebhookNotifications | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this job. */ notificationSettings?: NotificationSettings | undefined; /** An optional timeout applied to each run of this job. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; health?: JobsHealthRules | undefined; /** An optional periodic schedule for this job. The default behavior is that the job only runs when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`. */ schedule?: CronSchedule | undefined; /** A configuration to trigger a run when certain conditions are met. The default behavior is that the job runs only when triggered by clicking “Run Now” in the Jobs UI or sending an API request to `runNow`. */ trigger?: TriggerSettings | undefined; /** * An optional continuous property for this job. The continuous property will ensure that there is always one run executing. Only one of `schedule` and `continuous` can be used. * * Pipelines started by a continuous job also run continuously, regardless of their own pipeline mode setting. */ continuous?: ContinuousSettings | undefined; /** * An optional maximum allowed number of concurrent runs of the job. * Set this value if you want to be able to execute multiple runs of the same job concurrently. * This is useful for example if you trigger your job on a frequent schedule and want to allow consecutive runs to overlap with each other, or if you want to trigger multiple runs which differ by their input parameters. * This setting affects only new runs. For example, suppose the job’s concurrency is 4 and there are 4 concurrent active runs. Then setting the concurrency to 3 won’t kill any of the active runs. * However, from then on, new runs are skipped unless there are fewer than 3 active runs. * This value cannot exceed 1000. Setting this value to `0` causes all new runs to be skipped. */ maxConcurrentRuns?: number | undefined; /** * A list of task specifications to be executed by this job. * It supports up to 1000 elements in write endpoints (:method:jobs/create, :method:jobs/reset, :method:jobs/update, :method:jobs/submit). * Read endpoints return only 100 tasks. If more than 100 tasks are available, you can paginate through them using :method:jobs/get. Use the `next_page_token` field at the object root to determine if more results are available. */ tasks?: TaskSettings[] | undefined; /** A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings. */ jobClusters?: JobCluster[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** A map of tags associated with the job. These are forwarded to the cluster as cluster tags for jobs clusters, and are subject to the same limitations as cluster tags. A maximum of 25 tags can be added to the job. */ tags?: Record | undefined; /** Used to tell what is the format of the job. This field is ignored in Create/Update/Reset calls. When using the Jobs API 2.1 this value is always set to `"MULTI_TASK"`. */ format?: Format | undefined; /** The queue settings of the job. */ queue?: QueueSettings | undefined; /** Job-level parameter definitions */ parameters?: JobLevelParameter[] | undefined; /** * The user or service principal that the job runs as, if specified in the request. * This field indicates the explicit configuration of `run_as` for the job. * To find the value in all cases, explicit or implicit, use `run_as_user_name`. */ runAs?: JobRunAs | undefined; /** * Edit mode of the job. * * * `UI_LOCKED`: The job is in a locked UI state and cannot be modified. * * `EDITABLE`: The job is in an editable state and can be modified. */ editMode?: JobEditMode | undefined; /** Deployment information for jobs managed by external sources. */ deployment?: JobDeployment | undefined; /** * A list of task execution environment specifications that can be referenced by serverless tasks of this job. * For serverless notebook tasks, if the environment_key is not specified, the notebook environment will be used if present. If a jobs environment is specified, it will override the notebook environment. * For other serverless tasks, the task environment is required to be specified using environment_key in the task settings. */ environments?: JobEnvironment[] | undefined; /** * The id of the user specified budget policy to use for this job. * If not specified, a default budget policy may be applied when creating or modifying the job. * See `effective_budget_policy_id` for the budget policy used by this workload. */ budgetPolicyId?: string | undefined; /** * The id of the user specified usage policy to use for this job. * If not specified, a default usage policy may be applied when creating or modifying the job. * See `effective_usage_policy_id` for the usage policy used by this workload. */ usagePolicyId?: string | undefined; /** * The performance mode on a serverless job. This field determines the level of compute performance or cost-efficiency for the run. * The performance target does not apply to tasks that run on Serverless GPU compute. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ performanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** Path of the job parent folder in workspace file tree. If absent, the job doesn't have a workspace object. */ parentPath?: string | undefined; /** * List of triggers attached to this job. A run starts when any active trigger evaluates to true. Cannot be set in * the same request as the legacy `schedule`, `trigger`, or `continuous` fields. Gated behind the "Multiple Triggers" feature preview. */ triggers?: TriggerConfiguration[] | undefined; /** An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry. */ maxRetries?: number | undefined; /** An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried. */ minRetryIntervalMillis?: number | undefined; /** * An optional policy to specify whether to retry a job when it times out. The default behavior * is to not retry on timeout. */ retryOnTimeout?: boolean | undefined; /** An option to disable auto optimization in serverless */ disableAutoOptimization?: boolean | undefined; } /** The source of the job specification in the remote repository when the job is source controlled. */ interface JobSource { /** Path of the job YAML file that contains the job specification. */ jobConfigPath?: string | undefined; importFromGitReference?: { $case: 'importFromGitBranch'; /** Name of the branch which the job is imported from. */ importFromGitBranch: string; } | undefined; /** * Dirty state indicates the job is not fully synced with the job specification in the remote repository. * * Possible values are: * * `NOT_SYNCED`: The job is not yet synced with the remote job specification. Import the remote job specification from UI to make the job fully synced. * * `DISCONNECTED`: The job is temporary disconnected from the remote job specification and is allowed for live edit. Import the remote job specification again from UI to make the job fully synced. */ dirtyState?: JobSource_DirtyState | undefined; } interface JobsHealthRule { metric?: JobsHealthMetric | undefined; op?: JobsHealthOperator | undefined; /** Specifies the threshold value that the health metric should obey to satisfy the health rule. */ value?: bigint | undefined; } /** An optional set of health rules that can be defined for this job. */ interface JobsHealthRules { rules?: JobsHealthRule[] | undefined; } interface Library { lib?: { $case: 'jar'; /** * URI of the JAR library to install. Supported URIs include Workspace paths, Unity Catalog Volumes paths, and S3 URIs. * For example: `{ "jar": "/Workspace/path/to/library.jar" }`, `{ "jar" : "/Volumes/path/to/library.jar" }` or * `{ "jar": "s3://my-bucket/library.jar" }`. * If S3 is used, please make sure the cluster has read access on the library. You may need to * launch the cluster with an IAM role to access the S3 URI. */ jar: string; } | { $case: 'egg'; /** Deprecated. URI of the egg library to install. Installing Python egg files is deprecated and is not supported in Databricks Runtime 14.0 and above. */ egg: string; } | { $case: 'pypi'; /** * Specification of a PyPi library to be installed. For example: * `{ "package": "simplejson" }` */ pypi: PythonPyPiLibrary; } | { $case: 'maven'; /** * Specification of a maven library to be installed. For example: * `{ "coordinates": "org.jsoup:jsoup:1.7.2" }` */ maven: MavenLibrary; } | { $case: 'cran'; /** Specification of a CRAN library to be installed as part of the library */ cran: RCranLibrary; } | { $case: 'whl'; /** * URI of the wheel library to install. Supported URIs include Workspace paths, Unity Catalog Volumes paths, and S3 URIs. * For example: `{ "whl": "/Workspace/path/to/library.whl" }`, `{ "whl" : "/Volumes/path/to/library.whl" }` or * `{ "whl": "s3://my-bucket/library.whl" }`. * If S3 is used, please make sure the cluster has read access on the library. You may need to * launch the cluster with an IAM role to access the S3 URI. */ whl: string; } | { $case: 'requirements'; /** * URI of the requirements.txt file to install. Only Workspace paths and Unity Catalog Volumes paths are supported. * For example: `{ "requirements": "/Workspace/path/to/requirements.txt" }` or `{ "requirements" : "/Volumes/path/to/requirements.txt" }` */ requirements: string; } | undefined; } interface ListJobComplianceForPolicy { /** Canonical unique identifier for the cluster policy. */ policyId?: string | undefined; /** * A page token that can be used to navigate to the next page or previous page as * returned by `next_page_token` or `prev_page_token`. */ pageToken?: string | undefined; /** * Use this field to specify the maximum number of results to be returned by the server. * The server may further constrain the maximum number of results returned in a * single page. */ pageSize?: number | undefined; } interface ListJobComplianceForPolicy_JobCompliance { /** Canonical unique identifier for a job. */ jobId?: bigint | undefined; /** Whether this job is in compliance with the latest version of its policy. */ isCompliant?: boolean | undefined; /** * An object containing key-value mappings representing the first 200 policy * validation errors. * The keys indicate the path where the policy validation error is occurring. * An identifier for the job cluster is prepended to the path. * The values indicate an error message describing the policy validation error. */ violations?: Record | undefined; } interface ListJobComplianceResponse { /** A list of jobs and their policy compliance statuses. */ jobs?: ListJobComplianceForPolicy_JobCompliance[] | undefined; /** * This field represents the pagination token to retrieve the next page of results. * If this field is not in the response, it means no further results for the request. */ nextPageToken?: string | undefined; /** * This field represents the pagination token to retrieve the previous page of results. * If this field is not in the response, it means no further results for the request. */ prevPageToken?: string | undefined; } /** Lists all jobs. */ interface ListJobsRequest { /** * The offset of the first job to return, relative to the most recently created job. * Deprecated since June 2023. Use `page_token` to iterate through the pages instead. */ offset?: number | undefined; /** The number of jobs to return. This value must be greater than 0 and less or equal to 100. The default value is 20. */ limit?: number | undefined; /** * Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown. * Use :method:jobs/get to paginate through all tasks and clusters. */ expandTasks?: boolean | undefined; /** A filter on the list based on the exact (case insensitive) job name. */ name?: string | undefined; /** Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of jobs respectively. */ pageToken?: string | undefined; } /** List of jobs was retrieved successfully. */ interface ListJobsResponse { /** The list of jobs. Only included in the response if there are jobs to list. */ jobs?: BaseJob[] | undefined; /** If true, additional jobs matching the provided filter are available for listing. */ hasMore?: boolean | undefined; /** A token that can be used to list the next page of jobs (if applicable). */ nextPageToken?: string | undefined; /** A token that can be used to list the previous page of jobs (if applicable). */ prevPageToken?: string | undefined; } /** Lists runs from most recently started to least. */ interface ListRunsRequest { /** The job for which to list runs. If omitted, the Jobs service lists runs from all jobs. */ jobId?: bigint | undefined; stateConstraint?: { $case: 'activeOnly'; /** * If active_only is `true`, only active runs are included in the results; otherwise, * lists both active and completed runs. An active run is a run in the `QUEUED`, `PENDING`, * `RUNNING`, or `TERMINATING`. This field cannot be `true` when completed_only is `true`. */ activeOnly: boolean; } | { $case: 'completedOnly'; /** * If completed_only is `true`, only completed runs are included in the results; * otherwise, lists both active and completed runs. This field cannot be `true` when * active_only is `true`. */ completedOnly: boolean; } | undefined; /** * The offset of the first run to return, relative to the most recent run. * Deprecated since June 2023. Use `page_token` to iterate through the pages instead. */ offset?: number | undefined; /** * The number of runs to return. This value must be greater than 0 and less than 25. * The default value is 20. If a request specifies a limit of 0, the service instead * uses the maximum limit. */ limit?: number | undefined; /** The type of runs to return. For a description of run types, see :method:jobs/getRun. */ runType?: RunType | undefined; /** * Whether to include task and cluster details in the response. Note that only the first 100 elements will be shown. * Use :method:jobs/getrun to paginate through all tasks and clusters. */ expandTasks?: boolean | undefined; /** * Show runs that started _at or after_ this value. The value must be a UTC timestamp * in milliseconds. Can be combined with _start_time_to_ to filter by a time range. */ startTimeFrom?: bigint | undefined; /** * Show runs that started _at or before_ this value. The value must be a UTC timestamp * in milliseconds. Can be combined with _start_time_from_ to filter by a time range. */ startTimeTo?: bigint | undefined; /** Use `next_page_token` or `prev_page_token` returned from the previous request to list the next or previous page of runs respectively. */ pageToken?: string | undefined; } /** List of runs was retrieved successfully. */ interface ListRunsResponse { /** A list of runs, from most recently started to least. Only included in the response if there are runs to list. */ runs?: BaseRun[] | undefined; /** If true, additional runs matching the provided filter are available for listing. */ hasMore?: boolean | undefined; /** A token that can be used to list the next page of runs (if applicable). */ nextPageToken?: string | undefined; /** A token that can be used to list the previous page of runs (if applicable). */ prevPageToken?: string | undefined; } interface LocalFileInfo { /** local file destination, e.g. `file:/my/local/file.sh` */ destination?: string | undefined; } interface LogAnalyticsInfo { logAnalyticsWorkspaceId?: string | undefined; logAnalyticsPrimaryKey?: string | undefined; } interface MavenLibrary { /** Gradle-style maven coordinates. For example: "org.jsoup:jsoup:1.7.2". */ coordinates?: string | undefined; /** * Maven repo to install the Maven package from. If omitted, both Maven Central Repository * and Spark Packages are searched. */ repo?: string | undefined; /** * List of dependences to exclude. For example: `["slf4j:slf4j", "*:hadoop-client"]`. * * Maven dependency exclusions: * https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html. */ exclusions?: string[] | undefined; } interface ModelTriggerConfiguration { /** * Name of the securable to monitor ("mycatalog.myschema.mymodel" in the case of model-level triggers, * "mycatalog.myschema" in the case of schema-level triggers) or empty in the case of metastore-level triggers. */ securableName?: string | undefined; /** Aliases of the model versions to monitor. Can only be used in conjunction with condition MODEL_ALIAS_SET. */ aliases?: string[] | undefined; /** The condition based on which to trigger a job run. */ condition?: ModelTriggerConfiguration_ModelTriggerCondition | undefined; /** * If set, the trigger starts a run only after the specified amount of time has passed since * the last time the trigger fired. The minimum allowed value is 60 seconds. */ minTimeBetweenTriggersSeconds?: number | undefined; /** * If set, the trigger starts a run only after no model updates have occurred for the specified time * and can be used to wait for a series of model updates before triggering a run. The * minimum allowed value is 60 seconds. */ waitAfterLastChangeSeconds?: number | undefined; } /** * Runtime state for a model trigger. Currently empty because model triggers do not * expose any trigger-specific runtime state. */ interface ModelTriggerState {} /** Configuration for flexible node types, allowing fallback to alternate node types during cluster launch and upscale. */ interface NodeTypeFlexibility { /** A list of node type IDs to use as fallbacks when the primary node type is unavailable. */ alternateNodeTypeIds?: string[] | undefined; } interface NotebookTask { /** * The path of the notebook to be run in the workspace or remote repository. * For notebooks stored in the workspace, the path must be absolute and begin with a slash. * For notebooks stored in a remote repository, the path must be relative. This field is required. */ notebookPath?: string | undefined; /** * Base parameters to be used for each run of this job. If the run is initiated by a call to :method:jobs/run * Now with parameters specified, the two parameters maps are merged. If the same key is specified in * `base_parameters` and in `run-now`, the value from `run-now` is used. * Use [Task parameter variables](/jobs.html#parameter-variables) to set parameters containing information about job runs. * * If the notebook takes a parameter that is not specified in the job’s `base_parameters` or the `run-now` override parameters, * the default value from the notebook is used. * * Retrieve these parameters in a notebook using [dbutils.widgets.get](/dev-tools/databricks-utils.html#dbutils-widgets). * * The JSON representation of this field cannot exceed 1MB. */ baseParameters?: Record | undefined; /** * Optional location type of the notebook. When set to `WORKSPACE`, the notebook will be retrieved from the local workspace. When set to `GIT`, the notebook will be retrieved from a Git repository * defined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise. * * `WORKSPACE`: Notebook is located in workspace. * * `GIT`: Notebook is located in cloud Git provider. */ source?: Source | undefined; /** * Optional `warehouse_id` to run the notebook on a SQL warehouse. Classic SQL warehouses are NOT supported, please use serverless or pro SQL warehouses. * * Note that SQL warehouses only support SQL cells; if the notebook contains non-SQL cells, the run will fail. */ warehouseId?: string | undefined; } interface NotebookTask_NotebookOutput { /** * The value passed to [dbutils.notebook.exit()](/notebooks/notebook-workflows.html#notebook-workflows-exit). * restricts this API to return the first 5 MB of the value. For a larger result, your job can store the results in a cloud storage service. * This field is absent if `dbutils.notebook.exit()` was never called. */ result?: string | undefined; /** Whether or not the result was truncated. */ truncated?: boolean | undefined; } interface NotificationSettings { /** If true, do not send notifications to recipients specified in `on_failure` if the run is skipped. */ noAlertForSkippedRuns?: boolean | undefined; /** If true, do not send notifications to recipients specified in `on_failure` if the run is canceled. */ noAlertForCanceledRuns?: boolean | undefined; /** If true, do not send notifications to recipients specified in `on_start` for the retried runs and do not send notifications to recipients specified in `on_failure` until the last retry of the run. */ alertOnLastAttempt?: boolean | undefined; } /** Stores the catalog name, schema name, and the output schema expiration time for the clean room run. */ interface OutputSchemaInfo { catalogName?: string | undefined; schemaName?: string | undefined; /** The expiration time for the output schema as a Unix timestamp in milliseconds. */ expirationTime?: bigint | undefined; } /** * Per-trigger runtime state for the multi-trigger surface. Mirrors `TriggerConfiguration`'s * trigger-type variants 1:1; each entry sets exactly one variant matching the corresponding * trigger's type. Variants with no runtime state today (`schedule`, `model`) are emitted as * empty messages. */ interface PerTriggerState { /** * (-- Next ID: 9. --) * Runtime-state variant for the corresponding trigger; exactly one field is set, * matching the trigger's type in `TriggerConfiguration`. */ triggerType?: { $case: 'periodic'; periodic: PeriodicTriggerState; } | { $case: 'schedule'; schedule: ScheduleTriggerState; } | { $case: 'continuous'; continuous: ContinuousTriggerState; } | { $case: 'fileArrival'; fileArrival: FileArrivalTriggerState; } | { $case: 'tableUpdate'; tableUpdate: TableTriggerState; } | { $case: 'model'; model: ModelTriggerState; } | undefined; /** State for SQL condition evaluation, can coexist with other trigger states. */ sqlCondition?: SqlConditionState | undefined; /** Whether this trigger is paused or not. Mirrors the configured pause_status. */ pauseStatus?: SchedulePauseStatus | undefined; } interface PerformanceTarget {} interface PeriodicTriggerConfiguration { /** The interval at which the trigger should run. */ interval?: number | undefined; /** The unit of time for the interval. */ unit?: PeriodicTriggerConfiguration_TimeUnit | undefined; } interface PeriodicTriggerState { nextRunTime?: bigint | undefined; } interface PipelineParameters { /** If true, triggers a full refresh on the spark declarative pipeline. */ fullRefresh?: boolean | undefined; /** A list of tables to update without fullRefresh. */ refreshSelection?: string[] | undefined; /** A list of tables to update with fullRefresh. */ fullRefreshSelection?: string[] | undefined; /** A list of streaming flows to reset checkpoints without clearing data. */ resetCheckpointSelection?: string[] | undefined; /** * Flow names to selectively refresh. These are unioned with other selective refresh * options (refresh_selection, full_refresh_selection) to determine the final set of flows to refresh. */ refreshFlowSelection?: string[] | undefined; } interface PipelineTask { /** The full name of the pipeline task to execute. */ pipelineId?: string | undefined; /** * Key/value-map of parameters passed to the pipeline execution. * Limited to 10k characters in total. */ pipelineTaskParameters?: Record | undefined; /** If true, triggers a full refresh on the spark declarative pipeline. */ fullRefresh?: boolean | undefined; /** A list of tables to update without fullRefresh. */ refreshSelection?: string[] | undefined; /** A list of tables to update with fullRefresh. */ fullRefreshSelection?: string[] | undefined; /** A list of streaming flows to reset checkpoints without clearing data. */ resetCheckpointSelection?: string[] | undefined; /** * Flow names to selectively refresh. These are unioned with other selective refresh * options (refresh_selection, full_refresh_selection) to determine the final set of flows to refresh. */ refreshFlowSelection?: string[] | undefined; } interface PowerBiModel { /** The name of the Power BI workspace of the model */ workspaceName?: string | undefined; /** The name of the Power BI model */ modelName?: string | undefined; /** The default storage mode of the Power BI model */ storageMode?: StorageMode | undefined; /** How the published Power BI model authenticates to */ authenticationMethod?: AuthenticationMethod | undefined; /** Whether to overwrite existing Power BI models */ overwriteExisting?: boolean | undefined; } interface PowerBiTable { /** The table name in */ name?: string | undefined; /** The catalog name in */ catalog?: string | undefined; /** The schema name in */ schema?: string | undefined; /** The Power BI storage mode of the table */ storageMode?: StorageMode | undefined; } interface PowerBiTask { /** The tables to be exported to Power BI */ tables?: PowerBiTable[] | undefined; /** The SQL warehouse ID to use as the Power BI data source */ warehouseId?: string | undefined; /** The semantic model to update */ powerBiModel?: PowerBiModel | undefined; /** The resource name of the UC connection to authenticate from to Power BI */ connectionResourceName?: string | undefined; /** Whether the model should be refreshed after the update */ refreshAfterUpdate?: boolean | undefined; } interface PythonOperatorTask { /** * An ordered list of task parameters. * TODO(JOBS-30885): Add limits for parameters. */ parameters?: PythonOperatorTask_Parameter[] | undefined; /** * Fully qualified name of the main class or function. * For example, `my_project.my_function` or `my_project.MyOperator`. */ main?: string | undefined; } interface PythonOperatorTask_Parameter { name?: string | undefined; value?: string | undefined; } interface PythonPyPiLibrary { /** * The name of the pypi package to install. An optional exact version specification is also * supported. Examples: "simplejson" and "simplejson==3.8.0". */ package?: string | undefined; /** * The repository where the package can be found. If not specified, the default pip index is * used. */ repo?: string | undefined; } interface PythonWheelTask { /** Name of the package to execute */ packageName?: string | undefined; /** Named entry point to use, if it does not exist in the metadata of the package it executes the function from the package directly using `$packageName.$entryPoint()` */ entryPoint?: string | undefined; /** Command-line parameters passed to Python wheel task. Leave it empty if `named_parameters` is not null. */ parameters?: string[] | undefined; /** Command-line parameters passed to Python wheel task in the form of `["--name=task", "--data=dbfs:/path/to/data.json"]`. Leave it empty if `parameters` is not null. */ namedParameters?: Record | undefined; } interface QueueDetails { code?: QueueDetailsCode_Code | undefined; /** * A descriptive message with the queuing details. This field is unstructured, and its exact format is subject * to change. */ message?: string | undefined; } interface QueueDetailsCode {} interface QueueSettings { /** If true, enable queueing for the job. This is a required field. */ enabled?: boolean | undefined; } interface RCranLibrary { /** The name of the CRAN package to install. */ package?: string | undefined; /** The repository where the package can be found. If not specified, the default CRAN repo is used. */ repo?: string | undefined; } interface Repair { /** The repair history item type. Indicates whether a run is the original run or a repair run. */ type?: RepairType | undefined; /** The start time of the (repaired) run. */ startTime?: bigint | undefined; /** The end time of the (repaired) run. */ endTime?: bigint | undefined; /** Deprecated. Please use the `status` field instead. */ state?: RunState | undefined; /** The ID of the repair. Only returned for the items that represent a repair in `repair_history`. */ id?: bigint | undefined; /** The run IDs of the task runs that ran as part of this repair history item. */ taskRunIds?: bigint[] | undefined; status?: RunStatus | undefined; /** * The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ effectivePerformanceTarget?: PerformanceTarget_PerformanceTarget | undefined; } interface RepairRunRequest { /** The job run ID of the run to repair. The run must not be in progress. */ runId?: bigint | undefined; /** The ID of the latest repair. This parameter is not required when repairing a run for the first time, but must be provided on subsequent requests to repair the same run. */ latestRepairId?: bigint | undefined; /** The task keys of the task runs to repair. */ rerunTasks?: string[] | undefined; /** Job-level parameters used in the run. for example `"param": "overriding_val"` */ jobParameters?: Record | undefined; /** If true, repair all failed tasks. Only one of `rerun_tasks` or `rerun_all_failed_tasks` can be used. */ rerunAllFailedTasks?: boolean | undefined; /** If true, repair all tasks that depend on the tasks in `rerun_tasks`, even if they were previously successful. Can be also used in combination with `rerun_all_failed_tasks`. */ rerunDependentTasks?: boolean | undefined; /** * The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ performanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** Controls whether the pipeline should perform a full refresh */ pipelineParams?: PipelineParameters | undefined; /** * A list of parameters for jobs with Spark JAR tasks, for example `"jar_params": ["john doe", "35"]`. * The parameters are used to invoke the main function of the main class specified in the Spark JAR task. * If not specified upon `run-now`, it defaults to an empty list. * jar_params cannot be specified in conjunction with notebook_params. * The JSON representation of this field (for example `{"jar_params":["john doe","35"]}`) cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ jarParams?: string[] | undefined; /** * A map from keys to values for jobs with notebook task, for example `"notebook_params": {"name": "john doe", "age": "35"}`. * The map is passed to the notebook and is accessible through the [dbutils.widgets.get](/dev-tools/databricks-utils.html) function. * * If not specified upon `run-now`, the triggered run uses the job’s base parameters. * * notebook_params cannot be specified in conjunction with jar_params. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * The JSON representation of this field (for example `{"notebook_params":{"name":"john doe","age":"35"}}`) cannot exceed 10,000 bytes. */ notebookParams?: Record | undefined; /** * A list of parameters for jobs with Python tasks, for example `"python_params": ["john doe", "35"]`. * The parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite * the parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ pythonParams?: string[] | undefined; /** * A list of parameters for jobs with spark submit task, for example `"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]`. * The parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the * parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ sparkSubmitParams?: string[] | undefined; pythonNamedParams?: Record | undefined; /** * A map from keys to values for jobs with SQL task, for example `"sql_params": {"name": "john doe", "age": "35"}`. The SQL alert task does not support custom parameters. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ sqlParams?: Record | undefined; /** * An array of commands to execute for jobs with the dbt task, for example `"dbt_commands": ["dbt deps", "dbt seed", "dbt deps", "dbt seed", "dbt run"]` * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ dbtCommands?: string[] | undefined; } /** Run repair was initiated. */ interface RepairRunResponse { /** The ID of the repair. Must be provided in subsequent repairs using the `latest_repair_id` field to ensure sequential repairs. */ repairId?: bigint | undefined; } interface ResetJobRequest { /** The canonical identifier of the job to reset. This field is required. */ jobId?: bigint | undefined; /** * The new settings of the job. These settings completely replace the old settings. * * Changes to the field `JobBaseSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only. */ newSettings?: JobSettings | undefined; } /** Job was overwritten successfully. */ interface ResetJobResponse {} interface ResolvedValues { resolved?: { $case: 'notebookTask'; notebookTask: ResolvedValues_NotebookTaskResolvedValues; } | { $case: 'sparkJarTask'; sparkJarTask: ResolvedValues_SparkJarTaskResolvedValues; } | { $case: 'sparkPythonTask'; sparkPythonTask: ResolvedValues_SparkPythonTaskResolvedValues; } | { $case: 'sparkSubmitTask'; sparkSubmitTask: ResolvedValues_SparkSubmitTaskResolvedValues; } | { $case: 'pythonWheelTask'; pythonWheelTask: ResolvedValues_PythonWheelTaskResolvedValues; } | { $case: 'dbtTask'; dbtTask: ResolvedValues_DbtTaskResolvedValues; } | { $case: 'sqlTask'; sqlTask: ResolvedValues_SqlTaskResolvedValues; } | { $case: 'runJobTask'; runJobTask: ResolvedValues_RunJobTaskResolvedValues; } | { $case: 'conditionTask'; conditionTask: ResolvedValues_ConditionTaskResolvedValues; } | { $case: 'simulationTask'; simulationTask: ResolvedValues_SimulationTaskResolvedValues; } | { $case: 'pipelineTask'; pipelineTask: ResolvedValues_PipelineTaskResolvedValues; } | { $case: 'aiRuntimeTask'; /** * Resolved values for an AI Runtime task — env_vars with * `{{tasks..values.}}` references substituted to concrete * values before submission to the training service. */ aiRuntimeTask: ResolvedValues_AiRuntimeTaskResolvedValues; } | undefined; } /** * Resolved values for an AiRuntimeTask after dynamic-value substitution, so * Jobs can expand `{{tasks..values.}}` references before * submission. */ interface ResolvedValues_AiRuntimeTaskResolvedValues {} interface ResolvedValues_ConditionTaskResolvedValues { left?: string | undefined; right?: string | undefined; } interface ResolvedValues_DbtTaskResolvedValues { commands?: string[] | undefined; } interface ResolvedValues_NotebookTaskResolvedValues { baseParameters?: Record | undefined; } interface ResolvedValues_PipelineTaskResolvedValues { /** * Key/value-map of parameters passed to the pipeline execution. * Limited to 10k characters in total. */ pipelineTaskParameters?: Record | undefined; } interface ResolvedValues_PythonWheelTaskResolvedValues { parameters?: string[] | undefined; namedParameters?: Record | undefined; } interface ResolvedValues_RunJobTaskResolvedValues { parameters?: Record | undefined; jobParameters?: Record | undefined; } interface ResolvedValues_SimulationTaskResolvedValues { parameters?: Record | undefined; } interface ResolvedValues_SparkJarTaskResolvedValues { parameters?: string[] | undefined; } interface ResolvedValues_SparkPythonTaskResolvedValues {} interface ResolvedValues_SparkSubmitTaskResolvedValues {} interface ResolvedValues_SqlTaskResolvedValues { parameters?: Record | undefined; } interface Run { /** The canonical identifier of the job that contains this run. */ jobId?: bigint | undefined; /** The canonical identifier of the run. This ID is unique across all runs of all jobs. */ runId?: bigint | undefined; /** The creator user name. This field won’t be included in the response if the user has already been deleted. */ creatorUserName?: string | undefined; /** A unique identifier for this job run. This is set to the same value as `run_id`. */ numberInJob?: bigint | undefined; /** If this run is a retry of a prior run attempt, this field contains the run_id of the original attempt; otherwise, it is the same as the run_id. */ originalAttemptRunId?: bigint | undefined; /** Deprecated. Please use the `status` field instead. */ state?: RunState | undefined; /** The cron schedule that triggered this run if it was triggered by the periodic scheduler. */ schedule?: CronSchedule | undefined; /** A snapshot of the job’s cluster specification when this run was created. */ clusterSpec?: ClusterSpec | undefined; /** The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run. */ clusterInstance?: ClusterInstance | undefined; /** Job-level parameters used in the run */ jobParameters?: Run_JobLevelParameters[] | undefined; /** The parameters used for this run. */ overridingParameters?: RunParameters | undefined; trigger?: TriggerType | undefined; triggerInfo?: RunTriggerInfo | undefined; /** An optional name for the run. The maximum length is 4096 bytes in UTF-8 encoding. */ runName?: string | undefined; /** The URL to the detail page of the run. */ runPageUrl?: string | undefined; runType?: RunType | undefined; /** * The list of tasks performed by the run. Each task has its own `run_id` which you can use to call `JobsGetOutput` to retrieve the run results. * If more than 100 tasks are available, you can paginate through them using :method:jobs/getrun. Use the `next_page_token` field at the object root to determine if more results are available. */ tasks?: RunTask[] | undefined; /** Description of the run */ description?: string | undefined; /** The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` > 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job. */ attemptNumber?: number | undefined; /** * A list of job cluster specifications that can be shared and reused by tasks of this job. Libraries cannot be declared in a shared job cluster. You must declare dependent libraries in task settings. * If more than 100 job clusters are available, you can paginate through them using :method:jobs/getrun. */ jobClusters?: JobCluster[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** The repair history of the run. */ repairHistory?: Repair[] | undefined; status?: RunStatus | undefined; /** * ID of the job run that this run belongs to. * For legacy and single-task job runs the field is populated with the job run ID. * For task runs, the field is populated with the ID of the job run that the task run belongs to. */ jobRunId?: bigint | undefined; /** * Indicates if the run has more array properties (`tasks`, `job_clusters`) that are not shown. They can be accessed via :method:jobs/getrun endpoint. * It is only relevant for API 2.2 :method:jobs/listruns requests with `expand_tasks=true`. */ hasMore?: boolean | undefined; /** * The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ effectivePerformanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** The id of the usage policy used by this run for cost attribution purposes. */ effectiveUsagePolicyId?: string | undefined; /** * ID of the deployment that produced the job when this run was created. Used to look up * deployment metadata from the Deployment Metadata service. Only set for job runs of jobs * with a `BUNDLE` deployment. */ deploymentId?: string | undefined; /** * ID of the deployment version that produced the job when this run was created. Identifies * a specific snapshot of the deployment in the Deployment Metadata service. Only set for * job runs of jobs with a `BUNDLE` deployment. */ versionId?: string | undefined; /** The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued. */ startTime?: bigint | undefined; /** The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ setupDuration?: bigint | undefined; /** The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ executionDuration?: bigint | undefined; /** The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ cleanupDuration?: bigint | undefined; /** The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running. */ endTime?: bigint | undefined; /** The time in milliseconds it took the job run and all of its repairs to finish. */ runDuration?: bigint | undefined; /** The time in milliseconds that the run has spent in the queue. */ queueDuration?: bigint | undefined; } interface Run_JobLevelParameters { /** The name of the parameter */ name?: string | undefined; /** The optional default value of the parameter */ default?: string | undefined; /** The value used in the run */ value?: string | undefined; } interface RunJobTask { /** ID of the job to trigger. */ jobId?: bigint | undefined; /** Job-level parameters used to trigger the job. */ jobParameters?: Record | undefined; /** Controls whether the pipeline should perform a full refresh */ pipelineParams?: PipelineParameters | undefined; /** * A list of parameters for jobs with Spark JAR tasks, for example `"jar_params": ["john doe", "35"]`. * The parameters are used to invoke the main function of the main class specified in the Spark JAR task. * If not specified upon `run-now`, it defaults to an empty list. * jar_params cannot be specified in conjunction with notebook_params. * The JSON representation of this field (for example `{"jar_params":["john doe","35"]}`) cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ jarParams?: string[] | undefined; /** * A map from keys to values for jobs with notebook task, for example `"notebook_params": {"name": "john doe", "age": "35"}`. * The map is passed to the notebook and is accessible through the [dbutils.widgets.get](/dev-tools/databricks-utils.html) function. * * If not specified upon `run-now`, the triggered run uses the job’s base parameters. * * notebook_params cannot be specified in conjunction with jar_params. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * The JSON representation of this field (for example `{"notebook_params":{"name":"john doe","age":"35"}}`) cannot exceed 10,000 bytes. */ notebookParams?: Record | undefined; /** * A list of parameters for jobs with Python tasks, for example `"python_params": ["john doe", "35"]`. * The parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite * the parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ pythonParams?: string[] | undefined; /** * A list of parameters for jobs with spark submit task, for example `"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]`. * The parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the * parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ sparkSubmitParams?: string[] | undefined; pythonNamedParams?: Record | undefined; /** * A map from keys to values for jobs with SQL task, for example `"sql_params": {"name": "john doe", "age": "35"}`. The SQL alert task does not support custom parameters. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ sqlParams?: Record | undefined; /** * An array of commands to execute for jobs with the dbt task, for example `"dbt_commands": ["dbt deps", "dbt seed", "dbt deps", "dbt seed", "dbt run"]` * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ dbtCommands?: string[] | undefined; } interface RunJobTask_RunJobTaskOutput { /** The run id of the triggered job run */ runId?: bigint | undefined; } interface RunLifeCycleState {} interface RunLifecycleStateV2 {} interface RunNowRequest { /** The ID of the job to be executed */ jobId?: bigint | undefined; /** Job-level parameters used in the run. for example `"param": "overriding_val"` */ jobParameters?: Record | undefined; /** * An optional token to guarantee the idempotency of job run requests. If a run with the provided token already exists, * the request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted, * an error is returned. * * If you specify the idempotency token, upon failure you can retry until the request succeeds. guarantees that exactly one run * is launched with that idempotency token. * * This token must have at most 64 characters. */ idempotencyToken?: string | undefined; /** The queue settings of the run. */ queue?: QueueSettings | undefined; /** * A list of task keys to run inside of the job. If this field is not provided, all tasks in the job will be run. * * Prefix a task key with `+` to also run its upstream tasks, or suffix it with `+` to also run its downstream tasks. * For example, `+my_task` runs `my_task` and everything upstream of it, `my_task+` runs `my_task` and everything * downstream of it, and `+my_task+` runs both. A task key with no `+` runs only that task. */ only?: string[] | undefined; /** * The performance mode on a serverless job. The performance target determines the level of compute performance or cost-efficiency for the run. This field overrides the performance target defined on the job level. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ performanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** Controls whether the pipeline should perform a full refresh */ pipelineParams?: PipelineParameters | undefined; /** * A list of parameters for jobs with Spark JAR tasks, for example `"jar_params": ["john doe", "35"]`. * The parameters are used to invoke the main function of the main class specified in the Spark JAR task. * If not specified upon `run-now`, it defaults to an empty list. * jar_params cannot be specified in conjunction with notebook_params. * The JSON representation of this field (for example `{"jar_params":["john doe","35"]}`) cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ jarParams?: string[] | undefined; /** * A map from keys to values for jobs with notebook task, for example `"notebook_params": {"name": "john doe", "age": "35"}`. * The map is passed to the notebook and is accessible through the [dbutils.widgets.get](/dev-tools/databricks-utils.html) function. * * If not specified upon `run-now`, the triggered run uses the job’s base parameters. * * notebook_params cannot be specified in conjunction with jar_params. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * The JSON representation of this field (for example `{"notebook_params":{"name":"john doe","age":"35"}}`) cannot exceed 10,000 bytes. */ notebookParams?: Record | undefined; /** * A list of parameters for jobs with Python tasks, for example `"python_params": ["john doe", "35"]`. * The parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite * the parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ pythonParams?: string[] | undefined; /** * A list of parameters for jobs with spark submit task, for example `"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]`. * The parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the * parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ sparkSubmitParams?: string[] | undefined; pythonNamedParams?: Record | undefined; /** * A map from keys to values for jobs with SQL task, for example `"sql_params": {"name": "john doe", "age": "35"}`. The SQL alert task does not support custom parameters. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ sqlParams?: Record | undefined; /** * An array of commands to execute for jobs with the dbt task, for example `"dbt_commands": ["dbt deps", "dbt seed", "dbt deps", "dbt seed", "dbt run"]` * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ dbtCommands?: string[] | undefined; } /** Run was started successfully. */ interface RunNowResponse { /** The globally unique ID of the newly triggered run. */ runId?: bigint | undefined; /** A unique identifier for this job run. This is set to the same value as `run_id`. */ numberInJob?: bigint | undefined; } interface RunParameters { /** Controls whether the pipeline should perform a full refresh */ pipelineParams?: PipelineParameters | undefined; /** * A list of parameters for jobs with Spark JAR tasks, for example `"jar_params": ["john doe", "35"]`. * The parameters are used to invoke the main function of the main class specified in the Spark JAR task. * If not specified upon `run-now`, it defaults to an empty list. * jar_params cannot be specified in conjunction with notebook_params. * The JSON representation of this field (for example `{"jar_params":["john doe","35"]}`) cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ jarParams?: string[] | undefined; /** * A map from keys to values for jobs with notebook task, for example `"notebook_params": {"name": "john doe", "age": "35"}`. * The map is passed to the notebook and is accessible through the [dbutils.widgets.get](/dev-tools/databricks-utils.html) function. * * If not specified upon `run-now`, the triggered run uses the job’s base parameters. * * notebook_params cannot be specified in conjunction with jar_params. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * The JSON representation of this field (for example `{"notebook_params":{"name":"john doe","age":"35"}}`) cannot exceed 10,000 bytes. */ notebookParams?: Record | undefined; /** * A list of parameters for jobs with Python tasks, for example `"python_params": ["john doe", "35"]`. * The parameters are passed to Python file as command-line parameters. If specified upon `run-now`, it would overwrite * the parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ pythonParams?: string[] | undefined; /** * A list of parameters for jobs with spark submit task, for example `"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"]`. * The parameters are passed to spark-submit script as command-line parameters. If specified upon `run-now`, it would overwrite the * parameters specified in job setting. The JSON representation of this field (for example `{"python_params":["john doe","35"]}`) * cannot exceed 10,000 bytes. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. * * Important * * These parameters accept only Latin characters (ASCII character set). Using non-ASCII characters returns an error. * Examples of invalid, non-ASCII characters are Chinese, Japanese kanjis, and emojis. */ sparkSubmitParams?: string[] | undefined; pythonNamedParams?: Record | undefined; /** * A map from keys to values for jobs with SQL task, for example `"sql_params": {"name": "john doe", "age": "35"}`. The SQL alert task does not support custom parameters. * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ sqlParams?: Record | undefined; /** * An array of commands to execute for jobs with the dbt task, for example `"dbt_commands": ["dbt deps", "dbt seed", "dbt deps", "dbt seed", "dbt run"]` * * ⚠ **Deprecation note** Use [job parameters](/jobs/job-parameters.html#job-parameter-pushdown) to pass information down to tasks. */ dbtCommands?: string[] | undefined; } interface RunResultState {} /** The current state of the run. */ interface RunState { /** A value indicating the run's current lifecycle state. This field is always available in the response. Note: Additional states might be introduced in future releases. */ lifeCycleState?: RunLifeCycleState_RunLifeCycleState | undefined; /** A value indicating the run's result. This field is only available for terminal lifecycle states. Note: Additional states might be introduced in future releases. */ resultState?: RunResultState_RunResultState | undefined; /** A descriptive message for the current state. This field is unstructured, and its exact format is subject to change. */ stateMessage?: string | undefined; /** A value indicating whether a run was canceled manually by a user or by the scheduler because the run timed out. */ userCancelledOrTimedout?: boolean | undefined; /** The reason indicating why the run was queued. */ queueReason?: string | undefined; } /** The current status of the run */ interface RunStatus { state?: RunLifecycleStateV2_State | undefined; /** If the run is in a TERMINATING or TERMINATED state, details about the reason for terminating the run. */ terminationDetails?: TerminationDetails | undefined; /** If the run was queued, details about the reason for queuing the run. */ queueDetails?: QueueDetails | undefined; } /** Used when outputting a child run, in GetRun or ListRuns. */ interface RunTask { /** The ID of the task run. */ runId?: bigint | undefined; /** Deprecated. Please use the `status` field instead. */ state?: RunState | undefined; runPageUrl?: string | undefined; /** The cluster used for this run. If the run is specified to use a new cluster, this field is set once the Jobs service has requested a cluster for the run. */ clusterInstance?: ClusterInstance | undefined; /** The sequence number of this run attempt for a triggered job run. The initial attempt of a run has an attempt_number of 0. If the initial run attempt fails, and the job has a retry policy (`max_retries` > 0), subsequent runs are created with an `original_attempt_run_id` of the original attempt’s ID and an incrementing `attempt_number`. Runs are retried only until they succeed, and the maximum `attempt_number` is the same as the `max_retries` value for the job. */ attemptNumber?: number | undefined; /** An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** Parameter values including resolved references */ resolvedValues?: ResolvedValues | undefined; status?: RunStatus | undefined; /** * The actual performance target used by the serverless run during execution. This can differ from the client-set performance target on the request depending on whether the performance mode is supported by the job type. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ effectivePerformanceTarget?: PerformanceTarget_PerformanceTarget | undefined; /** * The id of the serverless compute this task ran on, either explicitly configured on the task * or the workspace default. Only set once the compute has been resolved at run trigger. */ effectiveServerlessComputeId?: string | undefined; /** * A unique name for the task. This field is used to refer to this task from other tasks. * This field is required and must be unique within its parent job. * On Update or Reset, this field is used to reference the tasks to be updated or reset. */ taskKey?: string | undefined; /** An optional description for this task. */ description?: string | undefined; /** * An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete successfully before executing this task. * The key is `task_key`, and the value is the name assigned to the dependent task. */ dependsOn?: TaskDependency[] | undefined; /** An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`. See :method:jobs/create for a list of possible values. */ runIf?: TaskDependencyType | undefined; /** An optional timeout applied to each run of this job task. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; /** An optional set of email addresses notified when the task run begins or completes. The default behavior is to not send any emails. */ emailNotifications?: JobEmailNotifications | undefined; health?: JobsHealthRules | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task run. */ notificationSettings?: NotificationSettings | undefined; /** A collection of system notification IDs to notify when the run begins or completes. The default behavior is to not send any system notifications. Task webhooks respect the task notification settings. */ webhookNotifications?: WebhookNotifications | undefined; environmentRef?: { $case: 'environmentKey'; /** The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute. */ environmentKey: string; } | undefined; /** An optional flag to disable the task. If set to true, the task will not run even if it is part of a job. */ disabled?: boolean | undefined; /** Task level compute configuration. */ compute?: Compute | undefined; /** DO NOT ADD ANY NEW FIELDS TO JobTask OUTSIDE OF THIS ONEOF as it will break the TaskRegistry */ task?: { $case: 'notebookTask'; /** The task runs a notebook when the `notebook_task` field is present. */ notebookTask: NotebookTask; } | { $case: 'sparkJarTask'; /** The task runs a JAR when the `spark_jar_task` field is present. */ sparkJarTask: SparkJarTask; } | { $case: 'sparkPythonTask'; /** The task runs a Python file when the `spark_python_task` field is present. */ sparkPythonTask: SparkPythonTask; } | { $case: 'sparkSubmitTask'; /** (Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit). */ sparkSubmitTask: SparkSubmitTask; } | { $case: 'pipelineTask'; /** The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported. */ pipelineTask: PipelineTask; } | { $case: 'pythonWheelTask'; /** The task runs a Python wheel when the `python_wheel_task` field is present. */ pythonWheelTask: PythonWheelTask; } | { $case: 'dbtTask'; /** The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse. */ dbtTask: DbtTask; } | { $case: 'sqlTask'; /** The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present. */ sqlTask: SqlTask; } | { $case: 'runJobTask'; /** The task triggers another job when the `run_job_task` field is present. */ runJobTask: RunJobTask; } | { $case: 'conditionTask'; /** * The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present. * The condition task does not require a cluster to execute and does not support retries or notifications. */ conditionTask: ConditionTask; } | { $case: 'forEachTask'; /** The task executes a nested task for every input provided when the `for_each_task` field is present. */ forEachTask: ForEachTask; } | { $case: 'cleanRoomsNotebookTask'; /** * The task runs a [clean rooms](/clean-rooms/index.html) notebook * when the `clean_rooms_notebook_task` field is present. */ cleanRoomsNotebookTask: CleanRoomsNotebookTask; } | { $case: 'genAiComputeTask'; genAiComputeTask: GenAiComputeTask; } | { $case: 'alertTask'; /** * The task evaluates a alert and sends notifications to subscribers * when the `alert_task` field is present. */ alertTask: AlertTask; } | { $case: 'powerBiTask'; /** The task triggers a Power BI semantic model update when the `power_bi_task` field is present. */ powerBiTask: PowerBiTask; } | { $case: 'dashboardTask'; /** The task refreshes a dashboard and sends a snapshot to subscribers. */ dashboardTask: DashboardTask; } | { $case: 'dbtCloudTask'; /** Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task */ dbtCloudTask: DbtCloudTask; } | { $case: 'dbtPlatformTask'; dbtPlatformTask: DbtPlatformTask; } | { $case: 'pythonOperatorTask'; /** The task runs a Python operator task. */ pythonOperatorTask: PythonOperatorTask; } | { $case: 'aiRuntimeTask'; /** * The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify * the accelerator type and count, the command to run, and where the workload's * code and MLflow output are stored. */ aiRuntimeTask: AiRuntimeTask; } | undefined; spec?: { $case: 'existingClusterId'; /** * If existing_cluster_id, the ID of an existing cluster that is used for all runs. * When running jobs or tasks on an existing cluster, you may need to manually restart * the cluster if it stops responding. We suggest running jobs and tasks on new clusters for * greater reliability */ existingClusterId: string; } | { $case: 'newCluster'; /** If new_cluster, a description of a new cluster that is created for each run. */ newCluster: ClusterSpec_NewCluster; } | { $case: 'jobClusterKey'; /** If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`. */ jobClusterKey: string; } | undefined; /** * An optional list of libraries to be installed on the cluster. * The default value is an empty list. */ libraries?: Library[] | undefined; /** An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry. */ maxRetries?: number | undefined; /** An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried. */ minRetryIntervalMillis?: number | undefined; /** * An optional policy to specify whether to retry a job when it times out. The default behavior * is to not retry on timeout. */ retryOnTimeout?: boolean | undefined; /** An option to disable auto optimization in serverless */ disableAutoOptimization?: boolean | undefined; /** The time at which this run was started in epoch milliseconds (milliseconds since 1/1/1970 UTC). This may not be the time when the job task starts executing, for example, if the job is scheduled to run on a new cluster, this is the time the cluster creation call is issued. */ startTime?: bigint | undefined; /** The time in milliseconds it took to set up the cluster. For runs that run on new clusters this is the cluster creation time, for runs that run on existing clusters this time should be very short. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `setup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ setupDuration?: bigint | undefined; /** The time in milliseconds it took to execute the commands in the JAR or notebook until they completed, failed, timed out, were cancelled, or encountered an unexpected error. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `execution_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ executionDuration?: bigint | undefined; /** The time in milliseconds it took to terminate the cluster and clean up any associated artifacts. The duration of a task run is the sum of the `setup_duration`, `execution_duration`, and the `cleanup_duration`. The `cleanup_duration` field is set to 0 for multitask job runs. The total duration of a multitask job run is the value of the `run_duration` field. */ cleanupDuration?: bigint | undefined; /** The time at which this run ended in epoch milliseconds (milliseconds since 1/1/1970 UTC). This field is set to 0 if the job is still running. */ endTime?: bigint | undefined; /** The time in milliseconds it took the job run and all of its repairs to finish. */ runDuration?: bigint | undefined; /** The time in milliseconds that the run has spent in the queue. */ queueDuration?: bigint | undefined; } interface RunTaskSettings { /** * A unique name for the task. This field is used to refer to this task from other tasks. * This field is required and must be unique within its parent job. * On Update or Reset, this field is used to reference the tasks to be updated or reset. */ taskKey?: string | undefined; /** An optional description for this task. */ description?: string | undefined; /** * An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete successfully before executing this task. * The key is `task_key`, and the value is the name assigned to the dependent task. */ dependsOn?: TaskDependency[] | undefined; /** An optional value indicating the condition that determines whether the task should be run once its dependencies have been completed. When omitted, defaults to `ALL_SUCCESS`. See :method:jobs/create for a list of possible values. */ runIf?: TaskDependencyType | undefined; /** An optional timeout applied to each run of this job task. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; /** An optional set of email addresses notified when the task run begins or completes. The default behavior is to not send any emails. */ emailNotifications?: JobEmailNotifications | undefined; health?: JobsHealthRules | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task run. */ notificationSettings?: NotificationSettings | undefined; /** A collection of system notification IDs to notify when the run begins or completes. The default behavior is to not send any system notifications. Task webhooks respect the task notification settings. */ webhookNotifications?: WebhookNotifications | undefined; environmentRef?: { $case: 'environmentKey'; /** The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute. */ environmentKey: string; } | undefined; /** An optional flag to disable the task. If set to true, the task will not run even if it is part of a job. */ disabled?: boolean | undefined; /** Task level compute configuration. */ compute?: Compute | undefined; /** DO NOT ADD ANY NEW FIELDS TO JobTask OUTSIDE OF THIS ONEOF as it will break the TaskRegistry */ task?: { $case: 'notebookTask'; /** The task runs a notebook when the `notebook_task` field is present. */ notebookTask: NotebookTask; } | { $case: 'sparkJarTask'; /** The task runs a JAR when the `spark_jar_task` field is present. */ sparkJarTask: SparkJarTask; } | { $case: 'sparkPythonTask'; /** The task runs a Python file when the `spark_python_task` field is present. */ sparkPythonTask: SparkPythonTask; } | { $case: 'sparkSubmitTask'; /** (Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit). */ sparkSubmitTask: SparkSubmitTask; } | { $case: 'pipelineTask'; /** The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported. */ pipelineTask: PipelineTask; } | { $case: 'pythonWheelTask'; /** The task runs a Python wheel when the `python_wheel_task` field is present. */ pythonWheelTask: PythonWheelTask; } | { $case: 'dbtTask'; /** The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse. */ dbtTask: DbtTask; } | { $case: 'sqlTask'; /** The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present. */ sqlTask: SqlTask; } | { $case: 'runJobTask'; /** The task triggers another job when the `run_job_task` field is present. */ runJobTask: RunJobTask; } | { $case: 'conditionTask'; /** * The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present. * The condition task does not require a cluster to execute and does not support retries or notifications. */ conditionTask: ConditionTask; } | { $case: 'forEachTask'; /** The task executes a nested task for every input provided when the `for_each_task` field is present. */ forEachTask: ForEachTask; } | { $case: 'cleanRoomsNotebookTask'; /** * The task runs a [clean rooms](/clean-rooms/index.html) notebook * when the `clean_rooms_notebook_task` field is present. */ cleanRoomsNotebookTask: CleanRoomsNotebookTask; } | { $case: 'genAiComputeTask'; genAiComputeTask: GenAiComputeTask; } | { $case: 'alertTask'; /** * The task evaluates a alert and sends notifications to subscribers * when the `alert_task` field is present. */ alertTask: AlertTask; } | { $case: 'powerBiTask'; /** The task triggers a Power BI semantic model update when the `power_bi_task` field is present. */ powerBiTask: PowerBiTask; } | { $case: 'dashboardTask'; /** The task refreshes a dashboard and sends a snapshot to subscribers. */ dashboardTask: DashboardTask; } | { $case: 'dbtCloudTask'; /** Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task */ dbtCloudTask: DbtCloudTask; } | { $case: 'dbtPlatformTask'; dbtPlatformTask: DbtPlatformTask; } | { $case: 'pythonOperatorTask'; /** The task runs a Python operator task. */ pythonOperatorTask: PythonOperatorTask; } | { $case: 'aiRuntimeTask'; /** * The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify * the accelerator type and count, the command to run, and where the workload's * code and MLflow output are stored. */ aiRuntimeTask: AiRuntimeTask; } | undefined; spec?: { $case: 'existingClusterId'; /** * If existing_cluster_id, the ID of an existing cluster that is used for all runs. * When running jobs or tasks on an existing cluster, you may need to manually restart * the cluster if it stops responding. We suggest running jobs and tasks on new clusters for * greater reliability */ existingClusterId: string; } | { $case: 'newCluster'; /** If new_cluster, a description of a new cluster that is created for each run. */ newCluster: ClusterSpec_NewCluster; } | { $case: 'jobClusterKey'; /** If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`. */ jobClusterKey: string; } | undefined; /** * An optional list of libraries to be installed on the cluster. * The default value is an empty list. */ libraries?: Library[] | undefined; /** An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry. */ maxRetries?: number | undefined; /** An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried. */ minRetryIntervalMillis?: number | undefined; /** * An optional policy to specify whether to retry a job when it times out. The default behavior * is to not retry on timeout. */ retryOnTimeout?: boolean | undefined; /** An option to disable auto optimization in serverless */ disableAutoOptimization?: boolean | undefined; } /** Additional details about what triggered the run */ interface RunTriggerInfo { /** SQL condition evaluation details for this run */ sqlCondition?: SqlConditionRunInfoDetails | undefined; /** The run id of the Run Job task run */ runId?: bigint | undefined; } /** A storage location in Amazon S3 */ interface S3StorageInfo { /** * S3 destination, e.g. `s3://my-bucket/some-prefix` Note that logs will be delivered using * cluster iam role, please make sure you set cluster iam role and the role has write access to the * destination. Please also note that you cannot use AWS keys to deliver logs. */ destination?: string | undefined; /** * S3 region, e.g. `us-west-2`. Either region or endpoint needs to be set. If both are set, * endpoint will be used. */ region?: string | undefined; /** * S3 endpoint, e.g. `https://s3-us-west-2.amazonaws.com`. Either region or endpoint needs to be set. * If both are set, endpoint will be used. */ endpoint?: string | undefined; /** (Optional) Flag to enable server side encryption, `false` by default. */ enableEncryption?: boolean | undefined; /** * (Optional) The encryption type, it could be `sse-s3` or `sse-kms`. It will be used only when * encryption is enabled and the default type is `sse-s3`. */ encryptionType?: string | undefined; /** (Optional) Kms key which will be used if encryption is enabled and encryption type is set to `sse-kms`. */ kmsKey?: string | undefined; /** * (Optional) Set canned access control list for the logs, e.g. `bucket-owner-full-control`. * If `canned_cal` is set, please make sure the cluster iam role has `s3:PutObjectAcl` permission on * the destination bucket and prefix. The full list of possible canned acl can be found at * http://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl. * Please also note that by default only the object owner gets full controls. If you are using cross account * role for writing data, you may want to set `bucket-owner-full-control` to make bucket owner able to * read the logs. */ cannedAcl?: string | undefined; } /** * Runtime state for a schedule trigger. Currently empty because schedule triggers * do not expose any trigger-specific runtime state. */ interface ScheduleTriggerState {} interface SparkJarTask { /** * Deprecated since 04/2016. For classic compute, provide a `jar` through the `libraries` field instead. For serverless compute, provide a `jar` though the `java_dependencies` field inside the `environments` list. * * See the examples of classic and serverless compute usage at the top of the page. */ jarUri?: string | undefined; /** * The full name of the class containing the main method to be executed. This class must be contained in a JAR provided as a library. * * The code must use `SparkContext.getOrCreate` to obtain a Spark context; otherwise, runs of the job fail. */ mainClassName?: string | undefined; /** * Parameters passed to the main method. * * Use [Task parameter variables](/jobs.html#parameter-variables) to set parameters containing information about job runs. */ parameters?: string[] | undefined; /** Deprecated. A value of `false` is no longer supported. */ runAsRepl?: boolean | undefined; } interface SparkPythonTask { /** The Python file to be executed. Cloud file URIs (such as dbfs:/, s3:/, adls:/, gcs:/) and workspace paths are supported. For python files stored in the workspace, the path must be absolute and begin with `/`. For files stored in a remote repository, the path must be relative. This field is required. */ pythonFile?: string | undefined; /** * Command line parameters passed to the Python file. * * Use [Task parameter variables](/jobs.html#parameter-variables) to set parameters containing information about job runs. */ parameters?: string[] | undefined; /** * Optional location type of the Python file. When set to `WORKSPACE` or not specified, the file will be retrieved from the local * workspace or cloud location (if the `python_file` has a URI format). When set to `GIT`, * the Python file will be retrieved from a Git repository defined in `git_source`. * * * `WORKSPACE`: The Python file is located in a workspace or at a cloud filesystem URI. * * `GIT`: The Python file is located in a remote Git repository. */ source?: Source | undefined; } interface SparkSubmitTask { /** * Command-line parameters passed to spark submit. * * Use [Task parameter variables](/jobs.html#parameter-variables) to set parameters containing information about job runs. */ parameters?: string[] | undefined; } interface SparseCheckout { /** List of patterns to include for sparse checkout. */ patterns?: string[] | undefined; } interface SqlAlertState {} interface SqlConditionConfiguration { /** The ID of the SQL query to evaluate as the trigger condition. */ sqlQueryId?: string | undefined; /** The canonical identifier of the SQL warehouse to run the condition query against. */ warehouseId?: string | undefined; /** * Determines how the SQL query result is interpreted to decide whether the condition fires. * Must be set to a recognized value when provided. * When unset on an existing serialized configuration, the server preserves the original * semantics by interpreting it as `QUERY_RETURNS_ROWS`. New configurations should set this * explicitly — explicit `SQL_CONDITION_TRIGGER_MODE_UNSPECIFIED` is rejected at validation. */ triggerMode?: SqlConditionTriggerMode | undefined; } /** SQL condition evaluation details captured at the time the run was triggered */ interface SqlConditionRunInfoDetails { /** * The SQL statement ID of the condition evaluation, set when the condition is * evaluated by running a single SQL statement (the RESULT_VALUE_CHANGES trigger * mode). The UI uses it to link to the query execution details. */ conditionEvaluationSqlStatementId?: string | undefined; /** Whether the last condition evaluation was satisfied (query returned truthy result). */ conditionEvaluationSatisfied?: boolean | undefined; /** * The ID of the SQL session, used by the UI to track session context. * Set for the QUERY_RETURNS_ROWS trigger mode. */ conditionEvaluationSqlSessionId?: string | undefined; } interface SqlConditionState { /** * The SEA statement ID of the SQL statement executed for the latest condition evaluation. * Populated for RESULT_VALUE_CHANGES, which executes the query through the SQL execution API. */ latestConditionEvaluationSqlStatementId?: string | undefined; /** Whether the last condition evaluation was satisfied (query returned truthy result). */ latestConditionEvaluationSatisfied?: boolean | undefined; /** * The ID of the SQL session, used by UI to track session context. * Populated for QUERY_RETURNS_ROWS, which executes the query through Redash. */ latestConditionEvaluationSqlSessionId?: string | undefined; } interface SqlTask { /** Parameters to be used for each run of this job. The SQL alert task does not support custom parameters. */ parameters?: Record | undefined; sqlTaskType?: { $case: 'query'; /** If query, indicates that this job must execute a SQL query. */ query: SqlTaskQuery; } | { $case: 'dashboard'; /** If dashboard, indicates that this job must refresh a SQL dashboard. */ dashboard: SqlTaskDashboard; } | { $case: 'alert'; /** If alert, indicates that this job must refresh a SQL alert. */ alert: SqlTaskAlert; } | { $case: 'file'; /** If file, indicates that this job runs a SQL file in a remote Git repository. */ file: SqlTaskFile; } | undefined; /** The canonical identifier of the SQL warehouse. Recommended to use with serverless or pro SQL warehouses. Classic SQL warehouses are only supported for SQL alert, dashboard and query tasks and are limited to scheduled single-task jobs. */ warehouseId?: string | undefined; } interface SqlTask_SqlAlertOutput { /** The text of the SQL query. Can Run permission of the SQL query associated with the SQL alert is required to view this field. */ queryText?: string | undefined; /** Information about SQL statements executed in the run. */ sqlStatements?: SqlTask_SqlStatementOutput[] | undefined; /** The link to find the output results. */ outputLink?: string | undefined; /** The canonical identifier of the SQL warehouse. */ warehouseId?: string | undefined; alertState?: SqlAlertState_SqlAlertState | undefined; } interface SqlTask_SqlDashboardOutput { /** Widgets executed in the run. Only SQL query based widgets are listed. */ widgets?: SqlTask_SqlDashboardWidgetOutput[] | undefined; /** The canonical identifier of the SQL warehouse. */ warehouseId?: string | undefined; } interface SqlTask_SqlDashboardWidgetOutput { /** The canonical identifier of the SQL widget. */ widgetId?: string | undefined; /** The title of the SQL widget. */ widgetTitle?: string | undefined; /** The link to find the output results. */ outputLink?: string | undefined; /** The execution status of the SQL widget. */ status?: SqlTask_SqlTaskQueryStatus | undefined; /** The information about the error when execution fails. */ error?: SqlTask_SqlOutputError | undefined; /** Time (in epoch milliseconds) when execution of the SQL widget starts. */ startTime?: bigint | undefined; /** Time (in epoch milliseconds) when execution of the SQL widget ends. */ endTime?: bigint | undefined; } interface SqlTask_SqlOutput { sqlOutputType?: { $case: 'queryOutput'; /** The output of a SQL query task, if available. */ queryOutput: SqlTask_SqlQueryOutput; } | { $case: 'dashboardOutput'; /** The output of a SQL dashboard task, if available. */ dashboardOutput: SqlTask_SqlDashboardOutput; } | { $case: 'alertOutput'; /** The output of a SQL alert task, if available. */ alertOutput: SqlTask_SqlAlertOutput; } | undefined; } interface SqlTask_SqlOutputError { /** The error message when execution fails. */ message?: string | undefined; } interface SqlTask_SqlQueryOutput { /** The text of the SQL query. Can Run permission of the SQL query is required to view this field. */ queryText?: string | undefined; endpointId?: string | undefined; /** Information about SQL statements executed in the run. */ sqlStatements?: SqlTask_SqlStatementOutput[] | undefined; /** The link to find the output results. */ outputLink?: string | undefined; /** The canonical identifier of the SQL warehouse. */ warehouseId?: string | undefined; } interface SqlTask_SqlStatementOutput { /** A key that can be used to look up query details. */ lookupKey?: string | undefined; } interface SqlTaskAlert { /** The canonical identifier of the SQL alert. */ alertId?: string | undefined; /** If specified, alert notifications are sent to subscribers. */ subscriptions?: SqlTaskSubscription[] | undefined; /** If true, the alert notifications are not sent to subscribers. */ pauseSubscriptions?: boolean | undefined; } interface SqlTaskDashboard { /** The canonical identifier of the SQL dashboard. */ dashboardId?: string | undefined; /** If specified, dashboard snapshots are sent to subscriptions. */ subscriptions?: SqlTaskSubscription[] | undefined; /** Subject of the email sent to subscribers of this task. */ customSubject?: string | undefined; /** If true, the dashboard snapshot is not taken, and emails are not sent to subscribers. */ pauseSubscriptions?: boolean | undefined; } interface SqlTaskFile { /** Path of the SQL file. Must be relative if the source is a remote Git repository and absolute for workspace paths. */ path?: string | undefined; /** * Optional location type of the SQL file. When set to `WORKSPACE`, the SQL file will be retrieved * from the local workspace. When set to `GIT`, the SQL file will be retrieved from a Git repository * defined in `git_source`. If the value is empty, the task will use `GIT` if `git_source` is defined and `WORKSPACE` otherwise. * * * `WORKSPACE`: SQL file is located in workspace. * * `GIT`: SQL file is located in cloud Git provider. */ source?: Source | undefined; } interface SqlTaskQuery { queryType?: { $case: 'queryId'; /** The canonical identifier of the SQL query. */ queryId: string; } | undefined; } interface SqlTaskSubscription { subscriptionType?: { $case: 'userName'; /** The user name to receive the subscription email. This parameter is mutually exclusive with destination_id. You cannot set both destination_id and user_name for subscription notifications. */ userName: string; } | { $case: 'destinationId'; /** The canonical identifier of the destination to receive email notification. This parameter is mutually exclusive with user_name. You cannot set both destination_id and user_name for subscription notifications. */ destinationId: string; } | undefined; } interface SubmitRunRequest { /** List of permissions to set on the job. */ accessControlList?: AccessControlRequest[] | undefined; /** The queue settings of the one-time run. */ queue?: QueueSettings | undefined; /** Specifies the user or service principal that the job runs as. If not specified, the job runs as the user who submits the request. */ runAs?: JobRunAs | undefined; /** An optional name for the run. The default value is `Untitled`. */ runName?: string | undefined; /** An optional timeout applied to each run of this job. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; health?: JobsHealthRules | undefined; /** * An optional token that can be used to guarantee the idempotency of job run requests. If a run with the provided token already exists, * the request does not create a new run but returns the ID of the existing run instead. If a run with the provided token is deleted, * an error is returned. * * If you specify the idempotency token, upon failure you can retry until the request succeeds. guarantees that exactly * one run is launched with that idempotency token. * * This token must have at most 64 characters. */ idempotencyToken?: string | undefined; tasks?: RunTaskSettings[] | undefined; /** * An optional specification for a remote Git repository containing the source code used by tasks. Version-controlled source code is supported by notebook, dbt, Python script, and SQL File tasks. * * If `git_source` is set, these tasks retrieve the file from the remote repository by default. However, this behavior can be overridden by setting `source` to `WORKSPACE` on the task. * * Note: dbt and SQL File tasks support only version-controlled sources. If dbt or SQL File tasks are used, `git_source` must be defined on the job. */ gitSource?: GitSource | undefined; /** A collection of system notification IDs to notify when the run begins or completes. */ webhookNotifications?: WebhookNotifications | undefined; /** An optional set of email addresses notified when the run begins or completes. */ emailNotifications?: JobEmailNotifications | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this run. */ notificationSettings?: NotificationSettings | undefined; /** A list of task execution environment specifications that can be referenced by tasks of this run. */ environments?: JobEnvironment[] | undefined; /** * The user specified id of the budget policy to use for this one-time run. * If not specified, the run will be not be attributed to any budget policy. */ budgetPolicyId?: string | undefined; /** * The user specified id of the usage policy to use for this one-time run. * If not specified, a default usage policy may be applied when creating or modifying the job. */ usagePolicyId?: string | undefined; /** * The performance mode on a serverless one-time run. This field determines the level of compute performance or cost-efficiency for the run. * The performance target does not apply to tasks that run on Serverless GPU compute. * * * `STANDARD`: Enables cost-efficient execution of serverless workloads. * * `PERFORMANCE_OPTIMIZED`: Prioritizes fast startup and execution times through rapid scaling and optimized cluster performance. */ performanceTarget?: PerformanceTarget_PerformanceTarget | undefined; } /** Run was created and started successfully. */ interface SubmitRunResponse { /** The canonical identifier for the newly submitted run. */ runId?: bigint | undefined; } interface Subscription { /** The list of subscribers to send the snapshot of the dashboard to. */ subscribers?: Subscription_Subscriber[] | undefined; /** When true, the subscription will not send emails. */ paused?: boolean | undefined; /** * Optional: Allows users to specify a custom subject line on the email sent * to subscribers. */ customSubject?: string | undefined; } interface Subscription_Subscriber { subscriptionType?: { $case: 'userName'; /** A snapshot of the dashboard will be sent to the user's email when the `user_name` field is present. */ userName: string; } | { $case: 'destinationId'; /** A snapshot of the dashboard will be sent to the destination when the `destination_id` field is present. */ destinationId: string; } | undefined; } interface TableState { /** Full table name of the table to monitor, e.g. `mycatalog.myschema.mytable` */ tableName?: string | undefined; /** * Whether or not the table has seen updates since either * the creation of the trigger or the last successful evaluation of the trigger */ hasSeenUpdates?: boolean | undefined; } interface TableTriggerConfiguration { /** A list of tables to monitor for changes. The table name must be in the format `catalog_name.schema_name.table_name`. */ tableNames?: string[] | undefined; /** * If set, the trigger starts a run only after the specified amount of time has passed since * the last time the trigger fired. The minimum allowed value is 60 seconds. */ minTimeBetweenTriggersSeconds?: number | undefined; /** * If set, the trigger starts a run only after no table updates have occurred for the specified time * and can be used to wait for a series of table updates before triggering a run. The * minimum allowed value is 60 seconds. */ waitAfterLastChangeSeconds?: number | undefined; /** The table(s) condition based on which to trigger a job run. */ condition?: TableTriggerConfiguration_Condition | undefined; } interface TableTriggerState { lastSeenTableStates?: TableState[] | undefined; /** Indicates whether the trigger is using scalable monitoring. */ usingScalableMonitoring?: boolean | undefined; } interface TaskDependency { /** The name of the task this task depends on. */ taskKey?: string | undefined; /** Can only be specified on condition task dependencies. The outcome of the dependent task that must be met for this task to run. */ outcome?: string | undefined; } interface TaskSettings { /** * A unique name for the task. This field is used to refer to this task from other tasks. * This field is required and must be unique within its parent job. * On Update or Reset, this field is used to reference the tasks to be updated or reset. */ taskKey?: string | undefined; /** * An optional array of objects specifying the dependency graph of the task. All tasks specified in this field must complete before executing this task. The task will run only if the `run_if` condition is true. * The key is `task_key`, and the value is the name assigned to the dependent task. */ dependsOn?: TaskDependency[] | undefined; /** * An optional value specifying the condition determining whether the task is run once its dependencies have been completed. * * * `ALL_SUCCESS`: All dependencies have executed and succeeded * * `AT_LEAST_ONE_SUCCESS`: At least one dependency has succeeded * * `NONE_FAILED`: None of the dependencies have failed and at least one was executed * * `ALL_DONE`: All dependencies have been completed * * `AT_LEAST_ONE_FAILED`: At least one dependency failed * * `ALL_FAILED`: ALl dependencies have failed */ runIf?: TaskDependencyType | undefined; /** An optional timeout applied to each run of this job task. A value of `0` means no timeout. */ timeoutSeconds?: number | undefined; health?: JobsHealthRules | undefined; /** An optional set of email addresses that is notified when runs of this task begin or complete as well as when this task is deleted. The default behavior is to not send any emails. */ emailNotifications?: JobEmailNotifications | undefined; /** Optional notification settings that are used when sending notifications to each of the `email_notifications` and `webhook_notifications` for this task. */ notificationSettings?: NotificationSettings | undefined; /** A collection of system notification IDs to notify when runs of this task begin or complete. The default behavior is to not send any system notifications. */ webhookNotifications?: WebhookNotifications | undefined; /** An optional description for this task. */ description?: string | undefined; environmentRef?: { $case: 'environmentKey'; /** The key that references an environment spec in a job. This field is required for Python script, Python wheel and dbt tasks when using serverless compute. */ environmentKey: string; } | undefined; /** An optional flag to disable the task. If set to true, the task will not run even if it is part of a job. */ disabled?: boolean | undefined; /** Task level compute configuration. */ compute?: Compute | undefined; /** DO NOT ADD ANY NEW FIELDS TO JobTask OUTSIDE OF THIS ONEOF as it will break the TaskRegistry */ task?: { $case: 'notebookTask'; /** The task runs a notebook when the `notebook_task` field is present. */ notebookTask: NotebookTask; } | { $case: 'sparkJarTask'; /** The task runs a JAR when the `spark_jar_task` field is present. */ sparkJarTask: SparkJarTask; } | { $case: 'sparkPythonTask'; /** The task runs a Python file when the `spark_python_task` field is present. */ sparkPythonTask: SparkPythonTask; } | { $case: 'sparkSubmitTask'; /** (Legacy) The task runs the spark-submit script when the spark_submit_task field is present. Databricks recommends using the spark_jar_task instead; see [Spark Submit task for jobs](/jobs/spark-submit). */ sparkSubmitTask: SparkSubmitTask; } | { $case: 'pipelineTask'; /** The task triggers a pipeline update when the `pipeline_task` field is present. Only pipelines configured to use triggered more are supported. */ pipelineTask: PipelineTask; } | { $case: 'pythonWheelTask'; /** The task runs a Python wheel when the `python_wheel_task` field is present. */ pythonWheelTask: PythonWheelTask; } | { $case: 'dbtTask'; /** The task runs one or more dbt commands when the `dbt_task` field is present. The dbt task requires both Databricks SQL and the ability to use a serverless or a pro SQL warehouse. */ dbtTask: DbtTask; } | { $case: 'sqlTask'; /** The task runs a SQL query or file, or it refreshes a SQL alert or a legacy SQL dashboard when the `sql_task` field is present. */ sqlTask: SqlTask; } | { $case: 'runJobTask'; /** The task triggers another job when the `run_job_task` field is present. */ runJobTask: RunJobTask; } | { $case: 'conditionTask'; /** * The task evaluates a condition that can be used to control the execution of other tasks when the `condition_task` field is present. * The condition task does not require a cluster to execute and does not support retries or notifications. */ conditionTask: ConditionTask; } | { $case: 'forEachTask'; /** The task executes a nested task for every input provided when the `for_each_task` field is present. */ forEachTask: ForEachTask; } | { $case: 'cleanRoomsNotebookTask'; /** * The task runs a [clean rooms](/clean-rooms/index.html) notebook * when the `clean_rooms_notebook_task` field is present. */ cleanRoomsNotebookTask: CleanRoomsNotebookTask; } | { $case: 'genAiComputeTask'; genAiComputeTask: GenAiComputeTask; } | { $case: 'alertTask'; /** * The task evaluates a alert and sends notifications to subscribers * when the `alert_task` field is present. */ alertTask: AlertTask; } | { $case: 'powerBiTask'; /** The task triggers a Power BI semantic model update when the `power_bi_task` field is present. */ powerBiTask: PowerBiTask; } | { $case: 'dashboardTask'; /** The task refreshes a dashboard and sends a snapshot to subscribers. */ dashboardTask: DashboardTask; } | { $case: 'dbtCloudTask'; /** Task type for dbt cloud, deprecated in favor of the new name dbt_platform_task */ dbtCloudTask: DbtCloudTask; } | { $case: 'dbtPlatformTask'; dbtPlatformTask: DbtPlatformTask; } | { $case: 'pythonOperatorTask'; /** The task runs a Python operator task. */ pythonOperatorTask: PythonOperatorTask; } | { $case: 'aiRuntimeTask'; /** * The task runs a multi-gpu compute workload on Databricks AI Runtime. Specify * the accelerator type and count, the command to run, and where the workload's * code and MLflow output are stored. */ aiRuntimeTask: AiRuntimeTask; } | undefined; spec?: { $case: 'existingClusterId'; /** * If existing_cluster_id, the ID of an existing cluster that is used for all runs. * When running jobs or tasks on an existing cluster, you may need to manually restart * the cluster if it stops responding. We suggest running jobs and tasks on new clusters for * greater reliability */ existingClusterId: string; } | { $case: 'newCluster'; /** If new_cluster, a description of a new cluster that is created for each run. */ newCluster: ClusterSpec_NewCluster; } | { $case: 'jobClusterKey'; /** If job_cluster_key, this task is executed reusing the cluster specified in `job.settings.job_clusters`. */ jobClusterKey: string; } | undefined; /** * An optional list of libraries to be installed on the cluster. * The default value is an empty list. */ libraries?: Library[] | undefined; /** An optional maximum number of times to retry an unsuccessful run. A run is considered to be unsuccessful if it completes with the `FAILED` result_state or `INTERNAL_ERROR` `life_cycle_state`. The value `-1` means to retry indefinitely and the value `0` means to never retry. */ maxRetries?: number | undefined; /** An optional minimal interval in milliseconds between the start of the failed run and the subsequent retry run. The default behavior is that unsuccessful runs are immediately retried. */ minRetryIntervalMillis?: number | undefined; /** * An optional policy to specify whether to retry a job when it times out. The default behavior * is to not retry on timeout. */ retryOnTimeout?: boolean | undefined; /** An option to disable auto optimization in serverless */ disableAutoOptimization?: boolean | undefined; } interface TerminationCode {} interface TerminationDetails { code?: TerminationCode_Code | undefined; type?: TerminationType_Type | undefined; /** A descriptive message with the termination details. This field is unstructured and the format might change. */ message?: string | undefined; } interface TerminationType {} /** * A single trigger attached to a job via `JobSettings.triggers`. Exactly one of the trigger-type fields * (`periodic`, `schedule`, `continuous`, `file_arrival`, `table_update`, `model`) must be set; mutual exclusivity * is enforced in the API handler rather than via `oneof` so that codegen, validation, and JSON serialization * across SDKs and Terraform behave consistently. */ interface TriggerConfiguration { /** Whether this trigger is paused. Defaults to UNPAUSED when unset; the server always returns an explicit value on read. */ pauseStatus?: SchedulePauseStatus | undefined; /** * Trigger type: exactly one must be set; mutual exclusivity is enforced in the API handler * Periodic trigger configuration. */ periodic?: PeriodicTriggerConfiguration | undefined; /** Cron schedule trigger configuration. */ schedule?: CronTriggerConfiguration | undefined; /** Continuous trigger configuration. */ continuous?: ContinuousTriggerConfiguration | undefined; /** File arrival trigger configuration. */ fileArrival?: FileArrivalTriggerConfiguration | undefined; /** Table update trigger configuration. */ tableUpdate?: TableTriggerConfiguration | undefined; /** Model trigger configuration. */ model?: ModelTriggerConfiguration | undefined; /** Optional SQL condition that gates whether this trigger fires. */ sqlCondition?: SqlConditionConfiguration | undefined; } /** * Per-trigger runtime details returned by `GetJob`. Same length and order as * `JobSettings.triggers`; sub-fields are populated independently based on the * corresponding `GetJob.include_trigger_state` / `include_trigger_history` flags. */ interface TriggerDetails { /** Current runtime state. Populated when `GetJob.include_trigger_state` is set. */ state?: PerTriggerState | undefined; /** Recent evaluation history. Populated when `GetJob.include_trigger_history` is set. */ history?: TriggerHistory | undefined; } interface TriggerEvaluation { /** Timestamp at which the trigger was evaluated. */ timestamp?: bigint | undefined; /** Human-readable description of the trigger evaluation result. Explains why the trigger evaluation triggered or did not trigger a run, or failed. */ description?: string | undefined; /** The ID of the run that was triggered by the trigger evaluation. Only returned if a run was triggered. */ runId?: bigint | undefined; } interface TriggerHistory { /** The last time the run was triggered due to a file arrival. */ lastTriggered?: TriggerEvaluation | undefined; /** The last time the trigger was evaluated but did not trigger a run. */ lastNotTriggered?: TriggerEvaluation | undefined; /** The last time the trigger failed to evaluate. */ lastFailed?: TriggerEvaluation | undefined; } interface TriggerSettings { /** Whether this trigger is paused or not. */ pauseStatus?: SchedulePauseStatus | undefined; configuration?: { $case: 'fileArrival'; /** File arrival trigger settings. */ fileArrival: FileArrivalTriggerConfiguration; } | { $case: 'periodic'; /** Periodic trigger settings. */ periodic: PeriodicTriggerConfiguration; } | { $case: 'tableUpdate'; tableUpdate: TableTriggerConfiguration; } | { $case: 'model'; model: ModelTriggerConfiguration; } | undefined; /** * SQL condition that must be satisfied for the trigger to fire. Can be used in combination with other trigger types and * runs *after* other trigger types conditions are evaluated. */ sqlCondition?: SqlConditionConfiguration | undefined; } interface TriggerState { /** (-- Next ID: 7. --) */ triggerType?: { $case: 'table'; table: TableTriggerState; } | { $case: 'fileArrival'; fileArrival: FileArrivalTriggerState; } | undefined; /** State for SQL condition evaluation, can coexist with other trigger states. */ sqlCondition?: SqlConditionState | undefined; /** * Whether this trigger is paused or not. For continuous schedules, it can differ from the * configured pause_status whenever a paused continuous job is kickstarted by an operation * other than an update, such as a run-now. */ pauseStatus?: SchedulePauseStatus | undefined; } interface UpdateJobRequest { /** The canonical identifier of the job to update. This field is required. */ jobId?: bigint | undefined; /** * The new settings for the job. * * Top-level fields specified in `new_settings` are completely replaced, except for arrays which are merged. That is, new and existing entries are completely replaced based on the respective key fields, i.e. `task_key` or `job_cluster_key`, while previous entries are kept. * * Partially updating nested fields is not supported. * * Changes to the field `JobSettings.timeout_seconds` are applied to active runs. Changes to other fields are applied to future runs only. */ newSettings?: JobSettings | undefined; /** Remove top-level fields in the job settings. Removing nested fields is not supported, except for tasks and job clusters (`tasks/task_1`). This field is optional. */ fieldsToRemove?: string[] | undefined; } /** Job was updated successfully. */ interface UpdateJobResponse {} interface ViewItem { /** Content of the view. */ content?: string | undefined; /** Name of the view item. In the case of code view, it would be the notebook’s name. In the case of dashboard view, it would be the dashboard’s name. */ name?: string | undefined; /** Type of the view item. */ type?: ViewType | undefined; } /** A storage location back by UC Volumes. */ interface VolumesStorageInfo { /** * UC Volumes destination, e.g. `/Volumes/catalog/schema/vol1/init-scripts/setup-datadog.sh` * or `dbfs:/Volumes/catalog/schema/vol1/init-scripts/setup-datadog.sh` */ destination?: string | undefined; } interface Webhook { id?: string | undefined; } interface WebhookNotifications { /** An optional list of system notification IDs to call when the run starts. A maximum of 3 destinations can be specified for the `on_start` property. */ onStart?: Webhook[] | undefined; /** An optional list of system notification IDs to call when the run completes successfully. A maximum of 3 destinations can be specified for the `on_success` property. */ onSuccess?: Webhook[] | undefined; /** An optional list of system notification IDs to call when the run fails. A maximum of 3 destinations can be specified for the `on_failure` property. */ onFailure?: Webhook[] | undefined; /** An optional list of system notification IDs to call when the duration of a run exceeds the threshold specified for the `RUN_DURATION_SECONDS` metric in the `health` field. A maximum of 3 destinations can be specified for the `on_duration_warning_threshold_exceeded` property. */ onDurationWarningThresholdExceeded?: Webhook[] | undefined; /** * An optional list of system notification IDs to call when any streaming backlog thresholds are exceeded for any stream. * Streaming backlog thresholds can be set in the `health` field using the following metrics: `STREAMING_BACKLOG_BYTES`, `STREAMING_BACKLOG_RECORDS`, `STREAMING_BACKLOG_SECONDS`, or `STREAMING_BACKLOG_FILES`. * Alerting is based on the 10-minute average of these metrics. If the issue persists, notifications are resent every 30 minutes. * A maximum of 3 destinations can be specified for the `on_streaming_backlog_exceeded` property. */ onStreamingBacklogExceeded?: Webhook[] | undefined; } interface WidgetErrorDetail { message?: string | undefined; } /** Cluster Attributes showing for clusters workload types. */ interface WorkloadType { /** defined what type of clients can use the cluster. E.g. Notebooks, Jobs */ clients?: WorkloadType_ClientsTypes | undefined; } interface WorkloadType_ClientsTypes { /** With notebooks set, this cluster can be used for notebooks */ notebooks?: boolean | undefined; /** With jobs set, the cluster can be used for jobs */ jobs?: boolean | undefined; } /** A storage location in Workspace Filesystem (WSFS) */ interface WorkspaceStorageInfo { /** wsfs destination, e.g. `workspace:/cluster-init-scripts/setup-datadog.sh` */ destination?: string | undefined; } declare const unmarshalAdlsgen2InfoSchema: z.ZodType; declare const unmarshalAiRuntimeTaskSchema: z.ZodType; declare const unmarshalAiRuntimeTaskOutputSchema: z.ZodType; declare const unmarshalAlertTaskSchema: z.ZodType; declare const unmarshalAlertTaskOutputSchema: z.ZodType; declare const unmarshalAlertTaskSubscriberSchema: z.ZodType; declare const unmarshalAutoScaleSchema: z.ZodType; declare const unmarshalAwsAttributesSchema: z.ZodType; declare const unmarshalAzureAttributesSchema: z.ZodType; declare const unmarshalBaseJobSchema: z.ZodType; declare const unmarshalBaseRunSchema: z.ZodType; declare const unmarshalCancelAllRunsResponseSchema: z.ZodType; declare const unmarshalCancelRunResponseSchema: z.ZodType; declare const unmarshalCleanRoomTaskRunStateSchema: z.ZodType; declare const unmarshalCleanRoomsNotebookTaskSchema: z.ZodType; declare const unmarshalCleanRoomsNotebookTask_CleanRoomsNotebookTaskOutputSchema: z.ZodType; declare const unmarshalClusterInstanceSchema: z.ZodType; declare const unmarshalClusterLogConfSchema: z.ZodType; declare const unmarshalClusterSpecSchema: z.ZodType; declare const unmarshalClusterSpec_NewClusterSchema: z.ZodType; declare const unmarshalComputeSchema: z.ZodType; declare const unmarshalComputeConfigSchema: z.ZodType; declare const unmarshalComputeSpecSchema: z.ZodType; declare const unmarshalConditionTaskSchema: z.ZodType; declare const unmarshalContinuousSettingsSchema: z.ZodType; declare const unmarshalContinuousTriggerConfigurationSchema: z.ZodType; declare const unmarshalContinuousTriggerStateSchema: z.ZodType; declare const unmarshalCreateJobResponseSchema: z.ZodType; declare const unmarshalCronScheduleSchema: z.ZodType; declare const unmarshalCronTriggerConfigurationSchema: z.ZodType; declare const unmarshalDashboardPageSnapshotSchema: z.ZodType; declare const unmarshalDashboardTaskSchema: z.ZodType; declare const unmarshalDashboardTaskOutputSchema: z.ZodType; declare const unmarshalDbfsStorageInfoSchema: z.ZodType; declare const unmarshalDbtCloudJobRunStepSchema: z.ZodType; declare const unmarshalDbtCloudTaskSchema: z.ZodType; declare const unmarshalDbtCloudTaskOutputSchema: z.ZodType; declare const unmarshalDbtPlatformJobRunStepSchema: z.ZodType; declare const unmarshalDbtPlatformTaskSchema: z.ZodType; declare const unmarshalDbtPlatformTaskOutputSchema: z.ZodType; declare const unmarshalDbtTaskSchema: z.ZodType; declare const unmarshalDbtTask_DbtTaskOutputSchema: z.ZodType; declare const unmarshalDeleteJobResponseSchema: z.ZodType; declare const unmarshalDeleteRunResponseSchema: z.ZodType; declare const unmarshalDeploymentSpecSchema: z.ZodType; declare const unmarshalDockerBasicAuthSchema: z.ZodType; declare const unmarshalDockerImageSchema: z.ZodType; declare const unmarshalEnforcePolicyComplianceResponseSchema: z.ZodType; declare const unmarshalEnforcePolicyComplianceResponse_JobClusterSettingsChangeSchema: z.ZodType; declare const unmarshalEnvironmentSchema: z.ZodType; declare const unmarshalExportRunResponseSchema: z.ZodType; declare const unmarshalFileArrivalTriggerConfigurationSchema: z.ZodType; declare const unmarshalFileArrivalTriggerStateSchema: z.ZodType; declare const unmarshalForEachTaskSchema: z.ZodType; declare const unmarshalGcpAttributesSchema: z.ZodType; declare const unmarshalGcsStorageInfoSchema: z.ZodType; declare const unmarshalGenAiComputeTaskSchema: z.ZodType; declare const unmarshalGetJobResponseSchema: z.ZodType; declare const unmarshalGetPolicyComplianceForJobResponseSchema: z.ZodType; declare const unmarshalGetRunOutputResponseSchema: z.ZodType; declare const unmarshalGetRunResponseSchema: z.ZodType; declare const unmarshalGitMetadataSnapshotSchema: z.ZodType; declare const unmarshalGitSourceSchema: z.ZodType; declare const unmarshalInitScriptInfoSchema: z.ZodType; declare const unmarshalJobClusterSchema: z.ZodType; declare const unmarshalJobDeploymentSchema: z.ZodType; declare const unmarshalJobEmailNotificationsSchema: z.ZodType; declare const unmarshalJobEnvironmentSchema: z.ZodType; declare const unmarshalJobLevelParameterSchema: z.ZodType; declare const unmarshalJobRunAsSchema: z.ZodType; declare const unmarshalJobSettingsSchema: z.ZodType; declare const unmarshalJobSourceSchema: z.ZodType; declare const unmarshalJobsHealthRuleSchema: z.ZodType; declare const unmarshalJobsHealthRulesSchema: z.ZodType; declare const unmarshalLibrarySchema: z.ZodType; declare const unmarshalListJobComplianceForPolicy_JobComplianceSchema: z.ZodType; declare const unmarshalListJobComplianceResponseSchema: z.ZodType; declare const unmarshalListJobsResponseSchema: z.ZodType; declare const unmarshalListRunsResponseSchema: z.ZodType; declare const unmarshalLocalFileInfoSchema: z.ZodType; declare const unmarshalLogAnalyticsInfoSchema: z.ZodType; declare const unmarshalMavenLibrarySchema: z.ZodType; declare const unmarshalModelTriggerConfigurationSchema: z.ZodType; declare const unmarshalModelTriggerStateSchema: z.ZodType; declare const unmarshalNodeTypeFlexibilitySchema: z.ZodType; declare const unmarshalNotebookTaskSchema: z.ZodType; declare const unmarshalNotebookTask_NotebookOutputSchema: z.ZodType; declare const unmarshalNotificationSettingsSchema: z.ZodType; declare const unmarshalOutputSchemaInfoSchema: z.ZodType; declare const unmarshalPerTriggerStateSchema: z.ZodType; declare const unmarshalPeriodicTriggerConfigurationSchema: z.ZodType; declare const unmarshalPeriodicTriggerStateSchema: z.ZodType; declare const unmarshalPipelineParametersSchema: z.ZodType; declare const unmarshalPipelineTaskSchema: z.ZodType; declare const unmarshalPowerBiModelSchema: z.ZodType; declare const unmarshalPowerBiTableSchema: z.ZodType; declare const unmarshalPowerBiTaskSchema: z.ZodType; declare const unmarshalPythonOperatorTaskSchema: z.ZodType; declare const unmarshalPythonOperatorTask_ParameterSchema: z.ZodType; declare const unmarshalPythonPyPiLibrarySchema: z.ZodType; declare const unmarshalPythonWheelTaskSchema: z.ZodType; declare const unmarshalQueueDetailsSchema: z.ZodType; declare const unmarshalQueueSettingsSchema: z.ZodType; declare const unmarshalRCranLibrarySchema: z.ZodType; declare const unmarshalRepairSchema: z.ZodType; declare const unmarshalRepairRunResponseSchema: z.ZodType; declare const unmarshalResetJobResponseSchema: z.ZodType; declare const unmarshalResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_AiRuntimeTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_ConditionTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_DbtTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_NotebookTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_PipelineTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_PythonWheelTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_RunJobTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_SimulationTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_SparkJarTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_SparkPythonTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_SparkSubmitTaskResolvedValuesSchema: z.ZodType; declare const unmarshalResolvedValues_SqlTaskResolvedValuesSchema: z.ZodType; declare const unmarshalRunSchema: z.ZodType; declare const unmarshalRun_JobLevelParametersSchema: z.ZodType; declare const unmarshalRunJobTaskSchema: z.ZodType; declare const unmarshalRunJobTask_RunJobTaskOutputSchema: z.ZodType; declare const unmarshalRunNowResponseSchema: z.ZodType; declare const unmarshalRunParametersSchema: z.ZodType; declare const unmarshalRunStateSchema: z.ZodType; declare const unmarshalRunStatusSchema: z.ZodType; declare const unmarshalRunTaskSchema: z.ZodType; declare const unmarshalRunTriggerInfoSchema: z.ZodType; declare const unmarshalS3StorageInfoSchema: z.ZodType; declare const unmarshalScheduleTriggerStateSchema: z.ZodType; declare const unmarshalSparkJarTaskSchema: z.ZodType; declare const unmarshalSparkPythonTaskSchema: z.ZodType; declare const unmarshalSparkSubmitTaskSchema: z.ZodType; declare const unmarshalSparseCheckoutSchema: z.ZodType; declare const unmarshalSqlConditionConfigurationSchema: z.ZodType; declare const unmarshalSqlConditionRunInfoDetailsSchema: z.ZodType; declare const unmarshalSqlConditionStateSchema: z.ZodType; declare const unmarshalSqlTaskSchema: z.ZodType; declare const unmarshalSqlTask_SqlAlertOutputSchema: z.ZodType; declare const unmarshalSqlTask_SqlDashboardOutputSchema: z.ZodType; declare const unmarshalSqlTask_SqlDashboardWidgetOutputSchema: z.ZodType; declare const unmarshalSqlTask_SqlOutputSchema: z.ZodType; declare const unmarshalSqlTask_SqlOutputErrorSchema: z.ZodType; declare const unmarshalSqlTask_SqlQueryOutputSchema: z.ZodType; declare const unmarshalSqlTask_SqlStatementOutputSchema: z.ZodType; declare const unmarshalSqlTaskAlertSchema: z.ZodType; declare const unmarshalSqlTaskDashboardSchema: z.ZodType; declare const unmarshalSqlTaskFileSchema: z.ZodType; declare const unmarshalSqlTaskQuerySchema: z.ZodType; declare const unmarshalSqlTaskSubscriptionSchema: z.ZodType; declare const unmarshalSubmitRunResponseSchema: z.ZodType; declare const unmarshalSubscriptionSchema: z.ZodType; declare const unmarshalSubscription_SubscriberSchema: z.ZodType; declare const unmarshalTableStateSchema: z.ZodType; declare const unmarshalTableTriggerConfigurationSchema: z.ZodType; declare const unmarshalTableTriggerStateSchema: z.ZodType; declare const unmarshalTaskDependencySchema: z.ZodType; declare const unmarshalTaskSettingsSchema: z.ZodType; declare const unmarshalTerminationDetailsSchema: z.ZodType; declare const unmarshalTriggerConfigurationSchema: z.ZodType; declare const unmarshalTriggerDetailsSchema: z.ZodType; declare const unmarshalTriggerEvaluationSchema: z.ZodType; declare const unmarshalTriggerHistorySchema: z.ZodType; declare const unmarshalTriggerSettingsSchema: z.ZodType; declare const unmarshalTriggerStateSchema: z.ZodType; declare const unmarshalUpdateJobResponseSchema: z.ZodType; declare const unmarshalViewItemSchema: z.ZodType; declare const unmarshalVolumesStorageInfoSchema: z.ZodType; declare const unmarshalWebhookSchema: z.ZodType; declare const unmarshalWebhookNotificationsSchema: z.ZodType; declare const unmarshalWidgetErrorDetailSchema: z.ZodType; declare const unmarshalWorkloadTypeSchema: z.ZodType; declare const unmarshalWorkloadType_ClientsTypesSchema: z.ZodType; declare const unmarshalWorkspaceStorageInfoSchema: z.ZodType; declare const marshalAccessControlRequestSchema: z.ZodType; declare const marshalAdlsgen2InfoSchema: z.ZodType; declare const marshalAiRuntimeTaskSchema: z.ZodType; declare const marshalAlertTaskSchema: z.ZodType; declare const marshalAlertTaskSubscriberSchema: z.ZodType; declare const marshalAutoScaleSchema: z.ZodType; declare const marshalAwsAttributesSchema: z.ZodType; declare const marshalAzureAttributesSchema: z.ZodType; declare const marshalCancelAllRunsRequestSchema: z.ZodType; declare const marshalCancelRunRequestSchema: z.ZodType; declare const marshalCleanRoomsNotebookTaskSchema: z.ZodType; declare const marshalClusterLogConfSchema: z.ZodType; declare const marshalClusterSpec_NewClusterSchema: z.ZodType; declare const marshalComputeSchema: z.ZodType; declare const marshalComputeConfigSchema: z.ZodType; declare const marshalComputeSpecSchema: z.ZodType; declare const marshalConditionTaskSchema: z.ZodType; declare const marshalContinuousSettingsSchema: z.ZodType; declare const marshalContinuousTriggerConfigurationSchema: z.ZodType; declare const marshalCreateJobRequestSchema: z.ZodType; declare const marshalCronScheduleSchema: z.ZodType; declare const marshalCronTriggerConfigurationSchema: z.ZodType; declare const marshalDashboardTaskSchema: z.ZodType; declare const marshalDbfsStorageInfoSchema: z.ZodType; declare const marshalDbtCloudTaskSchema: z.ZodType; declare const marshalDbtPlatformTaskSchema: z.ZodType; declare const marshalDbtTaskSchema: z.ZodType; declare const marshalDeleteJobRequestSchema: z.ZodType; declare const marshalDeleteRunRequestSchema: z.ZodType; declare const marshalDeploymentSpecSchema: z.ZodType; declare const marshalDockerBasicAuthSchema: z.ZodType; declare const marshalDockerImageSchema: z.ZodType; declare const marshalEnforcePolicyComplianceForJobSchema: z.ZodType; declare const marshalEnvironmentSchema: z.ZodType; declare const marshalFileArrivalTriggerConfigurationSchema: z.ZodType; declare const marshalForEachTaskSchema: z.ZodType; declare const marshalGcpAttributesSchema: z.ZodType; declare const marshalGcsStorageInfoSchema: z.ZodType; declare const marshalGenAiComputeTaskSchema: z.ZodType; declare const marshalGitMetadataSnapshotSchema: z.ZodType; declare const marshalGitSourceSchema: z.ZodType; declare const marshalInitScriptInfoSchema: z.ZodType; declare const marshalJobClusterSchema: z.ZodType; declare const marshalJobDeploymentSchema: z.ZodType; declare const marshalJobEmailNotificationsSchema: z.ZodType; declare const marshalJobEnvironmentSchema: z.ZodType; declare const marshalJobLevelParameterSchema: z.ZodType; declare const marshalJobRunAsSchema: z.ZodType; declare const marshalJobSettingsSchema: z.ZodType; declare const marshalJobSourceSchema: z.ZodType; declare const marshalJobsHealthRuleSchema: z.ZodType; declare const marshalJobsHealthRulesSchema: z.ZodType; declare const marshalLibrarySchema: z.ZodType; declare const marshalLocalFileInfoSchema: z.ZodType; declare const marshalLogAnalyticsInfoSchema: z.ZodType; declare const marshalMavenLibrarySchema: z.ZodType; declare const marshalModelTriggerConfigurationSchema: z.ZodType; declare const marshalNodeTypeFlexibilitySchema: z.ZodType; declare const marshalNotebookTaskSchema: z.ZodType; declare const marshalNotificationSettingsSchema: z.ZodType; declare const marshalPeriodicTriggerConfigurationSchema: z.ZodType; declare const marshalPipelineParametersSchema: z.ZodType; declare const marshalPipelineTaskSchema: z.ZodType; declare const marshalPowerBiModelSchema: z.ZodType; declare const marshalPowerBiTableSchema: z.ZodType; declare const marshalPowerBiTaskSchema: z.ZodType; declare const marshalPythonOperatorTaskSchema: z.ZodType; declare const marshalPythonOperatorTask_ParameterSchema: z.ZodType; declare const marshalPythonPyPiLibrarySchema: z.ZodType; declare const marshalPythonWheelTaskSchema: z.ZodType; declare const marshalQueueSettingsSchema: z.ZodType; declare const marshalRCranLibrarySchema: z.ZodType; declare const marshalRepairRunRequestSchema: z.ZodType; declare const marshalResetJobRequestSchema: z.ZodType; declare const marshalRunJobTaskSchema: z.ZodType; declare const marshalRunNowRequestSchema: z.ZodType; declare const marshalRunTaskSettingsSchema: z.ZodType; declare const marshalS3StorageInfoSchema: z.ZodType; declare const marshalSparkJarTaskSchema: z.ZodType; declare const marshalSparkPythonTaskSchema: z.ZodType; declare const marshalSparkSubmitTaskSchema: z.ZodType; declare const marshalSparseCheckoutSchema: z.ZodType; declare const marshalSqlConditionConfigurationSchema: z.ZodType; declare const marshalSqlTaskSchema: z.ZodType; declare const marshalSqlTaskAlertSchema: z.ZodType; declare const marshalSqlTaskDashboardSchema: z.ZodType; declare const marshalSqlTaskFileSchema: z.ZodType; declare const marshalSqlTaskQuerySchema: z.ZodType; declare const marshalSqlTaskSubscriptionSchema: z.ZodType; declare const marshalSubmitRunRequestSchema: z.ZodType; declare const marshalSubscriptionSchema: z.ZodType; declare const marshalSubscription_SubscriberSchema: z.ZodType; declare const marshalTableTriggerConfigurationSchema: z.ZodType; declare const marshalTaskDependencySchema: z.ZodType; declare const marshalTaskSettingsSchema: z.ZodType; declare const marshalTriggerConfigurationSchema: z.ZodType; declare const marshalTriggerSettingsSchema: z.ZodType; declare const marshalUpdateJobRequestSchema: z.ZodType; declare const marshalVolumesStorageInfoSchema: z.ZodType; declare const marshalWebhookSchema: z.ZodType; declare const marshalWebhookNotificationsSchema: z.ZodType; declare const marshalWorkloadTypeSchema: z.ZodType; declare const marshalWorkloadType_ClientsTypesSchema: z.ZodType; declare const marshalWorkspaceStorageInfoSchema: z.ZodType; //#endregion export { AccessControlRequest, AccessControlRequest_JobPermission, Adlsgen2Info, AiRuntimeTask, AiRuntimeTaskOutput, AlertEvaluationState, AlertEvaluationState_AlertEvaluationState, AlertTask, AlertTaskOutput, AlertTaskSubscriber, AuthenticationMethod, AutoScale, AwsAttributes, AwsAvailability, AzureAttributes, AzureAvailability, BaseJob, BaseRun, CancelAllRunsRequest, CancelAllRunsResponse, CancelRunRequest, CancelRunResponse, CleanRoomTaskRunLifeCycleState, CleanRoomTaskRunLifeCycleState_CleanRoomTaskRunLifeCycleState, CleanRoomTaskRunResultState, CleanRoomTaskRunResultState_CleanRoomTaskRunResultState, CleanRoomTaskRunState, CleanRoomsNotebookTask, CleanRoomsNotebookTask_CleanRoomsNotebookTaskOutput, ClusterInstance, ClusterLogConf, ClusterSpec, ClusterSpec_NewCluster, Compute, ComputeConfig, ComputeKind, ComputeSpec, ComputeSpec_AcceleratorType, ConditionTask, ConditionTask_ConditionTaskOperator, ConfidentialComputeType, ContinuousSettings, ContinuousTriggerConfiguration, ContinuousTriggerState, CreateJobRequest, CreateJobResponse, CronSchedule, CronTriggerConfiguration, DashboardPageSnapshot, DashboardTask, DashboardTaskOutput, DataSecurityMode, DbfsStorageInfo, DbtCloudJobRunStep, DbtCloudTask, DbtCloudTaskOutput, DbtPlatformJobRunStep, DbtPlatformRunStatus, DbtPlatformTask, DbtPlatformTaskOutput, DbtTask, DbtTask_DbtTaskOutput, DeleteJobRequest, DeleteJobResponse, DeleteRunRequest, DeleteRunResponse, DependencyMode, DeploymentSpec, DockerBasicAuth, DockerImage, EbsVolumeType, EnforcePolicyComplianceForJob, EnforcePolicyComplianceResponse, EnforcePolicyComplianceResponse_JobClusterSettingsChange, Environment, ExportRunRequest, ExportRunResponse, FileArrivalTriggerConfiguration, FileArrivalTriggerState, ForEachTask, Format, GcpAttributes, GcpAvailability, GcsStorageInfo, GenAiComputeTask, GetJobRequest, GetJobResponse, GetPolicyComplianceForJobRequest, GetPolicyComplianceForJobResponse, GetRunOutputRequest, GetRunOutputResponse, GetRunRequest, GetRunResponse, GitMetadataSnapshot, GitSource, HardwareAcceleratorType, InitScriptInfo, JobCluster, JobDeployment, JobDeployment_DeploymentKind, JobEditMode, JobEmailNotifications, JobEnvironment, JobLevelParameter, JobRunAs, JobSettings, JobSource, JobSource_DirtyState, JobsHealthMetric, JobsHealthOperator, JobsHealthRule, JobsHealthRules, Library, ListJobComplianceForPolicy, ListJobComplianceForPolicy_JobCompliance, ListJobComplianceResponse, ListJobsRequest, ListJobsResponse, ListRunsRequest, ListRunsResponse, LocalFileInfo, LogAnalyticsInfo, MavenLibrary, ModelTriggerConfiguration, ModelTriggerConfiguration_ModelTriggerCondition, ModelTriggerState, NodeTypeFlexibility, NotebookTask, NotebookTask_NotebookOutput, NotificationSettings, OutputSchemaInfo, PerTriggerState, PerformanceTarget, PerformanceTarget_PerformanceTarget, PeriodicTriggerConfiguration, PeriodicTriggerConfiguration_TimeUnit, PeriodicTriggerState, PipelineParameters, PipelineTask, PowerBiModel, PowerBiTable, PowerBiTask, PythonOperatorTask, PythonOperatorTask_Parameter, PythonPyPiLibrary, PythonWheelTask, QueueDetails, QueueDetailsCode, QueueDetailsCode_Code, QueueSettings, RCranLibrary, Repair, RepairRunRequest, RepairRunResponse, RepairType, ResetJobRequest, ResetJobResponse, ResolvedValues, ResolvedValues_AiRuntimeTaskResolvedValues, ResolvedValues_ConditionTaskResolvedValues, ResolvedValues_DbtTaskResolvedValues, ResolvedValues_NotebookTaskResolvedValues, ResolvedValues_PipelineTaskResolvedValues, ResolvedValues_PythonWheelTaskResolvedValues, ResolvedValues_RunJobTaskResolvedValues, ResolvedValues_SimulationTaskResolvedValues, ResolvedValues_SparkJarTaskResolvedValues, ResolvedValues_SparkPythonTaskResolvedValues, ResolvedValues_SparkSubmitTaskResolvedValues, ResolvedValues_SqlTaskResolvedValues, Run, RunJobTask, RunJobTask_RunJobTaskOutput, RunLifeCycleState, RunLifeCycleState_RunLifeCycleState, RunLifecycleStateV2, RunLifecycleStateV2_State, RunNowRequest, RunNowResponse, RunParameters, RunResultState, RunResultState_RunResultState, RunState, RunStatus, RunTask, RunTaskSettings, RunTriggerInfo, RunType, Run_JobLevelParameters, RuntimeEngine, S3StorageInfo, SchedulePauseStatus, ScheduleTriggerState, Source, SparkJarTask, SparkPythonTask, SparkSubmitTask, SparseCheckout, SqlAlertState, SqlAlertState_SqlAlertState, SqlConditionConfiguration, SqlConditionRunInfoDetails, SqlConditionState, SqlConditionTriggerMode, SqlTask, SqlTaskAlert, SqlTaskDashboard, SqlTaskFile, SqlTaskQuery, SqlTaskSubscription, SqlTask_SqlAlertOutput, SqlTask_SqlDashboardOutput, SqlTask_SqlDashboardWidgetOutput, SqlTask_SqlOutput, SqlTask_SqlOutputError, SqlTask_SqlQueryOutput, SqlTask_SqlStatementOutput, SqlTask_SqlTaskQueryStatus, StorageMode, SubmitRunRequest, SubmitRunResponse, Subscription, Subscription_Subscriber, TableState, TableTriggerConfiguration, TableTriggerConfiguration_Condition, TableTriggerState, TaskDependency, TaskDependencyType, TaskRetryMode, TaskSettings, TerminationCode, TerminationCode_Code, TerminationDetails, TerminationType, TerminationType_Type, TriggerConfiguration, TriggerDetails, TriggerEvaluation, TriggerHistory, TriggerSettings, TriggerState, TriggerType, UpdateJobRequest, UpdateJobResponse, ViewItem, ViewType, ViewsToExport, VolumesStorageInfo, Webhook, WebhookNotifications, WidgetErrorDetail, WorkloadType, WorkloadType_ClientsTypes, WorkspaceStorageInfo, marshalAccessControlRequestSchema, marshalAdlsgen2InfoSchema, marshalAiRuntimeTaskSchema, marshalAlertTaskSchema, marshalAlertTaskSubscriberSchema, marshalAutoScaleSchema, marshalAwsAttributesSchema, marshalAzureAttributesSchema, marshalCancelAllRunsRequestSchema, marshalCancelRunRequestSchema, marshalCleanRoomsNotebookTaskSchema, marshalClusterLogConfSchema, marshalClusterSpec_NewClusterSchema, marshalComputeConfigSchema, marshalComputeSchema, marshalComputeSpecSchema, marshalConditionTaskSchema, marshalContinuousSettingsSchema, marshalContinuousTriggerConfigurationSchema, marshalCreateJobRequestSchema, marshalCronScheduleSchema, marshalCronTriggerConfigurationSchema, marshalDashboardTaskSchema, marshalDbfsStorageInfoSchema, marshalDbtCloudTaskSchema, marshalDbtPlatformTaskSchema, marshalDbtTaskSchema, marshalDeleteJobRequestSchema, marshalDeleteRunRequestSchema, marshalDeploymentSpecSchema, marshalDockerBasicAuthSchema, marshalDockerImageSchema, marshalEnforcePolicyComplianceForJobSchema, marshalEnvironmentSchema, marshalFileArrivalTriggerConfigurationSchema, marshalForEachTaskSchema, marshalGcpAttributesSchema, marshalGcsStorageInfoSchema, marshalGenAiComputeTaskSchema, marshalGitMetadataSnapshotSchema, marshalGitSourceSchema, marshalInitScriptInfoSchema, marshalJobClusterSchema, marshalJobDeploymentSchema, marshalJobEmailNotificationsSchema, marshalJobEnvironmentSchema, marshalJobLevelParameterSchema, marshalJobRunAsSchema, marshalJobSettingsSchema, marshalJobSourceSchema, marshalJobsHealthRuleSchema, marshalJobsHealthRulesSchema, marshalLibrarySchema, marshalLocalFileInfoSchema, marshalLogAnalyticsInfoSchema, marshalMavenLibrarySchema, marshalModelTriggerConfigurationSchema, marshalNodeTypeFlexibilitySchema, marshalNotebookTaskSchema, marshalNotificationSettingsSchema, marshalPeriodicTriggerConfigurationSchema, marshalPipelineParametersSchema, marshalPipelineTaskSchema, marshalPowerBiModelSchema, marshalPowerBiTableSchema, marshalPowerBiTaskSchema, marshalPythonOperatorTaskSchema, marshalPythonOperatorTask_ParameterSchema, marshalPythonPyPiLibrarySchema, marshalPythonWheelTaskSchema, marshalQueueSettingsSchema, marshalRCranLibrarySchema, marshalRepairRunRequestSchema, marshalResetJobRequestSchema, marshalRunJobTaskSchema, marshalRunNowRequestSchema, marshalRunTaskSettingsSchema, marshalS3StorageInfoSchema, marshalSparkJarTaskSchema, marshalSparkPythonTaskSchema, marshalSparkSubmitTaskSchema, marshalSparseCheckoutSchema, marshalSqlConditionConfigurationSchema, marshalSqlTaskAlertSchema, marshalSqlTaskDashboardSchema, marshalSqlTaskFileSchema, marshalSqlTaskQuerySchema, marshalSqlTaskSchema, marshalSqlTaskSubscriptionSchema, marshalSubmitRunRequestSchema, marshalSubscriptionSchema, marshalSubscription_SubscriberSchema, marshalTableTriggerConfigurationSchema, marshalTaskDependencySchema, marshalTaskSettingsSchema, marshalTriggerConfigurationSchema, marshalTriggerSettingsSchema, marshalUpdateJobRequestSchema, marshalVolumesStorageInfoSchema, marshalWebhookNotificationsSchema, marshalWebhookSchema, marshalWorkloadTypeSchema, marshalWorkloadType_ClientsTypesSchema, marshalWorkspaceStorageInfoSchema, unmarshalAdlsgen2InfoSchema, unmarshalAiRuntimeTaskOutputSchema, unmarshalAiRuntimeTaskSchema, unmarshalAlertTaskOutputSchema, unmarshalAlertTaskSchema, unmarshalAlertTaskSubscriberSchema, unmarshalAutoScaleSchema, unmarshalAwsAttributesSchema, unmarshalAzureAttributesSchema, unmarshalBaseJobSchema, unmarshalBaseRunSchema, unmarshalCancelAllRunsResponseSchema, unmarshalCancelRunResponseSchema, unmarshalCleanRoomTaskRunStateSchema, unmarshalCleanRoomsNotebookTaskSchema, unmarshalCleanRoomsNotebookTask_CleanRoomsNotebookTaskOutputSchema, unmarshalClusterInstanceSchema, unmarshalClusterLogConfSchema, unmarshalClusterSpecSchema, unmarshalClusterSpec_NewClusterSchema, unmarshalComputeConfigSchema, unmarshalComputeSchema, unmarshalComputeSpecSchema, unmarshalConditionTaskSchema, unmarshalContinuousSettingsSchema, unmarshalContinuousTriggerConfigurationSchema, unmarshalContinuousTriggerStateSchema, unmarshalCreateJobResponseSchema, unmarshalCronScheduleSchema, unmarshalCronTriggerConfigurationSchema, unmarshalDashboardPageSnapshotSchema, unmarshalDashboardTaskOutputSchema, unmarshalDashboardTaskSchema, unmarshalDbfsStorageInfoSchema, unmarshalDbtCloudJobRunStepSchema, unmarshalDbtCloudTaskOutputSchema, unmarshalDbtCloudTaskSchema, unmarshalDbtPlatformJobRunStepSchema, unmarshalDbtPlatformTaskOutputSchema, unmarshalDbtPlatformTaskSchema, unmarshalDbtTaskSchema, unmarshalDbtTask_DbtTaskOutputSchema, unmarshalDeleteJobResponseSchema, unmarshalDeleteRunResponseSchema, unmarshalDeploymentSpecSchema, unmarshalDockerBasicAuthSchema, unmarshalDockerImageSchema, unmarshalEnforcePolicyComplianceResponseSchema, unmarshalEnforcePolicyComplianceResponse_JobClusterSettingsChangeSchema, unmarshalEnvironmentSchema, unmarshalExportRunResponseSchema, unmarshalFileArrivalTriggerConfigurationSchema, unmarshalFileArrivalTriggerStateSchema, unmarshalForEachTaskSchema, unmarshalGcpAttributesSchema, unmarshalGcsStorageInfoSchema, unmarshalGenAiComputeTaskSchema, unmarshalGetJobResponseSchema, unmarshalGetPolicyComplianceForJobResponseSchema, unmarshalGetRunOutputResponseSchema, unmarshalGetRunResponseSchema, unmarshalGitMetadataSnapshotSchema, unmarshalGitSourceSchema, unmarshalInitScriptInfoSchema, unmarshalJobClusterSchema, unmarshalJobDeploymentSchema, unmarshalJobEmailNotificationsSchema, unmarshalJobEnvironmentSchema, unmarshalJobLevelParameterSchema, unmarshalJobRunAsSchema, unmarshalJobSettingsSchema, unmarshalJobSourceSchema, unmarshalJobsHealthRuleSchema, unmarshalJobsHealthRulesSchema, unmarshalLibrarySchema, unmarshalListJobComplianceForPolicy_JobComplianceSchema, unmarshalListJobComplianceResponseSchema, unmarshalListJobsResponseSchema, unmarshalListRunsResponseSchema, unmarshalLocalFileInfoSchema, unmarshalLogAnalyticsInfoSchema, unmarshalMavenLibrarySchema, unmarshalModelTriggerConfigurationSchema, unmarshalModelTriggerStateSchema, unmarshalNodeTypeFlexibilitySchema, unmarshalNotebookTaskSchema, unmarshalNotebookTask_NotebookOutputSchema, unmarshalNotificationSettingsSchema, unmarshalOutputSchemaInfoSchema, unmarshalPerTriggerStateSchema, unmarshalPeriodicTriggerConfigurationSchema, unmarshalPeriodicTriggerStateSchema, unmarshalPipelineParametersSchema, unmarshalPipelineTaskSchema, unmarshalPowerBiModelSchema, unmarshalPowerBiTableSchema, unmarshalPowerBiTaskSchema, unmarshalPythonOperatorTaskSchema, unmarshalPythonOperatorTask_ParameterSchema, unmarshalPythonPyPiLibrarySchema, unmarshalPythonWheelTaskSchema, unmarshalQueueDetailsSchema, unmarshalQueueSettingsSchema, unmarshalRCranLibrarySchema, unmarshalRepairRunResponseSchema, unmarshalRepairSchema, unmarshalResetJobResponseSchema, unmarshalResolvedValuesSchema, unmarshalResolvedValues_AiRuntimeTaskResolvedValuesSchema, unmarshalResolvedValues_ConditionTaskResolvedValuesSchema, unmarshalResolvedValues_DbtTaskResolvedValuesSchema, unmarshalResolvedValues_NotebookTaskResolvedValuesSchema, unmarshalResolvedValues_PipelineTaskResolvedValuesSchema, unmarshalResolvedValues_PythonWheelTaskResolvedValuesSchema, unmarshalResolvedValues_RunJobTaskResolvedValuesSchema, unmarshalResolvedValues_SimulationTaskResolvedValuesSchema, unmarshalResolvedValues_SparkJarTaskResolvedValuesSchema, unmarshalResolvedValues_SparkPythonTaskResolvedValuesSchema, unmarshalResolvedValues_SparkSubmitTaskResolvedValuesSchema, unmarshalResolvedValues_SqlTaskResolvedValuesSchema, unmarshalRunJobTaskSchema, unmarshalRunJobTask_RunJobTaskOutputSchema, unmarshalRunNowResponseSchema, unmarshalRunParametersSchema, unmarshalRunSchema, unmarshalRunStateSchema, unmarshalRunStatusSchema, unmarshalRunTaskSchema, unmarshalRunTriggerInfoSchema, unmarshalRun_JobLevelParametersSchema, unmarshalS3StorageInfoSchema, unmarshalScheduleTriggerStateSchema, unmarshalSparkJarTaskSchema, unmarshalSparkPythonTaskSchema, unmarshalSparkSubmitTaskSchema, unmarshalSparseCheckoutSchema, unmarshalSqlConditionConfigurationSchema, unmarshalSqlConditionRunInfoDetailsSchema, unmarshalSqlConditionStateSchema, unmarshalSqlTaskAlertSchema, unmarshalSqlTaskDashboardSchema, unmarshalSqlTaskFileSchema, unmarshalSqlTaskQuerySchema, unmarshalSqlTaskSchema, unmarshalSqlTaskSubscriptionSchema, unmarshalSqlTask_SqlAlertOutputSchema, unmarshalSqlTask_SqlDashboardOutputSchema, unmarshalSqlTask_SqlDashboardWidgetOutputSchema, unmarshalSqlTask_SqlOutputErrorSchema, unmarshalSqlTask_SqlOutputSchema, unmarshalSqlTask_SqlQueryOutputSchema, unmarshalSqlTask_SqlStatementOutputSchema, unmarshalSubmitRunResponseSchema, unmarshalSubscriptionSchema, unmarshalSubscription_SubscriberSchema, unmarshalTableStateSchema, unmarshalTableTriggerConfigurationSchema, unmarshalTableTriggerStateSchema, unmarshalTaskDependencySchema, unmarshalTaskSettingsSchema, unmarshalTerminationDetailsSchema, unmarshalTriggerConfigurationSchema, unmarshalTriggerDetailsSchema, unmarshalTriggerEvaluationSchema, unmarshalTriggerHistorySchema, unmarshalTriggerSettingsSchema, unmarshalTriggerStateSchema, unmarshalUpdateJobResponseSchema, unmarshalViewItemSchema, unmarshalVolumesStorageInfoSchema, unmarshalWebhookNotificationsSchema, unmarshalWebhookSchema, unmarshalWidgetErrorDetailSchema, unmarshalWorkloadTypeSchema, unmarshalWorkloadType_ClientsTypesSchema, unmarshalWorkspaceStorageInfoSchema }; //# sourceMappingURL=model.d.ts.map