Skip to content

Releases: databricks/databricks-sdk-py

v0.121.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 17 Jul 13:01
e25671d
## Release v0.121.0 (2026-07-09)

### API Changes
* Add `list()` and `list_effective()` methods for [w.grants](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/catalog/grants.html) workspace-level service.
* Add `update_time` field for `databricks.sdk.service.bundledeployments.Resource`.
* Add `stable_workspace_id` field for `databricks.sdk.service.disasterrecovery.StableUrl`.
* Add `deployment_id` and `version_id` fields for `databricks.sdk.service.jobs.BaseRun`.
* Add `parent_path` field for `databricks.sdk.service.jobs.CreateJob`.
* Add `parent_path` field for `databricks.sdk.service.jobs.JobSettings`.
* Add `deployment_id` and `version_id` fields for `databricks.sdk.service.jobs.Run`.
* Add `first_distinct` and `last_distinct` fields for `databricks.sdk.service.ml.AggregationFunction`.
* Add `trace_location` field for `databricks.sdk.service.ml.CreateExperiment`.
* Add `trace_location` field for `databricks.sdk.service.ml.Experiment`.
* Add `avro_schema` and `proto_schema` fields for `databricks.sdk.service.ml.SchemaConfig`.
* Add `freshness_target` field for `databricks.sdk.service.ml.StreamingMode`.
* Add `long_rolling` field for `databricks.sdk.service.ml.TimeWindow`.
* Add `git_credential_id` field for `databricks.sdk.service.workspace.CreateRepoRequest`.
* Add `git_credential_id` field for `databricks.sdk.service.workspace.UpdateRepoRequest`.
* Add `cpu_large` and `cpu_medium` enum values for `databricks.sdk.service.serving.ServedModelInputWorkloadType`.
* Add `cpu_large` and `cpu_medium` enum values for `databricks.sdk.service.serving.ServingModelWorkloadType`.
* [Breaking] Change `role` field for `databricks.sdk.service.postgres.DatabaseDatabaseSpec` to be required.
* Change `role` field for `databricks.sdk.service.postgres.DatabaseDatabaseSpec` to be required.
* [Breaking] Remove `include_browse` field for `databricks.sdk.service.catalog.GetSecretRequest`.
* [Breaking] Remove `include_browse` field for `databricks.sdk.service.catalog.ListSecretsRequest`.
* [Breaking] Remove `browse_only` and `external_secret_id` fields for `databricks.sdk.service.catalog.Secret`.
* [Breaking] Remove `first_distinct_n` and `last_distinct_n` fields for `databricks.sdk.service.ml.AggregationFunction`.
* [Breaking] Remove `group_name` field for `databricks.sdk.service.postgres.GenerateDatabaseCredentialRequest`.

