From 89c5c3d4cc870b194f899364f645124caefe7667 Mon Sep 17 00:00:00 2001 From: "databricks-ci-ghec-2[bot]" <184307802+databricks-ci-ghec-2[bot]@users.noreply.github.com> Date: Wed, 20 May 2026 04:37:13 +0000 Subject: [PATCH] Update SDK to bd6e15a1d13c8bf0fcaa1675bde0fd8fa37df2d0 --- .codegen/_openapi_sha | 2 +- .gitattributes | 35 +++ NEXT_CHANGELOG.md | 3 + .../com/databricks/sdk/WorkspaceClient.java | 20 ++ .../sdk/service/bundle/BundleAPI.java | 211 ++++++++++++++ .../sdk/service/bundle/BundleImpl.java | 261 ++++++++++++++++++ .../sdk/service/bundle/BundleService.java | 95 +++++++ .../bundle/CompleteVersionRequest.java | 83 ++++++ .../bundle/CreateDeploymentRequest.java | 65 +++++ .../bundle/CreateOperationRequest.java | 82 ++++++ .../service/bundle/CreateVersionRequest.java | 81 ++++++ .../bundle/DeleteDeploymentRequest.java | 41 +++ .../sdk/service/bundle/Deployment.java | 198 +++++++++++++ .../bundle/DeploymentResourceType.java | 33 +++ .../sdk/service/bundle/DeploymentStatus.java | 14 + .../service/bundle/GetDeploymentRequest.java | 41 +++ .../service/bundle/GetOperationRequest.java | 44 +++ .../service/bundle/GetResourceRequest.java | 44 +++ .../sdk/service/bundle/GetVersionRequest.java | 43 +++ .../sdk/service/bundle/HeartbeatRequest.java | 42 +++ .../sdk/service/bundle/HeartbeatResponse.java | 44 +++ .../bundle/ListDeploymentsRequest.java | 68 +++++ .../bundle/ListDeploymentsResponse.java | 64 +++++ .../service/bundle/ListOperationsRequest.java | 83 ++++++ .../bundle/ListOperationsResponse.java | 64 +++++ .../service/bundle/ListResourcesRequest.java | 83 ++++++ .../service/bundle/ListResourcesResponse.java | 64 +++++ .../service/bundle/ListVersionsRequest.java | 83 ++++++ .../service/bundle/ListVersionsResponse.java | 64 +++++ .../sdk/service/bundle/Operation.java | 169 ++++++++++++ .../service/bundle/OperationActionType.java | 19 ++ .../sdk/service/bundle/OperationStatus.java | 12 + .../sdk/service/bundle/Resource.java | 143 ++++++++++ .../sdk/service/bundle/Version.java | 235 ++++++++++++++++ .../sdk/service/bundle/VersionComplete.java | 14 + .../sdk/service/bundle/VersionStatus.java | 12 + .../sdk/service/bundle/VersionType.java | 12 + .../sdk/service/catalog/SecurableKind.java | 7 +- .../databricks/sdk/service/ml/AuthConfig.java | 19 +- .../databricks/sdk/service/ml/MtlsConfig.java | 159 +++++++++++ .../sdk/service/ml/SecretScopeReference.java | 62 +++++ 41 files changed, 2914 insertions(+), 4 deletions(-) mode change 100644 => 100755 NEXT_CHANGELOG.md create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleAPI.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleImpl.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleService.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CompleteVersionRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateDeploymentRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateOperationRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateVersionRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeleteDeploymentRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Deployment.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentResourceType.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentStatus.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetDeploymentRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetOperationRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetResourceRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetVersionRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatResponse.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsResponse.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListOperationsRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListOperationsResponse.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListResourcesRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListResourcesResponse.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListVersionsRequest.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListVersionsResponse.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Operation.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/OperationActionType.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/OperationStatus.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Resource.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Version.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionComplete.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionStatus.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionType.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/MtlsConfig.java create mode 100755 databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SecretScopeReference.java diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index b867878f4..73633aa1e 100755 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -50a10950ac51e28984f99a85f0d4511e90d6ae94 \ No newline at end of file +bd6e15a1d13c8bf0fcaa1675bde0fd8fa37df2d0 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes index 2dde881ae..6c402aa3c 100755 --- a/.gitattributes +++ b/.gitattributes @@ -224,6 +224,39 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/UsageDashbo databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedCreateLogDeliveryConfiguration.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedLogDeliveryConfiguration.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/billing/WrappedLogDeliveryConfigurations.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleAPI.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleImpl.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleService.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CompleteVersionRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateDeploymentRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateOperationRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateVersionRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeleteDeploymentRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Deployment.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentResourceType.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetDeploymentRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetOperationRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetResourceRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetVersionRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListOperationsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListOperationsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListResourcesRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListResourcesResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListVersionsRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListVersionsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Operation.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/OperationActionType.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/OperationStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Resource.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Version.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionComplete.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/VersionType.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccessRequestDestinations.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountMetastoreAssignmentsAPI.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AccountMetastoreAssignmentsImpl.java linguist-generated=true @@ -2076,6 +2109,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ModelVersion.jav databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ModelVersionDatabricks.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ModelVersionStatus.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ModelVersionTag.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/MtlsConfig.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/OfflineStoreConfig.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/OnlineStore.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/OnlineStoreConfig.java linguist-generated=true @@ -2127,6 +2161,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SearchModelsRequ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SearchModelsResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SearchRuns.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SearchRunsResponse.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SecretScopeReference.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SetExperimentTag.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SetLoggedModelTagsRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/SetModelTagRequest.java linguist-generated=true diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md old mode 100644 new mode 100755 index a5fe5821b..a8718252d --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -15,3 +15,6 @@ ### Internal Changes ### API Changes +* Add `com.databricks.sdk.service.bundle` package. +* Add `workspaceClient.bundle()` service. +* Add `mtlsConfig` field for `com.databricks.sdk.service.ml.AuthConfig`. \ No newline at end of file diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java index 6a33c1f53..3b09ae551 100755 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java @@ -14,6 +14,8 @@ import com.databricks.sdk.service.apps.AppsService; import com.databricks.sdk.service.apps.AppsSettingsAPI; import com.databricks.sdk.service.apps.AppsSettingsService; +import com.databricks.sdk.service.bundle.BundleAPI; +import com.databricks.sdk.service.bundle.BundleService; import com.databricks.sdk.service.catalog.ArtifactAllowlistsAPI; import com.databricks.sdk.service.catalog.ArtifactAllowlistsService; import com.databricks.sdk.service.catalog.CatalogsAPI; @@ -284,6 +286,7 @@ public class WorkspaceClient { private AppsAPI appsAPI; private AppsSettingsAPI appsSettingsAPI; private ArtifactAllowlistsAPI artifactAllowlistsAPI; + private BundleAPI bundleAPI; private CatalogsAPI catalogsAPI; private CleanRoomAssetRevisionsAPI cleanRoomAssetRevisionsAPI; private CleanRoomAssetsAPI cleanRoomAssetsAPI; @@ -423,6 +426,7 @@ public WorkspaceClient(DatabricksConfig config) { appsAPI = new AppsAPI(apiClient); appsSettingsAPI = new AppsSettingsAPI(apiClient); artifactAllowlistsAPI = new ArtifactAllowlistsAPI(apiClient); + bundleAPI = new BundleAPI(apiClient); catalogsAPI = new CatalogsAPI(apiClient); cleanRoomAssetRevisionsAPI = new CleanRoomAssetRevisionsAPI(apiClient); cleanRoomAssetsAPI = new CleanRoomAssetsAPI(apiClient); @@ -630,6 +634,11 @@ public ArtifactAllowlistsAPI artifactAllowlists() { return artifactAllowlistsAPI; } + /** Service for managing bundle deployment metadata. */ + public BundleAPI bundle() { + return bundleAPI; + } + /** * A catalog is the first layer of Unity Catalog’s three-level namespace. It’s used to organize * your data assets. Users can see all catalogs on which they have been assigned the USE_CATALOG @@ -2312,6 +2321,17 @@ public WorkspaceClient withArtifactAllowlistsAPI(ArtifactAllowlistsAPI artifactA return this; } + /** Replace the default BundleService with a custom implementation. */ + public WorkspaceClient withBundleImpl(BundleService bundle) { + return this.withBundleAPI(new BundleAPI(bundle)); + } + + /** Replace the default BundleAPI with a custom implementation. */ + public WorkspaceClient withBundleAPI(BundleAPI bundle) { + this.bundleAPI = bundle; + return this; + } + /** Replace the default CatalogsService with a custom implementation. */ public WorkspaceClient withCatalogsImpl(CatalogsService catalogs) { return this.withCatalogsAPI(new CatalogsAPI(catalogs)); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleAPI.java new file mode 100755 index 000000000..66379d56f --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/BundleAPI.java @@ -0,0 +1,211 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. +package com.databricks.sdk.service.bundle; + +import com.databricks.sdk.core.ApiClient; +import com.databricks.sdk.core.logging.Logger; +import com.databricks.sdk.core.logging.LoggerFactory; +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.Paginator; + +/** Service for managing bundle deployment metadata. */ +@Generated +public class BundleAPI { + private static final Logger LOG = LoggerFactory.getLogger(BundleAPI.class); + + private final BundleService impl; + + /** Regular-use constructor */ + public BundleAPI(ApiClient apiClient) { + impl = new BundleImpl(apiClient); + } + + /** Constructor for mocks */ + public BundleAPI(BundleService mock) { + impl = mock; + } + + /** + * Marks a version as complete and releases the deployment lock. + * + *
The server atomically: 1. Sets the version status to the provided terminal status. 2. Sets + * `complete_time` to the current server timestamp. 3. Releases the lock on the parent deployment. + * 4. Updates the parent deployment's `status` and `last_version_id`. + */ + public Version completeVersion(CompleteVersionRequest request) { + return impl.completeVersion(request); + } + + /** + * Creates a new deployment in the workspace. + * + *
The caller must provide a `deployment_id` which becomes the final component of the + * deployment's resource name. If a deployment with the same ID already exists, the server returns + * `ALREADY_EXISTS`. + */ + public Deployment createDeployment(CreateDeploymentRequest request) { + return impl.createDeployment(request); + } + + /** + * Creates a resource operation under a version. + * + *
The caller must provide a `resource_key` which becomes the final component of the + * operation's name. If an operation with the same key already exists under the version, the + * server returns `ALREADY_EXISTS`. + * + *
On success the server also updates the corresponding deployment-level Resource (creating it + * if this is the first operation for that resource_key, or removing it if action_type is DELETE). + */ + public Operation createOperation(CreateOperationRequest request) { + return impl.createOperation(request); + } + + /** + * Creates a new version under a deployment. + * + *
Creating a version acquires an exclusive lock on the deployment, preventing concurrent + * deploys. The caller provides a `version_id` which the server validates equals `last_version_id + * + 1` on the deployment. + */ + public Version createVersion(CreateVersionRequest request) { + return impl.createVersion(request); + } + + public void deleteDeployment(String name) { + deleteDeployment(new DeleteDeploymentRequest().setName(name)); + } + + /** + * Deletes a deployment. + * + *
The deployment is marked as deleted. It and all its children (versions and their operations) + * will be permanently deleted after the retention policy expires. If the deployment has an + * in-progress version, the server returns `RESOURCE_CONFLICT`. + */ + public void deleteDeployment(DeleteDeploymentRequest request) { + impl.deleteDeployment(request); + } + + public Deployment getDeployment(String name) { + return getDeployment(new GetDeploymentRequest().setName(name)); + } + + /** Retrieves a deployment by its resource name. */ + public Deployment getDeployment(GetDeploymentRequest request) { + return impl.getDeployment(request); + } + + public Operation getOperation(String name) { + return getOperation(new GetOperationRequest().setName(name)); + } + + /** Retrieves a resource operation by its resource name. */ + public Operation getOperation(GetOperationRequest request) { + return impl.getOperation(request); + } + + public Resource getResource(String name) { + return getResource(new GetResourceRequest().setName(name)); + } + + /** Retrieves a deployment resource by its resource name. */ + public Resource getResource(GetResourceRequest request) { + return impl.getResource(request); + } + + public Version getVersion(String name) { + return getVersion(new GetVersionRequest().setName(name)); + } + + /** Retrieves a version by its resource name. */ + public Version getVersion(GetVersionRequest request) { + return impl.getVersion(request); + } + + /** + * Sends a heartbeat to renew the lock held by a version. + * + *
The server validates that the version is the active (non-terminal) version on the parent
+ * deployment and resets the lock expiry. If the lock has already expired or the version is no
+ * longer active, the server returns `ABORTED`.
+ */
+ public HeartbeatResponse heartbeat(HeartbeatRequest request) {
+ return impl.heartbeat(request);
+ }
+
+ /** Lists deployments in the workspace. */
+ public Iterable This is the high-level interface, that contains generated methods.
+ *
+ * Evolving: this interface is under development. Method signatures may change.
+ */
+@Generated
+public interface BundleService {
+ /**
+ * Marks a version as complete and releases the deployment lock.
+ *
+ * The server atomically: 1. Sets the version status to the provided terminal status. 2. Sets
+ * `complete_time` to the current server timestamp. 3. Releases the lock on the parent deployment.
+ * 4. Updates the parent deployment's `status` and `last_version_id`.
+ */
+ Version completeVersion(CompleteVersionRequest completeVersionRequest);
+
+ /**
+ * Creates a new deployment in the workspace.
+ *
+ * The caller must provide a `deployment_id` which becomes the final component of the
+ * deployment's resource name. If a deployment with the same ID already exists, the server returns
+ * `ALREADY_EXISTS`.
+ */
+ Deployment createDeployment(CreateDeploymentRequest createDeploymentRequest);
+
+ /**
+ * Creates a resource operation under a version.
+ *
+ * The caller must provide a `resource_key` which becomes the final component of the
+ * operation's name. If an operation with the same key already exists under the version, the
+ * server returns `ALREADY_EXISTS`.
+ *
+ * On success the server also updates the corresponding deployment-level Resource (creating it
+ * if this is the first operation for that resource_key, or removing it if action_type is DELETE).
+ */
+ Operation createOperation(CreateOperationRequest createOperationRequest);
+
+ /**
+ * Creates a new version under a deployment.
+ *
+ * Creating a version acquires an exclusive lock on the deployment, preventing concurrent
+ * deploys. The caller provides a `version_id` which the server validates equals `last_version_id
+ * + 1` on the deployment.
+ */
+ Version createVersion(CreateVersionRequest createVersionRequest);
+
+ /**
+ * Deletes a deployment.
+ *
+ * The deployment is marked as deleted. It and all its children (versions and their operations)
+ * will be permanently deleted after the retention policy expires. If the deployment has an
+ * in-progress version, the server returns `RESOURCE_CONFLICT`.
+ */
+ void deleteDeployment(DeleteDeploymentRequest deleteDeploymentRequest);
+
+ /** Retrieves a deployment by its resource name. */
+ Deployment getDeployment(GetDeploymentRequest getDeploymentRequest);
+
+ /** Retrieves a resource operation by its resource name. */
+ Operation getOperation(GetOperationRequest getOperationRequest);
+
+ /** Retrieves a deployment resource by its resource name. */
+ Resource getResource(GetResourceRequest getResourceRequest);
+
+ /** Retrieves a version by its resource name. */
+ Version getVersion(GetVersionRequest getVersionRequest);
+
+ /**
+ * Sends a heartbeat to renew the lock held by a version.
+ *
+ * The server validates that the version is the active (non-terminal) version on the parent
+ * deployment and resets the lock expiry. If the lock has already expired or the version is no
+ * longer active, the server returns `ABORTED`.
+ */
+ HeartbeatResponse heartbeat(HeartbeatRequest heartbeatRequest);
+
+ /** Lists deployments in the workspace. */
+ ListDeploymentsResponse listDeployments(ListDeploymentsRequest listDeploymentsRequest);
+
+ /** Lists resource operations under a version. */
+ ListOperationsResponse listOperations(ListOperationsRequest listOperationsRequest);
+
+ /** Lists resources under a deployment. */
+ ListResourcesResponse listResources(ListResourcesRequest listResourcesRequest);
+
+ /** Lists versions under a deployment, ordered by version_id descending (most recent first). */
+ ListVersionsResponse listVersions(ListVersionsRequest listVersionsRequest);
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CompleteVersionRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CompleteVersionRequest.java
new file mode 100755
index 000000000..620e7b9c9
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CompleteVersionRequest.java
@@ -0,0 +1,83 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** A request to complete a Version. */
+@Generated
+public class CompleteVersionRequest {
+ /**
+ * The reason for completing the version. Must be a terminal reason: VERSION_COMPLETE_SUCCESS,
+ * VERSION_COMPLETE_FAILURE, or VERSION_COMPLETE_FORCE_ABORT.
+ */
+ @JsonProperty("completion_reason")
+ private VersionComplete completionReason;
+
+ /**
+ * If true, force-completes the version even if the caller is not the original creator. The
+ * completion_reason must be VERSION_COMPLETE_FORCE_ABORT when force is true.
+ */
+ @JsonProperty("force")
+ private Boolean force;
+
+ /**
+ * The name of the version to complete. Format: deployments/{deployment_id}/versions/{version_id}
+ */
+ @JsonIgnore private String name;
+
+ public CompleteVersionRequest setCompletionReason(VersionComplete completionReason) {
+ this.completionReason = completionReason;
+ return this;
+ }
+
+ public VersionComplete getCompletionReason() {
+ return completionReason;
+ }
+
+ public CompleteVersionRequest setForce(Boolean force) {
+ this.force = force;
+ return this;
+ }
+
+ public Boolean getForce() {
+ return force;
+ }
+
+ public CompleteVersionRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ CompleteVersionRequest that = (CompleteVersionRequest) o;
+ return Objects.equals(completionReason, that.completionReason)
+ && Objects.equals(force, that.force)
+ && Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(completionReason, force, name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(CompleteVersionRequest.class)
+ .add("completionReason", completionReason)
+ .add("force", force)
+ .add("name", name)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateDeploymentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateDeploymentRequest.java
new file mode 100755
index 000000000..a3298d963
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateDeploymentRequest.java
@@ -0,0 +1,65 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+@Generated
+public class CreateDeploymentRequest {
+ /** The deployment to create. */
+ @JsonProperty("deployment")
+ private Deployment deployment;
+
+ /**
+ * The ID to use for the deployment, which will become the final component of the deployment's
+ * resource name (i.e. `deployments/{deployment_id}`).
+ */
+ @JsonIgnore
+ @QueryParam("deployment_id")
+ private String deploymentId;
+
+ public CreateDeploymentRequest setDeployment(Deployment deployment) {
+ this.deployment = deployment;
+ return this;
+ }
+
+ public Deployment getDeployment() {
+ return deployment;
+ }
+
+ public CreateDeploymentRequest setDeploymentId(String deploymentId) {
+ this.deploymentId = deploymentId;
+ return this;
+ }
+
+ public String getDeploymentId() {
+ return deploymentId;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ CreateDeploymentRequest that = (CreateDeploymentRequest) o;
+ return Objects.equals(deployment, that.deployment)
+ && Objects.equals(deploymentId, that.deploymentId);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(deployment, deploymentId);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(CreateDeploymentRequest.class)
+ .add("deployment", deployment)
+ .add("deploymentId", deploymentId)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateOperationRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateOperationRequest.java
new file mode 100755
index 000000000..5f575fe58
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateOperationRequest.java
@@ -0,0 +1,82 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+@Generated
+public class CreateOperationRequest {
+ /** The resource operation to create. */
+ @JsonProperty("operation")
+ private Operation operation;
+
+ /**
+ * The parent version where this operation will be recorded. Format:
+ * deployments/{deployment_id}/versions/{version_id}
+ */
+ @JsonIgnore private String parent;
+
+ /**
+ * The key identifying the resource this operation applies to. Becomes the final component of the
+ * operation's name.
+ */
+ @JsonIgnore
+ @QueryParam("resource_key")
+ private String resourceKey;
+
+ public CreateOperationRequest setOperation(Operation operation) {
+ this.operation = operation;
+ return this;
+ }
+
+ public Operation getOperation() {
+ return operation;
+ }
+
+ public CreateOperationRequest setParent(String parent) {
+ this.parent = parent;
+ return this;
+ }
+
+ public String getParent() {
+ return parent;
+ }
+
+ public CreateOperationRequest setResourceKey(String resourceKey) {
+ this.resourceKey = resourceKey;
+ return this;
+ }
+
+ public String getResourceKey() {
+ return resourceKey;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ CreateOperationRequest that = (CreateOperationRequest) o;
+ return Objects.equals(operation, that.operation)
+ && Objects.equals(parent, that.parent)
+ && Objects.equals(resourceKey, that.resourceKey);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(operation, parent, resourceKey);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(CreateOperationRequest.class)
+ .add("operation", operation)
+ .add("parent", parent)
+ .add("resourceKey", resourceKey)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateVersionRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateVersionRequest.java
new file mode 100755
index 000000000..6932340aa
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/CreateVersionRequest.java
@@ -0,0 +1,81 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+@Generated
+public class CreateVersionRequest {
+ /**
+ * The parent deployment where this version will be created. Format: deployments/{deployment_id}
+ */
+ @JsonIgnore private String parent;
+
+ /** The version to create. */
+ @JsonProperty("version")
+ private Version version;
+
+ /**
+ * The version ID the caller expects to create. The server validates this equals `last_version_id
+ * + 1` on the deployment. If it doesn't match, the server returns `ABORTED`.
+ */
+ @JsonIgnore
+ @QueryParam("version_id")
+ private String versionId;
+
+ public CreateVersionRequest setParent(String parent) {
+ this.parent = parent;
+ return this;
+ }
+
+ public String getParent() {
+ return parent;
+ }
+
+ public CreateVersionRequest setVersion(Version version) {
+ this.version = version;
+ return this;
+ }
+
+ public Version getVersion() {
+ return version;
+ }
+
+ public CreateVersionRequest setVersionId(String versionId) {
+ this.versionId = versionId;
+ return this;
+ }
+
+ public String getVersionId() {
+ return versionId;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ CreateVersionRequest that = (CreateVersionRequest) o;
+ return Objects.equals(parent, that.parent)
+ && Objects.equals(version, that.version)
+ && Objects.equals(versionId, that.versionId);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(parent, version, versionId);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(CreateVersionRequest.class)
+ .add("parent", parent)
+ .add("version", version)
+ .add("versionId", versionId)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeleteDeploymentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeleteDeploymentRequest.java
new file mode 100755
index 000000000..5fb5375d1
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeleteDeploymentRequest.java
@@ -0,0 +1,41 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class DeleteDeploymentRequest {
+ /** Resource name of the deployment to delete. Format: deployments/{deployment_id} */
+ @JsonIgnore private String name;
+
+ public DeleteDeploymentRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DeleteDeploymentRequest that = (DeleteDeploymentRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DeleteDeploymentRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Deployment.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Deployment.java
new file mode 100755
index 000000000..e12c69cb3
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/Deployment.java
@@ -0,0 +1,198 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.google.protobuf.Timestamp;
+import java.util.Objects;
+
+/** A bundle deployment registered with the control plane. */
+@Generated
+public class Deployment {
+ /** When the deployment was created. */
+ @JsonProperty("create_time")
+ private Timestamp createTime;
+
+ /** The user who created the deployment (email or principal name). */
+ @JsonProperty("created_by")
+ private String createdBy;
+
+ /**
+ * When the deployment was destroyed (i.e. `bundle destroy` completed). Unset if the deployment
+ * has not been destroyed. Named destroy_time (not delete_time) because this tracks the
+ * `databricks bundle destroy` command, not the API-level deletion.
+ */
+ @JsonProperty("destroy_time")
+ private Timestamp destroyTime;
+
+ /**
+ * The user who destroyed the deployment (email or principal name). Unset if the deployment has
+ * not been destroyed.
+ */
+ @JsonProperty("destroyed_by")
+ private String destroyedBy;
+
+ /** Human-readable name for the deployment. */
+ @JsonProperty("display_name")
+ private String displayName;
+
+ /** The version_id of the most recent deployment version. */
+ @JsonProperty("last_version_id")
+ private String lastVersionId;
+
+ /** Resource name of the deployment. Format: deployments/{deployment_id} */
+ @JsonProperty("name")
+ private String name;
+
+ /** Current status of the deployment. */
+ @JsonProperty("status")
+ private DeploymentStatus status;
+
+ /** The bundle target name associated with this deployment. */
+ @JsonProperty("target_name")
+ private String targetName;
+
+ /** When the deployment was last updated. */
+ @JsonProperty("update_time")
+ private Timestamp updateTime;
+
+ public Deployment setCreateTime(Timestamp createTime) {
+ this.createTime = createTime;
+ return this;
+ }
+
+ public Timestamp getCreateTime() {
+ return createTime;
+ }
+
+ public Deployment setCreatedBy(String createdBy) {
+ this.createdBy = createdBy;
+ return this;
+ }
+
+ public String getCreatedBy() {
+ return createdBy;
+ }
+
+ public Deployment setDestroyTime(Timestamp destroyTime) {
+ this.destroyTime = destroyTime;
+ return this;
+ }
+
+ public Timestamp getDestroyTime() {
+ return destroyTime;
+ }
+
+ public Deployment setDestroyedBy(String destroyedBy) {
+ this.destroyedBy = destroyedBy;
+ return this;
+ }
+
+ public String getDestroyedBy() {
+ return destroyedBy;
+ }
+
+ public Deployment setDisplayName(String displayName) {
+ this.displayName = displayName;
+ return this;
+ }
+
+ public String getDisplayName() {
+ return displayName;
+ }
+
+ public Deployment setLastVersionId(String lastVersionId) {
+ this.lastVersionId = lastVersionId;
+ return this;
+ }
+
+ public String getLastVersionId() {
+ return lastVersionId;
+ }
+
+ public Deployment setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public Deployment setStatus(DeploymentStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ public DeploymentStatus getStatus() {
+ return status;
+ }
+
+ public Deployment setTargetName(String targetName) {
+ this.targetName = targetName;
+ return this;
+ }
+
+ public String getTargetName() {
+ return targetName;
+ }
+
+ public Deployment setUpdateTime(Timestamp updateTime) {
+ this.updateTime = updateTime;
+ return this;
+ }
+
+ public Timestamp getUpdateTime() {
+ return updateTime;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ Deployment that = (Deployment) o;
+ return Objects.equals(createTime, that.createTime)
+ && Objects.equals(createdBy, that.createdBy)
+ && Objects.equals(destroyTime, that.destroyTime)
+ && Objects.equals(destroyedBy, that.destroyedBy)
+ && Objects.equals(displayName, that.displayName)
+ && Objects.equals(lastVersionId, that.lastVersionId)
+ && Objects.equals(name, that.name)
+ && Objects.equals(status, that.status)
+ && Objects.equals(targetName, that.targetName)
+ && Objects.equals(updateTime, that.updateTime);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ createTime,
+ createdBy,
+ destroyTime,
+ destroyedBy,
+ displayName,
+ lastVersionId,
+ name,
+ status,
+ targetName,
+ updateTime);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(Deployment.class)
+ .add("createTime", createTime)
+ .add("createdBy", createdBy)
+ .add("destroyTime", destroyTime)
+ .add("destroyedBy", destroyedBy)
+ .add("displayName", displayName)
+ .add("lastVersionId", lastVersionId)
+ .add("name", name)
+ .add("status", status)
+ .add("targetName", targetName)
+ .add("updateTime", updateTime)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentResourceType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentResourceType.java
new file mode 100755
index 000000000..34293b94b
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentResourceType.java
@@ -0,0 +1,33 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+
+/** Type of a deployment resource. */
+@Generated
+public enum DeploymentResourceType {
+ DEPLOYMENT_RESOURCE_TYPE_ALERT,
+ DEPLOYMENT_RESOURCE_TYPE_APP,
+ DEPLOYMENT_RESOURCE_TYPE_CATALOG,
+ DEPLOYMENT_RESOURCE_TYPE_CLUSTER,
+ DEPLOYMENT_RESOURCE_TYPE_DASHBOARD,
+ DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG,
+ DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE,
+ DEPLOYMENT_RESOURCE_TYPE_EXPERIMENT,
+ DEPLOYMENT_RESOURCE_TYPE_EXTERNAL_LOCATION,
+ DEPLOYMENT_RESOURCE_TYPE_JOB,
+ DEPLOYMENT_RESOURCE_TYPE_MODEL,
+ DEPLOYMENT_RESOURCE_TYPE_MODEL_SERVING_ENDPOINT,
+ DEPLOYMENT_RESOURCE_TYPE_PIPELINE,
+ DEPLOYMENT_RESOURCE_TYPE_POSTGRES_BRANCH,
+ DEPLOYMENT_RESOURCE_TYPE_POSTGRES_ENDPOINT,
+ DEPLOYMENT_RESOURCE_TYPE_POSTGRES_PROJECT,
+ DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR,
+ DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL,
+ DEPLOYMENT_RESOURCE_TYPE_SCHEMA,
+ DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE,
+ DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE,
+ DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE,
+ DEPLOYMENT_RESOURCE_TYPE_VOLUME,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentStatus.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentStatus.java
new file mode 100755
index 000000000..8c9f8bfc7
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/DeploymentStatus.java
@@ -0,0 +1,14 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+
+/** Status of a deployment. */
+@Generated
+public enum DeploymentStatus {
+ DEPLOYMENT_STATUS_ACTIVE,
+ DEPLOYMENT_STATUS_DELETED,
+ DEPLOYMENT_STATUS_FAILED,
+ DEPLOYMENT_STATUS_IN_PROGRESS,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetDeploymentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetDeploymentRequest.java
new file mode 100755
index 000000000..70c891035
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetDeploymentRequest.java
@@ -0,0 +1,41 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetDeploymentRequest {
+ /** Resource name of the deployment to retrieve. Format: deployments/{deployment_id} */
+ @JsonIgnore private String name;
+
+ public GetDeploymentRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ GetDeploymentRequest that = (GetDeploymentRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetDeploymentRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetOperationRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetOperationRequest.java
new file mode 100755
index 000000000..a0e41c681
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetOperationRequest.java
@@ -0,0 +1,44 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetOperationRequest {
+ /**
+ * The name of the resource operation to retrieve. Format:
+ * deployments/{deployment_id}/versions/{version_id}/operations/{resource_key}
+ */
+ @JsonIgnore private String name;
+
+ public GetOperationRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ GetOperationRequest that = (GetOperationRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetOperationRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetResourceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetResourceRequest.java
new file mode 100755
index 000000000..df4c2ff0d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetResourceRequest.java
@@ -0,0 +1,44 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetResourceRequest {
+ /**
+ * The name of the resource to retrieve. Format:
+ * deployments/{deployment_id}/resources/{resource_key}
+ */
+ @JsonIgnore private String name;
+
+ public GetResourceRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ GetResourceRequest that = (GetResourceRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetResourceRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetVersionRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetVersionRequest.java
new file mode 100755
index 000000000..fd9b6f025
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/GetVersionRequest.java
@@ -0,0 +1,43 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetVersionRequest {
+ /**
+ * The name of the version to retrieve. Format: deployments/{deployment_id}/versions/{version_id}
+ */
+ @JsonIgnore private String name;
+
+ public GetVersionRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ GetVersionRequest that = (GetVersionRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetVersionRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatRequest.java
new file mode 100755
index 000000000..6facc1e4d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatRequest.java
@@ -0,0 +1,42 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+/** A request to send a heartbeat for a Version. */
+@Generated
+public class HeartbeatRequest {
+ /** The version whose lock to renew. Format: deployments/{deployment_id}/versions/{version_id} */
+ @JsonIgnore private String name;
+
+ public HeartbeatRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ HeartbeatRequest that = (HeartbeatRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(HeartbeatRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatResponse.java
new file mode 100755
index 000000000..8b06e84e0
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/HeartbeatResponse.java
@@ -0,0 +1,44 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.google.protobuf.Timestamp;
+import java.util.Objects;
+
+/** Response for Heartbeat. */
+@Generated
+public class HeartbeatResponse {
+ /** The new lock expiry time after renewal. */
+ @JsonProperty("expire_time")
+ private Timestamp expireTime;
+
+ public HeartbeatResponse setExpireTime(Timestamp expireTime) {
+ this.expireTime = expireTime;
+ return this;
+ }
+
+ public Timestamp getExpireTime() {
+ return expireTime;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ HeartbeatResponse that = (HeartbeatResponse) o;
+ return Objects.equals(expireTime, that.expireTime);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(expireTime);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(HeartbeatResponse.class).add("expireTime", expireTime).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsRequest.java
new file mode 100755
index 000000000..d6448ed4d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsRequest.java
@@ -0,0 +1,68 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class ListDeploymentsRequest {
+ /**
+ * The maximum number of deployments to return. The service may return fewer than this value. If
+ * unspecified, at most 50 deployments will be returned. The maximum value is 1000; values above
+ * 1000 will be coerced to 1000.
+ */
+ @JsonIgnore
+ @QueryParam("page_size")
+ private Long pageSize;
+
+ /**
+ * A page token, received from a previous `ListDeployments` call. Provide this to retrieve the
+ * subsequent page.
+ */
+ @JsonIgnore
+ @QueryParam("page_token")
+ private String pageToken;
+
+ public ListDeploymentsRequest setPageSize(Long pageSize) {
+ this.pageSize = pageSize;
+ return this;
+ }
+
+ public Long getPageSize() {
+ return pageSize;
+ }
+
+ public ListDeploymentsRequest setPageToken(String pageToken) {
+ this.pageToken = pageToken;
+ return this;
+ }
+
+ public String getPageToken() {
+ return pageToken;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ ListDeploymentsRequest that = (ListDeploymentsRequest) o;
+ return Objects.equals(pageSize, that.pageSize) && Objects.equals(pageToken, that.pageToken);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(pageSize, pageToken);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(ListDeploymentsRequest.class)
+ .add("pageSize", pageSize)
+ .add("pageToken", pageToken)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsResponse.java
new file mode 100755
index 000000000..c1c3cd7c2
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundle/ListDeploymentsResponse.java
@@ -0,0 +1,64 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.bundle;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Collection;
+import java.util.Objects;
+
+/** Response for ListDeployments. */
+@Generated
+public class ListDeploymentsResponse {
+ /** The deployments from the queried workspace. */
+ @JsonProperty("deployments")
+ private Collection At materialization time, the generated PySpark code passes the JKS file paths and resolved
+ * passwords through to the Kafka SSL options (kafka.ssl.keystore.location,
+ * kafka.ssl.keystore.password, kafka.ssl.key.password, kafka.ssl.truststore.location,
+ * kafka.ssl.truststore.password). Passwords are resolved on the Spark cluster via
+ * dbutils.secrets.get; this message stores only references, never password values.
+ */
+@Generated
+public class MtlsConfig {
+ /**
+ * Set to true only when the broker certificate's SAN intentionally does not match the connection
+ * endpoint — for example when reaching the cluster through a PrivateLink endpoint whose DNS name
+ * is not in the broker certificate. Skipping the hostname check removes a defense against
+ * man-in-the-middle attacks; do not enable casually. mTLS client authentication is unaffected by
+ * this option.
+ *
+ * See the Apache Kafka SSL security guide for background on this check:
+ * https://kafka.apache.org/42/security/encryption-and-authentication-using-ssl/#host-name-verification
+ */
+ @JsonProperty("disable_hostname_verification")
+ private Boolean disableHostnameVerification;
+
+ /**
+ * Secret-scope reference for the private key password. Often the same value as the keystore
+ * password (keytool's default), but provided as a separate field because Apache Kafka requires it
+ * as a distinct option (kafka.ssl.key.password).
+ */
+ @JsonProperty("key_password_ref")
+ private SecretScopeReference keyPasswordRef;
+
+ /**
+ * Unity Catalog volume path to the JKS keystore file containing the client certificate and
+ * private key. e.g. "/Volumes/