From 47d76b28808b26e2f127596a08215328d7f02b3e Mon Sep 17 00:00:00 2001 From: "databricks-ci-ghec-2[bot]" <184307802+databricks-ci-ghec-2[bot]@users.noreply.github.com> Date: Fri, 4 Sep 2026 03:40:30 +0000 Subject: [PATCH] Update SDK to 317c6fb80e22965f39e7a663baa6e51357851cf9 --- .codegen/_openapi_sha | 2 +- .gitattributes | 4 + NEXT_CHANGELOG.md | 7 + .../com/databricks/sdk/WorkspaceClient.java | 2 +- .../DeploymentResourceType.java | 2 + .../sdk/service/catalog/AiGatewayAPI.java | 39 +++-- .../sdk/service/catalog/AiGatewayService.java | 39 +++-- .../sdk/service/catalog/ConnectionType.java | 2 + .../catalog/CreateMcpServiceRequest.java | 4 +- .../CreateModelProviderServiceRequest.java | 4 +- .../catalog/CreateModelServiceRequest.java | 4 +- .../service/catalog/InferenceTableConfig.java | 23 ++- .../catalog/ListMcpServicesRequest.java | 4 +- .../catalog/ListMcpServicesRequestView.java | 4 +- .../catalog/ListMcpServicesResponse.java | 2 +- .../ListModelProviderServicesRequest.java | 8 +- .../ListModelProviderServicesRequestView.java | 6 +- .../ListModelProviderServicesResponse.java | 2 +- .../catalog/ListModelServicesRequest.java | 4 +- .../catalog/ListModelServicesRequestView.java | 6 +- .../catalog/ListModelServicesResponse.java | 2 +- .../sdk/service/catalog/McpService.java | 5 +- .../sdk/service/catalog/McpServiceConfig.java | 10 +- .../McpServiceConfigSourceConnection.java | 8 +- .../service/catalog/ModelProviderService.java | 18 +-- .../catalog/ModelProviderServiceConfig.java | 28 ++-- ...viceConfigAmazonBedrockProviderConfig.java | 2 +- ...nfigAmazonBedrockProviderDirectConfig.java | 9 +- ...rServiceConfigAnthropicProviderConfig.java | 9 +- ...ceConfigAnthropicProviderDirectConfig.java | 3 +- ...eConfigAnthropicProviderRelayedConfig.java | 6 +- ...odelProviderServiceConfigAwsAccessKey.java | 4 +- ...erviceConfigAzureOpenAiProviderConfig.java | 2 +- ...ConfigAzureOpenAiProviderDirectConfig.java | 10 +- ...iderServiceConfigCustomProviderConfig.java | 4 +- ...rviceConfigCustomProviderDirectConfig.java | 12 +- ...derServiceConfigEntraServicePrincipal.java | 9 +- ...eConfigGeminiEnterpriseProviderConfig.java | 2 +- ...gGeminiEnterpriseProviderDirectConfig.java | 12 +- ...eConfigMicrosoftFoundryProviderConfig.java | 2 +- ...gMicrosoftFoundryProviderDirectConfig.java | 10 +- ...roviderServiceConfigModelTargetConfig.java | 6 +- ...iderServiceConfigOpenAiProviderConfig.java | 2 +- ...rviceConfigOpenAiProviderDirectConfig.java | 3 +- ...elProviderServiceConfigProviderSecret.java | 4 +- ...roviderServiceConfigServiceCredential.java | 3 +- .../sdk/service/catalog/ModelService.java | 5 +- .../service/catalog/ModelServiceConfig.java | 2 +- .../ModelServiceConfigDestinationConfig.java | 14 +- .../ModelServiceConfigFallbackConfig.java | 9 +- .../ModelServiceConfigRoutingConfig.java | 24 +-- .../sdk/service/catalog/RateLimit.java | 45 +----- .../catalog/RateLimitRateLimitKey.java | 1 - .../UpdateModelProviderServiceRequest.java | 5 +- .../catalog/UpdateModelServiceRequest.java | 6 +- .../sdk/service/ml/CronSchedule.java | 29 +++- .../sdk/service/ml/CronScheduleMode.java | 12 ++ .../service/sandbox/ExecuteCommandStatus.java | 13 ++ .../sandbox/ExecuteCommandSyncRequest.java | 123 +++++++++++++++ .../sandbox/ExecuteCommandSyncResponse.java | 140 ++++++++++++++++++ .../sdk/service/sandbox/SandboxAPI.java | 11 ++ .../sdk/service/sandbox/SandboxImpl.java | 18 +++ .../sdk/service/sandbox/SandboxService.java | 10 ++ 63 files changed, 560 insertions(+), 260 deletions(-) create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronScheduleMode.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandStatus.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncRequest.java create mode 100644 databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncResponse.java diff --git a/.codegen/_openapi_sha b/.codegen/_openapi_sha index 703b7dfcd..d958f5252 100644 --- a/.codegen/_openapi_sha +++ b/.codegen/_openapi_sha @@ -1 +1 @@ -0942f48f8fd23ce7b8030f212e1193c1690958c3 \ No newline at end of file +317c6fb80e22965f39e7a663baa6e51357851cf9 \ No newline at end of file diff --git a/.gitattributes b/.gitattributes index 6ef22687e..d1ec58012 100644 --- a/.gitattributes +++ b/.gitattributes @@ -2237,6 +2237,7 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CreateTransition databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CreateTransitionRequestResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CreateWebhookResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronSchedule.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronScheduleMode.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CustomUdf.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DataSource.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/DatabricksServiceExceptionWithDetailsProto.java linguist-generated=true @@ -3025,6 +3026,9 @@ databricks-sdk-java/src/main/java/com/databricks/sdk/service/qualitymonitorv2/Va databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ComputeSpec.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/CreateSandboxRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/DeleteSandboxRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandStatus.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncRequest.java linguist-generated=true +databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncResponse.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/GetSandboxRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ListSandboxesRequest.java linguist-generated=true databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ListSandboxesResponse.java linguist-generated=true diff --git a/NEXT_CHANGELOG.md b/NEXT_CHANGELOG.md index 3c5f82ec5..a89c8ee07 100644 --- a/NEXT_CHANGELOG.md +++ b/NEXT_CHANGELOG.md @@ -15,3 +15,10 @@ ### Internal Changes ### API Changes +* Add `executeCommandSync()` method for `workspaceClient.sandbox()` service. +* Add `mode` field for `com.databricks.sdk.service.ml.CronSchedule`. +* Add `DEPLOYMENT_RESOURCE_TYPE_SECRET` and `DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY` enum values for `com.databricks.sdk.service.bundledeployments.DeploymentResourceType`. +* Add `AWS_SECRETS_MANAGER` and `AZURE_KEY_VAULT` enum values for `com.databricks.sdk.service.catalog.ConnectionType`. +* [Breaking] Remove `firstTokenTimeout` field for `com.databricks.sdk.service.catalog.ModelServiceConfigRoutingConfig`. +* [Breaking] Remove `requestTagKey` and `requestTagValue` fields for `com.databricks.sdk.service.catalog.RateLimit`. +* [Breaking] Remove `RATE_LIMIT_KEY_REQUEST_TAG` enum value for `com.databricks.sdk.service.catalog.RateLimitRateLimitKey`. \ 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 7aa9fe52f..0eec25b18 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/WorkspaceClient.java @@ -608,7 +608,7 @@ public AiFunctionsAPI aiFunctions() { * Govern AI workloads in Unity Catalog. This API manages the Unity Catalog securables that bring * centralized access control, lineage, and auditing to AI-serving entities: model services * (governed access to foundation models and external LLMs), model provider services (governed - * connections to external model providers), and MCP services (governed Model Context Protocol + * resources for external model providers), and MCP services (governed Model Context Protocol * servers). */ public AiGatewayAPI aiGateway() { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/DeploymentResourceType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/DeploymentResourceType.java index 067e98000..3cfee288e 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/DeploymentResourceType.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/bundledeployments/DeploymentResourceType.java @@ -11,6 +11,7 @@ public enum DeploymentResourceType { DEPLOYMENT_RESOURCE_TYPE_APP, DEPLOYMENT_RESOURCE_TYPE_CATALOG, DEPLOYMENT_RESOURCE_TYPE_CLUSTER, + DEPLOYMENT_RESOURCE_TYPE_CLUSTER_POLICY, DEPLOYMENT_RESOURCE_TYPE_DASHBOARD, DEPLOYMENT_RESOURCE_TYPE_DATABASE_CATALOG, DEPLOYMENT_RESOURCE_TYPE_DATABASE_INSTANCE, @@ -33,6 +34,7 @@ public enum DeploymentResourceType { DEPLOYMENT_RESOURCE_TYPE_QUALITY_MONITOR, DEPLOYMENT_RESOURCE_TYPE_REGISTERED_MODEL, DEPLOYMENT_RESOURCE_TYPE_SCHEMA, + DEPLOYMENT_RESOURCE_TYPE_SECRET, DEPLOYMENT_RESOURCE_TYPE_SECRET_SCOPE, DEPLOYMENT_RESOURCE_TYPE_SQL_WAREHOUSE, DEPLOYMENT_RESOURCE_TYPE_SYNCED_DATABASE_TABLE, diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayAPI.java index 76cd7352e..04f24a5b6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayAPI.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayAPI.java @@ -11,7 +11,7 @@ * Govern AI workloads in Unity Catalog. This API manages the Unity Catalog securables that bring * centralized access control, lineage, and auditing to AI-serving entities: model services * (governed access to foundation models and external LLMs), model provider services (governed - * connections to external model providers), and MCP services (governed Model Context Protocol + * resources for external model providers), and MCP services (governed Model Context Protocol * servers). */ @Generated @@ -33,7 +33,7 @@ public AiGatewayAPI(AiGatewayService mock) { /** * Creates an MCP service in a Unity Catalog schema. An MCP (Model Context Protocol) service is a * governed securable that registers an MCP server and exposes its tools for discovery, access - * control, and invocation. The caller supplies the leaf name in `mcp_service_id`. + * control, and invocation. Specify its name in `mcp_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` * privileges on the parent schema and `USE_CATALOG` on the parent catalog. You also need @@ -44,13 +44,15 @@ public McpService createMcpService(CreateMcpServiceRequest request) { } /** - * Creates a model provider service in a Unity Catalog schema. A model provider service is a - * governed connection to an external model provider (for example OpenAI, Azure OpenAI, or Amazon - * Bedrock) that model services reference to invoke that provider. The caller supplies the leaf - * name in `model_provider_service_id`. + * Creates a model provider service in a Unity Catalog schema. A model provider service stores + * authentication and request configuration for an external model provider, such as OpenAI, Azure + * OpenAI, or Amazon Bedrock. Model services reference it to invoke the provider. Specify its name + * in `model_provider_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` - * privileges on the parent schema and `USE_CATALOG` on the parent catalog. + * privileges on the parent schema and `USE_CATALOG` on the parent catalog. Inline credentials + * additionally require `CREATE_CONNECTION` on the parent schema. When using a Unity Catalog + * service credential, you must have `ACCESS` on that credential. */ public ModelProviderService createModelProviderService( CreateModelProviderServiceRequest request) { @@ -59,11 +61,15 @@ public ModelProviderService createModelProviderService( /** * Creates a model service in a Unity Catalog schema. A model service is a governed AI Gateway - * endpoint that routes inference requests to one or more model destinations. The caller supplies - * the leaf name in `model_service_id`. + * endpoint that routes inference requests to one or more model destinations. Specify its name in + * `model_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` - * privileges on the parent schema and `USE_CATALOG` on the parent catalog. + * privileges on the parent schema and `USE_CATALOG` on the parent catalog. For every destination, + * you also need `USE_CATALOG` and `USE_SCHEMA` on its parent and `EXECUTE` on the referenced + * Unity Catalog model or model provider service. A provisioned-throughput destination + * additionally requires `CAN_MANAGE` on its Model Serving endpoint. Configuring an inference + * table additionally requires `CREATE_TABLE`. */ public ModelService createModelService(CreateModelServiceRequest request) { return impl.createModelService(request); @@ -233,7 +239,9 @@ public Iterable listModelServices(ListModelServicesRequest request * having changed since it was read. * *