### Documentation
* Document all 18 valid `auth_type` values in a new [Authentication Types Reference](https://github.com/databricks/databricks-sdk-py/blob/main/docs/auth-types-reference.md) page, linked from the README and authentication docs.

v0.120.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 02 Jul 14:56
be7acc0
## Release v0.120.0 (2026-07-01)

### API Changes
* Add `download_message_attachment_visualization()` method for [w.genie](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/dashboards/genie.html) workspace-level service.
* Add `omit_permissions_in_response` field for `databricks.sdk.service.catalog.UpdatePermissions`.
* Add `viz` field for `databricks.sdk.service.dashboards.GenieAttachment`.
* Add `enable_visualization` field for `databricks.sdk.service.dashboards.GenieCreateConversationMessageRequest`.
* Add `enable_visualization` field for `databricks.sdk.service.dashboards.GenieStartConversationMessageRequest`.
* Add `excluded_schemas` field for `databricks.sdk.service.dataclassification.CatalogConfig`.
* Add `etag` field for `databricks.sdk.service.disasterrecovery.UpdateFailoverGroupRequest`.
* Add `spec` field for `databricks.sdk.service.environments.WorkspaceBaseEnvironment`.
* Add `full_name` field for `databricks.sdk.service.iamv2.User`.
* Add `status_message` field for `databricks.sdk.service.jobs.AiRuntimeTaskOutput`.
* Add `sql_condition` field for `databricks.sdk.service.jobs.CronSchedule`.
* Add `sql_condition` field for `databricks.sdk.service.jobs.TriggerInfo`.
* Add `sql_condition` field for `databricks.sdk.service.jobs.TriggerSettings`.
* Add `sql_condition` field for `databricks.sdk.service.jobs.TriggerStateProto`.
* Add `first_distinct_n`, `first_n`, `last_distinct_n` and `last_n` fields for `databricks.sdk.service.ml.AggregationFunction`.
* Add `replace_existing` field for `databricks.sdk.service.postgres.CreateDatabaseRequest`.
* Add `replace_existing` field for `databricks.sdk.service.postgres.CreateRoleRequest`.
* Add `read_only_pooled_host` and `read_write_pooled_host` fields for `databricks.sdk.service.postgres.EndpointHosts`.
* Add `last_active_time` field for `databricks.sdk.service.postgres.EndpointStatus`.
* Add `expire_time`, `group_name` and `ttl` fields for `databricks.sdk.service.postgres.GenerateDatabaseCredentialRequest`.
* Add `autoscaling_limit_max_cu`, `autoscaling_limit_min_cu`, `no_suspension` and `suspend_timeout_duration` fields for `databricks.sdk.service.postgres.InitialEndpointSpec`.
* Add `initial_branch_spec` field for `databricks.sdk.service.postgres.Project`.
* Add `compute_last_active_time` field for `databricks.sdk.service.postgres.ProjectStatus`.
* Add `telemetry_config` field for `databricks.sdk.service.serving.CreateServingEndpoint`.
* Add `telemetry_config` field for `databricks.sdk.service.serving.ServingEndpoint`.
* Add `telemetry_config` field for `databricks.sdk.service.serving.ServingEndpointDetailed`.
* Add `read_metadata` enum value for `databricks.sdk.service.catalog.Privilege`.
* [Breaking] Remove `name` field for `databricks.sdk.service.iamv2.User`.

v0.119.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 24 Jun 15:37
3e0fa2b
## Release v0.119.0 (2026-06-24)

### New Features and Improvements
* Added a `meta-harness` user-agent dimension that reports the omnigent meta-harness (detected via the `OMNIGENT` environment variable) independently of agent detection.

### API Changes
* Add `cancel_pending_cluster_enforcement()` method for [w.policy_compliance_for_clusters](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/compute/policy_compliance_for_clusters.html) workspace-level service.
* Add `bundle_root_path` field for `databricks.sdk.service.bundledeployments.WorkspaceInfo`.
* Add `pending_enforcement` field for `databricks.sdk.service.compute.ClusterCompliance`.
* Add `enforce_mode` field for `databricks.sdk.service.compute.EnforceClusterComplianceRequest`.
* Add `enforce_result` field for `databricks.sdk.service.compute.EnforceClusterComplianceResponse`.
* Add `pending_enforcement` field for `databricks.sdk.service.compute.GetClusterComplianceResponse`.
* Add `ai_runtime_task` field for `databricks.sdk.service.jobs.ResolvedValues`.
* Add `ai_runtime_task_output` field for `databricks.sdk.service.jobs.RunOutput`.
* Add `ai_runtime_task` field for `databricks.sdk.service.jobs.RunTask`.
* Add `ai_runtime_task` field for `databricks.sdk.service.jobs.SubmitTask`.
* Add `ai_runtime_task` field for `databricks.sdk.service.jobs.Task`.
* Add `xlarge` enum value for `databricks.sdk.service.apps.ComputeSize`.
* Add `deferred_policy_enforcement_scheduled` and `deferred_policy_enforcement_failed` enum values for `databricks.sdk.service.compute.EventType`.
* [Breaking] Change `replicate_workspace_assets` field for `databricks.sdk.service.disasterrecovery.WorkspaceSet` to no longer be required.
* Change `replicate_workspace_assets` field for `databricks.sdk.service.disasterrecovery.WorkspaceSet` to no longer be required.

v0.118.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 18 Jun 14:09
aef495d
## Release v0.118.0 (2026-06-18)

### API Changes
* Add `create_data_api()`, `delete_data_api()`, `get_data_api()` and `update_data_api()` methods for [w.postgres](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/postgres/postgres.html) workspace-level service.
* Add `capacity_reservation_group` field for `databricks.sdk.service.compute.AzureAttributes`.
* Add `serverless_compute_id` field for `databricks.sdk.service.pipelines.ClonePipelineRequest`.
* Add `serverless_compute_id` field for `databricks.sdk.service.pipelines.CreatePipeline`.
* Add `serverless_compute_id` field for `databricks.sdk.service.pipelines.EditPipeline`.
* Add `serverless_compute_id` field for `databricks.sdk.service.pipelines.PipelineSpec`.
* Add `endpoint_id` field for `databricks.sdk.service.vectorsearch.MiniVectorIndex`.
* Add `endpoint_id` field for `databricks.sdk.service.vectorsearch.VectorIndex`.
* Add `dynamics365` enum value for `databricks.sdk.service.catalog.ConnectionType`.

v0.117.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 11 Jun 18:19
v0.117.0
8de8d38
## Release v0.117.0 (2026-06-11)

### API Changes
* Add `type_overrides` field for `databricks.sdk.service.database.SyncedTableSpec`.
* Add `type_overrides` field for `databricks.sdk.service.postgres.SyncedTableSyncedTableSpec`.
* Change `resource_id` field for `databricks.sdk.service.bundledeployments.Operation` to no longer be required.
* [Breaking] Change `resource_id` field for `databricks.sdk.service.bundledeployments.Operation` to no longer be required.

### Bug Fixes
* Cache tokens minted by `DatabricksOidcTokenSource` (Workload Identity
Federation / account-wide token federation). Previously a fresh
`/oidc/v1/token` exchange was performed on every authenticated API
call, adding latency, amplifying transient federation-policy errors,
and hitting OIDC token-endpoint rate limits. The token source now
reuses the cached token until it is stale or expired, fetching a fresh
ID token on each refresh to support rotation.
* Make `WorkspaceClient.dbutils` lazy (`functools.cached_property`).
The constructor no longer imports `databricks.sdk.runtime` eagerly, so
on Spark Connect (shared-access-mode) clusters, consumers that never
read `.dbutils` — such as `dbt-databricks` Python models — no longer
crash with `CONTEXT_UNAVAILABLE_FOR_REMOTE_CLIENT` during client
construction.
* Fall back to the remote runtime implementation when the legacy user
namespace cannot be materialized. On Spark Connect runtimes (e.g.
shared-access-mode clusters), importing `databricks.sdk.runtime` —
which happens when constructing a `WorkspaceClient` on such a cluster
— tried to build a legacy `SparkContext` and raised
`CONTEXT_UNAVAILABLE_FOR_REMOTE_CLIENT` at import time. It now logs a
warning and falls back to the Spark Connect-compatible remote
implementation instead of crashing.

### Internal Changes
* Declare `urllib3` as an explicit dependency. The SDK imports it
directly; previously it was only available transitively through
`requests`. No resolution change for users.

v0.116.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 10 Jun 06:15
528878e
## Release v0.116.0

### API Changes
* Add `databricks.sdk.service.aisearch` and `databricks.sdk.service.bundledeployments` packages.
* Add [w.ai_search](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/aisearch/ai_search.html) workspace-level service.
* Add [w.bundle_deployments](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/bundledeployments/bundle_deployments.html) workspace-level service.
* Add `running_instances` field for `databricks.sdk.service.apps.ApplicationStatus`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.CatalogInfo`.
* Add `environment_settings` field for `databricks.sdk.service.catalog.ConnectionInfo`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.CreateCatalog`.
* Add `environment_settings` field for `databricks.sdk.service.catalog.CreateConnection`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.CreateSchema`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.SchemaInfo`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.UpdateCatalog`.
* Add `environment_settings` field for `databricks.sdk.service.catalog.UpdateConnection`.
* Add `custom_max_retention_hours` field for `databricks.sdk.service.catalog.UpdateSchema`.
* Add `stream_source` field for `databricks.sdk.service.ml.DataSource`.
* Add `ingestion_config` field for `databricks.sdk.service.ml.KafkaConfig`.
* Add `clustering_columns`, `enable_auto_clustering` and `table_properties` fields for `databricks.sdk.service.pipelines.TableSpecificConfig`.
* Add `branch_id` field for `databricks.sdk.service.postgres.Branch`.
* Add `catalog_id` field for `databricks.sdk.service.postgres.Catalog`.
* Add `database_id` field for `databricks.sdk.service.postgres.Database`.
* Add `endpoint_id` field for `databricks.sdk.service.postgres.Endpoint`.
* Add `project_id` field for `databricks.sdk.service.postgres.Project`.
* Add `role_id` field for `databricks.sdk.service.postgres.Role`.
* Add `synced_table_id` field for `databricks.sdk.service.postgres.SyncedTable`.
* Add `allowed_databricks_destinations` field for `databricks.sdk.service.settings.EgressNetworkPolicyNetworkAccessPolicy`.
* Add `facets`, `query_columns` and `sort_columns` fields for `databricks.sdk.service.vectorsearch.QueryVectorIndexRequest`.
* Add `facet_result` field for `databricks.sdk.service.vectorsearch.QueryVectorIndexResponse`.
* Add `facet_column_count` and `facet_columns` fields for `databricks.sdk.service.vectorsearch.ResultManifest`.
* Add `dangerously_force_discard_all` field for `databricks.sdk.service.workspace.UpdateRepoRequest`.
* [Breaking] Remove `databricks.sdk.service.bundle` package.
* [Breaking] Remove [w.bundle](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/bundle/bundle.html) workspace-level service.
* Add `accelerated_sync` field for `databricks.sdk.service.database.SyncedTableSpec`.
* Add `accelerated_sync` field for `databricks.sdk.service.postgres.SyncedTableSyncedTableSpec`.

v0.115.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 08 Jun 09:43
c897178
## Release v0.115.0

### New Features and Improvements

* Honor the Vercel `AI_AGENT=<name>` env var as a secondary fallback for AI agent detection in the User-Agent header (after the agents.md `AGENT=<name>` standard). Unrecognized fallback values now pass through the User-Agent sanitized and length-capped at 64 chars instead of being coerced to `agent/unknown`, so versioned variants such as `claude-code_2-1-141_agent` surface as-is.

v0.114.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 02 Jun 09:34
bcb9b08
## Release v0.114.0

### API Changes
* Add `deployment_mode` field for `databricks.sdk.service.bundle.Deployment`.
* Add `deployment_mode` field for `databricks.sdk.service.bundle.Version`.
* Add `collaboration_platform_connectivity` and `effective_collaboration_platform_connectivity` fields for `databricks.sdk.service.settingsv2.Setting`.

v0.113.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 01 Jun 09:59
33c22f1
## Release v0.113.0

### Internal Changes

* Switch workspace addressing header on workspace-scoped API calls from `X-Databricks-Org-Id` to `X-Databricks-Workspace-Id`. The value continues to come from `Config.workspace_id` (`DATABRICKS_WORKSPACE_ID`), and now accepts either a classic numeric workspace ID or another workspace identifier format (server disambiguates).

### API Changes
* Add `create_stream()`, `delete_stream()`, `get_stream()`, `list_streams()` and `update_stream()` methods for [w.feature_engineering](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/ml/feature_engineering.html) workspace-level service.
* Add `update_token_management()` method for [w.token_management](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/settings/token_management.html) workspace-level service.
* Add `deployment_id` and `version_id` fields for `databricks.sdk.service.jobs.JobDeployment`.
* Add `parameters` field for `databricks.sdk.service.jobs.PipelineTask`.
* Add `pipeline_task` field for `databricks.sdk.service.jobs.ResolvedValues`.
* Add `parameters` field for `databricks.sdk.service.pipelines.CreatePipeline`.
* Add `parameters` field for `databricks.sdk.service.pipelines.EditPipeline`.
* Add `parameters` field for `databricks.sdk.service.pipelines.GetPipelineResponse`.
* Add `deployment_id` and `version_id` fields for `databricks.sdk.service.pipelines.PipelineDeployment`.
* Add `autoscope_enabled` field for `databricks.sdk.service.settings.CreateOboTokenRequest`.
* Add `autoscope_enabled` field for `databricks.sdk.service.settings.CreateTokenRequest`.
* Add `autoscope_state`, `backfill_scopes`, `inferred_scopes` and `scopes` fields for `databricks.sdk.service.settings.PublicTokenInfo`.
* Add `autoscope_state`, `backfill_scopes`, `inferred_scopes` and `scopes` fields for `databricks.sdk.service.settings.TokenInfo`.
* [Breaking] Remove `catalog_id` field for `databricks.sdk.service.postgres.CatalogCatalogStatus`.
* [Breaking] Remove `synced_table_id` field for `databricks.sdk.service.postgres.SyncedTableSyncedTableStatus`.
* Add `resource_type` field for `databricks.sdk.service.bundle.Operation`.

v0.112.0

Choose a tag to compare

@cross-repo-secure-release-app cross-repo-secure-release-app released this 27 May 09:16
b9bac64
## Release v0.112.0

### Internal Changes

* Switch the formatter and linter from black/isort/autoflake to ruff (format + lint), aligning the SDK formatter with Databricks' internal Python formatting guidelines in preparation for moving the source of truth to a separate internal repository. `make fmt` now runs `ruff format` + `ruff check --fix-only`; `make lint` runs `ruff check` and `ruff format --check` across `databricks` and `tests`. No behavioral changes to the published SDK.