Releases: databricks/databricks-sdk-py
Releases · databricks/databricks-sdk-py
v0.106.0
## Release v0.106.0 ### Bug Fixes * Fixed Databricks CLI `--profile` fallback by detecting the CLI version at init time. The previous error-based detection was broken because `--profile` is a global Cobra flag silently accepted by old CLIs. ### Internal Changes * Detect Databricks CLI version at init time via `databricks version`, enabling version-gated flag support without additional subprocess calls. * Validate Databricks CLI configuration at `DatabricksCliTokenSource.__init__` time. Misconfiguration (missing profile and host, or `--profile`-unsupported CLI without a host fallback) now surfaces as `IOError` synchronously from construction rather than lazily from the first `refresh()` call. The exception type matches the previous `refresh()`-time behaviour, so callers who already catch `IOError` are unaffected. ### API Changes * Add [w.temporary_volume_credentials](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/catalog/temporary_volume_credentials.html) workspace-level service. * Add `get_permission_levels()`, `get_permissions()`, `set_permissions()` and `update_permissions()` methods for [w.knowledge_assistants](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/knowledgeassistants/knowledge_assistants.html) workspace-level service. * Add `undelete_project()` method for [w.postgres](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/postgres/postgres.html) workspace-level service. * Add `thumbnail_url` field for `databricks.sdk.service.apps.App`. * Add `confidential_compute_type` field for `databricks.sdk.service.compute.GcpAttributes`. * Add `jira_options`, `outlook_options` and `smartsheet_options` fields for `databricks.sdk.service.pipelines.ConnectorOptions`. * Add `google_ads_config` field for `databricks.sdk.service.pipelines.SourceConfig`. * Add `replace_existing` field for `databricks.sdk.service.postgres.CreateBranchRequest`. * Add `replace_existing` field for `databricks.sdk.service.postgres.CreateEndpointRequest`. * Add `purge` field for `databricks.sdk.service.postgres.DeleteProjectRequest`. * Add `show_deleted` field for `databricks.sdk.service.postgres.ListProjectsRequest`. * Add `delete_time` and `purge_time` fields for `databricks.sdk.service.postgres.Project`. * Add `uc_connection` field for `databricks.sdk.service.supervisoragents.Tool`. * Change `name` field for `databricks.sdk.service.supervisoragents.Connection` to no longer be required. * [Breaking] Change `name` field for `databricks.sdk.service.supervisoragents.Connection` to no longer be required. * Add `databricks.sdk.service.disasterrecovery` package. * Add [a.disaster_recovery](https://databricks-sdk-py.readthedocs.io/en/latest/account/disasterrecovery/disaster_recovery.html) account-level service. * Add `create_example()`, `delete_example()`, `get_example()`, `list_examples()` and `update_example()` methods for [w.knowledge_assistants](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/knowledgeassistants/knowledge_assistants.html) workspace-level service. * Add `delta_table_name` field for `databricks.sdk.service.ml.BackfillSource`. * Add `confluence_options` field for `databricks.sdk.service.pipelines.ConnectorOptions`. * Add `confluence` enum value for `databricks.sdk.service.catalog.ConnectionType`. * Add `confluence` enum value for `databricks.sdk.service.pipelines.IngestionSourceType`. * Change `description` field for `databricks.sdk.service.supervisoragents.SupervisorAgent` to no longer be required. * [Breaking] Change `description` field for `databricks.sdk.service.supervisoragents.SupervisorAgent` to no longer be required. * [Breaking] Remove `connection` field for `databricks.sdk.service.supervisoragents.Tool`.
v0.105.0
## Release v0.105.0 ### API Changes * Add `databricks.sdk.service.supervisoragents` package. * Add [w.secrets_uc](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/catalog/secrets_uc.html) workspace-level service. * Add [w.supervisor_agents](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/supervisoragents/supervisor_agents.html) workspace-level service. * Add `update()` method for [w.tokens](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/settings/tokens.html) workspace-level service. * Add `etag` field for `databricks.sdk.service.dashboards.GenieSpace`. * Add `etag` field for `databricks.sdk.service.dashboards.GenieUpdateSpaceRequest`. * Add `branch_id` field for `databricks.sdk.service.postgres.BranchStatus`. * Add `catalog_id` field for `databricks.sdk.service.postgres.CatalogCatalogStatus`. * Add `database_id` field for `databricks.sdk.service.postgres.DatabaseDatabaseStatus`. * Add `endpoint_id` field for `databricks.sdk.service.postgres.EndpointStatus`. * Add `project_id` field for `databricks.sdk.service.postgres.ProjectStatus`. * Add `role_id` field for `databricks.sdk.service.postgres.RoleRoleStatus`. * Add `project` field for `databricks.sdk.service.postgres.SyncedTableSyncedTableStatus`. * Add `manual` field for `databricks.sdk.service.provisioning.CreateGcpKeyInfo`. * Add `manual` field for `databricks.sdk.service.provisioning.GcpKeyInfo`. * Add `apps_runtime` and `lakebase_runtime` fields for `databricks.sdk.service.settings.CustomerFacingIngressNetworkPolicyRequestDestination`. * Add `blocked_internet_destinations` field for `databricks.sdk.service.settings.EgressNetworkPolicyNetworkAccessPolicy`. * Add `columns_to_sync` field for `databricks.sdk.service.vectorsearch.DeltaSyncVectorIndexSpecResponse`. * Add `breaking_change` enum value for `databricks.sdk.service.jobs.TerminationCodeCode`. * [Breaking] Change `update_catalog_config()` method for [w.data_classification](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/dataclassification/data_classification.html) workspace-level service. Method path has changed. * [Breaking] Change `update_default_workspace_base_environment()` method for [w.environments](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/environments/environments.html) workspace-level service. Method path has changed. * [Breaking] Change `update_knowledge_assistant()` method for [w.knowledge_assistants](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/knowledgeassistants/knowledge_assistants.html) workspace-level service. Method path has changed. * [Breaking] Change `update_branch()`, `update_database()`, `update_endpoint()`, `update_project()` and `update_role()` methods for [w.postgres](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/postgres/postgres.html) workspace-level service. Method path has changed. * [Breaking] Change `update_default_warehouse_override()` method for [w.warehouses](https://databricks-sdk-py.readthedocs.io/en/latest/workspace/sql/warehouses.html) workspace-level service. Method path has changed.
v0.104.0
Bug Fixes
- Add
X-Databricks-Org-Idheader toWorkspaceExt.upload()andWorkspaceExt.download()for SPOG host compatibility. WorkspaceClient.get_workspace_id()now returnsConfig.workspace_iddirectly when set, instead of calling/api/2.0/preview/scim/v2/Me. This removes an API round-trip on every call where the workspace ID is already known (profile,?o=query param, env var, or host metadata) and fixes a failure on SPOG hosts where the unauthenticated probe request was rejected withUnable to load OAuth Config.- Add
X-Databricks-Org-Idheader toSharesExt.list()for SPOG host compatibility.
Internal Changes
- Expanded AI agent detection: added Goose, Amp, Augment, Copilot (VS Code), Kiro, Windsurf. Honors the
AGENT=<name>standard (resolves to a known product if the value matches one, otherwiseunknown). Presence-only env var matchers now treat an empty string as "set" for parity with the Go and Java SDKs. Explicit agent env vars (e.g.CLAUDECODE,GOOSE_TERMINAL) always take precedence over the genericAGENT=<name>signal. When multiple agent env vars are present (e.g. a Cursor CLI subagent invoked from Claude Code), the user-agent reportsagent/multiple.
v0.103.0
New Features and Improvements
- Add support for unified hosts. A single configuration profile can now be used for both account-level and workspace-level operations when the host supports it and both
account_idandworkspace_idare available. Theexperimental_is_unified_hostflag has been removed; unified host detection is now automatic. - Accept
DATABRICKS_OIDC_TOKEN_FILEPATHenvironment variable for consistency with other Databricks SDKs (Go, CLI, Terraform). The previousDATABRICKS_OIDC_TOKEN_FILEis still supported as an alias.
Breaking Changes
- Drop support for Python 3.8 and 3.9. The minimum supported Python version is now 3.10, in line with the oldest supported Databricks Runtime LTS (DBR 13.3).
Internal Changes
- Replace the async-disabling mechanism on token refresh failure with a 1-minute retry backoff. Previously, a single failed async refresh would disable proactive token renewal until the token expired. Now, the SDK waits a short cooldown period and retries, improving resilience to transient errors.
- Extract
_resolve_profileto simplify config file loading and improve__settings__error messages. - Resolve
token_audiencefrom thetoken_federation_default_oidc_audiencesfield in the host metadata discovery endpoint, removing the need for explicit audience configuration.
API Changes
- Add
create_catalog(),create_synced_table(),delete_catalog(),delete_synced_table(),get_catalog()andget_synced_table()methods for w.postgres workspace-level service. - Add
effective_file_event_queuefield fordatabricks.sdk.service.catalog.CreateExternalLocation. - Add
effective_file_event_queuefield fordatabricks.sdk.service.catalog.ExternalLocationInfo. - Add
effective_file_event_queuefield fordatabricks.sdk.service.catalog.UpdateExternalLocation. - Add
column_selectionfield fordatabricks.sdk.service.ml.Function. - Add
cascadefield fordatabricks.sdk.service.pipelines.DeletePipelineRequest. - Add
default_branchfield fordatabricks.sdk.service.postgres.ProjectSpec. - Add
default_branchfield fordatabricks.sdk.service.postgres.ProjectStatus. - Add
ingressandingress_dry_runfields fordatabricks.sdk.service.settings.AccountNetworkPolicy. - Add
delete_app_thumbnail()andupdate_app_thumbnail()methods for w.apps workspace-level service. - Add
create_message_comment(),list_conversation_comments()andlist_message_comments()methods for w.genie workspace-level service. - Add
apply_environment()method for w.pipelines workspace-level service. - Add
nameandpermissionfields fordatabricks.sdk.service.apps.AppResourceApp. - Add
managed_encryption_settingsfield fordatabricks.sdk.service.catalog.CatalogInfo. - Add
managed_encryption_settingsfield fordatabricks.sdk.service.catalog.CreateCatalog. - Add
managed_encryption_settingsfield fordatabricks.sdk.service.catalog.UpdateCatalog. - Add
commentfield fordatabricks.sdk.service.dashboards.GenieFeedback. - Add
thoughtsfield fordatabricks.sdk.service.dashboards.GenieQueryAttachment. - Add
commentfield fordatabricks.sdk.service.dashboards.GenieSendMessageFeedbackRequest. - Add
request_sourcefield fordatabricks.sdk.service.ml.DataSource. - Add
is_onlinefield fordatabricks.sdk.service.ml.MaterializedFeature. - Add
connector_optionsfield fordatabricks.sdk.service.pipelines.SchemaSpec. - Add
connector_optionsfield fordatabricks.sdk.service.pipelines.TableSpec. - Add
scopesfield fordatabricks.sdk.service.settings.CreateOboTokenRequest. - Add
gcp_endpointfield fordatabricks.sdk.service.settings.CreatePrivateEndpointRule. - Add
scopesfield fordatabricks.sdk.service.settings.CreateTokenRequest. - Add
gcp_endpointfield fordatabricks.sdk.service.settings.NccPrivateEndpointRule. - Add
gcp_endpointfield fordatabricks.sdk.service.settings.UpdatePrivateEndpointRule. - Add
sql_statefield fordatabricks.sdk.service.sql.StatementStatus. - Add
usage_policy_idfield fordatabricks.sdk.service.vectorsearch.CreateEndpoint. - Add
index_subtypefield fordatabricks.sdk.service.vectorsearch.CreateVectorIndexRequest. - Add
budget_policy_idfield fordatabricks.sdk.service.vectorsearch.EndpointInfo. - Add
index_subtypefield fordatabricks.sdk.service.vectorsearch.MiniVectorIndex. - Add
budget_policy_idfield fordatabricks.sdk.service.vectorsearch.PatchEndpointBudgetPolicyResponse. - Add
index_subtypefield fordatabricks.sdk.service.vectorsearch.VectorIndex. - Add
table_delta_uniform_iceberg_external_deltasharingenum value fordatabricks.sdk.service.catalog.SecurableKind. - Add
google_driveenum value fordatabricks.sdk.service.pipelines.IngestionSourceType. - Add
storage_optimizedenum value fordatabricks.sdk.service.vectorsearch.EndpointType. - [Breaking] Remove
projectfield fordatabricks.sdk.service.postgres.SyncedTableSyncedTableSpec. - [Breaking] Remove
appsandlakebasefields fordatabricks.sdk.service.settings.CustomerFacingIngressNetworkPolicyRequestDestination.
v0.102.0
Release v0.102.0
New Features and Improvements
- Added automatic detection of AI coding agents (Antigravity, Claude Code, Cline, Codex, Copilot CLI, Cursor, Gemini CLI, OpenCode) in the user-agent string. The SDK now appends
agent/<name>to HTTP request headers when running inside a known AI agent environment.
API Changes
- Add
disable_gov_tag_creationfield fordatabricks.sdk.service.settings.RestrictWorkspaceAdminsMessage. - Add
disable_gov_tag_creationfield fordatabricks.sdk.service.settingsv2.RestrictWorkspaceAdminsMessage.
v0.101.0
Release v0.101.0
API Changes
- Add
databricks.sdk.service.environmentspackage. - Add w.environments workspace-level service.
- Add
parent_pathfield fordatabricks.sdk.service.dashboards.GenieSpace. - Add
can_create_appenum value fordatabricks.sdk.service.iam.PermissionLevel.
v0.100.0
Release v0.100.0
New Features and Improvements
- Support
default_profilein[__settings__]section of.databrickscfgfor consistent default profile resolution across CLI and SDKs.
API Changes
- Add
alert_outputfield fordatabricks.sdk.service.jobs.RunOutput. - Add
alert_taskfield fordatabricks.sdk.service.jobs.RunTask. - Add
alert_taskfield fordatabricks.sdk.service.jobs.SubmitTask. - Add
alert_taskfield fordatabricks.sdk.service.jobs.Task.
v0.99.0
Release v0.99.0
API Changes
- Add
connector_typeanddata_staging_optionsfields fordatabricks.sdk.service.pipelines.IngestionPipelineDefinition. - Add
ingestion_source_catalog_name,ingestion_source_connection_name,ingestion_source_schema_name,ingestion_source_table_nameandingestion_source_table_versionfields fordatabricks.sdk.service.pipelines.Origin. - Add
sub_domainfield fordatabricks.sdk.service.serving.ExternalFunctionRequest.
v0.98.0
Release v0.98.0
API Changes
- Add
genie_create_eval_run(),genie_get_eval_result_details(),genie_get_eval_run(),genie_list_eval_results()andgenie_list_eval_runs()methods for w.genie workspace-level service. - Add
update_role()method for w.postgres workspace-level service. - Add
telemetry_export_destinationsfield fordatabricks.sdk.service.apps.App. - Add
entitiesandtimeseries_columnfields fordatabricks.sdk.service.ml.Feature. - Add
aggregation_functionfield fordatabricks.sdk.service.ml.Function. - Add
filter_conditionfield fordatabricks.sdk.service.ml.KafkaSource. - Add
attributesfield fordatabricks.sdk.service.postgres.RoleRoleStatus. - [Breaking] Change
entity_columnsandtimeseries_columnfields fordatabricks.sdk.service.ml.DeltaTableSourceto no longer be required. - Change
entity_columnsandtimeseries_columnfields fordatabricks.sdk.service.ml.DeltaTableSourceto no longer be required. - Change
inputsfield fordatabricks.sdk.service.ml.Featureto no longer be required. - [Breaking] Change
inputsfield fordatabricks.sdk.service.ml.Featureto no longer be required. - [Breaking] Change
function_typefield fordatabricks.sdk.service.ml.Functionto no longer be required. - Change
function_typefield fordatabricks.sdk.service.ml.Functionto no longer be required. - Change
entity_column_identifiersandtimeseries_column_identifierfields fordatabricks.sdk.service.ml.KafkaSourceto no longer be required. - [Breaking] Change
entity_column_identifiersandtimeseries_column_identifierfields fordatabricks.sdk.service.ml.KafkaSourceto no longer be required.
v0.97.0
Release v0.97.0
Bug Fixes
- Fixed Databricks CLI authentication to detect when the cached token's scopes don't match the SDK's configured scopes. Previously, a scope mismatch was silently ignored, causing requests to use wrong permissions. The SDK now raises an error with instructions to re-authenticate.
API Changes
- Add
databricks.sdk.service.dataclassificationanddatabricks.sdk.service.knowledgeassistantspackages. - Add w.data_classification workspace-level service.
- Add w.knowledge_assistants workspace-level service.