You must be the owner of the MCP service or have `MANAGE` on it, plus `USE_CATALOG` on the - * parent catalog and `USE_SCHEMA` on the parent schema. + * parent catalog and `USE_SCHEMA` on the parent schema. When changing + * `config.source_connection.name`, the MCP service owner must also have `USE_CONNECTION` on the + * new connection. */ public McpService updateMcpService(UpdateMcpServiceRequest request) { return impl.updateMcpService(request); @@ -246,6 +254,9 @@ public McpService updateMcpService(UpdateMcpServiceRequest request) { * *

You must be the owner of the model provider service or have `MANAGE` on it, plus * `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema. + * + *

Updating `config.provider` cannot change the provider type or switch between Unity Catalog + * service-credential authentication and inline authentication. */ public ModelProviderService updateModelProviderService( UpdateModelProviderServiceRequest request) { @@ -258,7 +269,11 @@ public ModelProviderService updateModelProviderService( * not having changed since it was read. * *

You must be the owner of the model service or have `MANAGE` on it, plus `USE_CATALOG` on the - * parent catalog and `USE_SCHEMA` on the parent schema. + * parent catalog and `USE_SCHEMA` on the parent schema. When changing destinations, both you and + * the model service owner need `USE_CATALOG` and `USE_SCHEMA` on each destination's parent and + * `EXECUTE` on the referenced Unity Catalog model or model provider service. A + * provisioned-throughput destination additionally requires `CAN_MANAGE` for you and `CAN_QUERY` + * for the model service owner. Adding an inference table additionally requires `CREATE_TABLE`. */ public ModelService updateModelService(UpdateModelServiceRequest request) { return impl.updateModelService(request); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayService.java index 4a907b564..5c62fe964 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/AiGatewayService.java @@ -7,7 +7,7 @@ * Govern AI workloads in Unity Catalog. This API manages the Unity Catalog securables that bring * centralized access control, lineage, and auditing to AI-serving entities: model services * (governed access to foundation models and external LLMs), model provider services (governed - * connections to external model providers), and MCP services (governed Model Context Protocol + * resources for external model providers), and MCP services (governed Model Context Protocol * servers). * *

This is the high-level interface, that contains generated methods. @@ -19,7 +19,7 @@ public interface AiGatewayService { /** * Creates an MCP service in a Unity Catalog schema. An MCP (Model Context Protocol) service is a * governed securable that registers an MCP server and exposes its tools for discovery, access - * control, and invocation. The caller supplies the leaf name in `mcp_service_id`. + * control, and invocation. Specify its name in `mcp_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` * privileges on the parent schema and `USE_CATALOG` on the parent catalog. You also need @@ -28,24 +28,30 @@ public interface AiGatewayService { McpService createMcpService(CreateMcpServiceRequest createMcpServiceRequest); /** - * Creates a model provider service in a Unity Catalog schema. A model provider service is a - * governed connection to an external model provider (for example OpenAI, Azure OpenAI, or Amazon - * Bedrock) that model services reference to invoke that provider. The caller supplies the leaf - * name in `model_provider_service_id`. + * Creates a model provider service in a Unity Catalog schema. A model provider service stores + * authentication and request configuration for an external model provider, such as OpenAI, Azure + * OpenAI, or Amazon Bedrock. Model services reference it to invoke the provider. Specify its name + * in `model_provider_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` - * privileges on the parent schema and `USE_CATALOG` on the parent catalog. + * privileges on the parent schema and `USE_CATALOG` on the parent catalog. Inline credentials + * additionally require `CREATE_CONNECTION` on the parent schema. When using a Unity Catalog + * service credential, you must have `ACCESS` on that credential. */ ModelProviderService createModelProviderService( CreateModelProviderServiceRequest createModelProviderServiceRequest); /** * Creates a model service in a Unity Catalog schema. A model service is a governed AI Gateway - * endpoint that routes inference requests to one or more model destinations. The caller supplies - * the leaf name in `model_service_id`. + * endpoint that routes inference requests to one or more model destinations. Specify its name in + * `model_service_id`. * *

You must be the owner of the parent schema or have the `CREATE_SERVICE` and `USE_SCHEMA` - * privileges on the parent schema and `USE_CATALOG` on the parent catalog. + * privileges on the parent schema and `USE_CATALOG` on the parent catalog. For every destination, + * you also need `USE_CATALOG` and `USE_SCHEMA` on its parent and `EXECUTE` on the referenced + * Unity Catalog model or model provider service. A provisioned-throughput destination + * additionally requires `CAN_MANAGE` on its Model Serving endpoint. Configuring an inference + * table additionally requires `CREATE_TABLE`. */ ModelService createModelService(CreateModelServiceRequest createModelServiceRequest); @@ -143,7 +149,9 @@ ListModelProviderServicesResponse listModelProviderServices( * having changed since it was read. * *

You must be the owner of the MCP service or have `MANAGE` on it, plus `USE_CATALOG` on the - * parent catalog and `USE_SCHEMA` on the parent schema. + * parent catalog and `USE_SCHEMA` on the parent schema. When changing + * `config.source_connection.name`, the MCP service owner must also have `USE_CONNECTION` on the + * new connection. */ McpService updateMcpService(UpdateMcpServiceRequest updateMcpServiceRequest); @@ -154,6 +162,9 @@ ListModelProviderServicesResponse listModelProviderServices( * *

You must be the owner of the model provider service or have `MANAGE` on it, plus * `USE_CATALOG` on the parent catalog and `USE_SCHEMA` on the parent schema. + * + *

Updating `config.provider` cannot change the provider type or switch between Unity Catalog + * service-credential authentication and inline authentication. */ ModelProviderService updateModelProviderService( UpdateModelProviderServiceRequest updateModelProviderServiceRequest); @@ -164,7 +175,11 @@ ModelProviderService updateModelProviderService( * not having changed since it was read. * *

You must be the owner of the model service or have `MANAGE` on it, plus `USE_CATALOG` on the - * parent catalog and `USE_SCHEMA` on the parent schema. + * parent catalog and `USE_SCHEMA` on the parent schema. When changing destinations, both you and + * the model service owner need `USE_CATALOG` and `USE_SCHEMA` on each destination's parent and + * `EXECUTE` on the referenced Unity Catalog model or model provider service. A + * provisioned-throughput destination additionally requires `CAN_MANAGE` for you and `CAN_QUERY` + * for the model service owner. Adding an inference table additionally requires `CREATE_TABLE`. */ ModelService updateModelService(UpdateModelServiceRequest updateModelServiceRequest); } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java index 451ce2419..173dde824 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ConnectionType.java @@ -6,6 +6,8 @@ @Generated public enum ConnectionType { + AWS_SECRETS_MANAGER, + AZURE_KEY_VAULT, BIGQUERY, CONFLUENCE, DATABRICKS, diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateMcpServiceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateMcpServiceRequest.java index 936891dd6..556f88ee2 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateMcpServiceRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateMcpServiceRequest.java @@ -12,8 +12,8 @@ @Generated public class CreateMcpServiceRequest { /** - * The MCP service to create. The server populates `name` from `parent` + `mcp_service_id`; - * clients should leave it unset. `source_connection` is required. + * The MCP service to create. Do not set `name`; the server derives it from `parent` and + * `mcp_service_id`. `source_connection` is required. */ @JsonProperty("mcp_service") private McpService mcpService; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelProviderServiceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelProviderServiceRequest.java index a301a5cd8..d15068a87 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelProviderServiceRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelProviderServiceRequest.java @@ -12,8 +12,8 @@ @Generated public class CreateModelProviderServiceRequest { /** - * The model provider service to create. The server populates `name` from `parent` + - * `model_provider_service_id`; clients should leave it unset. + * The model provider service to create. Do not set `name`; the server derives it from `parent` + * and `model_provider_service_id`. */ @JsonProperty("model_provider_service") private ModelProviderService modelProviderService; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelServiceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelServiceRequest.java index 9e05acb76..ba2d80283 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelServiceRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/CreateModelServiceRequest.java @@ -12,8 +12,8 @@ @Generated public class CreateModelServiceRequest { /** - * The model service to create. The server populates `name` from `parent` + `model_service_id`; - * clients should leave it unset. + * The model service to create. Do not set `name`; the server derives it from `parent` and + * `model_service_id`. */ @JsonProperty("model_service") private ModelService modelService; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/InferenceTableConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/InferenceTableConfig.java index d7c182414..8d4bf3510 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/InferenceTableConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/InferenceTableConfig.java @@ -8,26 +8,23 @@ import java.util.Objects; /** - * Inference table configuration for payload logging on a model service. - * - *

`parent` is always REQUIRED when the sub-message is set; the destination UC schema is needed - * to construct or rebind the payload TABLE regardless of whether payload logging is currently - * active. Payload logging is active by default; set `disabled = true` to pause runtime logging - * without dropping the table or the binding. + * Configuration for logging request and response payloads to a Unity Catalog inference table. When + * this configuration is present, payload logging is enabled by default. */ @Generated public class InferenceTableConfig { /** - * True when the bound inference TABLE has been deleted but the parent service still references - * it. The dangling reference is surfaced (not silently dropped) so callers can see the broken - * dependency. AI Gateway payload logging fails closed in this state. + * Whether the referenced inference table has been deleted. The configuration remains visible so + * you can identify the broken dependency. Payload logging cannot continue until the table is + * restored or the configuration is updated. */ @JsonProperty("is_deleted") private Boolean isDeleted; /** - * Parent UC schema where the inference table is created. Format: `schemas/{catalog}.{schema}`. - * Set at create time and immutable thereafter; changing it on an existing service is rejected. + * Parent Unity Catalog schema where the inference table is created, in the form + * `schemas/{catalog}.{schema}`. Required when configuring an inference table. After the inference + * table is created, this field cannot be changed. */ @JsonProperty("parent") private String parent; @@ -39,8 +36,8 @@ public class InferenceTableConfig { /** * Prefix used to form the inference table's registered name. AI Gateway appends `_payload`; for * example, `table_name_prefix = "orders"` creates `orders_payload`. If unset, the prefix defaults - * to the service name. Read `table` from the response for the resolved resource name. Set at - * create time and immutable thereafter. + * to the service name. Read `table` from the response for the resulting resource name. After the + * inference table is created, this field cannot be changed. */ @JsonProperty("table_name_prefix") private String tableNamePrefix; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequest.java index 69bdc10ae..f01debba8 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequest.java @@ -18,7 +18,7 @@ public class ListMcpServicesRequest { @QueryParam("page_size") private Long pageSize; - /** Opaque pagination token from a previous request. */ + /** Opaque pagination token from the previous response. */ @JsonIgnore @QueryParam("page_token") private String pageToken; @@ -34,7 +34,7 @@ public class ListMcpServicesRequest { /** * Fields to return for each service. `FULL` includes source-connection details and rate-limit * principal names. `BASIC` omits the source connection and omits principal names from rate - * limits. Defaults to `BASIC` when unset or `VIEW_UNSPECIFIED`. + * limits. Defaults to `BASIC` when unset. */ @JsonIgnore @QueryParam("view") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequestView.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequestView.java index 589a17653..26c0212f7 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequestView.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesRequestView.java @@ -5,8 +5,8 @@ import com.databricks.sdk.support.Generated; /** - * Controls which fields are populated on each McpService in the response. The server treats unset / - * VIEW_UNSPECIFIED as BASIC. Callers needing the full configuration must request it explicitly with + * Controls which fields are populated on each McpService in the response. The server uses `BASIC` + * when `view` is unset. Callers needing the full configuration must request it explicitly with * `view = FULL`. */ @Generated diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesResponse.java index 29bb6a561..93ffe41cb 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesResponse.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListMcpServicesResponse.java @@ -15,7 +15,7 @@ public class ListMcpServicesResponse { @JsonProperty("mcp_services") private Collection mcpServices; - /** Pagination token for retrieving the next page of results. */ + /** Pagination token for retrieving the next page. Empty when there are no more results. */ @JsonProperty("next_page_token") private String nextPageToken; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequest.java index 8b4e78a23..f8ea3ac16 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequest.java @@ -18,7 +18,7 @@ public class ListModelProviderServicesRequest { @QueryParam("page_size") private Long pageSize; - /** Opaque pagination token from a previous request. */ + /** Opaque pagination token from the previous response. */ @JsonIgnore @QueryParam("page_token") private String pageToken; @@ -32,9 +32,9 @@ public class ListModelProviderServicesRequest { private String parent; /** - * Fields to return for each service. `FULL` includes inference-table details and rate-limit - * principal names. `BASIC` omits inference-table details and omits principal names from rate - * limits. Defaults to `BASIC` when unset or `VIEW_UNSPECIFIED`. + * Fields to return for each service. `FULL` includes resolved service-credential and + * inference-table details and rate-limit principal names. `BASIC` omits those details and + * principal names from rate limits. Defaults to `BASIC` when unset. */ @JsonIgnore @QueryParam("view") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequestView.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequestView.java index 7c5120178..4de7eb293 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequestView.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesRequestView.java @@ -5,9 +5,9 @@ import com.databricks.sdk.support.Generated; /** - * Controls which fields are populated on each ModelProviderService in the response. The server - * treats unset / VIEW_UNSPECIFIED as BASIC. Callers needing the full configuration must request it - * explicitly with `view = FULL`. + * Controls which fields are populated on each ModelProviderService in the response. The server uses + * `BASIC` when `view` is unset. Callers needing the full configuration must request it explicitly + * with `view = FULL`. */ @Generated public enum ListModelProviderServicesRequestView { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesResponse.java index f5fab963c..cdc1d1fe7 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesResponse.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelProviderServicesResponse.java @@ -15,7 +15,7 @@ public class ListModelProviderServicesResponse { @JsonProperty("model_provider_services") private Collection modelProviderServices; - /** Pagination token for retrieving the next page of results. */ + /** Pagination token for retrieving the next page. Empty when there are no more results. */ @JsonProperty("next_page_token") private String nextPageToken; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequest.java index 8b51d5fed..8ca696084 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequest.java @@ -18,7 +18,7 @@ public class ListModelServicesRequest { @QueryParam("page_size") private Long pageSize; - /** Opaque pagination token from a previous request. */ + /** Opaque pagination token from the previous response. */ @JsonIgnore @QueryParam("page_token") private String pageToken; @@ -34,7 +34,7 @@ public class ListModelServicesRequest { /** * Fields to return for each service. `FULL` includes destinations, inference-table details, and * rate-limit principal names. `BASIC` omits destinations and inference-table details and omits - * principal names from rate limits. Defaults to `BASIC` when unset or `VIEW_UNSPECIFIED`. + * principal names from rate limits. Defaults to `BASIC` when unset. */ @JsonIgnore @QueryParam("view") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequestView.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequestView.java index fccc40422..a933b56e0 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequestView.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesRequestView.java @@ -5,9 +5,9 @@ import com.databricks.sdk.support.Generated; /** - * Controls which fields are populated on each ModelService in the response. The server treats unset - * / VIEW_UNSPECIFIED as BASIC. Callers needing the full configuration must request it explicitly - * with `view = FULL`. + * Controls which fields are populated on each ModelService in the response. The server uses `BASIC` + * when `view` is unset. Callers needing the full configuration must request it explicitly with + * `view = FULL`. */ @Generated public enum ListModelServicesRequestView { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesResponse.java index 172759cac..1aee932e6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesResponse.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ListModelServicesResponse.java @@ -15,7 +15,7 @@ public class ListModelServicesResponse { @JsonProperty("model_services") private Collection modelServices; - /** Pagination token for retrieving the next page of results. */ + /** Pagination token for retrieving the next page. Empty when there are no more results. */ @JsonProperty("next_page_token") private String nextPageToken; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpService.java index f22811115..7bf598460 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpService.java @@ -33,10 +33,7 @@ public class McpService { @JsonProperty("created_by") private String createdBy; - /** - * The resolved owner of the MCP service. Falls back to the caller's identity when `owner` is not - * explicitly set on creation. - */ + /** Owner of the MCP service. */ @JsonProperty("effective_owner") private String effectiveOwner; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfig.java index 6fed3591c..51f1c1e47 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfig.java @@ -16,16 +16,16 @@ public class McpServiceConfig { /** * Tool names or prefix patterns to expose from the MCP server. Use exact tool names or prefix - * patterns such as `read_*`. An empty list exposes all tools. Each selector can contain at most - * 256 characters. + * patterns such as `read_*`. An empty list exposes all tools. At most 1,024 selectors are + * allowed, and each selector can contain at most 256 characters. */ @JsonProperty("include_tool_selectors") private Collection includeToolSelectors; /** - * Rate limits for tool invocations, scoped to a user, group, service principal, the service as a - * whole, or each user by default. Request-tag rate limits are not supported for MCP services. - * Empty when no rate limit is configured. + * Rate limits for tool invocations. Supported scopes are user, group, service principal, the + * service as a whole, and each user by default. Request and token limits are supported. Empty + * when no rate limit is configured. */ @JsonProperty("rate_limits") private Collection rateLimits; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfigSourceConnection.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfigSourceConnection.java index 0815f5e96..de61b9bd9 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfigSourceConnection.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/McpServiceConfigSourceConnection.java @@ -8,10 +8,10 @@ import java.util.Objects; /** - * Unity Catalog connection that hosts the MCP server. On Create, provide `name` in the + * Unity Catalog connection that points to the MCP server. On Create, provide `name` in the * schema-scoped form `connections/{catalog}.{schema}.{connection}`. On read, the service populates - * the resolved connection metadata and preserves a dangling source so callers can diagnose a - * deleted backing connection. + * the resolved connection metadata. If the connection is deleted, its reference remains visible so + * you can identify the broken dependency. */ @Generated public class McpServiceConfigSourceConnection { @@ -24,7 +24,7 @@ public class McpServiceConfigSourceConnection { private Boolean isDeleted; /** - * Name of the Unity Catalog connection that hosts the MCP server, as + * Resource name of the Unity Catalog connection used to access the MCP server, in the form * `connections/{catalog}.{schema}.{connection}`. */ @JsonProperty("name") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderService.java index 6c032c4d3..5514df383 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderService.java @@ -9,13 +9,12 @@ import java.util.Objects; /** - * A governed connection to an external model provider stored in Unity Catalog, such as an OpenAI - * account, Azure OpenAI deployment, or Amazon Bedrock account. It stores the provider type, - * authentication, and connection configuration used by model service destinations. + * A Unity Catalog securable that stores authentication and request configuration for an external + * model provider, such as OpenAI, Azure OpenAI, or Amazon Bedrock. Model service destinations + * reference it to send requests to that provider. * - *

One ModelProviderService can back many ModelServices (e.g. an `openai_prod` provider serving - * multiple models); a single ModelService can fan out across multiple ModelProviderServices for - * traffic split or failover. + *

A model provider service can be referenced by multiple model services. A model service can + * route across multiple model provider services for traffic splitting or failover. */ @Generated public class ModelProviderService { @@ -24,7 +23,7 @@ public class ModelProviderService { private String comment; /** - * Provider connection, exposed models, request-forwarding controls, rate limits, and payload + * Provider authentication, exposed models, request-forwarding controls, rate limits, and payload * logging. Required on Create. On Update, it is required only when `config` or one of its * subpaths appears in `update_mask`. */ @@ -39,10 +38,7 @@ public class ModelProviderService { @JsonProperty("created_by") private String createdBy; - /** - * The resolved owner of the model provider service. Falls back to the caller's identity when - * `owner` is not explicitly set on creation. - */ + /** Owner of the model provider service. */ @JsonProperty("effective_owner") private String effectiveOwner; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfig.java index 1ca65058b..9b6429011 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfig.java @@ -9,8 +9,8 @@ import java.util.Objects; /** - * Behavioral configuration for a ModelProviderService: provider connection (auth + - * provider-specific fields), the catalog of models this provider service can route to, and the + * Behavioral configuration for a ModelProviderService: provider authentication and + * provider-specific fields, the catalog of models this provider service can route to, and the * passthrough policy that governs how request headers, query parameters, and unmanaged subpaths * cross the trust boundary to the upstream provider. */ @@ -19,6 +19,7 @@ public class ModelProviderServiceConfig { /** * When true, accepts any model exposed by the upstream provider; `targets` is not required and * does not restrict routability. When false, only models listed in `targets` are routable. + * Defaults to false. */ @JsonProperty("allow_all_targets") private Boolean allowAllTargets; @@ -40,25 +41,25 @@ public class ModelProviderServiceConfig { private ModelProviderServiceConfigCustomProviderConfig custom; /** - * Whether to forward incoming HTTP headers to the upstream provider. Applies to translated and - * passthrough requests and is configured for the entire provider service, not per request. - * Upstream authentication is configured separately in `provider`. + * Whether to forward incoming HTTP headers to the upstream provider. Defaults to false and is + * configured for the entire provider service, not per request. Upstream authentication is + * configured separately in the provider-specific configuration. */ @JsonProperty("forward_headers") private Boolean forwardHeaders; /** - * Whether incoming query parameters are forwarded to the upstream provider. Applies to translated - * and passthrough requests and is configured for the entire provider service, not per request. + * Whether to forward incoming query parameters to the upstream provider. Defaults to false and is + * configured for the entire provider service, not per request. */ @JsonProperty("forward_query_parameters") private Boolean forwardQueryParameters; /** * Whether to proxy paths that AI Gateway does not recognize as configured provider-native API - * types. When true, these paths are forwarded unchanged over the provider connection. When false, - * only recognized API paths are served. Enabling this broadens the upstream API surface exposed - * through the provider service. + * types. Defaults to false. When true, these paths are forwarded unchanged to the upstream + * provider. When false, only recognized API paths are served. Enabling this broadens the upstream + * API surface exposed through the provider service. */ @JsonProperty("forward_unmanaged_paths") private Boolean forwardUnmanagedPaths; @@ -83,11 +84,8 @@ public class ModelProviderServiceConfig { private ModelProviderServiceConfigOpenAiProviderConfig openai; /** - * Provider type discriminator. Required at create time; immutable after. Determines which variant - * of the `provider` oneof must be set. May not be changed via Update; attempts to include - * `config.provider_type` in `UpdateModelProviderServiceRequest.update_mask` are rejected. - * - *

Required on CreateModelProviderService and immutable thereafter. + * External model provider. Required on Create and immutable thereafter. Set the matching + * provider-specific configuration, such as `openai`, `azure_openai`, or `amazon_bedrock`. */ @JsonProperty("provider_type") private ModelProviderServiceConfigExternalModelProviderType providerType; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderConfig.java index 8b4e72ca6..6eeb730b6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderConfig.java @@ -10,7 +10,7 @@ /** Amazon Bedrock provider configuration. */ @Generated public class ModelProviderServiceConfigAmazonBedrockProviderConfig { - /** */ + /** Amazon Bedrock region and authentication configuration. */ @JsonProperty("direct") private ModelProviderServiceConfigAmazonBedrockProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderDirectConfig.java index dc787453b..58e44b55f 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAmazonBedrockProviderDirectConfig.java @@ -18,7 +18,10 @@ */ @Generated public class ModelProviderServiceConfigAmazonBedrockProviderDirectConfig { - /** AWS access-key-pair auth. Mutually exclusive with `service_credential`. */ + /** + * AWS access-key-pair authentication. Set `access_key_id` and `secret_access_key.plaintext`. + * Mutually exclusive with `service_credential`. + */ @JsonProperty("aws_access_key") private ModelProviderServiceConfigAwsAccessKey awsAccessKey; @@ -30,9 +33,7 @@ public class ModelProviderServiceConfigAmazonBedrockProviderDirectConfig { * Reference to a Unity Catalog service credential authorizing Bedrock requests. On Create, supply * `service_credential.name` in the form `credentials/{name}`. Required on Create when using * service-credential authentication; mutually exclusive with `aws_access_key`. The credential is - * referenced by name; its value is not carried here. On read, the resolved `id` and `is_deleted` - * are also populated. Only supported on AWS-hosted workspaces; Create requests from other clouds - * are rejected with INVALID_PARAMETER_VALUE. + * referenced by name; its value is not carried here. Only supported on AWS-hosted workspaces. */ @JsonProperty("service_credential") private ModelProviderServiceConfigServiceCredential serviceCredential; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderConfig.java index ed8be8b7f..b1ce7f3a4 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderConfig.java @@ -14,16 +14,15 @@ @Generated public class ModelProviderServiceConfigAnthropicProviderConfig { /** - * Direct (inline-credentials) form: caller supplies the API key in the request body. Required on - * Create unless `relayed` is set. + * Direct authentication with an API key supplied in `direct.api_key.plaintext`. Required unless + * `relayed` is set. */ @JsonProperty("direct") private ModelProviderServiceConfigAnthropicProviderDirectConfig direct; /** - * Relayed (credential-less) form: no Anthropic credential is stored. Each inference request - * instead carries the caller's own OAuth token, which the platform forwards to Anthropic on - * outbound requests. Mutually exclusive with `direct`; no `api_key` is required or persisted. + * Relayed authentication. Each inference request supplies the caller's OAuth token, which is + * forwarded to Anthropic. No Anthropic credential is stored. Mutually exclusive with `direct`. */ @JsonProperty("relayed") private ModelProviderServiceConfigAnthropicProviderRelayedConfig relayed; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderDirectConfig.java index a6f9a3090..a166c6ca5 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderDirectConfig.java @@ -11,8 +11,7 @@ @Generated public class ModelProviderServiceConfigAnthropicProviderDirectConfig { /** - * Anthropic API key. Required on Create. Sent as the `x-api-key` header on outbound requests. - * Supplied as inline plaintext via `ProviderSecret.plaintext`. + * Anthropic API key. Required when creating the service. Supply the value in `api_key.plaintext`. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderRelayedConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderRelayedConfig.java index a9f09fc5b..d885f018f 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderRelayedConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAnthropicProviderRelayedConfig.java @@ -7,10 +7,8 @@ import java.util.Objects; /** - * Relayed form of Anthropic provider config: no credential is stored. Authentication is the - * caller's own OAuth token, forwarded to Anthropic on outbound requests, so there is no persisted - * secret. Presence of this variant is the signal that the provider service uses relayed auth; - * `plan_type` further distinguishes which Anthropic subscription tier the token belongs to. + * Relayed Anthropic provider configuration. Each inference request supplies the caller's OAuth + * token, which is forwarded to Anthropic. No Anthropic credential is stored. */ @Generated public class ModelProviderServiceConfigAnthropicProviderRelayedConfig { diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAwsAccessKey.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAwsAccessKey.java index 81360cbf1..0b1f90224 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAwsAccessKey.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAwsAccessKey.java @@ -18,8 +18,8 @@ public class ModelProviderServiceConfigAwsAccessKey { private String accessKeyId; /** - * AWS secret access key paired with `access_key_id`. Required on Create when using access-key - * auth. Supplied as inline plaintext via `ProviderSecret.plaintext`. + * AWS secret access key paired with `access_key_id`. Required when creating a service with + * access-key authentication. Supply the value in `secret_access_key.plaintext`. */ @JsonProperty("secret_access_key") private ModelProviderServiceConfigProviderSecret secretAccessKey; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderConfig.java index 85ab42db5..c937051d7 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderConfig.java @@ -10,7 +10,7 @@ /** Azure OpenAI provider configuration. */ @Generated public class ModelProviderServiceConfigAzureOpenAiProviderConfig { - /** */ + /** Azure OpenAI endpoint and authentication configuration. */ @JsonProperty("direct") private ModelProviderServiceConfigAzureOpenAiProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderDirectConfig.java index 3d431fbcb..696588f12 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigAzureOpenAiProviderDirectConfig.java @@ -20,8 +20,8 @@ @Generated public class ModelProviderServiceConfigAzureOpenAiProviderDirectConfig { /** - * Azure OpenAI API key. Mutually exclusive with the Entra and service-credential modes. Supplied - * as inline plaintext via `ProviderSecret.plaintext`. + * Azure OpenAI API key. Supply the value in `api_key.plaintext`. Mutually exclusive with Entra ID + * and Unity Catalog service credential authentication. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; @@ -34,7 +34,8 @@ public class ModelProviderServiceConfigAzureOpenAiProviderDirectConfig { private String baseUrl; /** - * Entra ID (service principal) auth. Mutually exclusive with `api_key` and `service_credential`. + * Entra ID service-principal authentication. Set `tenant_id`, `client_id`, and + * `client_secret.plaintext`. Mutually exclusive with `api_key` and `service_credential`. */ @JsonProperty("entra_service_principal") private ModelProviderServiceConfigEntraServicePrincipal entraServicePrincipal; @@ -44,8 +45,7 @@ public class ModelProviderServiceConfigAzureOpenAiProviderDirectConfig { * supply `service_credential.name` in the form `credentials/{name}`. Required on Create when * using service-credential authentication; mutually exclusive with `api_key` and * `entra_service_principal`. The credential is referenced by name; its value is not carried here. - * On read, the resolved `id` and `is_deleted` are also populated. Only supported on Azure-hosted - * workspaces; Create requests from other clouds are rejected with INVALID_PARAMETER_VALUE. + * Only supported on Azure-hosted workspaces. */ @JsonProperty("service_credential") private ModelProviderServiceConfigServiceCredential serviceCredential; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderConfig.java index ef9b508bd..baa19ca3c 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderConfig.java @@ -7,10 +7,10 @@ import com.fasterxml.jackson.annotation.JsonProperty; import java.util.Objects; -/** Custom provider configuration: arbitrary HTTP endpoint with bearer-token auth. */ +/** Custom OpenAI-compatible provider configuration with bearer-token authentication. */ @Generated public class ModelProviderServiceConfigCustomProviderConfig { - /** */ + /** Endpoint and authentication configuration for the custom provider. */ @JsonProperty("direct") private ModelProviderServiceConfigCustomProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderDirectConfig.java index b6b8d52ea..9620a1ed0 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigCustomProviderDirectConfig.java @@ -8,19 +8,13 @@ import java.util.Objects; /** - * Direct form of custom provider config. - * - *

Authentication is one of two mutually exclusive modes, exactly one of which must be supplied - * on Create: - Bearer: set `api_key`, leave `header_auth` unset. The secret is forwarded as - * `Authorization: Bearer `. - Header: set `header_auth`, leave `api_key` unset. The secret - * is forwarded as `: `. Setting both modes or neither mode is - * rejected. + * Direct form of a custom provider configuration. Set `api_key` to the bearer token sent in the + * `Authorization` header. */ @Generated public class ModelProviderServiceConfigCustomProviderDirectConfig { /** - * Bearer token forwarded as the `Authorization: Bearer ...` header on outbound requests. Supplied - * as inline plaintext via `ProviderSecret.plaintext`. Set this for bearer-token auth. + * Bearer token forwarded in the `Authorization` header. Supply the value in `api_key.plaintext`. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigEntraServicePrincipal.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigEntraServicePrincipal.java index ca6948aa7..2429882c8 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigEntraServicePrincipal.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigEntraServicePrincipal.java @@ -8,10 +8,9 @@ import java.util.Objects; /** - * Entra ID (Azure AD) service-principal auth: AI Gateway exchanges the `tenant_id` + `client_id` - * identify the service principal, and the `credential` oneof proves that identity, exchanged for an - * Entra bearer token on outbound requests via the OAuth2 client-credentials grant. Shared by the - * Azure OpenAI and Microsoft Foundry provider configs. + * Entra ID (Azure AD) service-principal authentication. The `tenant_id` and `client_id` identify + * the service principal, and `client_secret` authenticates it. AI Gateway exchanges these + * credentials for an Entra bearer token for requests to Azure OpenAI or Microsoft Foundry. */ @Generated public class ModelProviderServiceConfigEntraServicePrincipal { @@ -19,7 +18,7 @@ public class ModelProviderServiceConfigEntraServicePrincipal { @JsonProperty("client_id") private String clientId; - /** Entra ID client secret. Supplied as inline plaintext via `ProviderSecret.plaintext`. */ + /** Entra ID client secret. Supply the value in `client_secret.plaintext`. */ @JsonProperty("client_secret") private ModelProviderServiceConfigProviderSecret clientSecret; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderConfig.java index f7cca0d25..fe17f2414 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderConfig.java @@ -10,7 +10,7 @@ /** Gemini Enterprise provider configuration. */ @Generated public class ModelProviderServiceConfigGeminiEnterpriseProviderConfig { - /** */ + /** Gemini Enterprise project, region, and authentication configuration. */ @JsonProperty("direct") private ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig.java index bb2866581..0c7b01925 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig.java @@ -8,18 +8,14 @@ import java.util.Objects; /** - * Direct form of Gemini Enterprise provider config. - * - *

Authentication is one of two mutually exclusive modes; exactly one must be supplied on Create: - * - API key: set `api_key`, leave `service_credential` unset. - Unity Catalog service credential: - * set `service_credential`, leave `api_key` unset. + * Direct Gemini Enterprise provider configuration. An API key is required when creating the + * service. */ @Generated public class ModelProviderServiceConfigGeminiEnterpriseProviderDirectConfig { /** - * Google Gemini Enterprise API key. Required on Create when using API-key auth; mutually - * exclusive with `service_credential`. Supplied as inline plaintext via - * `ProviderSecret.plaintext`. + * Google Gemini Enterprise API key. Required when creating the service. Supply the value in + * `api_key.plaintext`. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderConfig.java index 353c726ff..6bf06cb5d 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderConfig.java @@ -10,7 +10,7 @@ /** Microsoft Foundry provider configuration. */ @Generated public class ModelProviderServiceConfigMicrosoftFoundryProviderConfig { - /** */ + /** Microsoft Foundry endpoint and authentication configuration. */ @JsonProperty("direct") private ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig.java index 0223eedf0..8620c5a44 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig.java @@ -23,8 +23,8 @@ @Generated public class ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig { /** - * Microsoft Foundry API key. Mutually exclusive with the Entra and service-credential modes. - * Supplied as inline plaintext via `ProviderSecret.plaintext`. + * Microsoft Foundry API key. Supply the value in `api_key.plaintext`. Mutually exclusive with + * Entra ID and Unity Catalog service credential authentication. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; @@ -34,7 +34,8 @@ public class ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig { private String baseUrl; /** - * Entra ID (service principal) auth. Mutually exclusive with `api_key` and `service_credential`. + * Entra ID service-principal authentication. Set `tenant_id`, `client_id`, and + * `client_secret.plaintext`. Mutually exclusive with `api_key` and `service_credential`. */ @JsonProperty("entra_service_principal") private ModelProviderServiceConfigEntraServicePrincipal entraServicePrincipal; @@ -44,8 +45,7 @@ public class ModelProviderServiceConfigMicrosoftFoundryProviderDirectConfig { * Create, supply `service_credential.name` in the form `credentials/{name}`. Required on Create * when using service-credential authentication; mutually exclusive with `api_key` and * `entra_service_principal`. The credential is referenced by name; its value is not carried here. - * On read, the resolved `id` and `is_deleted` are also populated. Only supported on Azure-hosted - * workspaces; Create requests from other clouds are rejected with INVALID_PARAMETER_VALUE. + * Only supported on Azure-hosted workspaces. */ @JsonProperty("service_credential") private ModelProviderServiceConfigServiceCredential serviceCredential; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigModelTargetConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigModelTargetConfig.java index eedf50aa3..6be6e47d7 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigModelTargetConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigModelTargetConfig.java @@ -19,9 +19,9 @@ public class ModelProviderServiceConfigModelTargetConfig { private String model; /** - * Provider-native API types supported by this model, such as `openai/v1/chat/completions`. AI - * Gateway uses these values to translate requests and responses. At most 64 entries of 256 - * characters each are allowed. + * Provider-native API types supported by this model, such as `openai/v1/chat/completions`. At + * least one value is required. AI Gateway uses these values to translate requests and responses. + * At most 64 entries of 256 characters each are allowed. */ @JsonProperty("native_api_types") private Collection nativeApiTypes; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderConfig.java index 3551b38f0..df14b8903 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderConfig.java @@ -10,7 +10,7 @@ /** OpenAI provider configuration. */ @Generated public class ModelProviderServiceConfigOpenAiProviderConfig { - /** */ + /** OpenAI configuration with an API key supplied in the request. */ @JsonProperty("direct") private ModelProviderServiceConfigOpenAiProviderDirectConfig direct; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderDirectConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderDirectConfig.java index 77edce0b4..b53cc5e62 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderDirectConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigOpenAiProviderDirectConfig.java @@ -11,8 +11,7 @@ @Generated public class ModelProviderServiceConfigOpenAiProviderDirectConfig { /** - * OpenAI API key. Required on Create. Supplied as inline plaintext via - * `ProviderSecret.plaintext`. + * OpenAI API key. Required when creating the service. Supply the value in `api_key.plaintext`. */ @JsonProperty("api_key") private ModelProviderServiceConfigProviderSecret apiKey; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigProviderSecret.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigProviderSecret.java index 6adaffad7..6d01d4bcc 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigProviderSecret.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigProviderSecret.java @@ -16,8 +16,8 @@ public class ModelProviderServiceConfigProviderSecret { /** * Inline plaintext credential. INPUT_ONLY: the value never round-trips on reads. Get and List - * responses omit `plaintext`; the field's presence in the read shape only indicates that a secret - * is configured. + * responses omit `plaintext`; the enclosing secret object remains present to indicate that a + * secret is configured. */ @JsonProperty("plaintext") private String plaintext; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigServiceCredential.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigServiceCredential.java index 420b595df..42cb658e9 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigServiceCredential.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelProviderServiceConfigServiceCredential.java @@ -16,7 +16,8 @@ public class ModelProviderServiceConfigServiceCredential { /** * Resource name of the bound Unity Catalog service credential, in the form `credentials/{name}`. - * On Create, supply the name here. On read, this field reflects the credential's current name. + * Supply this field when creating the service or rebinding its credential. On read, it reflects + * the credential's current name. */ @JsonProperty("name") private String name; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelService.java index 9162704e5..7352ed932 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelService.java @@ -35,10 +35,7 @@ public class ModelService { @JsonProperty("created_by") private String createdBy; - /** - * The resolved owner of the ModelService. Falls back to the caller's identity when `owner` is not - * explicitly set on creation. - */ + /** Owner of the model service. */ @JsonProperty("effective_owner") private String effectiveOwner; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfig.java index 50953faa5..183171b42 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfig.java @@ -11,7 +11,7 @@ /** Operational configuration wrapped around the ModelService resource. */ @Generated public class ModelServiceConfig { - /** Inference table config for payload logging. */ + /** Inference table configuration for payload logging. */ @JsonProperty("inference_table") private InferenceTableConfig inferenceTable; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigDestinationConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigDestinationConfig.java index d637ff0d2..677ebe3b6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigDestinationConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigDestinationConfig.java @@ -20,16 +20,14 @@ public class ModelServiceConfigDestinationConfig { @JsonProperty("destination_type") private ModelServiceConfigDestinationConfigDestinationType destinationType; - /** */ + /** Configuration for an external model reached through a model provider service. */ @JsonProperty("external_model_config") private ModelServiceConfigExternalModelConfig externalModelConfig; /** - * True when the destination's backing UC entity (MODEL for foundation-model destinations, - * MODEL_PROVIDER_SERVICE for external destinations) has been deleted but the destination row - * still references it. The dangling destination is surfaced (not silently dropped) so callers can - * see the broken routing. Inference traffic through this destination fails closed (BAD_REQUEST / - * FAILED_PRECONDITION). + * Whether the destination's backing model or model provider service has been deleted. The + * destination remains visible so you can identify the broken dependency. Requests cannot use this + * destination until the backing resource is restored or the destination is replaced. */ @JsonProperty("is_deleted") private Boolean isDeleted; @@ -38,11 +36,11 @@ public class ModelServiceConfigDestinationConfig { @JsonProperty("name") private String name; - /** */ + /** Configuration for a pay-per-token Databricks foundation model. */ @JsonProperty("pay_per_token_config") private ModelServiceConfigPayPerTokenConfig payPerTokenConfig; - /** */ + /** Configuration for a provisioned-throughput Databricks foundation model. */ @JsonProperty("provisioned_throughput_config") private ModelServiceConfigProvisionedThroughputConfig provisionedThroughputConfig; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigFallbackConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigFallbackConfig.java index 57ea97bc8..1e42f99d4 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigFallbackConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigFallbackConfig.java @@ -9,15 +9,12 @@ import java.util.Objects; /** - * Fallback routing, applied after the primary destination returns a retryable error. Traversal is - * in list order; the attempt count is the length of the list. + * Fallback routing applied after a primary destination fails. Fallback destinations are tried in + * the listed order. */ @Generated public class ModelServiceConfigFallbackConfig { - /** - * Ordered list of fallback destinations. Traversal is in list order; the attempt count is the - * length of the list. At most 5 are allowed. - */ + /** Fallback destinations, tried in the listed order. At most 5 are allowed. */ @JsonProperty("destinations") private Collection destinations; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigRoutingConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigRoutingConfig.java index 74c5ea1f8..1784803d5 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigRoutingConfig.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/ModelServiceConfigRoutingConfig.java @@ -5,7 +5,6 @@ import com.databricks.sdk.support.Generated; import com.databricks.sdk.support.ToStringer; import com.fasterxml.jackson.annotation.JsonProperty; -import com.google.protobuf.Duration; import java.util.Collection; import java.util.Objects; @@ -31,14 +30,6 @@ public class ModelServiceConfigRoutingConfig { @JsonProperty("fallback") private ModelServiceConfigFallbackConfig fallback; - /** - * Timeout for the first token of a streaming response. If a destination does not return its first - * token within this duration, AI Gateway aborts the attempt and fails over to the next - * destination. Applies to streaming requests only. Leave unset for no first-token timeout. - */ - @JsonProperty("first_token_timeout") - private Duration firstTokenTimeout; - public ModelServiceConfigRoutingConfig setDestinations( Collection destinations) { this.destinations = destinations; @@ -58,28 +49,18 @@ public ModelServiceConfigFallbackConfig getFallback() { return fallback; } - public ModelServiceConfigRoutingConfig setFirstTokenTimeout(Duration firstTokenTimeout) { - this.firstTokenTimeout = firstTokenTimeout; - return this; - } - - public Duration getFirstTokenTimeout() { - return firstTokenTimeout; - } - @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ModelServiceConfigRoutingConfig that = (ModelServiceConfigRoutingConfig) o; return Objects.equals(destinations, that.destinations) - && Objects.equals(fallback, that.fallback) - && Objects.equals(firstTokenTimeout, that.firstTokenTimeout); + && Objects.equals(fallback, that.fallback); } @Override public int hashCode() { - return Objects.hash(destinations, fallback, firstTokenTimeout); + return Objects.hash(destinations, fallback); } @Override @@ -87,7 +68,6 @@ public String toString() { return new ToStringer(ModelServiceConfigRoutingConfig.class) .add("destinations", destinations) .add("fallback", fallback) - .add("firstTokenTimeout", firstTokenTimeout) .toString(); } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimit.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimit.java index 970eca5f6..93ded55b6 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimit.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimit.java @@ -15,15 +15,14 @@ public class RateLimit { /** * Scope of the rate limit. Depending on this value, the limit applies to a principal, the service - * as a whole, each user by default, or a request tag. + * as a whole, or each user by default. */ @JsonProperty("key") private RateLimitRateLimitKey key; /** * Principal this limit applies to: user email, group name, or service principal application ID. - * Required unless `key` is `RATE_LIMIT_KEY_SERVICE`, `RATE_LIMIT_KEY_USER_DEFAULT`, or - * `RATE_LIMIT_KEY_REQUEST_TAG` (which must not set a principal). + * Required when `key` applies to a user, group, or service principal; otherwise it must be unset. */ @JsonProperty("principal") private String principal; @@ -32,21 +31,6 @@ public class RateLimit { @JsonProperty("renewal_period") private RateLimitRateLimitRenewalPeriod renewalPeriod; - /** - * Request tag key this limit applies to. Required when `key` is `RATE_LIMIT_KEY_REQUEST_TAG`, - * forbidden otherwise. - */ - @JsonProperty("request_tag_key") - private String requestTagKey; - - /** - * Request tag value this limit applies to. Only valid when `key` is `RATE_LIMIT_KEY_REQUEST_TAG`. - * Leave unset to apply the limit to every value of `request_tag_key` (an any-value default); a - * set value is a specific override for that value. - */ - @JsonProperty("request_tag_value") - private String requestTagValue; - /** * Maximum requests allowed in one renewal period. Leave unset for no request limit. Set to `0` to * deny all requests. @@ -88,24 +72,6 @@ public RateLimitRateLimitRenewalPeriod getRenewalPeriod() { return renewalPeriod; } - public RateLimit setRequestTagKey(String requestTagKey) { - this.requestTagKey = requestTagKey; - return this; - } - - public String getRequestTagKey() { - return requestTagKey; - } - - public RateLimit setRequestTagValue(String requestTagValue) { - this.requestTagValue = requestTagValue; - return this; - } - - public String getRequestTagValue() { - return requestTagValue; - } - public RateLimit setRequests(Long requests) { this.requests = requests; return this; @@ -132,16 +98,13 @@ public boolean equals(Object o) { return Objects.equals(key, that.key) && Objects.equals(principal, that.principal) && Objects.equals(renewalPeriod, that.renewalPeriod) - && Objects.equals(requestTagKey, that.requestTagKey) - && Objects.equals(requestTagValue, that.requestTagValue) && Objects.equals(requests, that.requests) && Objects.equals(tokens, that.tokens); } @Override public int hashCode() { - return Objects.hash( - key, principal, renewalPeriod, requestTagKey, requestTagValue, requests, tokens); + return Objects.hash(key, principal, renewalPeriod, requests, tokens); } @Override @@ -150,8 +113,6 @@ public String toString() { .add("key", key) .add("principal", principal) .add("renewalPeriod", renewalPeriod) - .add("requestTagKey", requestTagKey) - .add("requestTagValue", requestTagValue) .add("requests", requests) .add("tokens", tokens) .toString(); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimitRateLimitKey.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimitRateLimitKey.java index 06d0f7353..6b3309204 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimitRateLimitKey.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/RateLimitRateLimitKey.java @@ -7,7 +7,6 @@ /** Scope key for a rate limit. */ @Generated public enum RateLimitRateLimitKey { - RATE_LIMIT_KEY_REQUEST_TAG, RATE_LIMIT_KEY_SERVICE, RATE_LIMIT_KEY_SERVICE_PRINCIPAL, RATE_LIMIT_KEY_USER, diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelProviderServiceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelProviderServiceRequest.java index dc1331e22..3edd6e09c 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelProviderServiceRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelProviderServiceRequest.java @@ -40,8 +40,9 @@ public class UpdateModelProviderServiceRequest { /** * Fields to update. Use `config` to replace the entire configuration. The replacement must * include every required field; any optional field you omit is cleared. To preserve sibling - * fields, use one or more granular paths: `comment`, `config.provider`, - * `config.allow_all_targets`, `config.targets`, `config.forward_headers`, + * fields, use one or more granular paths: `comment`; `config.provider` to replace the active + * provider-specific value (for example, `config.openai`; the mask path remains + * `config.provider`); `config.allow_all_targets`, `config.targets`, `config.forward_headers`, * `config.forward_query_parameters`, `config.forward_unmanaged_paths`, `config.rate_limits`, or * `config.inference_table`. The provider type is immutable, and wildcard paths such as `*` are * not supported. diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelServiceRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelServiceRequest.java index 8b364b125..ceb7c282b 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelServiceRequest.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/catalog/UpdateModelServiceRequest.java @@ -41,9 +41,9 @@ public class UpdateModelServiceRequest { * Fields to update. Use `config` to replace the entire configuration. The replacement must * include every required field; any optional field you omit is cleared. To preserve sibling * fields, use one or more granular paths: `comment`, `config.routing.destinations`, - * `config.routing.fallback.destinations`, `config.routing.first_token_timeout`, - * `config.rate_limits`, or `config.inference_table`. Intermediate paths such as `config.routing` - * and `config.routing.fallback`, and wildcard paths such as `*`, are not supported. + * `config.routing.fallback.destinations`, `config.rate_limits`, or `config.inference_table`. + * Intermediate paths such as `config.routing` and `config.routing.fallback`, and wildcard paths + * such as `*`, are not supported. */ @JsonIgnore @QueryParam("update_mask") diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronSchedule.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronSchedule.java index 7c1e33a1e..9e387c2d1 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronSchedule.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronSchedule.java @@ -10,10 +10,19 @@ /** A cron-based schedule trigger for the materialization pipeline. */ @Generated public class CronSchedule { - /** The cron expression defining the schedule (e.g., "0 0 * * *" for daily at midnight). */ + /** + * The cron expression defining the schedule (e.g., "0 0 * * *" for daily at midnight). The + * schedule is interpreted in the UTC time zone. Required when mode is MANUAL (or unset). Left + * empty when mode is DERIVED, where the service computes it (aligned to UTC) from the features' + * window timing and fills it in on the response. + */ @JsonProperty("cron_expression") private String cronExpression; + /** How the schedule is determined. Defaults to MANUAL when unset. */ + @JsonProperty("mode") + private CronScheduleMode mode; + public CronSchedule setCronExpression(String cronExpression) { this.cronExpression = cronExpression; return this; @@ -23,21 +32,33 @@ public String getCronExpression() { return cronExpression; } + public CronSchedule setMode(CronScheduleMode mode) { + this.mode = mode; + return this; + } + + public CronScheduleMode getMode() { + return mode; + } + @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; CronSchedule that = (CronSchedule) o; - return Objects.equals(cronExpression, that.cronExpression); + return Objects.equals(cronExpression, that.cronExpression) && Objects.equals(mode, that.mode); } @Override public int hashCode() { - return Objects.hash(cronExpression); + return Objects.hash(cronExpression, mode); } @Override public String toString() { - return new ToStringer(CronSchedule.class).add("cronExpression", cronExpression).toString(); + return new ToStringer(CronSchedule.class) + .add("cronExpression", cronExpression) + .add("mode", mode) + .toString(); } } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronScheduleMode.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronScheduleMode.java new file mode 100644 index 000000000..d592beb0e --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/CronScheduleMode.java @@ -0,0 +1,12 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.ml; + +import com.databricks.sdk.support.Generated; + +/** The way a materialization schedule is arrived at. */ +@Generated +public enum CronScheduleMode { + DERIVED, + MANUAL, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandStatus.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandStatus.java new file mode 100644 index 000000000..fdd2fe931 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandStatus.java @@ -0,0 +1,13 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.sandbox; + +import com.databricks.sdk.support.Generated; + +/** Terminal status of a unary command execution. */ +@Generated +public enum ExecuteCommandStatus { + EXECUTE_COMMAND_STATUS_COMPLETED, + EXECUTE_COMMAND_STATUS_FAILED, + EXECUTE_COMMAND_STATUS_TIMED_OUT, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncRequest.java new file mode 100644 index 000000000..69160130d --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncRequest.java @@ -0,0 +1,123 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.sandbox; + +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 com.google.protobuf.Duration; +import java.util.Collection; +import java.util.Map; +import java.util.Objects; + +/** Request to run a command in the given sandbox and wait for it to finish. */ +@Generated +public class ExecuteCommandSyncRequest { + /** Arguments passed to `cmd`. */ + @JsonProperty("args") + private Collection args; + + /** + * Executable or command to run (e.g. `/bin/echo`, `python3`). A request with no `cmd` is rejected + * with `INVALID_ARGUMENT`. Not audited (no `compliance.audit_mode`): the command can carry + * secrets, and as a data-plane service lakebox must not record privileged customer content in its + * audit log. + */ + @JsonProperty("cmd") + private String cmd; + + /** + * Extra environment variables for the command's process, merged over the sandbox's default + * environment. + */ + @JsonProperty("envs") + private Map envs; + + /** + * Maximum time to wait for the command to finish. When it elapses the command is terminated and + * the response carries status `TIMED_OUT`. The server applies a default when unset and clamps to + * an upper bound; negative or otherwise invalid durations are rejected with `INVALID_ARGUMENT`. + */ + @JsonProperty("execution_timeout") + private Duration executionTimeout; + + /** + * Resource name of the sandbox to run the command in, in the form `sandboxes/{sandbox_id}`. Bound + * from the URL path. + */ + @JsonIgnore private String name; + + public ExecuteCommandSyncRequest setArgs(Collection args) { + this.args = args; + return this; + } + + public Collection getArgs() { + return args; + } + + public ExecuteCommandSyncRequest setCmd(String cmd) { + this.cmd = cmd; + return this; + } + + public String getCmd() { + return cmd; + } + + public ExecuteCommandSyncRequest setEnvs(Map envs) { + this.envs = envs; + return this; + } + + public Map getEnvs() { + return envs; + } + + public ExecuteCommandSyncRequest setExecutionTimeout(Duration executionTimeout) { + this.executionTimeout = executionTimeout; + return this; + } + + public Duration getExecutionTimeout() { + return executionTimeout; + } + + public ExecuteCommandSyncRequest 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; + ExecuteCommandSyncRequest that = (ExecuteCommandSyncRequest) o; + return Objects.equals(args, that.args) + && Objects.equals(cmd, that.cmd) + && Objects.equals(envs, that.envs) + && Objects.equals(executionTimeout, that.executionTimeout) + && Objects.equals(name, that.name); + } + + @Override + public int hashCode() { + return Objects.hash(args, cmd, envs, executionTimeout, name); + } + + @Override + public String toString() { + return new ToStringer(ExecuteCommandSyncRequest.class) + .add("args", args) + .add("cmd", cmd) + .add("envs", envs) + .add("executionTimeout", executionTimeout) + .add("name", name) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncResponse.java new file mode 100644 index 000000000..0d2ebeb77 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/ExecuteCommandSyncResponse.java @@ -0,0 +1,140 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.sandbox; + +import com.databricks.sdk.support.Generated; +import com.databricks.sdk.support.ToStringer; +import com.fasterxml.jackson.annotation.JsonProperty; +import java.util.Objects; + +/** + * Result of a completed unary command execution: captured output, exit code, and terminal status. + */ +@Generated +public class ExecuteCommandSyncResponse { + /** + * Daemon-generated identifier for this command execution, for correlation (for example in + * `ListCommands`). + */ + @JsonProperty("command_id") + private String commandId; + + /** + * Process exit code. Unset when the process was terminated by a signal (e.g. on `TIMED_OUT`) or + * never started (`FAILED`) rather than exiting normally. + */ + @JsonProperty("exit_code") + private Long exitCode; + + /** + * Terminal status of the command execution. Always set on a successful response; never + * `EXECUTE_COMMAND_STATUS_UNSPECIFIED`. + */ + @JsonProperty("status") + private ExecuteCommandStatus status; + + /** Captured standard error, with the same UTF-8 semantics as `stdout`. */ + @JsonProperty("stderr") + private String stderr; + + /** + * Captured standard output as UTF-8 text. Invalid UTF-8 bytes are replaced with the Unicode + * replacement character rather than failing the request; use the streaming `ExecuteCommand` RPC + * for byte-exact output. + */ + @JsonProperty("stdout") + private String stdout; + + /** + * True when `stdout` / `stderr` were truncated because the captured output exceeded the server's + * per-response size cap. The dropped output is not included in this response and is not + * recoverable through this unary API; for commands that can produce large output, use the + * streaming `ExecuteCommand` RPC, which is not subject to this cap. + */ + @JsonProperty("truncated") + private Boolean truncated; + + public ExecuteCommandSyncResponse setCommandId(String commandId) { + this.commandId = commandId; + return this; + } + + public String getCommandId() { + return commandId; + } + + public ExecuteCommandSyncResponse setExitCode(Long exitCode) { + this.exitCode = exitCode; + return this; + } + + public Long getExitCode() { + return exitCode; + } + + public ExecuteCommandSyncResponse setStatus(ExecuteCommandStatus status) { + this.status = status; + return this; + } + + public ExecuteCommandStatus getStatus() { + return status; + } + + public ExecuteCommandSyncResponse setStderr(String stderr) { + this.stderr = stderr; + return this; + } + + public String getStderr() { + return stderr; + } + + public ExecuteCommandSyncResponse setStdout(String stdout) { + this.stdout = stdout; + return this; + } + + public String getStdout() { + return stdout; + } + + public ExecuteCommandSyncResponse setTruncated(Boolean truncated) { + this.truncated = truncated; + return this; + } + + public Boolean getTruncated() { + return truncated; + } + + @Override + public boolean equals(Object o) { + if (this == o) return true; + if (o == null || getClass() != o.getClass()) return false; + ExecuteCommandSyncResponse that = (ExecuteCommandSyncResponse) o; + return Objects.equals(commandId, that.commandId) + && Objects.equals(exitCode, that.exitCode) + && Objects.equals(status, that.status) + && Objects.equals(stderr, that.stderr) + && Objects.equals(stdout, that.stdout) + && Objects.equals(truncated, that.truncated); + } + + @Override + public int hashCode() { + return Objects.hash(commandId, exitCode, status, stderr, stdout, truncated); + } + + @Override + public String toString() { + return new ToStringer(ExecuteCommandSyncResponse.class) + .add("commandId", commandId) + .add("exitCode", exitCode) + .add("status", status) + .add("stderr", stderr) + .add("stdout", stdout) + .add("truncated", truncated) + .toString(); + } +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxAPI.java index e3ba389d5..98943a66e 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxAPI.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxAPI.java @@ -41,6 +41,17 @@ public void deleteSandbox(DeleteSandboxRequest request) { impl.deleteSandbox(request); } + /** + * Runs a command in the sandbox and blocks until it exits, returning the captured stdout, stderr + * and exit code in a single response. Unary convenience variant of the streaming + * command-execution API for callers that only need a command's final result (e.g. `curl`, the + * SDK's `sandbox.exec`). The streaming `ExecuteCommand` RPC remains for interactive and + * long-running use. + */ + public ExecuteCommandSyncResponse executeCommandSync(ExecuteCommandSyncRequest request) { + return impl.executeCommandSync(request); + } + public Sandbox getSandbox(String name) { return getSandbox(new GetSandboxRequest().setName(name)); } diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxImpl.java index 607043e78..9662eed0a 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxImpl.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxImpl.java @@ -51,6 +51,24 @@ public void deleteSandbox(DeleteSandboxRequest request) { } } + @Override + public ExecuteCommandSyncResponse executeCommandSync(ExecuteCommandSyncRequest request) { + String path = String.format("/api/2.0/sandbox-exec/%s/exec-sync", request.getName()); + try { + Request req = new Request("POST", path, apiClient.serialize(request)); + + ApiClient.setQuery(req, request); + req.withHeader("Accept", "application/json"); + req.withHeader("Content-Type", "application/json"); + if (apiClient.workspaceId() != null) { + req.withHeader("X-Databricks-Workspace-Id", apiClient.workspaceId()); + } + return apiClient.execute(req, ExecuteCommandSyncResponse.class); + } catch (IOException e) { + throw new DatabricksException("IO error: " + e.getMessage(), e); + } + } + @Override public Sandbox getSandbox(GetSandboxRequest request) { String path = String.format("/api/2.0/%s", request.getName()); diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxService.java index f858941af..74284662a 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxService.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/sandbox/SandboxService.java @@ -19,6 +19,16 @@ public interface SandboxService { /** Deletes a Sandbox. */ void deleteSandbox(DeleteSandboxRequest deleteSandboxRequest); + /** + * Runs a command in the sandbox and blocks until it exits, returning the captured stdout, stderr + * and exit code in a single response. Unary convenience variant of the streaming + * command-execution API for callers that only need a command's final result (e.g. `curl`, the + * SDK's `sandbox.exec`). The streaming `ExecuteCommand` RPC remains for interactive and + * long-running use. + */ + ExecuteCommandSyncResponse executeCommandSync( + ExecuteCommandSyncRequest executeCommandSyncRequest); + /** Retrieves a Sandbox by name. */ Sandbox getSandbox(GetSandboxRequest getSandboxRequest);