This is the high-level interface, that contains generated methods. + * + *
Evolving: this interface is under development. Method signatures may change. + */ +@Generated +public interface ServerlessComputeServiceService { + /** + * Lists Interactive serverless computes that the caller can use or manage. Results are returned + * in an unspecified order. + */ + ListServerlessComputesResponse list(ListServerlessComputesRequest listServerlessComputesRequest); + + /** + * Lists compute policies in the workspace. Results are returned in an unspecified order; callers + * should sort client-side if a specific order is needed. + */ + ListComputePoliciesResponse listComputePolicies( + ListComputePoliciesRequest listComputePoliciesRequest); +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/TshirtSize.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/TshirtSize.java new file mode 100644 index 000000000..edfcef767 --- /dev/null +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/compute/TshirtSize.java @@ -0,0 +1,18 @@ +// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT. + +package com.databricks.sdk.service.compute; + +import com.databricks.sdk.support.Generated; + +/** T-shirt size for per-workload Spark executor limits. */ +@Generated +public enum TshirtSize { + T_SHIRT_SIZE_2X_LARGE, + T_SHIRT_SIZE_3X_LARGE, + T_SHIRT_SIZE_4X_LARGE, + T_SHIRT_SIZE_LARGE, + T_SHIRT_SIZE_MEDIUM, + T_SHIRT_SIZE_SMALL, + T_SHIRT_SIZE_UNSPECIFIED, + T_SHIRT_SIZE_X_LARGE, +} diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/TextAttachment.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/TextAttachment.java index f938cf4cc..e6dc3678d 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/TextAttachment.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/dashboards/TextAttachment.java @@ -25,7 +25,8 @@ public class TextAttachment { * Purpose of this text attachment. A completed message may contain more than one text attachment * (for example a clarifying follow-up question alongside the final answer); use this field to * tell them apart. `TEXT_ATTACHMENT_PURPOSE_ANSWER` marks the final answer/summary and - * `FOLLOW_UP_QUESTION` marks a clarifying question. + * `FOLLOW_UP_QUESTION` marks a clarifying question. Agent-mode messages return the answer as + * their only text attachment. */ @JsonProperty("purpose") private TextAttachmentPurpose purpose; diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2API.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2API.java index a60341768..d5745383d 100644 --- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2API.java +++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2API.java @@ -28,35 +28,33 @@ public AccountIamV2API(AccountIamV2Service mock) { } /** - * Creates a group membership (assigns a principal to a group). + * Adds a user, service principal, or group as a direct member of a group. * - *
Authorization: the caller must be an account admin or a manager of the group (holds the - * `roles/group.manager` role on it). + *
If automatic identity management is on and the group has an `external_id`, its members come + * from your identity provider and can't be changed in Databricks. */ public DirectGroupMember createDirectGroupMember(CreateDirectGroupMemberRequest request) { return impl.createDirectGroupMember(request); } /** - * Creates a local group in the Databricks account and returns the created group. A local group is - * one that is not synced from the customer's identity provider, and can be created whether or not - * Account Identity Management (AIM) is enabled. + * Creates a local group, which is a group that isn't synced from your identity provider (IdP). + * You become a manager of the new group. * - *
When AIM is enabled, supplying an external ID returns an error. To provision the identity - * from your identity provider, resolve it by its external ID with ResolveGroup; to read an - * existing external identity, use the ExternalGroup resource. + *
If automatic identity management is on, you can't set `external_id`. To add a group from + * your IdP, get it as an external group instead. */ public Group createGroup(CreateGroupRequest request) { return impl.createGroup(request); } /** - * Creates a group visibility filter in the account. Requires account admin privileges. Set - * `principal_type` to `GROUP` and specify exactly one of `exact` (external ID), `prefix` - * (display-name starts with), or `regex` (full RE2 display-name match). The filter applies across - * all workspaces in the account. A duplicate filter ID or an existing rule with the same type and - * match value returns `ALREADY_EXISTS`. Filters are immutable; to change a rule, delete it and - * create a new one. + * Creates a group visibility filter. It applies to every workspace in the account. + * + *
Returns `ALREADY_EXISTS` if a filter with the same ID, or the same type and match value, + * already exists. Returns `RESOURCE_EXHAUSTED` if the account already has the maximum number of + * filters of that type. You can't change a filter: to change a rule, delete it and create a new + * one. */ public IdentityVisibilityFilter createIdentityVisibilityFilter( CreateIdentityVisibilityFilterRequest request) { @@ -64,36 +62,33 @@ public IdentityVisibilityFilter createIdentityVisibilityFilter( } /** - * Creates a local service principal in the Databricks account and returns the created service - * principal. A local service principal is one that is not synced from the customer's identity - * provider, and can be created whether or not Account Identity Management (AIM) is enabled. + * Creates a local service principal, which is a service principal that isn't synced from your + * identity provider (IdP). * - *
When AIM is enabled, supplying an external ID returns an error. To provision the identity - * from your identity provider, resolve it by its external ID with ResolveServicePrincipal; to - * read an existing external identity, use the ExternalServicePrincipal resource. + *
If automatic identity management is on, you can't set `external_id`. To add a service + * principal from your IdP, get it as an external service principal instead. */ public ServicePrincipal createServicePrincipal(CreateServicePrincipalRequest request) { return impl.createServicePrincipal(request); } /** - * Creates a local user in the Databricks account and returns the created user. A local user is - * one that is not synced from the customer's identity provider, and can be created whether or not - * Account Identity Management (AIM) is enabled. + * Creates a local user, which is a user that isn't synced from your identity provider (IdP). * - *
When AIM is enabled, supplying an external ID returns an error. To provision the identity - * from your identity provider, resolve it by its external ID with ResolveUser; to read an - * existing external identity, use the ExternalUser resource. + *
If automatic identity management is on, you can't set `external_id`. To add a user from your + * IdP, get them as an external user instead. */ public User createUser(CreateUserRequest request) { return impl.createUser(request); } /** - * Creates a workspace assignment for a principal. Entitlements are granted one at a time rather - * than atomically. If the request fails partway through, the principal stays assigned to the - * workspace with only some of the requested entitlements. Get the assignment afterwards to - * confirm which entitlements were granted. + * Assigns a user, service principal, or group directly to a workspace with the given + * entitlements. Returns an error if the principal is already assigned directly. + * + *
Entitlements are granted one at a time. If the request fails partway through, the principal + * stays assigned with only some of the entitlements. Get the assignment afterwards to check which + * were granted. */ public WorkspaceAssignment createWorkspaceAssignment(CreateWorkspaceAssignmentRequest request) { return impl.createWorkspaceAssignment(request); @@ -110,10 +105,10 @@ public void deleteDirectGroupMember(String name) { } /** - * Deletes a group membership (unassigns a principal from a group). + * Removes a direct member from a group. * - *
Authorization: the caller must be an account admin or a manager of the group (holds the - * `roles/group.manager` role on it). + *
If automatic identity management is on and the group has an `external_id`, its members come + * from your identity provider and can't be changed in Databricks. */ public void deleteDirectGroupMember(DeleteDirectGroupMemberRequest request) { impl.deleteDirectGroupMember(request); @@ -123,12 +118,7 @@ public void deleteGroup(String name) { deleteGroup(new DeleteGroupRequest().setName(name)); } - /** - * Deletes a group from the Databricks account by its internal ID. - * - *
Authorization: the caller must be an account admin or a manager of the group (holds the - * `roles/group.manager` role on it). - */ + /** Deletes a group from your account and removes it from the workspaces it's assigned to. */ public void deleteGroup(DeleteGroupRequest request) { impl.deleteGroup(request); } @@ -138,11 +128,10 @@ public void deleteIdentityVisibilityFilter(String name) { } /** - * Deletes a group visibility filter by its resource name. Requires account admin privileges. - * Deleting a filter does not delete groups or revoke access. Groups covered only by this rule - * stop being discoverable unless they or a transitive parent are already provisioned in the - * account. If no group filters remain, all groups become visible again. Deleting a filter that - * does not exist succeeds without making any changes. + * Deletes a group visibility filter. Deleting a filter doesn't delete groups or remove access. + * Groups that only this filter matched stop being visible, unless they or a parent group are + * already in your account. If no group filters remain, all groups become visible again. Deleting + * a filter that doesn't exist succeeds. */ public void deleteIdentityVisibilityFilter(DeleteIdentityVisibilityFilterRequest request) { impl.deleteIdentityVisibilityFilter(request); @@ -152,7 +141,10 @@ public void deleteServicePrincipal(String name) { deleteServicePrincipal(new DeleteServicePrincipalRequest().setName(name)); } - /** Deletes a service principal from the Databricks account by its internal ID. */ + /** + * Deletes a service principal from your account and removes it from the workspaces it's assigned + * to. You can't delete service principals that Databricks manages. + */ public void deleteServicePrincipal(DeleteServicePrincipalRequest request) { impl.deleteServicePrincipal(request); } @@ -161,7 +153,7 @@ public void deleteUser(String name) { deleteUser(new DeleteUserRequest().setName(name)); } - /** Deletes a user from the Databricks account by its internal ID. */ + /** Deletes a user from your account and removes them from the workspaces they're assigned to. */ public void deleteUser(DeleteUserRequest request) { impl.deleteUser(request); } @@ -171,9 +163,11 @@ public void deleteWorkspaceAssignment(String name) { } /** - * Deletes a workspace assignment for a principal, revoking all of its entitlements. Entitlements - * are revoked one at a time rather than atomically. If the request fails partway through, the - * principal stays assigned with some of its original entitlements. Retrying is safe. + * Removes a principal's direct assignment to a workspace and revokes the entitlements it granted. + * The principal keeps any access it gets through groups. + * + *
Entitlements are revoked one at a time. If the request fails partway through, the principal
+ * stays assigned with some of its entitlements. You can retry the request.
*/
public void deleteWorkspaceAssignment(DeleteWorkspaceAssignmentRequest request) {
impl.deleteWorkspaceAssignment(request);
@@ -199,7 +193,10 @@ public DirectGroupMember getDirectGroupMember(String name) {
return getDirectGroupMember(new GetDirectGroupMemberRequest().setName(name));
}
- /** Gets a provisioned direct member of a group. */
+ /**
+ * Gets a direct member of a group, including where the membership comes from. Returns an error if
+ * the principal isn't a direct member.
+ */
public DirectGroupMember getDirectGroupMember(GetDirectGroupMemberRequest request) {
return impl.getDirectGroupMember(request);
}
@@ -209,9 +206,9 @@ public ExternalGroup getExternalGroup(String name) {
}
/**
- * Retrieves an external group with the given external ID from the customer's IdP. If the group
- * does not exist, it will be created in the account. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in your account yet, it's added. Requires automatic identity
+ * management. If your account has group visibility filters, the group must match them.
*/
public ExternalGroup getExternalGroup(GetExternalGroupRequest request) {
return impl.getExternalGroup(request);
@@ -222,9 +219,9 @@ public ExternalServicePrincipal getExternalServicePrincipal(String name) {
}
/**
- * Retrieves an external service principal with the given external ID from the customer's IdP. If
- * the service principal does not exist, it will be created. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in your account yet, it's
+ * added. Requires automatic identity management with Microsoft Entra ID as your IdP.
*/
public ExternalServicePrincipal getExternalServicePrincipal(
GetExternalServicePrincipalRequest request) {
@@ -236,9 +233,9 @@ public ExternalUser getExternalUser(String name) {
}
/**
- * Retrieves an external user with the given external ID from the customer's IdP. If the user does
- * not exist, it will be created. If the customer is not onboarded onto Automatic Identity
- * Management (AIM), this will return an error.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in your account yet, they're added. Requires
+ * automatic identity management.
*/
public ExternalUser getExternalUser(GetExternalUserRequest request) {
return impl.getExternalUser(request);
@@ -248,7 +245,7 @@ public Group getGroup(String name) {
return getGroup(new GetGroupRequest().setName(name));
}
- /** Fetches a group from the Databricks account by its internal ID. */
+ /** Gets a group by its Databricks ID. */
public Group getGroup(GetGroupRequest request) {
return impl.getGroup(request);
}
@@ -257,10 +254,7 @@ public IdentityVisibilityFilter getIdentityVisibilityFilter(String name) {
return getIdentityVisibilityFilter(new GetIdentityVisibilityFilterRequest().setName(name));
}
- /**
- * Gets a group visibility filter by its resource name. Requires account admin privileges. Returns
- * the filter rule, not the groups matched by the rule.
- */
+ /** Gets a group visibility filter. It returns the rule, not the groups it matches. */
public IdentityVisibilityFilter getIdentityVisibilityFilter(
GetIdentityVisibilityFilterRequest request) {
return impl.getIdentityVisibilityFilter(request);
@@ -270,7 +264,7 @@ public ServicePrincipal getServicePrincipal(String name) {
return getServicePrincipal(new GetServicePrincipalRequest().setName(name));
}
- /** Fetches a service principal from the Databricks account by its internal ID. */
+ /** Gets a service principal by its Databricks ID. */
public ServicePrincipal getServicePrincipal(GetServicePrincipalRequest request) {
return impl.getServicePrincipal(request);
}
@@ -279,7 +273,7 @@ public User getUser(String name) {
return getUser(new GetUserRequest().setName(name));
}
- /** Fetches a user from the Databricks account by its internal ID. */
+ /** Gets a user by their Databricks ID. */
public User getUser(GetUserRequest request) {
return impl.getUser(request);
}
@@ -303,7 +297,10 @@ public WorkspaceAssignment getWorkspaceAssignment(String name) {
return getWorkspaceAssignment(new GetWorkspaceAssignmentRequest().setName(name));
}
- /** Returns the assignment for a principal in a workspace. */
+ /**
+ * Gets a principal's direct assignment to a workspace, including its effective entitlements.
+ * Returns an error if the principal isn't assigned directly.
+ */
public WorkspaceAssignment getWorkspaceAssignment(GetWorkspaceAssignmentRequest request) {
return impl.getWorkspaceAssignment(request);
}
@@ -327,8 +324,8 @@ public Iterable When AIM is enabled and the group is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider. With AIM
- * and group visibility filters, a new nonempty external_id must identify a visible group.
- * Clearing external_id is allowed.
- *
- * Authorization: the caller must be an account admin or a manager of the group (holds the
- * `roles/group.manager` role on it).
+ * If automatic identity management is on and the group has an `external_id`, you can only
+ * update `external_id`. The group's other fields come from your identity provider. If your
+ * account also has group visibility filters, a new `external_id` must match them. You can always
+ * clear `external_id`.
*/
public Group updateGroup(UpdateGroupRequest request) {
return impl.updateGroup(request);
}
/**
- * Updates an existing service principal in the Databricks account. Only the fields named in the
- * update mask are modified. Returns the updated ServicePrincipal resource.
- *
- * To change is_agent on a locally managed service principal, set it to true or false. Naming
- * is_agent in the update mask without a value leaves it unchanged.
+ * Updates a service principal. Only the fields in `update_mask` change.
*
- * When AIM is enabled and the service principal is an external identity (its external_id is
- * set), only external_id can be updated; its other fields are sourced from your identity
- * provider.
+ * If automatic identity management is on and the service principal has an `external_id`, you
+ * can only update `external_id`. Its other fields come from your identity provider. A service
+ * principal can't deactivate itself, and you can't update service principals that Databricks
+ * manages.
*/
public ServicePrincipal updateServicePrincipal(UpdateServicePrincipalRequest request) {
return impl.updateServicePrincipal(request);
}
/**
- * Updates an existing user in the Databricks account and returns the updated user. Only the
- * fields named in the update mask are modified. The updatable fields are fullName.givenName,
- * fullName.familyName, status, and externalId.
+ * Updates a user. Only the fields in `update_mask` change.
*
- * When AIM is enabled and the user is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider.
+ * If automatic identity management is on and the user has an `external_id`, you can only
+ * update `external_id`. The user's other fields come from your identity provider. You can't
+ * deactivate yourself or change the status of the account owner.
*/
public User updateUser(UpdateUserRequest request) {
return impl.updateUser(request);
}
/**
- * Updates the entitlements of a directly assigned principal in a workspace. Changes are applied
- * one at a time rather than atomically. If the request fails partway through, only some of the
- * requested changes take effect. Get the assignment afterwards to confirm the final state.
+ * Replaces the entitlements of a principal's direct assignment to a workspace. The new list can't
+ * be empty.
+ *
+ * Entitlements are changed one at a time. If the request fails partway through, only some of
+ * the changes take effect. Get the assignment afterwards to check the result.
*/
public WorkspaceAssignment updateWorkspaceAssignment(UpdateWorkspaceAssignmentRequest request) {
return impl.updateWorkspaceAssignment(request);
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2Service.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2Service.java
index e441a8821..dec796c59 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2Service.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/AccountIamV2Service.java
@@ -14,64 +14,59 @@
@Generated
public interface AccountIamV2Service {
/**
- * Creates a group membership (assigns a principal to a group).
+ * Adds a user, service principal, or group as a direct member of a group.
*
- * Authorization: the caller must be an account admin or a manager of the group (holds the
- * `roles/group.manager` role on it).
+ * If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
*/
DirectGroupMember createDirectGroupMember(
CreateDirectGroupMemberRequest createDirectGroupMemberRequest);
/**
- * Creates a local group in the Databricks account and returns the created group. A local group is
- * one that is not synced from the customer's identity provider, and can be created whether or not
- * Account Identity Management (AIM) is enabled.
+ * Creates a local group, which is a group that isn't synced from your identity provider (IdP).
+ * You become a manager of the new group.
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveGroup; to read an
- * existing external identity, use the ExternalGroup resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a group from
+ * your IdP, get it as an external group instead.
*/
Group createGroup(CreateGroupRequest createGroupRequest);
/**
- * Creates a group visibility filter in the account. Requires account admin privileges. Set
- * `principal_type` to `GROUP` and specify exactly one of `exact` (external ID), `prefix`
- * (display-name starts with), or `regex` (full RE2 display-name match). The filter applies across
- * all workspaces in the account. A duplicate filter ID or an existing rule with the same type and
- * match value returns `ALREADY_EXISTS`. Filters are immutable; to change a rule, delete it and
- * create a new one.
+ * Creates a group visibility filter. It applies to every workspace in the account.
+ *
+ * Returns `ALREADY_EXISTS` if a filter with the same ID, or the same type and match value,
+ * already exists. Returns `RESOURCE_EXHAUSTED` if the account already has the maximum number of
+ * filters of that type. You can't change a filter: to change a rule, delete it and create a new
+ * one.
*/
IdentityVisibilityFilter createIdentityVisibilityFilter(
CreateIdentityVisibilityFilterRequest createIdentityVisibilityFilterRequest);
/**
- * Creates a local service principal in the Databricks account and returns the created service
- * principal. A local service principal is one that is not synced from the customer's identity
- * provider, and can be created whether or not Account Identity Management (AIM) is enabled.
+ * Creates a local service principal, which is a service principal that isn't synced from your
+ * identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveServicePrincipal; to
- * read an existing external identity, use the ExternalServicePrincipal resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a service
+ * principal from your IdP, get it as an external service principal instead.
*/
ServicePrincipal createServicePrincipal(
CreateServicePrincipalRequest createServicePrincipalRequest);
/**
- * Creates a local user in the Databricks account and returns the created user. A local user is
- * one that is not synced from the customer's identity provider, and can be created whether or not
- * Account Identity Management (AIM) is enabled.
+ * Creates a local user, which is a user that isn't synced from your identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveUser; to read an
- * existing external identity, use the ExternalUser resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a user from your
+ * IdP, get them as an external user instead.
*/
User createUser(CreateUserRequest createUserRequest);
/**
- * Creates a workspace assignment for a principal. Entitlements are granted one at a time rather
- * than atomically. If the request fails partway through, the principal stays assigned to the
- * workspace with only some of the requested entitlements. Get the assignment afterwards to
- * confirm which entitlements were granted.
+ * Assigns a user, service principal, or group directly to a workspace with the given
+ * entitlements. Returns an error if the principal is already assigned directly.
+ *
+ * Entitlements are granted one at a time. If the request fails partway through, the principal
+ * stays assigned with only some of the entitlements. Get the assignment afterwards to check which
+ * were granted.
*/
WorkspaceAssignment createWorkspaceAssignment(
CreateWorkspaceAssignmentRequest createWorkspaceAssignmentRequest);
@@ -81,41 +76,40 @@ WorkspaceAssignmentDetail createWorkspaceAssignmentDetail(
CreateWorkspaceAssignmentDetailRequest createWorkspaceAssignmentDetailRequest);
/**
- * Deletes a group membership (unassigns a principal from a group).
+ * Removes a direct member from a group.
*
- * Authorization: the caller must be an account admin or a manager of the group (holds the
- * `roles/group.manager` role on it).
+ * If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
*/
void deleteDirectGroupMember(DeleteDirectGroupMemberRequest deleteDirectGroupMemberRequest);
- /**
- * Deletes a group from the Databricks account by its internal ID.
- *
- * Authorization: the caller must be an account admin or a manager of the group (holds the
- * `roles/group.manager` role on it).
- */
+ /** Deletes a group from your account and removes it from the workspaces it's assigned to. */
void deleteGroup(DeleteGroupRequest deleteGroupRequest);
/**
- * Deletes a group visibility filter by its resource name. Requires account admin privileges.
- * Deleting a filter does not delete groups or revoke access. Groups covered only by this rule
- * stop being discoverable unless they or a transitive parent are already provisioned in the
- * account. If no group filters remain, all groups become visible again. Deleting a filter that
- * does not exist succeeds without making any changes.
+ * Deletes a group visibility filter. Deleting a filter doesn't delete groups or remove access.
+ * Groups that only this filter matched stop being visible, unless they or a parent group are
+ * already in your account. If no group filters remain, all groups become visible again. Deleting
+ * a filter that doesn't exist succeeds.
*/
void deleteIdentityVisibilityFilter(
DeleteIdentityVisibilityFilterRequest deleteIdentityVisibilityFilterRequest);
- /** Deletes a service principal from the Databricks account by its internal ID. */
+ /**
+ * Deletes a service principal from your account and removes it from the workspaces it's assigned
+ * to. You can't delete service principals that Databricks manages.
+ */
void deleteServicePrincipal(DeleteServicePrincipalRequest deleteServicePrincipalRequest);
- /** Deletes a user from the Databricks account by its internal ID. */
+ /** Deletes a user from your account and removes them from the workspaces they're assigned to. */
void deleteUser(DeleteUserRequest deleteUserRequest);
/**
- * Deletes a workspace assignment for a principal, revoking all of its entitlements. Entitlements
- * are revoked one at a time rather than atomically. If the request fails partway through, the
- * principal stays assigned with some of its original entitlements. Retrying is safe.
+ * Removes a principal's direct assignment to a workspace and revokes the entitlements it granted.
+ * The principal keeps any access it gets through groups.
+ *
+ * Entitlements are revoked one at a time. If the request fails partway through, the principal
+ * stays assigned with some of its entitlements. You can retry the request.
*/
void deleteWorkspaceAssignment(DeleteWorkspaceAssignmentRequest deleteWorkspaceAssignmentRequest);
@@ -127,45 +121,45 @@ void deleteIdentityVisibilityFilter(
void deleteWorkspaceAssignmentDetail(
DeleteWorkspaceAssignmentDetailRequest deleteWorkspaceAssignmentDetailRequest);
- /** Gets a provisioned direct member of a group. */
+ /**
+ * Gets a direct member of a group, including where the membership comes from. Returns an error if
+ * the principal isn't a direct member.
+ */
DirectGroupMember getDirectGroupMember(GetDirectGroupMemberRequest getDirectGroupMemberRequest);
/**
- * Retrieves an external group with the given external ID from the customer's IdP. If the group
- * does not exist, it will be created in the account. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in your account yet, it's added. Requires automatic identity
+ * management. If your account has group visibility filters, the group must match them.
*/
ExternalGroup getExternalGroup(GetExternalGroupRequest getExternalGroupRequest);
/**
- * Retrieves an external service principal with the given external ID from the customer's IdP. If
- * the service principal does not exist, it will be created. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in your account yet, it's
+ * added. Requires automatic identity management with Microsoft Entra ID as your IdP.
*/
ExternalServicePrincipal getExternalServicePrincipal(
GetExternalServicePrincipalRequest getExternalServicePrincipalRequest);
/**
- * Retrieves an external user with the given external ID from the customer's IdP. If the user does
- * not exist, it will be created. If the customer is not onboarded onto Automatic Identity
- * Management (AIM), this will return an error.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in your account yet, they're added. Requires
+ * automatic identity management.
*/
ExternalUser getExternalUser(GetExternalUserRequest getExternalUserRequest);
- /** Fetches a group from the Databricks account by its internal ID. */
+ /** Gets a group by its Databricks ID. */
Group getGroup(GetGroupRequest getGroupRequest);
- /**
- * Gets a group visibility filter by its resource name. Requires account admin privileges. Returns
- * the filter rule, not the groups matched by the rule.
- */
+ /** Gets a group visibility filter. It returns the rule, not the groups it matches. */
IdentityVisibilityFilter getIdentityVisibilityFilter(
GetIdentityVisibilityFilterRequest getIdentityVisibilityFilterRequest);
- /** Fetches a service principal from the Databricks account by its internal ID. */
+ /** Gets a service principal by its Databricks ID. */
ServicePrincipal getServicePrincipal(GetServicePrincipalRequest getServicePrincipalRequest);
- /** Fetches a user from the Databricks account by its internal ID. */
+ /** Gets a user by their Databricks ID. */
User getUser(GetUserRequest getUserRequest);
/**
@@ -178,7 +172,10 @@ IdentityVisibilityFilter getIdentityVisibilityFilter(
WorkspaceAccessDetail getWorkspaceAccessDetail(
GetWorkspaceAccessDetailRequest getWorkspaceAccessDetailRequest);
- /** Returns the assignment for a principal in a workspace. */
+ /**
+ * Gets a principal's direct assignment to a workspace, including its effective entitlements.
+ * Returns an error if the principal isn't assigned directly.
+ */
WorkspaceAssignment getWorkspaceAssignment(
GetWorkspaceAssignmentRequest getWorkspaceAssignmentRequest);
@@ -187,41 +184,43 @@ WorkspaceAssignmentDetail getWorkspaceAssignmentDetail(
GetWorkspaceAssignmentDetailRequest getWorkspaceAssignmentDetailRequest);
/**
- * Lists provisioned direct members of a group with their membership source (internal or from
- * identity provider).
+ * Lists the direct members of a group, sorted by display name, with where each membership comes
+ * from. Members in your identity provider who haven't been added to Databricks aren't included.
*/
ListDirectGroupMembersResponse listDirectGroupMembers(
ListDirectGroupMembersRequest listDirectGroupMembersRequest);
/**
- * Lists the groups in the Databricks account, returning one page per call. Supports filtering by
- * group name or external ID.
+ * Lists the groups in your account, sorted by Databricks ID. Groups in your identity provider
+ * that haven't been added to Databricks aren't included.
*/
ListGroupsResponse listGroups(ListGroupsRequest listGroupsRequest);
/**
- * Lists group visibility filters in the account, returning one page per call. Requires account
- * admin privileges. Returns filter rules, not the groups matched by those rules. To retrieve the
- * next page, pass the response's `next_page_token` as `page_token` in the next request. If
- * `next_page_token` is omitted, there are no more pages.
+ * Lists the group visibility filters in an account. It returns the rules, not the groups they
+ * match.
*/
ListIdentityVisibilityFiltersResponse listIdentityVisibilityFilters(
ListIdentityVisibilityFiltersRequest listIdentityVisibilityFiltersRequest);
/**
- * Lists the service principals in the Databricks account, returning one page per call. Supports
- * filtering by application ID or external ID.
+ * Lists the service principals in your account, sorted by Databricks ID. Service principals in
+ * your identity provider that haven't been added to Databricks aren't included.
*/
ListServicePrincipalsResponse listServicePrincipals(
ListServicePrincipalsRequest listServicePrincipalsRequest);
- /** Lists all transitive parent groups of a principal. */
+ /**
+ * Lists every group that a user, service principal, or group belongs to, directly or through
+ * other groups, sorted by Databricks ID. If automatic identity management is on, the principal's
+ * group memberships are synced from your identity provider first.
+ */
ListTransitiveParentGroupsResponse listTransitiveParentGroups(
ListTransitiveParentGroupsRequest listTransitiveParentGroupsRequest);
/**
- * Lists the users in the Databricks account, returning one page per call. Supports filtering by
- * username or external ID.
+ * Lists the users in your account, sorted by Databricks ID. Users in your identity provider who
+ * haven't been added to Databricks aren't included.
*/
ListUsersResponse listUsers(ListUsersRequest listUsersRequest);
@@ -234,77 +233,70 @@ ListWorkspaceAssignmentDetailsResponse listWorkspaceAssignmentDetails(
ListWorkspaceAssignmentDetailsRequest listWorkspaceAssignmentDetailsRequest);
/**
- * Lists workspace assignments for a workspace. The response omits the per-principal entitlement
- * fields (`entitlements` and `effective_entitlements`). To read the entitlements for a single
- * principal, get that principal's assignment.
+ * Lists the principals assigned directly to a workspace. The response leaves `entitlements` and
+ * `effective_entitlements` empty. To read a principal's entitlements, get its assignment.
*/
ListWorkspaceAssignmentsResponse listWorkspaceAssignments(
ListWorkspaceAssignmentsRequest listWorkspaceAssignmentsRequest);
/**
- * Resolves a group with the given external ID from the customer's IdP. If the group does not
- * exist, it will be created in the account. If the customer is not onboarded onto Automatic
- * Identity Management (AIM), this will return an error.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in your account yet, it's added. Requires automatic identity
+ * management. If your account has group visibility filters, the group must match them.
*/
ResolveGroupResponse resolveGroup(ResolveGroupRequest resolveGroupRequest);
/**
- * Resolves a service principal with the given external ID from the customer's IdP. If the service
- * principal does not exist, it will be created. If the customer is not onboarded onto Automatic
- * Identity Management (AIM), this will return an error.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in your account yet, it's
+ * added. Requires automatic identity management with Microsoft Entra ID as your IdP.
*/
ResolveServicePrincipalResponse resolveServicePrincipal(
ResolveServicePrincipalRequest resolveServicePrincipalRequest);
/**
- * Resolves a user with the given external ID from the customer's IdP. If the user does not exist,
- * it will be created. If the customer is not onboarded onto Automatic Identity Management (AIM),
- * this will return an error.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in your account yet, they're added. Requires
+ * automatic identity management.
*/
ResolveUserResponse resolveUser(ResolveUserRequest resolveUserRequest);
/**
- * Updates an existing group in the Databricks account. Only the fields named in the update mask
- * are modified. Returns the updated Group resource.
+ * Updates a group. Only the fields in `update_mask` change.
*
- * When AIM is enabled and the group is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider. With AIM
- * and group visibility filters, a new nonempty external_id must identify a visible group.
- * Clearing external_id is allowed.
- *
- * Authorization: the caller must be an account admin or a manager of the group (holds the
- * `roles/group.manager` role on it).
+ * If automatic identity management is on and the group has an `external_id`, you can only
+ * update `external_id`. The group's other fields come from your identity provider. If your
+ * account also has group visibility filters, a new `external_id` must match them. You can always
+ * clear `external_id`.
*/
Group updateGroup(UpdateGroupRequest updateGroupRequest);
/**
- * Updates an existing service principal in the Databricks account. Only the fields named in the
- * update mask are modified. Returns the updated ServicePrincipal resource.
- *
- * To change is_agent on a locally managed service principal, set it to true or false. Naming
- * is_agent in the update mask without a value leaves it unchanged.
+ * Updates a service principal. Only the fields in `update_mask` change.
*
- * When AIM is enabled and the service principal is an external identity (its external_id is
- * set), only external_id can be updated; its other fields are sourced from your identity
- * provider.
+ * If automatic identity management is on and the service principal has an `external_id`, you
+ * can only update `external_id`. Its other fields come from your identity provider. A service
+ * principal can't deactivate itself, and you can't update service principals that Databricks
+ * manages.
*/
ServicePrincipal updateServicePrincipal(
UpdateServicePrincipalRequest updateServicePrincipalRequest);
/**
- * Updates an existing user in the Databricks account and returns the updated user. Only the
- * fields named in the update mask are modified. The updatable fields are fullName.givenName,
- * fullName.familyName, status, and externalId.
+ * Updates a user. Only the fields in `update_mask` change.
*
- * When AIM is enabled and the user is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider.
+ * If automatic identity management is on and the user has an `external_id`, you can only
+ * update `external_id`. The user's other fields come from your identity provider. You can't
+ * deactivate yourself or change the status of the account owner.
*/
User updateUser(UpdateUserRequest updateUserRequest);
/**
- * Updates the entitlements of a directly assigned principal in a workspace. Changes are applied
- * one at a time rather than atomically. If the request fails partway through, only some of the
- * requested changes take effect. Get the assignment afterwards to confirm the final state.
+ * Replaces the entitlements of a principal's direct assignment to a workspace. The new list can't
+ * be empty.
+ *
+ * Entitlements are changed one at a time. If the request fails partway through, only some of
+ * the changes take effect. Get the assignment afterwards to check the result.
*/
WorkspaceAssignment updateWorkspaceAssignment(
UpdateWorkspaceAssignmentRequest updateWorkspaceAssignmentRequest);
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberProxyRequest.java
index 88336efec..9a27bdf1a 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberProxyRequest.java
@@ -10,11 +10,11 @@
@Generated
public class CreateDirectGroupMemberProxyRequest {
- /** Required. The group membership to create. */
+ /** The member to add. Set its `principal_id`. */
@JsonProperty("direct_group_member")
private DirectGroupMember directGroupMember;
- /** The parent resource name of the group to add the member to. Format: groups/{group_id} */
+ /** The resource name of the group to add the member to, in the format `groups/{group_id}`. */
@JsonIgnore private String parent;
public CreateDirectGroupMemberProxyRequest setDirectGroupMember(
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberRequest.java
index 404fe73f5..64d60e264 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateDirectGroupMemberRequest.java
@@ -10,13 +10,13 @@
@Generated
public class CreateDirectGroupMemberRequest {
- /** Required. The direct group member to be added to the group. */
+ /** The member to add. Set its `principal_id`. */
@JsonProperty("direct_group_member")
private DirectGroupMember directGroupMember;
/**
- * The parent resource name of the group to add the member to. Format:
- * accounts/{account_id}/groups/{group_id}
+ * The resource name of the group to add the member to, in the format
+ * `accounts/{account_id}/groups/{group_id}`.
*/
@JsonIgnore private String parent;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupProxyRequest.java
index 2e2033f3f..17df27aee 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupProxyRequest.java
@@ -11,13 +11,13 @@
@Generated
public class CreateGroupProxyRequest {
- /** Required. Group to be created in Databricks */
+ /** The group to create. */
@JsonProperty("group")
private Group group;
/**
- * The resource name of the account to create the group in, `accounts/{account_id}`. Optional:
- * defaults to the account of the calling workspace, and any other account is rejected.
+ * The resource name of the account to create the group in, in the format `accounts/{account_id}`.
+ * Defaults to the account that contains this workspace. Any other account is rejected.
*/
@JsonIgnore
@QueryParam("parent")
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupRequest.java
index 98d344b7b..8a9948697 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateGroupRequest.java
@@ -10,13 +10,12 @@
@Generated
public class CreateGroupRequest {
- /** Required. Group to be created in Databricks */
+ /** The group to create. */
@JsonProperty("group")
private Group group;
/**
- * The parent resource name of the account in which to create the group. Format:
- * accounts/{account_id}
+ * The resource name of the account to create the group in, in the format `accounts/{account_id}`.
*/
@JsonIgnore private String parent;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateIdentityVisibilityFilterRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateIdentityVisibilityFilterRequest.java
index 8753a385b..1f221cb24 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateIdentityVisibilityFilterRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateIdentityVisibilityFilterRequest.java
@@ -12,22 +12,21 @@
@Generated
public class CreateIdentityVisibilityFilterRequest {
/**
- * Required. The filter to create. Set `principal_type` to `GROUP` and specify exactly one of
- * `exact`, `prefix`, or `regex`. The server assigns the resource name; any supplied `name` is
- * ignored.
+ * The filter to create. Set `principal_type` to `GROUP` and exactly one of `exact`, `prefix`, or
+ * `regex`. Databricks sets `name`, so any value you set is ignored.
*/
@JsonProperty("identity_visibility_filter")
private IdentityVisibilityFilter identityVisibilityFilter;
/**
- * Optional. The ID to use for the filter, which becomes the final component of its resource name.
- * If not specified or empty, the server generates one. Must not contain `/`.
+ * The ID to give the filter, which becomes the last part of its resource name. If you leave it
+ * empty, Databricks generates one. It can't contain `/`.
*/
@JsonIgnore
@QueryParam("identity_visibility_filter_id")
private String identityVisibilityFilterId;
- /** Required. The parent account. Format: accounts/{account_id} */
+ /** The resource name of the account, in the format `accounts/{account_id}`. */
@JsonIgnore private String parent;
public CreateIdentityVisibilityFilterRequest setIdentityVisibilityFilter(
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalProxyRequest.java
index a6d95d9d1..31c9a882f 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalProxyRequest.java
@@ -12,14 +12,15 @@
@Generated
public class CreateServicePrincipalProxyRequest {
/**
- * The resource name of the account to create the service principal in, `accounts/{account_id}`.
- * Optional: defaults to the account of the calling workspace, and any other account is rejected.
+ * The resource name of the account to create the service principal in, in the format
+ * `accounts/{account_id}`. Defaults to the account that contains this workspace. Any other
+ * account is rejected.
*/
@JsonIgnore
@QueryParam("parent")
private String parent;
- /** Required. Service principal to be created in Databricks */
+ /** The service principal to create. */
@JsonProperty("service_principal")
private ServicePrincipal servicePrincipal;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalRequest.java
index a732b478b..a2c4b7f98 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateServicePrincipalRequest.java
@@ -11,12 +11,12 @@
@Generated
public class CreateServicePrincipalRequest {
/**
- * The parent resource name of the account in which to create the service principal. Format:
- * accounts/{account_id}
+ * The resource name of the account to create the service principal in, in the format
+ * `accounts/{account_id}`.
*/
@JsonIgnore private String parent;
- /** Required. Service principal to be created in Databricks */
+ /** The service principal to create. */
@JsonProperty("service_principal")
private ServicePrincipal servicePrincipal;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserProxyRequest.java
index ed91c8f3e..60a5b8e78 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserProxyRequest.java
@@ -12,14 +12,14 @@
@Generated
public class CreateUserProxyRequest {
/**
- * The resource name of the account to create the user in, `accounts/{account_id}`. Optional:
- * defaults to the account of the calling workspace, and any other account is rejected.
+ * The resource name of the account to create the user in, in the format `accounts/{account_id}`.
+ * Defaults to the account that contains this workspace. Any other account is rejected.
*/
@JsonIgnore
@QueryParam("parent")
private String parent;
- /** Required. User to be created in Databricks */
+ /** The user to create. */
@JsonProperty("user")
private User user;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserRequest.java
index fae5f44f0..8ccf436f2 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateUserRequest.java
@@ -11,12 +11,11 @@
@Generated
public class CreateUserRequest {
/**
- * The parent resource name of the account in which to create the user. Format:
- * accounts/{account_id}
+ * The resource name of the account to create the user in, in the format `accounts/{account_id}`.
*/
@JsonIgnore private String parent;
- /** Required. User to be created in Databricks */
+ /** The user to create. */
@JsonProperty("user")
private User user;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentProxyRequest.java
index f58c04620..fa6c2baf0 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentProxyRequest.java
@@ -12,15 +12,15 @@
@Generated
public class CreateWorkspaceAssignmentProxyRequest {
/**
- * The resource name of the workspace to assign the principal to,
- * `accounts/{account_id}/workspaces/{workspace_id}`. Optional: defaults to the calling workspace,
- * and any other workspace is rejected.
+ * The resource name of the workspace, in the format
+ * `accounts/{account_id}/workspaces/{workspace_id}`. Defaults to this workspace. Any other
+ * workspace is rejected.
*/
@JsonIgnore
@QueryParam("parent")
private String parent;
- /** Required. Workspace assignment to be created in Databricks. */
+ /** The assignment to create. Set its `principal_id` and `entitlements`. */
@JsonProperty("workspace_assignment")
private WorkspaceAssignment workspaceAssignment;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentRequest.java
index 704d37b5a..e9a027d69 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/CreateWorkspaceAssignmentRequest.java
@@ -11,12 +11,12 @@
@Generated
public class CreateWorkspaceAssignmentRequest {
/**
- * The parent resource name of the workspace to assign the principal to. Format:
- * accounts/{account_id}/workspaces/{workspace_id}
+ * The resource name of the workspace, in the format
+ * `accounts/{account_id}/workspaces/{workspace_id}`.
*/
@JsonIgnore private String parent;
- /** Required. Workspace assignment to be created in Databricks. */
+ /** The assignment to create. Set its `principal_id` and `entitlements`. */
@JsonProperty("workspace_assignment")
private WorkspaceAssignment workspaceAssignment;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberProxyRequest.java
index 168fa1b18..0333d2f1c 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberProxyRequest.java
@@ -10,8 +10,8 @@
@Generated
public class DeleteDirectGroupMemberProxyRequest {
/**
- * The resource name of the group membership. Format:
- * groups/{group_id}/direct-members/{principal_id}
+ * The resource name of the membership, in the format
+ * `groups/{group_id}/direct-members/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberRequest.java
index da9d07b40..1ac209c59 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteDirectGroupMemberRequest.java
@@ -10,8 +10,8 @@
@Generated
public class DeleteDirectGroupMemberRequest {
/**
- * The resource name of the group membership. Format:
- * accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}
+ * The resource name of the membership, in the format
+ * `accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupProxyRequest.java
index 941ba0fac..57cea3912 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class DeleteGroupProxyRequest {
- /** The resource name of the group. Format: groups/{group_id} */
+ /** The resource name of the group, in the format `groups/{group_id}`. */
@JsonIgnore private String name;
public DeleteGroupProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupRequest.java
index 6cd8b5e37..c9d160bdf 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteGroupRequest.java
@@ -9,7 +9,7 @@
@Generated
public class DeleteGroupRequest {
- /** The resource name of the group. Format: accounts/{account_id}/groups/{group_id} */
+ /** The resource name of the group, in the format `accounts/{account_id}/groups/{group_id}`. */
@JsonIgnore private String name;
public DeleteGroupRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteIdentityVisibilityFilterRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteIdentityVisibilityFilterRequest.java
index fc1c1cbd7..dad86c6d1 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteIdentityVisibilityFilterRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteIdentityVisibilityFilterRequest.java
@@ -10,8 +10,8 @@
@Generated
public class DeleteIdentityVisibilityFilterRequest {
/**
- * Required. The resource name of the filter. Format:
- * accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}
+ * The resource name of the filter, in the format
+ * `accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalProxyRequest.java
index ad0ced620..4a7e9bb91 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalProxyRequest.java
@@ -10,7 +10,8 @@
@Generated
public class DeleteServicePrincipalProxyRequest {
/**
- * The resource name of the service principal. Format: service-principals/{service_principal_id}
+ * The resource name of the service principal, in the format
+ * `service-principals/{service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalRequest.java
index 752142396..980f7abc9 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteServicePrincipalRequest.java
@@ -10,8 +10,8 @@
@Generated
public class DeleteServicePrincipalRequest {
/**
- * The resource name of the service principal. Format:
- * accounts/{account_id}/service-principals/{service_principal_id}
+ * The resource name of the service principal, in the format
+ * `accounts/{account_id}/service-principals/{service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserProxyRequest.java
index a33cf5da5..6a09ffb91 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class DeleteUserProxyRequest {
- /** The resource name of the user. Format: users/{user_id} */
+ /** The resource name of the user, in the format `users/{user_id}`. */
@JsonIgnore private String name;
public DeleteUserProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserRequest.java
index 130e85431..06de06014 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteUserRequest.java
@@ -9,7 +9,7 @@
@Generated
public class DeleteUserRequest {
- /** The resource name of the user. Format: accounts/{account_id}/users/{user_id} */
+ /** The resource name of the user, in the format `accounts/{account_id}/users/{user_id}`. */
@JsonIgnore private String name;
public DeleteUserRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentProxyRequest.java
index ba2b993fd..e109026b6 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class DeleteWorkspaceAssignmentProxyRequest {
- /** The resource name of the workspace assignment. Format: workspace-assignments/{principal_id} */
+ /** The resource name of the assignment, in the format `workspace-assignments/{principal_id}`. */
@JsonIgnore private String name;
public DeleteWorkspaceAssignmentProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentRequest.java
index 2553a1ed5..0baf82f47 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DeleteWorkspaceAssignmentRequest.java
@@ -10,8 +10,8 @@
@Generated
public class DeleteWorkspaceAssignmentRequest {
/**
- * The resource name of the workspace assignment. Format:
- * accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}
+ * The resource name of the assignment, in the format
+ * `accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DirectGroupMember.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DirectGroupMember.java
index 34814a29d..2d6cf33dd 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DirectGroupMember.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/DirectGroupMember.java
@@ -7,46 +7,45 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
-/** Represents a principal that is a direct member of a group, with its source of membership. */
+/** A user, service principal, or group that's a direct member of a group. */
@Generated
public class DirectGroupMember {
- /** Display name of the principal. */
+ /** The member's display name. */
@JsonProperty("display_name")
private String displayName;
- /** The external ID of the principal in the customer's IdP. */
+ /** The ID of the member in your identity provider (IdP). */
@JsonProperty("external_id")
private String externalId;
- /** The internal ID of the group this member belongs to. */
+ /** The Databricks ID of the group. */
@JsonProperty("group_id")
private Long groupId;
- /** The source of group membership (internal or from identity provider). */
+ /** Where the membership comes from. */
@JsonProperty("membership_source")
private GroupMembershipSource membershipSource;
/**
- * The resource name of the group membership. The format depends on the API that returned it: -
- * Account-scoped: accounts/{account_id}/groups/{group_id}/direct-members/{principal_id} -
- * Workspace-scoped: groups/{group_id}/direct-members/{principal_id}
+ * The resource name of the membership, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}` - Workspace APIs:
+ * `groups/{group_id}/direct-members/{principal_id}`
*/
@JsonProperty("name")
private String name;
/**
- * The resource name of the group that contains the membership. The format depends on the API that
- * returned it: - Account-scoped: accounts/{account_id}/groups/{group_id} - Workspace-scoped:
- * groups/{group_id}
+ * The resource name of the group, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/groups/{group_id}` - Workspace APIs: `groups/{group_id}`
*/
@JsonProperty("parent")
private String parent;
- /** Internal ID of the principal in Databricks. */
+ /** The Databricks ID of the member. */
@JsonProperty("principal_id")
private Long principalId;
- /** The type of the principal (user/service principal/group). */
+ /** Whether the member is a user, service principal, or group. */
@JsonProperty("principal_type")
private PrincipalType principalType;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Entitlement.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Entitlement.java
index b59918cdb..07485d683 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Entitlement.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Entitlement.java
@@ -4,6 +4,7 @@
import com.databricks.sdk.support.Generated;
+/** A permission to use part of a Databricks workspace. */
@Generated
public enum Entitlement {
ALLOW_CLUSTER_CREATE,
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExactMatchRule.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExactMatchRule.java
index b93249b02..7c6ddebfb 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExactMatchRule.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExactMatchRule.java
@@ -7,12 +7,11 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
-/** An exact-match rule that matches a group's external ID from the identity provider. */
+/** A rule that matches a group by its ID in your identity provider (IdP). */
@Generated
public class ExactMatchRule {
/**
- * The identity provider's external ID for the group to match. This is not the Databricks group
- * ID. The value must be non-empty and is matched exactly, including case.
+ * The ID of the group in your IdP, not its Databricks ID. It's matched exactly, including case.
*/
@JsonProperty("external_id")
private String externalId;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalGroup.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalGroup.java
index ca963356a..f50cf2eb9 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalGroup.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalGroup.java
@@ -8,32 +8,33 @@
import java.util.Objects;
/**
- * An external group from the customer's Identity Provider, resolved into Databricks. This is a
- * read-only resource keyed by the IdP external ID. The Get method may trigger an idempotent sync
- * from the customer's IdP to provision or refresh the group's data in Databricks.
+ * A group from your identity provider (IdP), identified by its ID in your IdP. This resource is
+ * read-only. Getting an external group syncs its name and parent groups from your IdP, and adds it
+ * to your account if it isn't already there. If your account has group visibility filters, the
+ * group must match them.
*/
@Generated
public class ExternalGroup {
- /** The parent account ID, from Databricks. */
+ /** The ID of the account that contains the group. */
@JsonProperty("account_id")
private String accountId;
- /** Display name of the group from the customer's IdP. */
+ /** The name of the group, from your IdP. It's the same as the group's `group_name`. */
@JsonProperty("display_name")
private String displayName;
- /** The external ID of the group in the customer's IdP. */
+ /** The ID of the group in your IdP. */
@JsonProperty("external_group_id")
private String externalGroupId;
- /** Internal groupId of the group in Databricks. */
+ /** The Databricks ID of the group. Use it as the `group_id` in the group APIs. */
@JsonProperty("internal_id")
private String internalId;
/**
- * The resource name of the external group. The format depends on the API that returned it: -
- * Account-scoped: accounts/{account_id}/external-groups/{external_group_id} - Workspace-scoped:
- * external-groups/{external_group_id}
+ * The resource name of the external group, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/external-groups/{external_group_id}` - Workspace APIs:
+ * `external-groups/{external_group_id}`
*/
@JsonProperty("name")
private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalServicePrincipal.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalServicePrincipal.java
index be26cb901..c54123429 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalServicePrincipal.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalServicePrincipal.java
@@ -8,42 +8,44 @@
import java.util.Objects;
/**
- * An external service principal from the customer's Identity Provider, resolved into Databricks.
- * This is a read-only resource keyed by the IdP external ID. The Get method may trigger an
- * idempotent sync from the customer's IdP to provision or refresh the service principal's data in
- * Databricks.
+ * A service principal from your identity provider (IdP), identified by its ID in your IdP. This
+ * resource is read-only and requires Microsoft Entra ID as your IdP. Getting an external service
+ * principal syncs its details and group memberships from your IdP, and adds it to your account if
+ * it isn't already there.
*/
@Generated
public class ExternalServicePrincipal {
- /** The parent account ID, from Databricks. */
+ /** The ID of the account that contains the service principal. */
@JsonProperty("account_id")
private String accountId;
- /** The activity status of the service principal in the Databricks account. */
+ /** Whether the service principal is active in the account. */
@JsonProperty("account_sp_status")
private State accountSpStatus;
- /** Application ID of the service principal, from the customer's IdP. */
+ /** The service principal's application ID, from your IdP. */
@JsonProperty("application_id")
private String applicationId;
- /** Display name of the service principal, from the customer's IdP. */
+ /** The service principal's display name, from your IdP. */
@JsonProperty("display_name")
private String displayName;
- /** The external ID of the service principal in the customer's IdP. */
+ /** The ID of the service principal in your IdP. */
@JsonProperty("external_service_principal_id")
private String externalServicePrincipalId;
- /** Internal servicePrincipalId of the service principal in Databricks. */
+ /**
+ * The Databricks ID of the service principal. Use it as the `service_principal_id` in the service
+ * principal APIs.
+ */
@JsonProperty("internal_id")
private String internalId;
/**
- * The resource name of the external service principal. The format depends on the API that
- * returned it: - Account-scoped:
- * accounts/{account_id}/external-service-principals/{external_service_principal_id} -
- * Workspace-scoped: external-service-principals/{external_service_principal_id}
+ * The resource name of the external service principal, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/external-service-principals/{external_service_principal_id}` - Workspace
+ * APIs: `external-service-principals/{external_service_principal_id}`
*/
@JsonProperty("name")
private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalUser.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalUser.java
index cac74938a..180628056 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalUser.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ExternalUser.java
@@ -8,47 +8,45 @@
import java.util.Objects;
/**
- * An external user from the customer's Identity Provider, resolved into Databricks. This is a
- * read-only resource that allows customers to look up external user identities by their IdP
- * external ID and retrieve the corresponding Databricks internal ID and metadata. The Get method
- * may trigger an idempotent sync from the customer's IdP to provision or refresh the user's data in
- * Databricks.
+ * A user from your identity provider (IdP), identified by their ID in your IdP. This resource is
+ * read-only. Getting an external user syncs the user's details and group memberships from your IdP,
+ * and adds the user to your account if they aren't already there.
*/
@Generated
public class ExternalUser {
- /** The parent account ID, from Databricks. */
+ /** The ID of the account that contains the user. */
@JsonProperty("account_id")
private String accountId;
- /** The activity status of the user in the Databricks account. */
+ /** Whether the user is active in the account. */
@JsonProperty("account_user_status")
private State accountUserStatus;
- /** Display name of the user from the customer's IdP. */
+ /** The user's given and family names from your IdP, separated by a space. */
@JsonProperty("display_name")
private String displayName;
- /** The external ID of the user in the customer's IdP. */
+ /** The ID of the user in your IdP. */
@JsonProperty("external_user_id")
private String externalUserId;
- /** The full name of the user, from the customer's IdP. */
+ /** The user's name, from your IdP. */
@JsonProperty("full_name")
private FullName fullName;
- /** Internal userId of the user in Databricks. */
+ /** The Databricks ID of the user. Use it as the `user_id` in the user APIs. */
@JsonProperty("internal_id")
private String internalId;
/**
- * The resource name of the external user. The format depends on the API that returned it: -
- * Account-scoped: accounts/{account_id}/external-users/{external_user_id} - Workspace-scoped:
- * external-users/{external_user_id}
+ * The resource name of the external user, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/external-users/{external_user_id}` - Workspace APIs:
+ * `external-users/{external_user_id}`
*/
@JsonProperty("name")
private String name;
- /** Username/email of the user, from Databricks. */
+ /** The user's username, which is their email address. */
@JsonProperty("username")
private String username;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/FullName.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/FullName.java
index 8fc137b7e..d78a74562 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/FullName.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/FullName.java
@@ -7,14 +7,14 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
-/** The full name of a user. */
+/** A user's name, from your identity provider (IdP). */
@Generated
public class FullName {
- /** The family (last) name of the user, from the customer's IdP. */
+ /** The user's family (last) name. */
@JsonProperty("family_name")
private String familyName;
- /** The given (first) name of the user, from the customer's IdP. */
+ /** The user's given (first) name. */
@JsonProperty("given_name")
private String givenName;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberProxyRequest.java
index da84e46ee..d4b07e0da 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberProxyRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetDirectGroupMemberProxyRequest {
/**
- * The resource name of the group membership. Format:
- * groups/{group_id}/direct-members/{principal_id}
+ * The resource name of the membership, in the format
+ * `groups/{group_id}/direct-members/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberRequest.java
index 3fa170bc1..ca3ff9d8d 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetDirectGroupMemberRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetDirectGroupMemberRequest {
/**
- * The resource name of the group membership. Format:
- * accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}
+ * The resource name of the membership, in the format
+ * `accounts/{account_id}/groups/{group_id}/direct-members/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupProxyRequest.java
index 719ccfcc7..8db7ad73a 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupProxyRequest.java
@@ -10,7 +10,7 @@
@Generated
public class GetExternalGroupProxyRequest {
/**
- * Required. The resource name of the external group. Format: external-groups/{external_group_id}
+ * The resource name of the external group, in the format `external-groups/{external_group_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupRequest.java
index 9ae1a5244..9599ef27e 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalGroupRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetExternalGroupRequest {
/**
- * Required. The resource name of the external group. Format:
- * accounts/{account_id}/external-groups/{external_group_id}
+ * The resource name of the external group, in the format
+ * `accounts/{account_id}/external-groups/{external_group_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalProxyRequest.java
index 3c3c996bd..5cf6c448b 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalProxyRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetExternalServicePrincipalProxyRequest {
/**
- * Required. The resource name of the external service principal. Format:
- * external-service-principals/{external_service_principal_id}
+ * The resource name of the external service principal, in the format
+ * `external-service-principals/{external_service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalRequest.java
index c9f8f1d3c..08879293d 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalServicePrincipalRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetExternalServicePrincipalRequest {
/**
- * Required. The resource name of the external service principal. Format:
- * accounts/{account_id}/external-service-principals/{external_service_principal_id}
+ * The resource name of the external service principal, in the format
+ * `accounts/{account_id}/external-service-principals/{external_service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserProxyRequest.java
index fd3035fe2..5f18c5adb 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetExternalUserProxyRequest {
- /** Required. The resource name of the external user. Format: external-users/{external_user_id} */
+ /** The resource name of the external user, in the format `external-users/{external_user_id}`. */
@JsonIgnore private String name;
public GetExternalUserProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserRequest.java
index 0fc51e6d4..cc7908053 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetExternalUserRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetExternalUserRequest {
/**
- * Required. The resource name of the external user. Format:
- * accounts/{account_id}/external-users/{external_user_id}
+ * The resource name of the external user, in the format
+ * `accounts/{account_id}/external-users/{external_user_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupProxyRequest.java
index d81daa96b..1c09a6733 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetGroupProxyRequest {
- /** The resource name of the group. Format: groups/{group_id} */
+ /** The resource name of the group, in the format `groups/{group_id}`. */
@JsonIgnore private String name;
public GetGroupProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupRequest.java
index 46d4aa326..15abfa1f6 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetGroupRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetGroupRequest {
- /** The resource name of the group. Format: accounts/{account_id}/groups/{group_id} */
+ /** The resource name of the group, in the format `accounts/{account_id}/groups/{group_id}`. */
@JsonIgnore private String name;
public GetGroupRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetIdentityVisibilityFilterRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetIdentityVisibilityFilterRequest.java
index de5c6e900..42f4f8817 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetIdentityVisibilityFilterRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetIdentityVisibilityFilterRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetIdentityVisibilityFilterRequest {
/**
- * Required. The resource name of the filter. Format:
- * accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}
+ * The resource name of the filter, in the format
+ * `accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalProxyRequest.java
index 5a8c46828..b23a1dac3 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalProxyRequest.java
@@ -10,7 +10,8 @@
@Generated
public class GetServicePrincipalProxyRequest {
/**
- * The resource name of the service principal. Format: service-principals/{service_principal_id}
+ * The resource name of the service principal, in the format
+ * `service-principals/{service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalRequest.java
index 8c7b13968..eaaca52b8 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetServicePrincipalRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetServicePrincipalRequest {
/**
- * The resource name of the service principal. Format:
- * accounts/{account_id}/service-principals/{service_principal_id}
+ * The resource name of the service principal, in the format
+ * `accounts/{account_id}/service-principals/{service_principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserProxyRequest.java
index 967dd3520..2d19ea368 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetUserProxyRequest {
- /** The resource name of the user. Format: users/{user_id} */
+ /** The resource name of the user, in the format `users/{user_id}`. */
@JsonIgnore private String name;
public GetUserProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserRequest.java
index 0bfed4e30..3e36e5f05 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetUserRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetUserRequest {
- /** The resource name of the user. Format: accounts/{account_id}/users/{user_id} */
+ /** The resource name of the user, in the format `accounts/{account_id}/users/{user_id}`. */
@JsonIgnore private String name;
public GetUserRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentProxyRequest.java
index 9dc275ef6..f4625dc94 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentProxyRequest.java
@@ -9,7 +9,7 @@
@Generated
public class GetWorkspaceAssignmentProxyRequest {
- /** The resource name of the workspace assignment. Format: workspace-assignments/{principal_id} */
+ /** The resource name of the assignment, in the format `workspace-assignments/{principal_id}`. */
@JsonIgnore private String name;
public GetWorkspaceAssignmentProxyRequest setName(String name) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentRequest.java
index 17edc48c1..be765e10c 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceAssignmentRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetWorkspaceAssignmentRequest {
/**
- * The resource name of the workspace assignment. Format:
- * accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}
+ * The resource name of the assignment, in the format
+ * `accounts/{account_id}/workspaces/{workspace_id}/workspace-assignments/{principal_id}`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceIdentityDetailRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceIdentityDetailRequest.java
index 6735c9cec..0d742010e 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceIdentityDetailRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GetWorkspaceIdentityDetailRequest.java
@@ -10,8 +10,8 @@
@Generated
public class GetWorkspaceIdentityDetailRequest {
/**
- * The resource name of the workspace identity detail. Format:
- * principals/{principal_id}/workspace-identity-detail
+ * The resource name of the workspace identity detail, in the format
+ * `principals/{principal_id}/workspace-identity-detail`.
*/
@JsonIgnore private String name;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Group.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Group.java
index 4c46d8787..6ca93f838 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Group.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/Group.java
@@ -7,35 +7,35 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
-/** The details of a Group resource. */
+/** A group in your Databricks account. */
@Generated
public class Group {
- /** The parent account ID for group in Databricks. */
+ /** The ID of the account that contains the group. */
@JsonProperty("account_id")
private String accountId;
- /** ExternalId of the group in the customer's IdP. */
+ /** The ID of the group in your identity provider (IdP). */
@JsonProperty("external_id")
private String externalId;
- /** Internal group ID of the group in Databricks. */
+ /** The Databricks ID of the group. */
@JsonProperty("group_id")
private String groupId;
- /** Display name of the group. */
+ /** The name of the group. */
@JsonProperty("group_name")
private String groupName;
/**
- * The resource name of the group. The format depends on the API that returned it: -
- * Account-scoped: accounts/{account_id}/groups/{group_id} - Workspace-scoped: groups/{group_id}
+ * The resource name of the group, in one of these formats: - Account APIs:
+ * `accounts/{account_id}/groups/{group_id}` - Workspace APIs: `groups/{group_id}`
*/
@JsonProperty("name")
private String name;
/**
- * The resource name of the account that contains the group, `accounts/{account_id}`. Both the
- * account-scoped and workspace-scoped APIs return it.
+ * The resource name of the account that contains the group, in the format
+ * `accounts/{account_id}`. Workspace APIs return the same format.
*/
@JsonProperty("parent")
private String parent;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GroupMembershipSource.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GroupMembershipSource.java
index 6bf0eab3c..c5e2b327a 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GroupMembershipSource.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/GroupMembershipSource.java
@@ -4,7 +4,7 @@
import com.databricks.sdk.support.Generated;
-/** The source of the group membership (internal or from identity provider). */
+/** Where a group membership comes from. */
@Generated
public enum GroupMembershipSource {
IDENTITY_PROVIDER,
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/IdentityVisibilityFilter.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/IdentityVisibilityFilter.java
index 3a7aac3df..9ab8361b9 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/IdentityVisibilityFilter.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/IdentityVisibilityFilter.java
@@ -8,43 +8,41 @@
import java.util.Objects;
/**
- * An account-level rule that controls which identity provider groups are discoverable in directory
- * search and group pickers when automatic identity management is enabled. Filters apply across all
- * workspaces in the account.
+ * An account-level rule that controls which groups from your identity provider (IdP) can be found
+ * in directory search and group pickers when automatic identity management is on. Filters apply to
+ * every workspace in the account.
*
- * If no group filters are configured, all groups are visible. Otherwise, a group is visible if
- * it or any of its transitive parent groups matches at least one rule. A group is also visible if
- * it or any transitive parent group is already provisioned in the account. Local Databricks groups
- * remain visible regardless of the filters.
+ * If you have no group filters, all groups are visible. Otherwise, a group is visible if it or
+ * any of its parent groups matches at least one filter. A group is also visible if it or any of its
+ * parent groups is already in your account. Local Databricks groups are always visible.
*
- * Only group filters can be created. Filters do not change provisioning or sign-in for users and
- * service principals. Filters are immutable: to change a rule, delete it and create a new one.
+ * You can only create group filters. Filters don't affect provisioning or sign-in for users and
+ * service principals. You can't change a filter: to change a rule, delete it and create a new one.
*/
@Generated
public class IdentityVisibilityFilter {
- /** Exact match on the group's external ID from the identity provider. */
+ /** Matches a group by its ID in your IdP. */
@JsonProperty("exact")
private ExactMatchRule exact;
/**
- * The resource name of the identity-visibility filter. Format:
- * accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}
+ * The resource name of the filter, in the format
+ * `accounts/{account_id}/identity-visibility-filters/{identity_visibility_filter_id}`.
*/
@JsonProperty("name")
private String name;
- /** Case-sensitive starts-with match on the group's display name. */
+ /** Matches groups whose display name starts with a prefix. */
@JsonProperty("prefix")
private PrefixMatchRule prefix;
/**
- * The type of principal this rule applies to. Set to `GROUP` when creating a filter. Other
- * principal types are not supported for creation.
+ * The type of principal the filter applies to. Set it to `GROUP`. Other types aren't supported.
*/
@JsonProperty("principal_type")
private PrincipalType principalType;
- /** Full, case-sensitive RE2 match on the identity's display name. */
+ /** Matches groups whose display name matches a regular expression. */
@JsonProperty("regex")
private RegexMatchRule regex;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersProxyRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersProxyRequest.java
index 834315274..700b90fcb 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersProxyRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersProxyRequest.java
@@ -11,22 +11,19 @@
@Generated
public class ListDirectGroupMembersProxyRequest {
/**
- * The maximum number of members to return. The service may return fewer than this value. If not
- * provided, defaults to 1000, which is also the maximum allowed. Requests for more than the
- * maximum are clamped to 1000.
+ * The maximum number of members to return, up to 1000. The default is 1000. A page can contain
+ * fewer members.
*/
@JsonIgnore
@QueryParam("page_size")
private Long pageSize;
- /** A page token from a previous list call. Provide this to retrieve the subsequent page. */
+ /** The `next_page_token` from a previous response, to get the next page. */
@JsonIgnore
@QueryParam("page_token")
private String pageToken;
- /**
- * The parent resource name of the group whose direct members to list. Format: groups/{group_id}
- */
+ /** The resource name of the group, in the format `groups/{group_id}`. */
@JsonIgnore private String parent;
public ListDirectGroupMembersProxyRequest setPageSize(Long pageSize) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersRequest.java
index e50474c1d..4f5cbd49e 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersRequest.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersRequest.java
@@ -11,26 +11,19 @@
@Generated
public class ListDirectGroupMembersRequest {
/**
- * The maximum number of members to return. The service may return fewer than this value. If not
- * provided, defaults to 1000, which is also the maximum allowed. Requests for more than the
- * maximum are clamped to 1000.
+ * The maximum number of members to return, up to 1000. The default is 1000. A page can contain
+ * fewer members.
*/
@JsonIgnore
@QueryParam("page_size")
private Long pageSize;
- /**
- * A page token, received from a previous ListDirectGroupMembers call. Provide this to retrieve
- * the subsequent page.
- */
+ /** The `next_page_token` from a previous response, to get the next page. */
@JsonIgnore
@QueryParam("page_token")
private String pageToken;
- /**
- * The parent resource name of the group whose direct members to list. Format:
- * accounts/{account_id}/groups/{group_id}
- */
+ /** The resource name of the group, in the format `accounts/{account_id}/groups/{group_id}`. */
@JsonIgnore private String parent;
public ListDirectGroupMembersRequest setPageSize(Long pageSize) {
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersResponse.java
index 41519aa94..47a295636 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersResponse.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/ListDirectGroupMembersResponse.java
@@ -8,17 +8,14 @@
import java.util.Collection;
import java.util.Objects;
-/** Response message for listing direct group members. */
+/** A page of direct members of a group. */
@Generated
public class ListDirectGroupMembersResponse {
- /** The list of direct group members with their membership source type. */
+ /** The members on this page. */
@JsonProperty("direct_group_members")
private Collection This resource covers only principals assigned directly to the workspace. Principals that
- * inherit workspace access through a group are not represented here. See WorkspaceAccessDetail and
- * WorkspaceIdentityDetail for the effective, direct-or-indirect view. Creating the resource assigns
- * the principal to the workspace, and deleting it removes the assignment.
+ * Only principals assigned directly to the workspace have an assignment. A principal that gets
+ * access only through a group doesn't. Creating an assignment gives the principal access to the
+ * workspace, and deleting it removes that direct access. These APIs replace managing workspace
+ * assignments through SCIM and the permission assignment APIs. They require a workspace with
+ * identity federation enabled. You can't assign, change, or unassign principals that Databricks
+ * manages.
*
- * `entitlements` is the only client-settable field. It holds the entitlements granted directly
- * on this assignment, including any the principal also holds through a group.
- * `effective_entitlements` is the read-only union of those and any granted through group
- * membership.
- *
- * A direct assignment always carries at least one directly-assigned entitlement, because the
- * assignment is what grants it. Create and update both reject an empty `entitlements` set. To
- * remove a principal's assignment entirely, delete the resource.
- *
- * This resource replaces workspace assignment previously managed through the workspace SCIM and
- * permission-assignment APIs, and is intended for account and workspace admins.
+ * `entitlements` is the only field you set. `effective_entitlements` also includes the
+ * entitlements the principal gets through its groups. An assignment must grant at least one
+ * entitlement. To remove a principal's direct access, delete the assignment.
*/
@Generated
public class WorkspaceAssignment {
- /** The account ID parent of the workspace where the principal is assigned */
+ /** The ID of the account that contains the workspace. */
@JsonProperty("account_id")
private String accountId;
/**
- * Every entitlement the principal holds in this workspace, whether granted directly or through
- * group membership. Get responses populate this field. List responses leave it empty.
+ * Every entitlement the principal has in the workspace, granted directly or through a group. List
+ * responses leave it empty.
*/
@JsonProperty("effective_entitlements")
private Collection If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
+ */
public DirectGroupMember createDirectGroupMemberProxy(
CreateDirectGroupMemberProxyRequest request) {
return impl.createDirectGroupMemberProxy(request);
}
/**
- * Creates a local group in the Databricks account that parents the calling workspace and returns
- * the created group. A local group is one that is not synced from the customer's identity
- * provider, and can be created whether or not Account Identity Management (AIM) is enabled.
+ * Creates a local group in the account that contains this workspace. A local group is a group
+ * that isn't synced from your identity provider (IdP). You become a manager of the new group.
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveGroup; to read an
- * existing external identity, use the ExternalGroup resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a group from
+ * your IdP, get it as an external group instead.
*/
public Group createGroupProxy(CreateGroupProxyRequest request) {
return impl.createGroupProxy(request);
}
/**
- * Creates a local service principal in the Databricks account that parents the calling workspace
- * and returns the created service principal. A local service principal is one that is not synced
- * from the customer's identity provider, and can be created whether or not Account Identity
- * Management (AIM) is enabled.
+ * Creates a local service principal in the account that contains this workspace. A local service
+ * principal is one that isn't synced from your identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveServicePrincipal; to
- * read an existing external identity, use the ExternalServicePrincipal resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a service
+ * principal from your IdP, get it as an external service principal instead.
*/
public ServicePrincipal createServicePrincipalProxy(CreateServicePrincipalProxyRequest request) {
return impl.createServicePrincipalProxy(request);
}
/**
- * Creates a local user in the Databricks account that parents the calling workspace and returns
- * the created user. A local user is one that is not synced from the customer's identity provider,
- * and can be created whether or not Account Identity Management (AIM) is enabled.
+ * Creates a local user in the account that contains this workspace. A local user is a user that
+ * isn't synced from your identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveUser; to read an
- * existing external identity, use the ExternalUser resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a user from your
+ * IdP, get them as an external user instead.
*/
public User createUserProxy(CreateUserProxyRequest request) {
return impl.createUserProxy(request);
@@ -80,10 +79,12 @@ public WorkspaceAssignmentDetail createWorkspaceAssignmentDetailProxy(
}
/**
- * Creates a workspace assignment for a principal in the calling workspace. Entitlements are
- * granted one at a time rather than atomically. If the request fails partway through, the
- * principal stays assigned to the workspace with only some of the requested entitlements. Get the
- * assignment afterwards to confirm which entitlements were granted.
+ * Assigns a user, service principal, or group directly to this workspace with the given
+ * entitlements. Returns an error if the principal is already assigned directly.
+ *
+ * Entitlements are granted one at a time. If the request fails partway through, the principal
+ * stays assigned with only some of the entitlements. Get the assignment afterwards to check which
+ * were granted.
*/
public WorkspaceAssignment createWorkspaceAssignmentProxy(
CreateWorkspaceAssignmentProxyRequest request) {
@@ -94,7 +95,12 @@ public void deleteDirectGroupMemberProxy(String name) {
deleteDirectGroupMemberProxy(new DeleteDirectGroupMemberProxyRequest().setName(name));
}
- /** Deletes a group membership (unassigns a principal from a group). */
+ /**
+ * Removes a direct member from a group in the account that contains this workspace.
+ *
+ * If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
+ */
public void deleteDirectGroupMemberProxy(DeleteDirectGroupMemberProxyRequest request) {
impl.deleteDirectGroupMemberProxy(request);
}
@@ -104,8 +110,8 @@ public void deleteGroupProxy(String name) {
}
/**
- * Deletes a group by its internal ID from the Databricks account that parents the calling
- * workspace.
+ * Deletes a group from the account that contains this workspace and removes it from the
+ * workspaces it's assigned to.
*/
public void deleteGroupProxy(DeleteGroupProxyRequest request) {
impl.deleteGroupProxy(request);
@@ -116,8 +122,8 @@ public void deleteServicePrincipalProxy(String name) {
}
/**
- * Deletes a service principal by its internal ID from the Databricks account that parents the
- * calling workspace.
+ * Deletes a service principal from the account that contains this workspace and removes it from
+ * the workspaces it's assigned to. You can't delete service principals that Databricks manages.
*/
public void deleteServicePrincipalProxy(DeleteServicePrincipalProxyRequest request) {
impl.deleteServicePrincipalProxy(request);
@@ -128,8 +134,8 @@ public void deleteUserProxy(String name) {
}
/**
- * Deletes a user by its internal ID from the Databricks account that parents the calling
- * workspace.
+ * Deletes a user from the account that contains this workspace and removes them from the
+ * workspaces they're assigned to.
*/
public void deleteUserProxy(DeleteUserProxyRequest request) {
impl.deleteUserProxy(request);
@@ -156,10 +162,11 @@ public void deleteWorkspaceAssignmentProxy(String name) {
}
/**
- * Deletes a workspace assignment for a principal in the calling workspace, revoking all of its
- * entitlements. Entitlements are revoked one at a time rather than atomically. If the request
- * fails partway through, the principal stays assigned with some of its original entitlements.
- * Retrying is safe.
+ * Removes a principal's direct assignment to this workspace and revokes the entitlements it
+ * granted. The principal keeps any access it gets through groups.
+ *
+ * Entitlements are revoked one at a time. If the request fails partway through, the principal
+ * stays assigned with some of its entitlements. You can retry the request.
*/
public void deleteWorkspaceAssignmentProxy(DeleteWorkspaceAssignmentProxyRequest request) {
impl.deleteWorkspaceAssignmentProxy(request);
@@ -169,7 +176,10 @@ public DirectGroupMember getDirectGroupMemberProxy(String name) {
return getDirectGroupMemberProxy(new GetDirectGroupMemberProxyRequest().setName(name));
}
- /** Gets a provisioned direct member of a group. */
+ /**
+ * Gets a direct member of a group in the account that contains this workspace, including where
+ * the membership comes from. Returns an error if the principal isn't a direct member.
+ */
public DirectGroupMember getDirectGroupMemberProxy(GetDirectGroupMemberProxyRequest request) {
return impl.getDirectGroupMemberProxy(request);
}
@@ -179,10 +189,10 @@ public ExternalGroup getExternalGroupProxy(String name) {
}
/**
- * Retrieves an external group with the given external ID from the customer's IdP. If the group
- * does not exist, it will be created in the account. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in the account that contains this workspace yet, it's added.
+ * Requires automatic identity management. If your account has group visibility filters, the group
+ * must match them.
*/
public ExternalGroup getExternalGroupProxy(GetExternalGroupProxyRequest request) {
return impl.getExternalGroupProxy(request);
@@ -194,10 +204,10 @@ public ExternalServicePrincipal getExternalServicePrincipalProxy(String name) {
}
/**
- * Retrieves an external service principal with the given external ID from the customer's IdP. If
- * the service principal does not exist, it will be created. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in the account that contains
+ * this workspace yet, it's added. Requires automatic identity management with Microsoft Entra ID
+ * as your IdP.
*/
public ExternalServicePrincipal getExternalServicePrincipalProxy(
GetExternalServicePrincipalProxyRequest request) {
@@ -209,10 +219,9 @@ public ExternalUser getExternalUserProxy(String name) {
}
/**
- * Retrieves an external user with the given external ID from the customer's IdP. If the user does
- * not exist, it will be created. If the customer is not onboarded onto Automatic Identity
- * Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in the account that contains this workspace yet,
+ * they're added. Requires automatic identity management.
*/
public ExternalUser getExternalUserProxy(GetExternalUserProxyRequest request) {
return impl.getExternalUserProxy(request);
@@ -222,10 +231,7 @@ public Group getGroupProxy(String name) {
return getGroupProxy(new GetGroupProxyRequest().setName(name));
}
- /**
- * Fetches a group by its internal ID from the Databricks account that parents the calling
- * workspace.
- */
+ /** Gets a group in the account that contains this workspace by its Databricks ID. */
public Group getGroupProxy(GetGroupProxyRequest request) {
return impl.getGroupProxy(request);
}
@@ -234,10 +240,7 @@ public ServicePrincipal getServicePrincipalProxy(String name) {
return getServicePrincipalProxy(new GetServicePrincipalProxyRequest().setName(name));
}
- /**
- * Fetches a service principal by its internal ID from the Databricks account that parents the
- * calling workspace.
- */
+ /** Gets a service principal in the account that contains this workspace by its Databricks ID. */
public ServicePrincipal getServicePrincipalProxy(GetServicePrincipalProxyRequest request) {
return impl.getServicePrincipalProxy(request);
}
@@ -246,10 +249,7 @@ public User getUserProxy(String name) {
return getUserProxy(new GetUserProxyRequest().setName(name));
}
- /**
- * Fetches a user by its internal ID from the Databricks account that parents the calling
- * workspace.
- */
+ /** Gets a user in the account that contains this workspace by their Databricks ID. */
public User getUserProxy(GetUserProxyRequest request) {
return impl.getUserProxy(request);
}
@@ -285,7 +285,10 @@ public WorkspaceAssignment getWorkspaceAssignmentProxy(String name) {
return getWorkspaceAssignmentProxy(new GetWorkspaceAssignmentProxyRequest().setName(name));
}
- /** Returns the assignment for a principal in the calling workspace. */
+ /**
+ * Gets a principal's direct assignment to this workspace, including its effective entitlements.
+ * Returns an error if the principal isn't assigned directly.
+ */
public WorkspaceAssignment getWorkspaceAssignmentProxy(
GetWorkspaceAssignmentProxyRequest request) {
return impl.getWorkspaceAssignmentProxy(request);
@@ -295,7 +298,10 @@ public WorkspaceIdentityDetail getWorkspaceIdentityDetail(String name) {
return getWorkspaceIdentityDetail(new GetWorkspaceIdentityDetailRequest().setName(name));
}
- /** Returns the identity details for a principal in a workspace. */
+ /**
+ * Gets a principal's status in this workspace and whether it has access directly or through a
+ * group. Returns an error if the principal doesn't have access to the workspace.
+ */
public WorkspaceIdentityDetail getWorkspaceIdentityDetail(
GetWorkspaceIdentityDetailRequest request) {
return impl.getWorkspaceIdentityDetail(request);
@@ -306,8 +312,9 @@ public Iterable When AIM is enabled and the group is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider. With AIM
- * and group visibility filters, a new nonempty external_id must identify a visible group.
- * Clearing external_id is allowed.
+ * If automatic identity management is on and the group has an `external_id`, you can only
+ * update `external_id`. The group's other fields come from your identity provider. If your
+ * account also has group visibility filters, a new `external_id` must match them. You can always
+ * clear `external_id`.
*/
public Group updateGroupProxy(UpdateGroupProxyRequest request) {
return impl.updateGroupProxy(request);
}
/**
- * Updates an existing service principal in the Databricks account that parents the calling
- * workspace. Only the fields named in the update mask are modified. Returns the updated
- * ServicePrincipal resource.
- *
- * To change is_agent on a locally managed service principal, set it to true or false. Naming
- * is_agent in the update mask without a value leaves it unchanged.
+ * Updates a service principal in the account that contains this workspace. Only the fields in
+ * `update_mask` change.
*
- * When AIM is enabled and the service principal is an external identity (its external_id is
- * set), only external_id can be updated; its other fields are sourced from your identity
- * provider.
+ * If automatic identity management is on and the service principal has an `external_id`, you
+ * can only update `external_id`. Its other fields come from your identity provider. A service
+ * principal can't deactivate itself, and you can't update service principals that Databricks
+ * manages.
*/
public ServicePrincipal updateServicePrincipalProxy(UpdateServicePrincipalProxyRequest request) {
return impl.updateServicePrincipalProxy(request);
}
/**
- * Updates an existing user in the Databricks account that parents the calling workspace and
- * returns the updated user. Only the fields named in the update mask are modified. The updatable
- * fields are fullName.givenName, fullName.familyName, status, and externalId.
+ * Updates a user in the account that contains this workspace. Only the fields in `update_mask`
+ * change.
*
- * When AIM is enabled and the user is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider.
+ * If automatic identity management is on and the user has an `external_id`, you can only
+ * update `external_id`. The user's other fields come from your identity provider. You can't
+ * deactivate yourself or change the status of the account owner.
*/
public User updateUserProxy(UpdateUserProxyRequest request) {
return impl.updateUserProxy(request);
@@ -511,16 +522,21 @@ public WorkspaceAssignmentDetail updateWorkspaceAssignmentDetailProxy(
}
/**
- * Updates the entitlements of a directly assigned principal in the calling workspace. Changes are
- * applied one at a time rather than atomically. If the request fails partway through, only some
- * of the requested changes take effect. Get the assignment afterwards to confirm the final state.
+ * Replaces the entitlements of a principal's direct assignment to this workspace. The new list
+ * can't be empty.
+ *
+ * Entitlements are changed one at a time. If the request fails partway through, only some of
+ * the changes take effect. Get the assignment afterwards to check the result.
*/
public WorkspaceAssignment updateWorkspaceAssignmentProxy(
UpdateWorkspaceAssignmentProxyRequest request) {
return impl.updateWorkspaceAssignmentProxy(request);
}
- /** Updates a workspace identity detail for a principal. */
+ /**
+ * Activates or deactivates a user or service principal in this workspace. You can only update
+ * `workspace_identity_status`. You can't change your own status or the status of a group.
+ */
public WorkspaceIdentityDetail updateWorkspaceIdentityDetail(
UpdateWorkspaceIdentityDetailRequest request) {
return impl.updateWorkspaceIdentityDetail(request);
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIamV2Service.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIamV2Service.java
index 603542a5b..c613fd90a 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIamV2Service.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIamV2Service.java
@@ -13,42 +13,41 @@
*/
@Generated
public interface WorkspaceIamV2Service {
- /** Creates a group membership (assigns a principal to a group). */
+ /**
+ * Adds a user, service principal, or group as a direct member of a group in the account that
+ * contains this workspace.
+ *
+ * If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
+ */
DirectGroupMember createDirectGroupMemberProxy(
CreateDirectGroupMemberProxyRequest createDirectGroupMemberProxyRequest);
/**
- * Creates a local group in the Databricks account that parents the calling workspace and returns
- * the created group. A local group is one that is not synced from the customer's identity
- * provider, and can be created whether or not Account Identity Management (AIM) is enabled.
+ * Creates a local group in the account that contains this workspace. A local group is a group
+ * that isn't synced from your identity provider (IdP). You become a manager of the new group.
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveGroup; to read an
- * existing external identity, use the ExternalGroup resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a group from
+ * your IdP, get it as an external group instead.
*/
Group createGroupProxy(CreateGroupProxyRequest createGroupProxyRequest);
/**
- * Creates a local service principal in the Databricks account that parents the calling workspace
- * and returns the created service principal. A local service principal is one that is not synced
- * from the customer's identity provider, and can be created whether or not Account Identity
- * Management (AIM) is enabled.
+ * Creates a local service principal in the account that contains this workspace. A local service
+ * principal is one that isn't synced from your identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveServicePrincipal; to
- * read an existing external identity, use the ExternalServicePrincipal resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a service
+ * principal from your IdP, get it as an external service principal instead.
*/
ServicePrincipal createServicePrincipalProxy(
CreateServicePrincipalProxyRequest createServicePrincipalProxyRequest);
/**
- * Creates a local user in the Databricks account that parents the calling workspace and returns
- * the created user. A local user is one that is not synced from the customer's identity provider,
- * and can be created whether or not Account Identity Management (AIM) is enabled.
+ * Creates a local user in the account that contains this workspace. A local user is a user that
+ * isn't synced from your identity provider (IdP).
*
- * When AIM is enabled, supplying an external ID returns an error. To provision the identity
- * from your identity provider, resolve it by its external ID with ResolveUser; to read an
- * existing external identity, use the ExternalUser resource.
+ * If automatic identity management is on, you can't set `external_id`. To add a user from your
+ * IdP, get them as an external user instead.
*/
User createUserProxy(CreateUserProxyRequest createUserProxyRequest);
@@ -57,34 +56,41 @@ WorkspaceAssignmentDetail createWorkspaceAssignmentDetailProxy(
CreateWorkspaceAssignmentDetailProxyRequest createWorkspaceAssignmentDetailProxyRequest);
/**
- * Creates a workspace assignment for a principal in the calling workspace. Entitlements are
- * granted one at a time rather than atomically. If the request fails partway through, the
- * principal stays assigned to the workspace with only some of the requested entitlements. Get the
- * assignment afterwards to confirm which entitlements were granted.
+ * Assigns a user, service principal, or group directly to this workspace with the given
+ * entitlements. Returns an error if the principal is already assigned directly.
+ *
+ * Entitlements are granted one at a time. If the request fails partway through, the principal
+ * stays assigned with only some of the entitlements. Get the assignment afterwards to check which
+ * were granted.
*/
WorkspaceAssignment createWorkspaceAssignmentProxy(
CreateWorkspaceAssignmentProxyRequest createWorkspaceAssignmentProxyRequest);
- /** Deletes a group membership (unassigns a principal from a group). */
+ /**
+ * Removes a direct member from a group in the account that contains this workspace.
+ *
+ * If automatic identity management is on and the group has an `external_id`, its members come
+ * from your identity provider and can't be changed in Databricks.
+ */
void deleteDirectGroupMemberProxy(
DeleteDirectGroupMemberProxyRequest deleteDirectGroupMemberProxyRequest);
/**
- * Deletes a group by its internal ID from the Databricks account that parents the calling
- * workspace.
+ * Deletes a group from the account that contains this workspace and removes it from the
+ * workspaces it's assigned to.
*/
void deleteGroupProxy(DeleteGroupProxyRequest deleteGroupProxyRequest);
/**
- * Deletes a service principal by its internal ID from the Databricks account that parents the
- * calling workspace.
+ * Deletes a service principal from the account that contains this workspace and removes it from
+ * the workspaces it's assigned to. You can't delete service principals that Databricks manages.
*/
void deleteServicePrincipalProxy(
DeleteServicePrincipalProxyRequest deleteServicePrincipalProxyRequest);
/**
- * Deletes a user by its internal ID from the Databricks account that parents the calling
- * workspace.
+ * Deletes a user from the account that contains this workspace and removes them from the
+ * workspaces they're assigned to.
*/
void deleteUserProxy(DeleteUserProxyRequest deleteUserProxyRequest);
@@ -98,60 +104,54 @@ void deleteWorkspaceAssignmentDetailProxy(
DeleteWorkspaceAssignmentDetailProxyRequest deleteWorkspaceAssignmentDetailProxyRequest);
/**
- * Deletes a workspace assignment for a principal in the calling workspace, revoking all of its
- * entitlements. Entitlements are revoked one at a time rather than atomically. If the request
- * fails partway through, the principal stays assigned with some of its original entitlements.
- * Retrying is safe.
+ * Removes a principal's direct assignment to this workspace and revokes the entitlements it
+ * granted. The principal keeps any access it gets through groups.
+ *
+ * Entitlements are revoked one at a time. If the request fails partway through, the principal
+ * stays assigned with some of its entitlements. You can retry the request.
*/
void deleteWorkspaceAssignmentProxy(
DeleteWorkspaceAssignmentProxyRequest deleteWorkspaceAssignmentProxyRequest);
- /** Gets a provisioned direct member of a group. */
+ /**
+ * Gets a direct member of a group in the account that contains this workspace, including where
+ * the membership comes from. Returns an error if the principal isn't a direct member.
+ */
DirectGroupMember getDirectGroupMemberProxy(
GetDirectGroupMemberProxyRequest getDirectGroupMemberProxyRequest);
/**
- * Retrieves an external group with the given external ID from the customer's IdP. If the group
- * does not exist, it will be created in the account. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in the account that contains this workspace yet, it's added.
+ * Requires automatic identity management. If your account has group visibility filters, the group
+ * must match them.
*/
ExternalGroup getExternalGroupProxy(GetExternalGroupProxyRequest getExternalGroupProxyRequest);
/**
- * Retrieves an external service principal with the given external ID from the customer's IdP. If
- * the service principal does not exist, it will be created. If the customer is not onboarded onto
- * Automatic Identity Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in the account that contains
+ * this workspace yet, it's added. Requires automatic identity management with Microsoft Entra ID
+ * as your IdP.
*/
ExternalServicePrincipal getExternalServicePrincipalProxy(
GetExternalServicePrincipalProxyRequest getExternalServicePrincipalProxyRequest);
/**
- * Retrieves an external user with the given external ID from the customer's IdP. If the user does
- * not exist, it will be created. If the customer is not onboarded onto Automatic Identity
- * Management (AIM), this will return an error. Workspace-scoped variant for
- * workspace-authenticated callers.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in the account that contains this workspace yet,
+ * they're added. Requires automatic identity management.
*/
ExternalUser getExternalUserProxy(GetExternalUserProxyRequest getExternalUserProxyRequest);
- /**
- * Fetches a group by its internal ID from the Databricks account that parents the calling
- * workspace.
- */
+ /** Gets a group in the account that contains this workspace by its Databricks ID. */
Group getGroupProxy(GetGroupProxyRequest getGroupProxyRequest);
- /**
- * Fetches a service principal by its internal ID from the Databricks account that parents the
- * calling workspace.
- */
+ /** Gets a service principal in the account that contains this workspace by its Databricks ID. */
ServicePrincipal getServicePrincipalProxy(
GetServicePrincipalProxyRequest getServicePrincipalProxyRequest);
- /**
- * Fetches a user by its internal ID from the Databricks account that parents the calling
- * workspace.
- */
+ /** Gets a user in the account that contains this workspace by their Databricks ID. */
User getUserProxy(GetUserProxyRequest getUserProxyRequest);
/**
@@ -168,41 +168,54 @@ WorkspaceAccessDetail getWorkspaceAccessDetailLocal(
WorkspaceAssignmentDetail getWorkspaceAssignmentDetailProxy(
GetWorkspaceAssignmentDetailProxyRequest getWorkspaceAssignmentDetailProxyRequest);
- /** Returns the assignment for a principal in the calling workspace. */
+ /**
+ * Gets a principal's direct assignment to this workspace, including its effective entitlements.
+ * Returns an error if the principal isn't assigned directly.
+ */
WorkspaceAssignment getWorkspaceAssignmentProxy(
GetWorkspaceAssignmentProxyRequest getWorkspaceAssignmentProxyRequest);
- /** Returns the identity details for a principal in a workspace. */
+ /**
+ * Gets a principal's status in this workspace and whether it has access directly or through a
+ * group. Returns an error if the principal doesn't have access to the workspace.
+ */
WorkspaceIdentityDetail getWorkspaceIdentityDetail(
GetWorkspaceIdentityDetailRequest getWorkspaceIdentityDetailRequest);
/**
- * Lists provisioned direct members of a group with their membership source (internal or from
- * identity provider).
+ * Lists the direct members of a group in the account that contains this workspace, sorted by
+ * display name, with where each membership comes from. Members in your identity provider who
+ * haven't been added to Databricks aren't included.
*/
ListDirectGroupMembersResponse listDirectGroupMembersProxy(
ListDirectGroupMembersProxyRequest listDirectGroupMembersProxyRequest);
/**
- * Lists the groups in the Databricks account that parents the calling workspace, returning one
- * page per call. Supports filtering by group name or external ID.
+ * Lists the groups in the account that contains this workspace, sorted by Databricks ID. Groups
+ * in your identity provider that haven't been added to Databricks aren't included.
*/
ListGroupsResponse listGroupsProxy(ListGroupsProxyRequest listGroupsProxyRequest);
/**
- * Lists the service principals in the Databricks account that parents the calling workspace,
- * returning one page per call. Supports filtering by application ID or external ID.
+ * Lists the service principals in the account that contains this workspace, sorted by Databricks
+ * ID. Service principals in your identity provider that haven't been added to Databricks aren't
+ * included.
*/
ListServicePrincipalsResponse listServicePrincipalsProxy(
ListServicePrincipalsProxyRequest listServicePrincipalsProxyRequest);
- /** Lists all transitive parent groups of a principal. */
+ /**
+ * Lists every group that a user, service principal, or group belongs to, directly or through
+ * other groups, in the account that contains this workspace. Results are sorted by Databricks ID.
+ * If automatic identity management is on, the principal's group memberships are synced from your
+ * identity provider first.
+ */
ListTransitiveParentGroupsResponse listTransitiveParentGroupsProxy(
ListTransitiveParentGroupsProxyRequest listTransitiveParentGroupsProxyRequest);
/**
- * Lists the users in the Databricks account that parents the calling workspace, returning one
- * page per call. Supports filtering by username or external ID.
+ * Lists the users in the account that contains this workspace, sorted by Databricks ID. Users in
+ * your identity provider who haven't been added to Databricks aren't included.
*/
ListUsersResponse listUsersProxy(ListUsersProxyRequest listUsersProxyRequest);
@@ -215,68 +228,66 @@ ListWorkspaceAssignmentDetailsResponse listWorkspaceAssignmentDetailsProxy(
ListWorkspaceAssignmentDetailsProxyRequest listWorkspaceAssignmentDetailsProxyRequest);
/**
- * Lists workspace assignments for the calling workspace. The response omits the per-principal
- * entitlement fields (`entitlements` and `effective_entitlements`). To read the entitlements for
- * a single principal, get that principal's assignment.
+ * Lists the principals assigned directly to this workspace. The response leaves `entitlements`
+ * and `effective_entitlements` empty. To read a principal's entitlements, get its assignment.
*/
ListWorkspaceAssignmentsResponse listWorkspaceAssignmentsProxy(
ListWorkspaceAssignmentsProxyRequest listWorkspaceAssignmentsProxyRequest);
/**
- * Resolves a group with the given external ID from the customer's IdP. If the group does not
- * exist, it will be created in the account. If the customer is not onboarded onto Automatic
- * Identity Management (AIM), this will return an error.
+ * Gets a group by its ID in your identity provider (IdP) and syncs its name and parent groups
+ * from your IdP. If the group isn't in the account that contains this workspace yet, it's added.
+ * Requires automatic identity management. If your account has group visibility filters, the group
+ * must match them.
*/
ResolveGroupResponse resolveGroupProxy(ResolveGroupProxyRequest resolveGroupProxyRequest);
/**
- * Resolves a service principal with the given external ID from the customer's IdP. If the service
- * principal does not exist, it will be created. If the customer is not onboarded onto Automatic
- * Identity Management (AIM), this will return an error.
+ * Gets a service principal by its ID in your identity provider (IdP) and syncs its details and
+ * group memberships from your IdP. If the service principal isn't in the account that contains
+ * this workspace yet, it's added. Requires automatic identity management with Microsoft Entra ID
+ * as your IdP.
*/
ResolveServicePrincipalResponse resolveServicePrincipalProxy(
ResolveServicePrincipalProxyRequest resolveServicePrincipalProxyRequest);
/**
- * Resolves a user with the given external ID from the customer's IdP. If the user does not exist,
- * it will be created. If the customer is not onboarded onto Automatic Identity Management (AIM),
- * this will return an error.
+ * Gets a user by their ID in your identity provider (IdP) and syncs their details and group
+ * memberships from your IdP. If the user isn't in the account that contains this workspace yet,
+ * they're added. Requires automatic identity management.
*/
ResolveUserResponse resolveUserProxy(ResolveUserProxyRequest resolveUserProxyRequest);
/**
- * Updates an existing group in the Databricks account that parents the calling workspace. Only
- * the fields named in the update mask are modified. Returns the updated Group resource.
+ * Updates a group in the account that contains this workspace. Only the fields in `update_mask`
+ * change.
*
- * When AIM is enabled and the group is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider. With AIM
- * and group visibility filters, a new nonempty external_id must identify a visible group.
- * Clearing external_id is allowed.
+ * If automatic identity management is on and the group has an `external_id`, you can only
+ * update `external_id`. The group's other fields come from your identity provider. If your
+ * account also has group visibility filters, a new `external_id` must match them. You can always
+ * clear `external_id`.
*/
Group updateGroupProxy(UpdateGroupProxyRequest updateGroupProxyRequest);
/**
- * Updates an existing service principal in the Databricks account that parents the calling
- * workspace. Only the fields named in the update mask are modified. Returns the updated
- * ServicePrincipal resource.
- *
- * To change is_agent on a locally managed service principal, set it to true or false. Naming
- * is_agent in the update mask without a value leaves it unchanged.
+ * Updates a service principal in the account that contains this workspace. Only the fields in
+ * `update_mask` change.
*
- * When AIM is enabled and the service principal is an external identity (its external_id is
- * set), only external_id can be updated; its other fields are sourced from your identity
- * provider.
+ * If automatic identity management is on and the service principal has an `external_id`, you
+ * can only update `external_id`. Its other fields come from your identity provider. A service
+ * principal can't deactivate itself, and you can't update service principals that Databricks
+ * manages.
*/
ServicePrincipal updateServicePrincipalProxy(
UpdateServicePrincipalProxyRequest updateServicePrincipalProxyRequest);
/**
- * Updates an existing user in the Databricks account that parents the calling workspace and
- * returns the updated user. Only the fields named in the update mask are modified. The updatable
- * fields are fullName.givenName, fullName.familyName, status, and externalId.
+ * Updates a user in the account that contains this workspace. Only the fields in `update_mask`
+ * change.
*
- * When AIM is enabled and the user is an external identity (its external_id is set), only
- * external_id can be updated; its other fields are sourced from your identity provider.
+ * If automatic identity management is on and the user has an `external_id`, you can only
+ * update `external_id`. The user's other fields come from your identity provider. You can't
+ * deactivate yourself or change the status of the account owner.
*/
User updateUserProxy(UpdateUserProxyRequest updateUserProxyRequest);
@@ -290,14 +301,19 @@ WorkspaceAssignmentDetail updateWorkspaceAssignmentDetailProxy(
UpdateWorkspaceAssignmentDetailProxyRequest updateWorkspaceAssignmentDetailProxyRequest);
/**
- * Updates the entitlements of a directly assigned principal in the calling workspace. Changes are
- * applied one at a time rather than atomically. If the request fails partway through, only some
- * of the requested changes take effect. Get the assignment afterwards to confirm the final state.
+ * Replaces the entitlements of a principal's direct assignment to this workspace. The new list
+ * can't be empty.
+ *
+ * Entitlements are changed one at a time. If the request fails partway through, only some of
+ * the changes take effect. Get the assignment afterwards to check the result.
*/
WorkspaceAssignment updateWorkspaceAssignmentProxy(
UpdateWorkspaceAssignmentProxyRequest updateWorkspaceAssignmentProxyRequest);
- /** Updates a workspace identity detail for a principal. */
+ /**
+ * Activates or deactivates a user or service principal in this workspace. You can only update
+ * `workspace_identity_status`. You can't change your own status or the status of a group.
+ */
WorkspaceIdentityDetail updateWorkspaceIdentityDetail(
UpdateWorkspaceIdentityDetailRequest updateWorkspaceIdentityDetailRequest);
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetail.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetail.java
index d0b29caa8..3990202b7 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetail.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetail.java
@@ -7,29 +7,33 @@
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
-/** The details of a directly or indirectly assigned principal's details in a workspace. */
+/**
+ * A user, service principal, or group's status in a workspace, and whether it has access to the
+ * workspace directly or through a group. Update it to activate or deactivate a user or service
+ * principal in the workspace.
+ */
@Generated
public class WorkspaceIdentityDetail {
- /** The type of assignment the principal has to the workspace (direct or indirect). */
+ /** Whether the principal is assigned to the workspace directly or has access through a group. */
@JsonProperty("assignment_type")
private WorkspaceIdentityDetailAssignmentType assignmentType;
/**
- * The resource name of the workspace identity detail. Format:
- * principals/{principal_id}/workspace-identity-detail
+ * The resource name of the workspace identity detail, in the format
+ * `principals/{principal_id}/workspace-identity-detail`.
*/
@JsonProperty("name")
private String name;
- /** The internal ID of the principal (user/sp/group) in Databricks. */
+ /** The Databricks ID of the user, service principal, or group. */
@JsonProperty("principal_id")
private Long principalId;
- /** The type of the principal (user/service principal/group). */
+ /** Whether the principal is a user, service principal, or group. */
@JsonProperty("principal_type")
private PrincipalType principalType;
- /** The activity status of an identity in a Databricks workspace. */
+ /** Whether the principal is active in the workspace. Groups are always `ACTIVE`. */
@JsonProperty("workspace_identity_status")
private State workspaceIdentityStatus;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetailAssignmentType.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetailAssignmentType.java
index 5f7e43f15..6cf181647 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetailAssignmentType.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/iamv2/WorkspaceIdentityDetailAssignmentType.java
@@ -4,7 +4,7 @@
import com.databricks.sdk.support.Generated;
-/** The type of assignment the principal has to the workspace. */
+/** How a principal has access to a workspace. */
@Generated
public enum WorkspaceIdentityDetailAssignmentType {
DIRECT,
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ResolvedValuesAiFunctionTaskResolvedValues.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ResolvedValuesAiFunctionTaskResolvedValues.java
index af7d62cf0..09311be75 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ResolvedValuesAiFunctionTaskResolvedValues.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/jobs/ResolvedValuesAiFunctionTaskResolvedValues.java
@@ -4,26 +4,47 @@
import com.databricks.sdk.support.Generated;
import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.Objects;
/** Resolved values for an AI Function task's Delta table input. */
@Generated
public class ResolvedValuesAiFunctionTaskResolvedValues {
+ /**
+ * The Delta table source with any upstream-task references (such as
+ * `{{tasks. Pausing does not cancel running or queued runs. Runs can still be triggered through the
+ * `TriggerMaterializationSet` API. Resuming does not submit a run. Creating a paused
+ * materialization skips its initial run.
+ */
+ @JsonProperty("paused")
+ private Boolean paused;
+
/**
* A Java timezone ID. The schedule is resolved with respect to this timezone. Defaults to UTC
* when omitted. Can only be configured for MANUAL schedules; DERIVED schedules are always aligned
@@ -49,6 +61,15 @@ public CronScheduleMode getMode() {
return mode;
}
+ public CronSchedule setPaused(Boolean paused) {
+ this.paused = paused;
+ return this;
+ }
+
+ public Boolean getPaused() {
+ return paused;
+ }
+
public CronSchedule setTimezoneId(String timezoneId) {
this.timezoneId = timezoneId;
return this;
@@ -65,12 +86,13 @@ public boolean equals(Object o) {
CronSchedule that = (CronSchedule) o;
return Objects.equals(cronExpression, that.cronExpression)
&& Objects.equals(mode, that.mode)
+ && Objects.equals(paused, that.paused)
&& Objects.equals(timezoneId, that.timezoneId);
}
@Override
public int hashCode() {
- return Objects.hash(cronExpression, mode, timezoneId);
+ return Objects.hash(cronExpression, mode, paused, timezoneId);
}
@Override
@@ -78,6 +100,7 @@ public String toString() {
return new ToStringer(CronSchedule.class)
.add("cronExpression", cronExpression)
.add("mode", mode)
+ .add("paused", paused)
.add("timezoneId", timezoneId)
.toString();
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ExternalTrigger.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ExternalTrigger.java
new file mode 100644
index 000000000..9d07ae849
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/ExternalTrigger.java
@@ -0,0 +1,33 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.ml;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import java.util.Objects;
+
+/**
+ * A trigger that disables automatic materialization, including the initial run at creation. Runs
+ * are instead triggered through the `TriggerMaterializationSet` API. Supported only for batch
+ * materializations in a materialization set.
+ */
+@Generated
+public class ExternalTrigger {
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash();
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(ExternalTrigger.class).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringAPI.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringAPI.java
index 2b9fd07c9..822922892 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringAPI.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringAPI.java
@@ -286,6 +286,27 @@ public PurgeFeatureEntitiesOperation purgeFeatureEntities(PurgeFeatureEntitiesRe
return new PurgeFeatureEntitiesOperation(impl, operation);
}
+ /**
+ * Requests materialization of all members of the set. The set must be nonempty and contain only
+ * batch materializations. Runs are allowed while automatic scheduling is paused. Requested runs
+ * may wait in a queue, subject to queue limits and expiry.
+ *
+ * Returns a long-running operation that completes when every requested run reaches a terminal
+ * state. Success requires all runs and any required online synchronization to succeed. Individual
+ * outcomes are available in `MaterializationSetTriggerProgress`.
+ *
+ * Use `CancelOperation` to request cancellation of this operation's unfinished work.
+ * Cancellation is best effort and does not undo completed writes. Online synchronization already
+ * in progress may continue.
+ *
+ * Runs use the features' configured windows and settling delay.
+ */
+ public TriggerMaterializationSetOperation triggerMaterializationSet(
+ TriggerMaterializationSetRequest request) {
+ Operation operation = impl.triggerMaterializationSet(request);
+ return new TriggerMaterializationSetOperation(impl, operation);
+ }
+
/** Update a Feature. */
public Feature updateFeature(UpdateFeatureRequest request) {
return impl.updateFeature(request);
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringImpl.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringImpl.java
index c41ec2303..37413f625 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringImpl.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringImpl.java
@@ -515,6 +515,30 @@ public Operation purgeFeatureEntities(PurgeFeatureEntitiesRequest request) {
}
}
+ @Override
+ public Operation triggerMaterializationSet(TriggerMaterializationSetRequest request) {
+ String path =
+ String.format(
+ "/api/2.0/feature-engineering/materialization-sets/%s/trigger",
+ request.getMaterializationSetId());
+ try {
+ Request req = new Request("POST", path, apiClient.serialize(request));
+
+ if (request.getRequestId() == null || request.getRequestId().isEmpty()) {
+ request.setRequestId(UUID.randomUUID().toString());
+ }
+ 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, Operation.class);
+ } catch (IOException e) {
+ throw new DatabricksException("IO error: " + e.getMessage(), e);
+ }
+ }
+
@Override
public Feature updateFeature(UpdateFeatureRequest request) {
String path = String.format("/api/2.0/feature-engineering/features/%s", request.getFullName());
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringService.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringService.java
index 8a8fdfc5c..0c9559861 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringService.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/FeatureEngineeringService.java
@@ -118,6 +118,24 @@ ListMaterializedFeaturesResponse listMaterializedFeatures(
/** Purge materialized feature values for specified entities. */
Operation purgeFeatureEntities(PurgeFeatureEntitiesRequest purgeFeatureEntitiesRequest);
+ /**
+ * Requests materialization of all members of the set. The set must be nonempty and contain only
+ * batch materializations. Runs are allowed while automatic scheduling is paused. Requested runs
+ * may wait in a queue, subject to queue limits and expiry.
+ *
+ * Returns a long-running operation that completes when every requested run reaches a terminal
+ * state. Success requires all runs and any required online synchronization to succeed. Individual
+ * outcomes are available in `MaterializationSetTriggerProgress`.
+ *
+ * Use `CancelOperation` to request cancellation of this operation's unfinished work.
+ * Cancellation is best effort and does not undo completed writes. Online synchronization already
+ * in progress may continue.
+ *
+ * Runs use the features' configured windows and settling delay.
+ */
+ Operation triggerMaterializationSet(
+ TriggerMaterializationSetRequest triggerMaterializationSetRequest);
+
/** Update a Feature. */
Feature updateFeature(UpdateFeatureRequest updateFeatureRequest);
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/MaterializationRunProgress.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/MaterializationRunProgress.java
new file mode 100644
index 000000000..66ef62f9d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/MaterializationRunProgress.java
@@ -0,0 +1,77 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.ml;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Collection;
+import java.util.Objects;
+
+/** Progress of a requested run, which may materialize multiple members of the set. */
+@Generated
+public class MaterializationRunProgress {
+ /** The failure, including a failure to submit the run. Present when `state` is `FAILED`. */
+ @JsonProperty("error")
+ private DatabricksServiceExceptionWithDetailsProto error;
+
+ /** IDs of the materialized features assigned to this run when the operation was created. */
+ @JsonProperty("materialized_feature_ids")
+ private Collection Once all requested runs have finished, the operation fails if any run failed. Otherwise, it is
+ * cancelled if any run was cancelled, and succeeds if all runs succeeded.
+ */
+@Generated
+public class MaterializationSetTriggerProgress {
+ /** One entry per requested run, including runs that fail or are cancelled before submission. */
+ @JsonProperty("runs")
+ private Collection Pausing does not cancel running or queued runs. Runs can still be triggered through the
+ * `TriggerMaterializationSet` API. Resuming does not submit a run. Creating a paused
+ * materialization skips its initial run.
+ */
+ @JsonProperty("paused")
+ private Boolean paused;
+
/**
* How long the source table must go without updates before a run starts, so a series of updates
* settles before the run. If not set, a run starts as soon as the source table updates.
@@ -55,6 +67,15 @@ public Duration getMinTimeBetweenTriggers() {
return minTimeBetweenTriggers;
}
+ public TableTrigger setPaused(Boolean paused) {
+ this.paused = paused;
+ return this;
+ }
+
+ public Boolean getPaused() {
+ return paused;
+ }
+
public TableTrigger setWaitAfterLastChange(Duration waitAfterLastChange) {
this.waitAfterLastChange = waitAfterLastChange;
return this;
@@ -71,12 +92,13 @@ public boolean equals(Object o) {
TableTrigger that = (TableTrigger) o;
return Objects.equals(condition, that.condition)
&& Objects.equals(minTimeBetweenTriggers, that.minTimeBetweenTriggers)
+ && Objects.equals(paused, that.paused)
&& Objects.equals(waitAfterLastChange, that.waitAfterLastChange);
}
@Override
public int hashCode() {
- return Objects.hash(condition, minTimeBetweenTriggers, waitAfterLastChange);
+ return Objects.hash(condition, minTimeBetweenTriggers, paused, waitAfterLastChange);
}
@Override
@@ -84,6 +106,7 @@ public String toString() {
return new ToStringer(TableTrigger.class)
.add("condition", condition)
.add("minTimeBetweenTriggers", minTimeBetweenTriggers)
+ .add("paused", paused)
.add("waitAfterLastChange", waitAfterLastChange)
.toString();
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TriggerMaterializationSetOperation.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TriggerMaterializationSetOperation.java
new file mode 100644
index 000000000..225014a66
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/ml/TriggerMaterializationSetOperation.java
@@ -0,0 +1,174 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+package com.databricks.sdk.service.ml;
+
+import com.databricks.sdk.core.DatabricksException;
+import com.databricks.sdk.core.logging.Logger;
+import com.databricks.sdk.core.logging.LoggerFactory;
+import com.databricks.sdk.core.utils.SerDeUtils;
+import com.databricks.sdk.service.common.lro.LroOptions;
+import com.databricks.sdk.support.Generated;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import java.time.Duration;
+import java.util.Optional;
+import java.util.concurrent.TimeoutException;
+
+/**
+ * Wrapper for interacting with a long-running triggerMaterializationSet operation. Provides methods
+ * to wait for completion, check status, cancel, and access metadata.
+ */
+@Generated
+public class TriggerMaterializationSetOperation {
+ private static final Logger LOG =
+ LoggerFactory.getLogger(TriggerMaterializationSetOperation.class);
+
+ private final FeatureEngineeringService impl;
+ private Operation operation;
+ private final ObjectMapper objectMapper;
+
+ public TriggerMaterializationSetOperation(FeatureEngineeringService impl, Operation operation) {
+ this.impl = impl;
+ this.operation = operation;
+ this.objectMapper = SerDeUtils.createMapper();
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting TriggerMaterializationSetResponse.
+ * Waits indefinitely if no timeout is specified.
+ *
+ * @return the created TriggerMaterializationSetResponse
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public TriggerMaterializationSetResponse waitForCompletion() throws TimeoutException {
+ return waitForCompletion(Optional.empty());
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting TriggerMaterializationSetResponse.
+ *
+ * @param options the options for configuring the wait behavior, can be empty for defaults
+ * @return the created TriggerMaterializationSetResponse
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public TriggerMaterializationSetResponse waitForCompletion(Optional When the role already exists, only mutable fields are updated. Attributes omitted from the
* request retain their current values. Set an attribute explicitly to false to disable it.
- * `identity_type`, `auth_method`, and `postgres_role` retain their existing values; supplied
- * values for these fields are ignored. `membership_roles` is overwritten, not merged. Leaving
- * `membership_roles` empty clears all of the role's existing memberships, including
- * `DATABRICKS_SUPERUSER`. Always send the complete desired list of memberships when using this
- * field.
+ * `identity_type`, `auth_method`, and `postgres_role` retain their existing values. Omit these
+ * fields or supply their current values. A differing supplied value returns
+ * INVALID_PARAMETER_VALUE and rejects the entire request, including changes to mutable fields.
+ * `membership_roles` is overwritten, not merged. Leaving `membership_roles` empty clears all of
+ * the role's existing memberships, including `DATABRICKS_SUPERUSER`. Always send the complete
+ * desired list of memberships when using this field.
*/
@JsonIgnore
@QueryParam("replace_existing")
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseMapping.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseMapping.java
new file mode 100644
index 000000000..e8b6aaf93
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseMapping.java
@@ -0,0 +1,81 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.postgres;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** A mapping between one source and target database. */
+@Generated
+public class DatabaseMapping {
+ /**
+ * Output-only. The resolved target PostgreSQL database name. Equal to `target_database` when
+ * provided; otherwise equal to `source_database`.
+ */
+ @JsonProperty("effective_target_database")
+ private String effectiveTargetDatabase;
+
+ /** Required. The exact PostgreSQL database name on the source server. */
+ @JsonProperty("source_database")
+ private String sourceDatabase;
+
+ /**
+ * The PostgreSQL database name to create on the target branch. When omitted, the source database
+ * name is preserved.
+ */
+ @JsonProperty("target_database")
+ private String targetDatabase;
+
+ public DatabaseMapping setEffectiveTargetDatabase(String effectiveTargetDatabase) {
+ this.effectiveTargetDatabase = effectiveTargetDatabase;
+ return this;
+ }
+
+ public String getEffectiveTargetDatabase() {
+ return effectiveTargetDatabase;
+ }
+
+ public DatabaseMapping setSourceDatabase(String sourceDatabase) {
+ this.sourceDatabase = sourceDatabase;
+ return this;
+ }
+
+ public String getSourceDatabase() {
+ return sourceDatabase;
+ }
+
+ public DatabaseMapping setTargetDatabase(String targetDatabase) {
+ this.targetDatabase = targetDatabase;
+ return this;
+ }
+
+ public String getTargetDatabase() {
+ return targetDatabase;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DatabaseMapping that = (DatabaseMapping) o;
+ return Objects.equals(effectiveTargetDatabase, that.effectiveTargetDatabase)
+ && Objects.equals(sourceDatabase, that.sourceDatabase)
+ && Objects.equals(targetDatabase, that.targetDatabase);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(effectiveTargetDatabase, sourceDatabase, targetDatabase);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DatabaseMapping.class)
+ .add("effectiveTargetDatabase", effectiveTargetDatabase)
+ .add("sourceDatabase", sourceDatabase)
+ .add("targetDatabase", targetDatabase)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseSizeDetails.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseSizeDetails.java
new file mode 100644
index 000000000..672d425d2
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DatabaseSizeDetails.java
@@ -0,0 +1,43 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.postgres;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** Physical database size, including indexes and bloat; not a dump archive size estimate. */
+@Generated
+public class DatabaseSizeDetails {
+ /** Size reported by pg_database_size, in bytes. Zero is a measured empty size. */
+ @JsonProperty("size_bytes")
+ private Long sizeBytes;
+
+ public DatabaseSizeDetails setSizeBytes(Long sizeBytes) {
+ this.sizeBytes = sizeBytes;
+ return this;
+ }
+
+ public Long getSizeBytes() {
+ return sizeBytes;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DatabaseSizeDetails that = (DatabaseSizeDetails) o;
+ return Objects.equals(sizeBytes, that.sizeBytes);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(sizeBytes);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DatabaseSizeDetails.class).add("sizeBytes", sizeBytes).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DeleteMigrationOperation.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DeleteMigrationOperation.java
new file mode 100644
index 000000000..bb6b6fd32
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/DeleteMigrationOperation.java
@@ -0,0 +1,162 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+package com.databricks.sdk.service.postgres;
+
+import com.databricks.sdk.core.DatabricksException;
+import com.databricks.sdk.core.logging.Logger;
+import com.databricks.sdk.core.logging.LoggerFactory;
+import com.databricks.sdk.core.utils.SerDeUtils;
+import com.databricks.sdk.service.common.lro.LroOptions;
+import com.databricks.sdk.support.Generated;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import java.time.Duration;
+import java.util.Optional;
+import java.util.concurrent.TimeoutException;
+
+/**
+ * Wrapper for interacting with a long-running deleteMigration operation. Provides methods to wait
+ * for completion, check status, cancel, and access metadata.
+ */
+@Generated
+public class DeleteMigrationOperation {
+ private static final Logger LOG = LoggerFactory.getLogger(DeleteMigrationOperation.class);
+
+ private final PostgresService impl;
+ private Operation operation;
+ private final ObjectMapper objectMapper;
+
+ public DeleteMigrationOperation(PostgresService impl, Operation operation) {
+ this.impl = impl;
+ this.operation = operation;
+ this.objectMapper = SerDeUtils.createMapper();
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting Migration. Waits indefinitely if no
+ * timeout is specified.
+ *
+ * @return the created Migration
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public Migration waitForCompletion() throws TimeoutException {
+ return waitForCompletion(Optional.empty());
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting Migration.
+ *
+ * @param options the options for configuring the wait behavior, can be empty for defaults
+ * @return the created Migration
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public Migration waitForCompletion(Optional NOTE: for the Databricks identity type GROUP, LAKEBASE_OAUTH_V1 is the default auth method
* (group can login as well).
*
- * This field is set when the role is created and cannot be changed by UpdateRole. If provided
- * in an UpdateRole request body, its value is ignored and the existing value is retained. Do not
- * include this field as an explicit path in update_mask.
+ * This field is set when the role is created and cannot be changed. When replacing an existing
+ * role with replace_existing=true, omit this field or supply its current value. A differing value
+ * returns INVALID_PARAMETER_VALUE and rejects the entire request, including changes to mutable
+ * fields. With `*` or masks containing only mutable fields, supplied values are ignored.
+ * Including this field as an explicit path in update_mask returns INVALID_PARAMETER_VALUE.
*/
@JsonProperty("auth_method")
private RoleAuthMethod authMethod;
@@ -45,9 +47,11 @@ public class RoleRoleSpec {
*
* * application ID for SERVICE_PRINCIPAL * user email for USER * group name for GROUP
*
- * This field is set when the role is created and cannot be changed by UpdateRole. If provided
- * in an UpdateRole request body, its value is ignored and the existing value is retained. Do not
- * include this field as an explicit path in update_mask.
+ * This field is set when the role is created and cannot be changed. When replacing an existing
+ * role with replace_existing=true, omit this field or supply its current value. A differing value
+ * returns INVALID_PARAMETER_VALUE and rejects the entire request, including changes to mutable
+ * fields. With `*` or masks containing only mutable fields, supplied values are ignored.
+ * Including this field as an explicit path in update_mask returns INVALID_PARAMETER_VALUE.
*/
@JsonProperty("identity_type")
private RoleIdentityType identityType;
@@ -70,9 +74,11 @@ public class RoleRoleSpec {
* 1. user email for IdentityType.USER 2. app ID for IdentityType.SERVICE_PRINCIPAL 2. group
* name for IdentityType.GROUP
*
- * This field is set when the role is created and cannot be changed by UpdateRole. If provided
- * in an UpdateRole request body, its value is ignored and the existing value is retained. Do not
- * include this field as an explicit path in update_mask.
+ * This field is set when the role is created and cannot be changed. When replacing an existing
+ * role with replace_existing=true, omit this field or supply its current value. A differing value
+ * returns INVALID_PARAMETER_VALUE and rejects the entire request, including changes to mutable
+ * fields. With `*` or masks containing only mutable fields, supplied values are ignored.
+ * Including this field as an explicit path in update_mask returns INVALID_PARAMETER_VALUE.
*/
@JsonProperty("postgres_role")
private String postgresRole;
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/StartMigrationOperation.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/StartMigrationOperation.java
new file mode 100644
index 000000000..4555c05d8
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/postgres/StartMigrationOperation.java
@@ -0,0 +1,163 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+package com.databricks.sdk.service.postgres;
+
+import com.databricks.sdk.core.DatabricksException;
+import com.databricks.sdk.core.logging.Logger;
+import com.databricks.sdk.core.logging.LoggerFactory;
+import com.databricks.sdk.core.utils.SerDeUtils;
+import com.databricks.sdk.service.common.lro.LroOptions;
+import com.databricks.sdk.support.Generated;
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import java.time.Duration;
+import java.util.Optional;
+import java.util.concurrent.TimeoutException;
+
+/**
+ * Wrapper for interacting with a long-running startMigration operation. Provides methods to wait
+ * for completion, check status, cancel, and access metadata.
+ */
+@Generated
+public class StartMigrationOperation {
+ private static final Logger LOG = LoggerFactory.getLogger(StartMigrationOperation.class);
+
+ private final PostgresService impl;
+ private Operation operation;
+ private final ObjectMapper objectMapper;
+
+ public StartMigrationOperation(PostgresService impl, Operation operation) {
+ this.impl = impl;
+ this.operation = operation;
+ this.objectMapper = SerDeUtils.createMapper();
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting StartMigrationResponse. Waits
+ * indefinitely if no timeout is specified.
+ *
+ * @return the created StartMigrationResponse
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public StartMigrationResponse waitForCompletion() throws TimeoutException {
+ return waitForCompletion(Optional.empty());
+ }
+
+ /**
+ * Wait for the operation to complete and return the resulting StartMigrationResponse.
+ *
+ * @param options the options for configuring the wait behavior, can be empty for defaults
+ * @return the created StartMigrationResponse
+ * @throws TimeoutException if the operation doesn't complete within the timeout
+ * @throws DatabricksException if the operation fails
+ */
+ public StartMigrationResponse waitForCompletion(Optional `spec.identity_type`, `spec.auth_method`, and `spec.postgres_role` cannot be changed. Values
- * supplied for these fields in the request body are ignored. Including one of these fields as an
- * explicit path in update_mask returns an INVALID_PARAMETER_VALUE error. When `spec` is the only
- * path in the mask, only the supplied mutable attributes are updated. `*` by itself, or `spec`
- * combined with other supported paths, selects all supported mutable fields. For these masks, all
- * three attributes (`createdb`, `createrole`, and `bypassrls`) must be supplied; omitting any
- * returns an INVALID_PARAMETER_VALUE error. Each of these mask forms replaces `membership_roles`.
- * Omitting it or supplying an empty list clears all memberships, including
+ * `spec.identity_type`, `spec.auth_method`, and `spec.postgres_role` cannot be changed.
+ * Including an immutable field as an explicit path in update_mask returns
+ * INVALID_PARAMETER_VALUE. With `*` or masks containing only mutable fields, supplied values for
+ * these immutable fields are ignored. `*` by itself selects all supported mutable fields. For
+ * this mask, all three attributes (`createdb`, `createrole`, and `bypassrls`) must be supplied;
+ * omitting any returns an INVALID_PARAMETER_VALUE error. The `*` mask replaces
+ * `membership_roles`. Omitting it or supplying an empty list clears all memberships, including
* `DATABRICKS_SUPERUSER`.
*/
@JsonIgnore
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 f5b989aea..af6394438 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
@@ -183,16 +183,19 @@ public Sandbox updateSandbox(UpdateSandboxRequest request) {
/**
* Uploads an application/octet-stream body to a sandbox. The sandbox starts automatically if it
- * is stopped. Filesystem access uses the sandbox user's permissions and follows symbolic links.
+ * is stopped. Filesystem access uses the sandbox user's permissions. Replacements follow symbolic
+ * links.
*
* Creates the file or replaces its entire contents, creating parent directories if missing.
* The completed upload becomes visible atomically. A failure before commit leaves an existing
* destination unchanged; a lost response after commit does not undo the upload. Completion does
* not guarantee crash durability.
*
- * Returns 201 Created for a new file or 204 No Content for a replacement. Partial and
- * conditional uploads are unsupported: Content-Range, If-Match, If-None-Match, and
- * If-Unmodified-Since return 400.
+ * Returns 201 Created for a new file or 204 No Content for a replacement. Set overwrite=false
+ * or supply If-None-Match: * to create a file only if the destination does not exist. An existing
+ * entry, including a symbolic link, returns 412 Precondition Failed. Conflicting options or
+ * repeated overwrite parameters return 400. Other If-None-Match values, Content-Range, If-Match,
+ * and If-Unmodified-Since are unsupported and return 400.
*/
public void uploadFile(UploadFileRequest request) {
impl.uploadFile(request);
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 3cc4d62e3..f5151215f 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
@@ -96,16 +96,19 @@ ListDirectoryContentsResponse listDirectoryContents(
/**
* Uploads an application/octet-stream body to a sandbox. The sandbox starts automatically if it
- * is stopped. Filesystem access uses the sandbox user's permissions and follows symbolic links.
+ * is stopped. Filesystem access uses the sandbox user's permissions. Replacements follow symbolic
+ * links.
*
* Creates the file or replaces its entire contents, creating parent directories if missing.
* The completed upload becomes visible atomically. A failure before commit leaves an existing
* destination unchanged; a lost response after commit does not undo the upload. Completion does
* not guarantee crash durability.
*
- * Returns 201 Created for a new file or 204 No Content for a replacement. Partial and
- * conditional uploads are unsupported: Content-Range, If-Match, If-None-Match, and
- * If-Unmodified-Since return 400.
+ * Returns 201 Created for a new file or 204 No Content for a replacement. Set overwrite=false
+ * or supply If-None-Match: * to create a file only if the destination does not exist. An existing
+ * entry, including a symbolic link, returns 412 Precondition Failed. Conflicting options or
+ * repeated overwrite parameters return 400. Other If-None-Match values, Content-Range, If-Match,
+ * and If-Unmodified-Since are unsupported and return 400.
*/
void uploadFile(UploadFileRequest uploadFileRequest);
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardTheme.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardTheme.java
new file mode 100644
index 000000000..dbd56fb5f
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardTheme.java
@@ -0,0 +1,663 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/**
+ * Theme settings for customizing AI/BI dashboard UI, including visualization colors, font colors,
+ * background colors, and more.
+ */
+@Generated
+public class DashboardTheme {
+ /** Color of the zero-value grid line, making it visually distinct from other grid lines. */
+ @JsonProperty("axis_line_color")
+ private DashboardThemeDashboardThemeColor axisLineColor;
+
+ /** The background color of the dashboard canvas. */
+ @JsonProperty("canvas_background_color")
+ private DashboardThemeDashboardThemeColor canvasBackgroundColor;
+
+ /** The continuous gradient configuration for the dashboard. */
+ @JsonProperty("continuous_gradient")
+ private DashboardThemeContinuousGradient continuousGradient;
+
+ /**
+ * The default font color applied to all text in the dashboard. Superseded by
+ * font_settings.base.font_color when font_settings is set. More specific font settings in turn
+ * override base.
+ */
+ @JsonProperty("font_color")
+ private DashboardThemeDashboardThemeColor fontColor;
+
+ /**
+ * Font family to customize all text within the dashboard. Unsupported font names fall back to the
+ * default font. Superseded by font_settings.base.font_family when font_settings is set.
+ */
+ @JsonProperty("font_family")
+ private String fontFamily;
+
+ /** The per-category typography overrides for the dashboard. */
+ @JsonProperty("font_settings")
+ private DashboardThemeFontSettings fontSettings;
+
+ /** Color of chart grid lines in visualizations (horizontal and vertical guide lines). */
+ @JsonProperty("grid_line_color")
+ private DashboardThemeDashboardThemeColor gridLineColor;
+
+ /**
+ * The corner radius in pixels for rectangular marks in visualizations (bars, columns, histogram
+ * bins, etc.).
+ */
+ @JsonProperty("mark_corner_radius")
+ private Long markCornerRadius;
+
+ /** The highlight color for selected elements in widgets. */
+ @JsonProperty("selection_color")
+ private DashboardThemeDashboardThemeColor selectionColor;
+
+ /** The sentiment color palette for the dashboard. */
+ @JsonProperty("sentiment_colors")
+ private DashboardThemeSentimentColors sentimentColors;
+
+ /**
+ * The default vertical alignment for all text box widgets in the dashboard. Individual text box
+ * widgets can override this.
+ */
+ @JsonProperty("text_box_vertical_align")
+ private DashboardThemeVerticalAlign textBoxVerticalAlign;
+
+ /**
+ * Color palette for visualizations. Colors are applied in order (visualization_color_01,
+ * visualization_color_02, etc.). Invalid color values are preserved but ignored during rendering.
+ */
+ @JsonProperty("visualization_color_01")
+ private String visualizationColor01;
+
+ /** The color at position 2 in the visualization color palette. */
+ @JsonProperty("visualization_color_02")
+ private String visualizationColor02;
+
+ /** The color at position 3 in the visualization color palette. */
+ @JsonProperty("visualization_color_03")
+ private String visualizationColor03;
+
+ /** The color at position 4 in the visualization color palette. */
+ @JsonProperty("visualization_color_04")
+ private String visualizationColor04;
+
+ /** The color at position 5 in the visualization color palette. */
+ @JsonProperty("visualization_color_05")
+ private String visualizationColor05;
+
+ /** The color at position 6 in the visualization color palette. */
+ @JsonProperty("visualization_color_06")
+ private String visualizationColor06;
+
+ /** The color at position 7 in the visualization color palette. */
+ @JsonProperty("visualization_color_07")
+ private String visualizationColor07;
+
+ /** The color at position 8 in the visualization color palette. */
+ @JsonProperty("visualization_color_08")
+ private String visualizationColor08;
+
+ /** The color at position 9 in the visualization color palette. */
+ @JsonProperty("visualization_color_09")
+ private String visualizationColor09;
+
+ /** The color at position 10 in the visualization color palette. */
+ @JsonProperty("visualization_color_10")
+ private String visualizationColor10;
+
+ /** The color at position 11 in the visualization color palette. */
+ @JsonProperty("visualization_color_11")
+ private String visualizationColor11;
+
+ /** The color at position 12 in the visualization color palette. */
+ @JsonProperty("visualization_color_12")
+ private String visualizationColor12;
+
+ /** The color at position 13 in the visualization color palette. */
+ @JsonProperty("visualization_color_13")
+ private String visualizationColor13;
+
+ /** The color at position 14 in the visualization color palette. */
+ @JsonProperty("visualization_color_14")
+ private String visualizationColor14;
+
+ /** The color at position 15 in the visualization color palette. */
+ @JsonProperty("visualization_color_15")
+ private String visualizationColor15;
+
+ /** The color at position 16 in the visualization color palette. */
+ @JsonProperty("visualization_color_16")
+ private String visualizationColor16;
+
+ /** The color at position 17 in the visualization color palette. */
+ @JsonProperty("visualization_color_17")
+ private String visualizationColor17;
+
+ /** The color at position 18 in the visualization color palette. */
+ @JsonProperty("visualization_color_18")
+ private String visualizationColor18;
+
+ /** The color at position 19 in the visualization color palette. */
+ @JsonProperty("visualization_color_19")
+ private String visualizationColor19;
+
+ /** The color at position 20 in the visualization color palette. */
+ @JsonProperty("visualization_color_20")
+ private String visualizationColor20;
+
+ /** The background color of widgets. */
+ @JsonProperty("widget_background_color")
+ private DashboardThemeDashboardThemeColor widgetBackgroundColor;
+
+ /** The border color of widgets. */
+ @JsonProperty("widget_border_color")
+ private DashboardThemeDashboardThemeColor widgetBorderColor;
+
+ /** The widget border radius in pixels. */
+ @JsonProperty("widget_corner_radius")
+ private Long widgetCornerRadius;
+
+ /** Alignment setting for all widget titles and descriptions at the dashboard level. */
+ @JsonProperty("widget_header_alignment")
+ private DashboardThemeAlignment widgetHeaderAlignment;
+
+ /** The gap between widgets in pixels. */
+ @JsonProperty("widget_margin")
+ private Long widgetMargin;
+
+ /** The content padding inside each widget in pixels. */
+ @JsonProperty("widget_padding")
+ private Long widgetPadding;
+
+ /**
+ * The shadow intensity level applied to widgets (0 = no shadow, 100 = maximum). The actual CSS
+ * box-shadow is computed at render time from this value, factoring in background colors and color
+ * mode.
+ */
+ @JsonProperty("widget_shadow")
+ private Long widgetShadow;
+
+ public DashboardTheme setAxisLineColor(DashboardThemeDashboardThemeColor axisLineColor) {
+ this.axisLineColor = axisLineColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getAxisLineColor() {
+ return axisLineColor;
+ }
+
+ public DashboardTheme setCanvasBackgroundColor(
+ DashboardThemeDashboardThemeColor canvasBackgroundColor) {
+ this.canvasBackgroundColor = canvasBackgroundColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getCanvasBackgroundColor() {
+ return canvasBackgroundColor;
+ }
+
+ public DashboardTheme setContinuousGradient(DashboardThemeContinuousGradient continuousGradient) {
+ this.continuousGradient = continuousGradient;
+ return this;
+ }
+
+ public DashboardThemeContinuousGradient getContinuousGradient() {
+ return continuousGradient;
+ }
+
+ public DashboardTheme setFontColor(DashboardThemeDashboardThemeColor fontColor) {
+ this.fontColor = fontColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getFontColor() {
+ return fontColor;
+ }
+
+ public DashboardTheme setFontFamily(String fontFamily) {
+ this.fontFamily = fontFamily;
+ return this;
+ }
+
+ public String getFontFamily() {
+ return fontFamily;
+ }
+
+ public DashboardTheme setFontSettings(DashboardThemeFontSettings fontSettings) {
+ this.fontSettings = fontSettings;
+ return this;
+ }
+
+ public DashboardThemeFontSettings getFontSettings() {
+ return fontSettings;
+ }
+
+ public DashboardTheme setGridLineColor(DashboardThemeDashboardThemeColor gridLineColor) {
+ this.gridLineColor = gridLineColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getGridLineColor() {
+ return gridLineColor;
+ }
+
+ public DashboardTheme setMarkCornerRadius(Long markCornerRadius) {
+ this.markCornerRadius = markCornerRadius;
+ return this;
+ }
+
+ public Long getMarkCornerRadius() {
+ return markCornerRadius;
+ }
+
+ public DashboardTheme setSelectionColor(DashboardThemeDashboardThemeColor selectionColor) {
+ this.selectionColor = selectionColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getSelectionColor() {
+ return selectionColor;
+ }
+
+ public DashboardTheme setSentimentColors(DashboardThemeSentimentColors sentimentColors) {
+ this.sentimentColors = sentimentColors;
+ return this;
+ }
+
+ public DashboardThemeSentimentColors getSentimentColors() {
+ return sentimentColors;
+ }
+
+ public DashboardTheme setTextBoxVerticalAlign(DashboardThemeVerticalAlign textBoxVerticalAlign) {
+ this.textBoxVerticalAlign = textBoxVerticalAlign;
+ return this;
+ }
+
+ public DashboardThemeVerticalAlign getTextBoxVerticalAlign() {
+ return textBoxVerticalAlign;
+ }
+
+ public DashboardTheme setVisualizationColor01(String visualizationColor01) {
+ this.visualizationColor01 = visualizationColor01;
+ return this;
+ }
+
+ public String getVisualizationColor01() {
+ return visualizationColor01;
+ }
+
+ public DashboardTheme setVisualizationColor02(String visualizationColor02) {
+ this.visualizationColor02 = visualizationColor02;
+ return this;
+ }
+
+ public String getVisualizationColor02() {
+ return visualizationColor02;
+ }
+
+ public DashboardTheme setVisualizationColor03(String visualizationColor03) {
+ this.visualizationColor03 = visualizationColor03;
+ return this;
+ }
+
+ public String getVisualizationColor03() {
+ return visualizationColor03;
+ }
+
+ public DashboardTheme setVisualizationColor04(String visualizationColor04) {
+ this.visualizationColor04 = visualizationColor04;
+ return this;
+ }
+
+ public String getVisualizationColor04() {
+ return visualizationColor04;
+ }
+
+ public DashboardTheme setVisualizationColor05(String visualizationColor05) {
+ this.visualizationColor05 = visualizationColor05;
+ return this;
+ }
+
+ public String getVisualizationColor05() {
+ return visualizationColor05;
+ }
+
+ public DashboardTheme setVisualizationColor06(String visualizationColor06) {
+ this.visualizationColor06 = visualizationColor06;
+ return this;
+ }
+
+ public String getVisualizationColor06() {
+ return visualizationColor06;
+ }
+
+ public DashboardTheme setVisualizationColor07(String visualizationColor07) {
+ this.visualizationColor07 = visualizationColor07;
+ return this;
+ }
+
+ public String getVisualizationColor07() {
+ return visualizationColor07;
+ }
+
+ public DashboardTheme setVisualizationColor08(String visualizationColor08) {
+ this.visualizationColor08 = visualizationColor08;
+ return this;
+ }
+
+ public String getVisualizationColor08() {
+ return visualizationColor08;
+ }
+
+ public DashboardTheme setVisualizationColor09(String visualizationColor09) {
+ this.visualizationColor09 = visualizationColor09;
+ return this;
+ }
+
+ public String getVisualizationColor09() {
+ return visualizationColor09;
+ }
+
+ public DashboardTheme setVisualizationColor10(String visualizationColor10) {
+ this.visualizationColor10 = visualizationColor10;
+ return this;
+ }
+
+ public String getVisualizationColor10() {
+ return visualizationColor10;
+ }
+
+ public DashboardTheme setVisualizationColor11(String visualizationColor11) {
+ this.visualizationColor11 = visualizationColor11;
+ return this;
+ }
+
+ public String getVisualizationColor11() {
+ return visualizationColor11;
+ }
+
+ public DashboardTheme setVisualizationColor12(String visualizationColor12) {
+ this.visualizationColor12 = visualizationColor12;
+ return this;
+ }
+
+ public String getVisualizationColor12() {
+ return visualizationColor12;
+ }
+
+ public DashboardTheme setVisualizationColor13(String visualizationColor13) {
+ this.visualizationColor13 = visualizationColor13;
+ return this;
+ }
+
+ public String getVisualizationColor13() {
+ return visualizationColor13;
+ }
+
+ public DashboardTheme setVisualizationColor14(String visualizationColor14) {
+ this.visualizationColor14 = visualizationColor14;
+ return this;
+ }
+
+ public String getVisualizationColor14() {
+ return visualizationColor14;
+ }
+
+ public DashboardTheme setVisualizationColor15(String visualizationColor15) {
+ this.visualizationColor15 = visualizationColor15;
+ return this;
+ }
+
+ public String getVisualizationColor15() {
+ return visualizationColor15;
+ }
+
+ public DashboardTheme setVisualizationColor16(String visualizationColor16) {
+ this.visualizationColor16 = visualizationColor16;
+ return this;
+ }
+
+ public String getVisualizationColor16() {
+ return visualizationColor16;
+ }
+
+ public DashboardTheme setVisualizationColor17(String visualizationColor17) {
+ this.visualizationColor17 = visualizationColor17;
+ return this;
+ }
+
+ public String getVisualizationColor17() {
+ return visualizationColor17;
+ }
+
+ public DashboardTheme setVisualizationColor18(String visualizationColor18) {
+ this.visualizationColor18 = visualizationColor18;
+ return this;
+ }
+
+ public String getVisualizationColor18() {
+ return visualizationColor18;
+ }
+
+ public DashboardTheme setVisualizationColor19(String visualizationColor19) {
+ this.visualizationColor19 = visualizationColor19;
+ return this;
+ }
+
+ public String getVisualizationColor19() {
+ return visualizationColor19;
+ }
+
+ public DashboardTheme setVisualizationColor20(String visualizationColor20) {
+ this.visualizationColor20 = visualizationColor20;
+ return this;
+ }
+
+ public String getVisualizationColor20() {
+ return visualizationColor20;
+ }
+
+ public DashboardTheme setWidgetBackgroundColor(
+ DashboardThemeDashboardThemeColor widgetBackgroundColor) {
+ this.widgetBackgroundColor = widgetBackgroundColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getWidgetBackgroundColor() {
+ return widgetBackgroundColor;
+ }
+
+ public DashboardTheme setWidgetBorderColor(DashboardThemeDashboardThemeColor widgetBorderColor) {
+ this.widgetBorderColor = widgetBorderColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getWidgetBorderColor() {
+ return widgetBorderColor;
+ }
+
+ public DashboardTheme setWidgetCornerRadius(Long widgetCornerRadius) {
+ this.widgetCornerRadius = widgetCornerRadius;
+ return this;
+ }
+
+ public Long getWidgetCornerRadius() {
+ return widgetCornerRadius;
+ }
+
+ public DashboardTheme setWidgetHeaderAlignment(DashboardThemeAlignment widgetHeaderAlignment) {
+ this.widgetHeaderAlignment = widgetHeaderAlignment;
+ return this;
+ }
+
+ public DashboardThemeAlignment getWidgetHeaderAlignment() {
+ return widgetHeaderAlignment;
+ }
+
+ public DashboardTheme setWidgetMargin(Long widgetMargin) {
+ this.widgetMargin = widgetMargin;
+ return this;
+ }
+
+ public Long getWidgetMargin() {
+ return widgetMargin;
+ }
+
+ public DashboardTheme setWidgetPadding(Long widgetPadding) {
+ this.widgetPadding = widgetPadding;
+ return this;
+ }
+
+ public Long getWidgetPadding() {
+ return widgetPadding;
+ }
+
+ public DashboardTheme setWidgetShadow(Long widgetShadow) {
+ this.widgetShadow = widgetShadow;
+ return this;
+ }
+
+ public Long getWidgetShadow() {
+ return widgetShadow;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardTheme that = (DashboardTheme) o;
+ return Objects.equals(axisLineColor, that.axisLineColor)
+ && Objects.equals(canvasBackgroundColor, that.canvasBackgroundColor)
+ && Objects.equals(continuousGradient, that.continuousGradient)
+ && Objects.equals(fontColor, that.fontColor)
+ && Objects.equals(fontFamily, that.fontFamily)
+ && Objects.equals(fontSettings, that.fontSettings)
+ && Objects.equals(gridLineColor, that.gridLineColor)
+ && Objects.equals(markCornerRadius, that.markCornerRadius)
+ && Objects.equals(selectionColor, that.selectionColor)
+ && Objects.equals(sentimentColors, that.sentimentColors)
+ && Objects.equals(textBoxVerticalAlign, that.textBoxVerticalAlign)
+ && Objects.equals(visualizationColor01, that.visualizationColor01)
+ && Objects.equals(visualizationColor02, that.visualizationColor02)
+ && Objects.equals(visualizationColor03, that.visualizationColor03)
+ && Objects.equals(visualizationColor04, that.visualizationColor04)
+ && Objects.equals(visualizationColor05, that.visualizationColor05)
+ && Objects.equals(visualizationColor06, that.visualizationColor06)
+ && Objects.equals(visualizationColor07, that.visualizationColor07)
+ && Objects.equals(visualizationColor08, that.visualizationColor08)
+ && Objects.equals(visualizationColor09, that.visualizationColor09)
+ && Objects.equals(visualizationColor10, that.visualizationColor10)
+ && Objects.equals(visualizationColor11, that.visualizationColor11)
+ && Objects.equals(visualizationColor12, that.visualizationColor12)
+ && Objects.equals(visualizationColor13, that.visualizationColor13)
+ && Objects.equals(visualizationColor14, that.visualizationColor14)
+ && Objects.equals(visualizationColor15, that.visualizationColor15)
+ && Objects.equals(visualizationColor16, that.visualizationColor16)
+ && Objects.equals(visualizationColor17, that.visualizationColor17)
+ && Objects.equals(visualizationColor18, that.visualizationColor18)
+ && Objects.equals(visualizationColor19, that.visualizationColor19)
+ && Objects.equals(visualizationColor20, that.visualizationColor20)
+ && Objects.equals(widgetBackgroundColor, that.widgetBackgroundColor)
+ && Objects.equals(widgetBorderColor, that.widgetBorderColor)
+ && Objects.equals(widgetCornerRadius, that.widgetCornerRadius)
+ && Objects.equals(widgetHeaderAlignment, that.widgetHeaderAlignment)
+ && Objects.equals(widgetMargin, that.widgetMargin)
+ && Objects.equals(widgetPadding, that.widgetPadding)
+ && Objects.equals(widgetShadow, that.widgetShadow);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ axisLineColor,
+ canvasBackgroundColor,
+ continuousGradient,
+ fontColor,
+ fontFamily,
+ fontSettings,
+ gridLineColor,
+ markCornerRadius,
+ selectionColor,
+ sentimentColors,
+ textBoxVerticalAlign,
+ visualizationColor01,
+ visualizationColor02,
+ visualizationColor03,
+ visualizationColor04,
+ visualizationColor05,
+ visualizationColor06,
+ visualizationColor07,
+ visualizationColor08,
+ visualizationColor09,
+ visualizationColor10,
+ visualizationColor11,
+ visualizationColor12,
+ visualizationColor13,
+ visualizationColor14,
+ visualizationColor15,
+ visualizationColor16,
+ visualizationColor17,
+ visualizationColor18,
+ visualizationColor19,
+ visualizationColor20,
+ widgetBackgroundColor,
+ widgetBorderColor,
+ widgetCornerRadius,
+ widgetHeaderAlignment,
+ widgetMargin,
+ widgetPadding,
+ widgetShadow);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardTheme.class)
+ .add("axisLineColor", axisLineColor)
+ .add("canvasBackgroundColor", canvasBackgroundColor)
+ .add("continuousGradient", continuousGradient)
+ .add("fontColor", fontColor)
+ .add("fontFamily", fontFamily)
+ .add("fontSettings", fontSettings)
+ .add("gridLineColor", gridLineColor)
+ .add("markCornerRadius", markCornerRadius)
+ .add("selectionColor", selectionColor)
+ .add("sentimentColors", sentimentColors)
+ .add("textBoxVerticalAlign", textBoxVerticalAlign)
+ .add("visualizationColor01", visualizationColor01)
+ .add("visualizationColor02", visualizationColor02)
+ .add("visualizationColor03", visualizationColor03)
+ .add("visualizationColor04", visualizationColor04)
+ .add("visualizationColor05", visualizationColor05)
+ .add("visualizationColor06", visualizationColor06)
+ .add("visualizationColor07", visualizationColor07)
+ .add("visualizationColor08", visualizationColor08)
+ .add("visualizationColor09", visualizationColor09)
+ .add("visualizationColor10", visualizationColor10)
+ .add("visualizationColor11", visualizationColor11)
+ .add("visualizationColor12", visualizationColor12)
+ .add("visualizationColor13", visualizationColor13)
+ .add("visualizationColor14", visualizationColor14)
+ .add("visualizationColor15", visualizationColor15)
+ .add("visualizationColor16", visualizationColor16)
+ .add("visualizationColor17", visualizationColor17)
+ .add("visualizationColor18", visualizationColor18)
+ .add("visualizationColor19", visualizationColor19)
+ .add("visualizationColor20", visualizationColor20)
+ .add("widgetBackgroundColor", widgetBackgroundColor)
+ .add("widgetBorderColor", widgetBorderColor)
+ .add("widgetCornerRadius", widgetCornerRadius)
+ .add("widgetHeaderAlignment", widgetHeaderAlignment)
+ .add("widgetMargin", widgetMargin)
+ .add("widgetPadding", widgetPadding)
+ .add("widgetShadow", widgetShadow)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeAlignment.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeAlignment.java
new file mode 100644
index 000000000..d1a20ec64
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeAlignment.java
@@ -0,0 +1,13 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+
+/** Horizontal alignment options for widget titles and descriptions. */
+@Generated
+public enum DashboardThemeAlignment {
+ CENTER,
+ LEFT,
+ RIGHT,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradient.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradient.java
new file mode 100644
index 000000000..a0bcc8fcf
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradient.java
@@ -0,0 +1,65 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/**
+ * Configuration for continuous color gradients, with separate values for light and dark mode. Each
+ * mode's gradient can reference the visualization color palette via from_categorical_index, use a
+ * named color scheme, or define a custom sequential or diverging ramp.
+ */
+@Generated
+public class DashboardThemeContinuousGradient {
+ /** Gradient value used when the dashboard is rendered in dark mode. */
+ @JsonProperty("dark_mode")
+ private DashboardThemeContinuousGradientGradientValue darkMode;
+
+ /** Gradient value used when the dashboard is rendered in light mode. */
+ @JsonProperty("light_mode")
+ private DashboardThemeContinuousGradientGradientValue lightMode;
+
+ public DashboardThemeContinuousGradient setDarkMode(
+ DashboardThemeContinuousGradientGradientValue darkMode) {
+ this.darkMode = darkMode;
+ return this;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue getDarkMode() {
+ return darkMode;
+ }
+
+ public DashboardThemeContinuousGradient setLightMode(
+ DashboardThemeContinuousGradientGradientValue lightMode) {
+ this.lightMode = lightMode;
+ return this;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue getLightMode() {
+ return lightMode;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeContinuousGradient that = (DashboardThemeContinuousGradient) o;
+ return Objects.equals(darkMode, that.darkMode) && Objects.equals(lightMode, that.lightMode);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(darkMode, lightMode);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeContinuousGradient.class)
+ .add("darkMode", darkMode)
+ .add("lightMode", lightMode)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomDivergingRamp.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomDivergingRamp.java
new file mode 100644
index 000000000..3764c7401
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomDivergingRamp.java
@@ -0,0 +1,79 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** A custom three-stop diverging gradient ramp. */
+@Generated
+public class DashboardThemeContinuousGradientCustomDivergingRamp {
+ /** The color at the end of the gradient (highest value). */
+ @JsonProperty("end")
+ private DashboardThemeDashboardThemeColor end;
+
+ /** The color at the midpoint of the gradient. */
+ @JsonProperty("mid")
+ private DashboardThemeDashboardThemeColor mid;
+
+ /** The color at the start of the gradient (lowest value). */
+ @JsonProperty("start")
+ private DashboardThemeDashboardThemeColor start;
+
+ public DashboardThemeContinuousGradientCustomDivergingRamp setEnd(
+ DashboardThemeDashboardThemeColor end) {
+ this.end = end;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getEnd() {
+ return end;
+ }
+
+ public DashboardThemeContinuousGradientCustomDivergingRamp setMid(
+ DashboardThemeDashboardThemeColor mid) {
+ this.mid = mid;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getMid() {
+ return mid;
+ }
+
+ public DashboardThemeContinuousGradientCustomDivergingRamp setStart(
+ DashboardThemeDashboardThemeColor start) {
+ this.start = start;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getStart() {
+ return start;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeContinuousGradientCustomDivergingRamp that =
+ (DashboardThemeContinuousGradientCustomDivergingRamp) o;
+ return Objects.equals(end, that.end)
+ && Objects.equals(mid, that.mid)
+ && Objects.equals(start, that.start);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(end, mid, start);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeContinuousGradientCustomDivergingRamp.class)
+ .add("end", end)
+ .add("mid", mid)
+ .add("start", start)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomSequentialRamp.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomSequentialRamp.java
new file mode 100644
index 000000000..c7270f23e
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientCustomSequentialRamp.java
@@ -0,0 +1,62 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** A custom two-stop sequential gradient ramp. */
+@Generated
+public class DashboardThemeContinuousGradientCustomSequentialRamp {
+ /** The color at the end of the gradient (highest value). */
+ @JsonProperty("end")
+ private DashboardThemeDashboardThemeColor end;
+
+ /** The color at the start of the gradient (lowest value). */
+ @JsonProperty("start")
+ private DashboardThemeDashboardThemeColor start;
+
+ public DashboardThemeContinuousGradientCustomSequentialRamp setEnd(
+ DashboardThemeDashboardThemeColor end) {
+ this.end = end;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getEnd() {
+ return end;
+ }
+
+ public DashboardThemeContinuousGradientCustomSequentialRamp setStart(
+ DashboardThemeDashboardThemeColor start) {
+ this.start = start;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getStart() {
+ return start;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeContinuousGradientCustomSequentialRamp that =
+ (DashboardThemeContinuousGradientCustomSequentialRamp) o;
+ return Objects.equals(end, that.end) && Objects.equals(start, that.start);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(end, start);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeContinuousGradientCustomSequentialRamp.class)
+ .add("end", end)
+ .add("start", start)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientGradientValue.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientGradientValue.java
new file mode 100644
index 000000000..96ecc383d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeContinuousGradientGradientValue.java
@@ -0,0 +1,113 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** The gradient for one color mode. Set at most one field. */
+@Generated
+public class DashboardThemeContinuousGradientGradientValue {
+ /** A static color string (for example, '#FF0000'). */
+ @JsonProperty("color")
+ private String color;
+
+ /** A named color scheme (for example, 'blues', 'viridis', 'spectral'). */
+ @JsonProperty("color_scheme")
+ private String colorScheme;
+
+ /** A custom three-stop diverging gradient. */
+ @JsonProperty("custom_diverging")
+ private DashboardThemeContinuousGradientCustomDivergingRamp customDiverging;
+
+ /** A custom two-stop sequential gradient. */
+ @JsonProperty("custom_sequential")
+ private DashboardThemeContinuousGradientCustomSequentialRamp customSequential;
+
+ /**
+ * A 0-based index into the visualization color palette, where 0 is visualization_color_01. Valid
+ * values are 0 to 19.
+ */
+ @JsonProperty("from_categorical_index")
+ private Long fromCategoricalIndex;
+
+ public DashboardThemeContinuousGradientGradientValue setColor(String color) {
+ this.color = color;
+ return this;
+ }
+
+ public String getColor() {
+ return color;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue setColorScheme(String colorScheme) {
+ this.colorScheme = colorScheme;
+ return this;
+ }
+
+ public String getColorScheme() {
+ return colorScheme;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue setCustomDiverging(
+ DashboardThemeContinuousGradientCustomDivergingRamp customDiverging) {
+ this.customDiverging = customDiverging;
+ return this;
+ }
+
+ public DashboardThemeContinuousGradientCustomDivergingRamp getCustomDiverging() {
+ return customDiverging;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue setCustomSequential(
+ DashboardThemeContinuousGradientCustomSequentialRamp customSequential) {
+ this.customSequential = customSequential;
+ return this;
+ }
+
+ public DashboardThemeContinuousGradientCustomSequentialRamp getCustomSequential() {
+ return customSequential;
+ }
+
+ public DashboardThemeContinuousGradientGradientValue setFromCategoricalIndex(
+ Long fromCategoricalIndex) {
+ this.fromCategoricalIndex = fromCategoricalIndex;
+ return this;
+ }
+
+ public Long getFromCategoricalIndex() {
+ return fromCategoricalIndex;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeContinuousGradientGradientValue that =
+ (DashboardThemeContinuousGradientGradientValue) o;
+ return Objects.equals(color, that.color)
+ && Objects.equals(colorScheme, that.colorScheme)
+ && Objects.equals(customDiverging, that.customDiverging)
+ && Objects.equals(customSequential, that.customSequential)
+ && Objects.equals(fromCategoricalIndex, that.fromCategoricalIndex);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ color, colorScheme, customDiverging, customSequential, fromCategoricalIndex);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeContinuousGradientGradientValue.class)
+ .add("color", color)
+ .add("colorScheme", colorScheme)
+ .add("customDiverging", customDiverging)
+ .add("customSequential", customSequential)
+ .add("fromCategoricalIndex", fromCategoricalIndex)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeDashboardThemeColor.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeDashboardThemeColor.java
new file mode 100644
index 000000000..104d24878
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeDashboardThemeColor.java
@@ -0,0 +1,62 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/**
+ * Represents a color value with optional overrides for light and dark modes. Authors can customize
+ * colors separately to cater to each mode, based on the viewer's user-level theme preference.
+ */
+@Generated
+public class DashboardThemeDashboardThemeColor {
+ /** The color used when the dashboard is rendered in dark mode (for example, '#FF0000'). */
+ @JsonProperty("dark")
+ private String dark;
+
+ /** The color used when the dashboard is rendered in light mode (for example, '#FF0000'). */
+ @JsonProperty("light")
+ private String light;
+
+ public DashboardThemeDashboardThemeColor setDark(String dark) {
+ this.dark = dark;
+ return this;
+ }
+
+ public String getDark() {
+ return dark;
+ }
+
+ public DashboardThemeDashboardThemeColor setLight(String light) {
+ this.light = light;
+ return this;
+ }
+
+ public String getLight() {
+ return light;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeDashboardThemeColor that = (DashboardThemeDashboardThemeColor) o;
+ return Objects.equals(dark, that.dark) && Objects.equals(light, that.light);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(dark, light);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeDashboardThemeColor.class)
+ .add("dark", dark)
+ .add("light", light)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontConfig.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontConfig.java
new file mode 100644
index 000000000..8fcfca80f
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontConfig.java
@@ -0,0 +1,136 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** Defines the typography settings for a single text category. */
+@Generated
+public class DashboardThemeFontConfig {
+ /** The font color applied to text in this category. */
+ @JsonProperty("font_color")
+ private DashboardThemeDashboardThemeColor fontColor;
+
+ /** The font family name used for text in this category. */
+ @JsonProperty("font_family")
+ private String fontFamily;
+
+ /** The font size in pixels. */
+ @JsonProperty("font_size")
+ private Long fontSize;
+
+ /** The font style (slant) applied to text in this category. */
+ @JsonProperty("font_style")
+ private DashboardThemeFontStyle fontStyle;
+
+ /** The font weight value (for example, 400 for normal, 700 for bold). */
+ @JsonProperty("font_weight")
+ private Long fontWeight;
+
+ /** The text case transformation applied to text in this category. */
+ @JsonProperty("text_case")
+ private DashboardThemeTextCase textCase;
+
+ /** The text decoration applied to text in this category. */
+ @JsonProperty("text_decoration")
+ private DashboardThemeTextDecoration textDecoration;
+
+ public DashboardThemeFontConfig setFontColor(DashboardThemeDashboardThemeColor fontColor) {
+ this.fontColor = fontColor;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getFontColor() {
+ return fontColor;
+ }
+
+ public DashboardThemeFontConfig setFontFamily(String fontFamily) {
+ this.fontFamily = fontFamily;
+ return this;
+ }
+
+ public String getFontFamily() {
+ return fontFamily;
+ }
+
+ public DashboardThemeFontConfig setFontSize(Long fontSize) {
+ this.fontSize = fontSize;
+ return this;
+ }
+
+ public Long getFontSize() {
+ return fontSize;
+ }
+
+ public DashboardThemeFontConfig setFontStyle(DashboardThemeFontStyle fontStyle) {
+ this.fontStyle = fontStyle;
+ return this;
+ }
+
+ public DashboardThemeFontStyle getFontStyle() {
+ return fontStyle;
+ }
+
+ public DashboardThemeFontConfig setFontWeight(Long fontWeight) {
+ this.fontWeight = fontWeight;
+ return this;
+ }
+
+ public Long getFontWeight() {
+ return fontWeight;
+ }
+
+ public DashboardThemeFontConfig setTextCase(DashboardThemeTextCase textCase) {
+ this.textCase = textCase;
+ return this;
+ }
+
+ public DashboardThemeTextCase getTextCase() {
+ return textCase;
+ }
+
+ public DashboardThemeFontConfig setTextDecoration(DashboardThemeTextDecoration textDecoration) {
+ this.textDecoration = textDecoration;
+ return this;
+ }
+
+ public DashboardThemeTextDecoration getTextDecoration() {
+ return textDecoration;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeFontConfig that = (DashboardThemeFontConfig) o;
+ return Objects.equals(fontColor, that.fontColor)
+ && Objects.equals(fontFamily, that.fontFamily)
+ && Objects.equals(fontSize, that.fontSize)
+ && Objects.equals(fontStyle, that.fontStyle)
+ && Objects.equals(fontWeight, that.fontWeight)
+ && Objects.equals(textCase, that.textCase)
+ && Objects.equals(textDecoration, that.textDecoration);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(
+ fontColor, fontFamily, fontSize, fontStyle, fontWeight, textCase, textDecoration);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeFontConfig.class)
+ .add("fontColor", fontColor)
+ .add("fontFamily", fontFamily)
+ .add("fontSize", fontSize)
+ .add("fontStyle", fontStyle)
+ .add("fontWeight", fontWeight)
+ .add("textCase", textCase)
+ .add("textDecoration", textDecoration)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontSettings.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontSettings.java
new file mode 100644
index 000000000..19052be89
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontSettings.java
@@ -0,0 +1,113 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/**
+ * Per-category typography overrides. When font_settings.base is set, it takes precedence over the
+ * top-level font_family and font_color. More specific categories (widget_title, widget_description,
+ * field_title, field_value) in turn override base.
+ */
+@Generated
+public class DashboardThemeFontSettings {
+ /** The default font config applied to all text unless overridden by a more specific category. */
+ @JsonProperty("base")
+ private DashboardThemeFontConfig base;
+
+ /** The font config applied to field titles (for example, axis titles, table heading titles). */
+ @JsonProperty("field_title")
+ private DashboardThemeFontConfig fieldTitle;
+
+ /**
+ * The font config applied to field values (for example, axis tick labels, table cell values,
+ * tooltip values).
+ */
+ @JsonProperty("field_value")
+ private DashboardThemeFontConfig fieldValue;
+
+ /** The font config applied to widget descriptions. */
+ @JsonProperty("widget_description")
+ private DashboardThemeFontConfig widgetDescription;
+
+ /** The font config applied to widget titles. */
+ @JsonProperty("widget_title")
+ private DashboardThemeFontConfig widgetTitle;
+
+ public DashboardThemeFontSettings setBase(DashboardThemeFontConfig base) {
+ this.base = base;
+ return this;
+ }
+
+ public DashboardThemeFontConfig getBase() {
+ return base;
+ }
+
+ public DashboardThemeFontSettings setFieldTitle(DashboardThemeFontConfig fieldTitle) {
+ this.fieldTitle = fieldTitle;
+ return this;
+ }
+
+ public DashboardThemeFontConfig getFieldTitle() {
+ return fieldTitle;
+ }
+
+ public DashboardThemeFontSettings setFieldValue(DashboardThemeFontConfig fieldValue) {
+ this.fieldValue = fieldValue;
+ return this;
+ }
+
+ public DashboardThemeFontConfig getFieldValue() {
+ return fieldValue;
+ }
+
+ public DashboardThemeFontSettings setWidgetDescription(
+ DashboardThemeFontConfig widgetDescription) {
+ this.widgetDescription = widgetDescription;
+ return this;
+ }
+
+ public DashboardThemeFontConfig getWidgetDescription() {
+ return widgetDescription;
+ }
+
+ public DashboardThemeFontSettings setWidgetTitle(DashboardThemeFontConfig widgetTitle) {
+ this.widgetTitle = widgetTitle;
+ return this;
+ }
+
+ public DashboardThemeFontConfig getWidgetTitle() {
+ return widgetTitle;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeFontSettings that = (DashboardThemeFontSettings) o;
+ return Objects.equals(base, that.base)
+ && Objects.equals(fieldTitle, that.fieldTitle)
+ && Objects.equals(fieldValue, that.fieldValue)
+ && Objects.equals(widgetDescription, that.widgetDescription)
+ && Objects.equals(widgetTitle, that.widgetTitle);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(base, fieldTitle, fieldValue, widgetDescription, widgetTitle);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeFontSettings.class)
+ .add("base", base)
+ .add("fieldTitle", fieldTitle)
+ .add("fieldValue", fieldValue)
+ .add("widgetDescription", widgetDescription)
+ .add("widgetTitle", widgetTitle)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontStyle.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontStyle.java
new file mode 100644
index 000000000..7eae9258b
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeFontStyle.java
@@ -0,0 +1,12 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+
+/** Defines the font style (slant) applied to rendered text. */
+@Generated
+public enum DashboardThemeFontStyle {
+ FONT_STYLE_ITALIC,
+ FONT_STYLE_NORMAL,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeSentimentColors.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeSentimentColors.java
new file mode 100644
index 000000000..e421704b5
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeSentimentColors.java
@@ -0,0 +1,78 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/**
+ * Shared sentiment colors reusable across visualizations, primarily for conditional formatting,
+ * ensuring consistent positive, negative, and neutral meaning throughout the dashboard.
+ */
+@Generated
+public class DashboardThemeSentimentColors {
+ /** The color applied to negative sentiment values. */
+ @JsonProperty("negative")
+ private DashboardThemeDashboardThemeColor negative;
+
+ /** The color applied to neutral sentiment values. */
+ @JsonProperty("neutral")
+ private DashboardThemeDashboardThemeColor neutral;
+
+ /** The color applied to positive sentiment values. */
+ @JsonProperty("positive")
+ private DashboardThemeDashboardThemeColor positive;
+
+ public DashboardThemeSentimentColors setNegative(DashboardThemeDashboardThemeColor negative) {
+ this.negative = negative;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getNegative() {
+ return negative;
+ }
+
+ public DashboardThemeSentimentColors setNeutral(DashboardThemeDashboardThemeColor neutral) {
+ this.neutral = neutral;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getNeutral() {
+ return neutral;
+ }
+
+ public DashboardThemeSentimentColors setPositive(DashboardThemeDashboardThemeColor positive) {
+ this.positive = positive;
+ return this;
+ }
+
+ public DashboardThemeDashboardThemeColor getPositive() {
+ return positive;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ DashboardThemeSentimentColors that = (DashboardThemeSentimentColors) o;
+ return Objects.equals(negative, that.negative)
+ && Objects.equals(neutral, that.neutral)
+ && Objects.equals(positive, that.positive);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(negative, neutral, positive);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(DashboardThemeSentimentColors.class)
+ .add("negative", negative)
+ .add("neutral", neutral)
+ .add("positive", positive)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextCase.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextCase.java
new file mode 100644
index 000000000..5e77c5b72
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextCase.java
@@ -0,0 +1,13 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+
+/** Defines the text case transformation applied to rendered text. */
+@Generated
+public enum DashboardThemeTextCase {
+ TEXT_CASE_CAPITALIZE,
+ TEXT_CASE_LOWERCASE,
+ TEXT_CASE_UPPERCASE,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextDecoration.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextDecoration.java
new file mode 100644
index 000000000..45b3594f7
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeTextDecoration.java
@@ -0,0 +1,12 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+
+/** Defines the decoration line applied to rendered text. */
+@Generated
+public enum DashboardThemeTextDecoration {
+ TEXT_DECORATION_NONE,
+ TEXT_DECORATION_UNDERLINE,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeVerticalAlign.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeVerticalAlign.java
new file mode 100644
index 000000000..eef183407
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/DashboardThemeVerticalAlign.java
@@ -0,0 +1,13 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.settingsv2;
+
+import com.databricks.sdk.support.Generated;
+
+/** Vertical alignment options for text box content. */
+@Generated
+public enum DashboardThemeVerticalAlign {
+ VERTICAL_ALIGN_BOTTOM,
+ VERTICAL_ALIGN_CENTER,
+ VERTICAL_ALIGN_TOP,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java
index 0bebb3f58..7f954c711 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/settingsv2/Setting.java
@@ -129,6 +129,13 @@ public class Setting {
@JsonProperty("effective_string_val")
private StringMessage effectiveStringVal;
+ /**
+ * Effective setting value for the workspace_dashboard_theme setting. This is the final effective
+ * value of the setting. To set a value, use workspace_dashboard_theme.
+ */
+ @JsonProperty("effective_workspace_dashboard_theme")
+ private DashboardTheme effectiveWorkspaceDashboardTheme;
+
/**
* Effective setting value for workspace_label setting. This is the final effective value of
* setting. To set a value use workspace_label.
@@ -175,6 +182,13 @@ public class Setting {
@JsonProperty("string_val")
private StringMessage stringVal;
+ /**
+ * Setting value for the workspace_dashboard_theme setting. This is the setting value set by
+ * consumers. Check effective_workspace_dashboard_theme for the final setting value.
+ */
+ @JsonProperty("workspace_dashboard_theme")
+ private DashboardTheme workspaceDashboardTheme;
+
/**
* Setting value for workspace_label setting. This is the setting value set by consumers, check
* effective_workspace_label for final setting value.
@@ -348,6 +362,16 @@ public StringMessage getEffectiveStringVal() {
return effectiveStringVal;
}
+ public Setting setEffectiveWorkspaceDashboardTheme(
+ DashboardTheme effectiveWorkspaceDashboardTheme) {
+ this.effectiveWorkspaceDashboardTheme = effectiveWorkspaceDashboardTheme;
+ return this;
+ }
+
+ public DashboardTheme getEffectiveWorkspaceDashboardTheme() {
+ return effectiveWorkspaceDashboardTheme;
+ }
+
public Setting setEffectiveWorkspaceLabel(WorkspaceLabelMessage effectiveWorkspaceLabel) {
this.effectiveWorkspaceLabel = effectiveWorkspaceLabel;
return this;
@@ -413,6 +437,15 @@ public StringMessage getStringVal() {
return stringVal;
}
+ public Setting setWorkspaceDashboardTheme(DashboardTheme workspaceDashboardTheme) {
+ this.workspaceDashboardTheme = workspaceDashboardTheme;
+ return this;
+ }
+
+ public DashboardTheme getWorkspaceDashboardTheme() {
+ return workspaceDashboardTheme;
+ }
+
public Setting setWorkspaceLabel(WorkspaceLabelMessage workspaceLabel) {
this.workspaceLabel = workspaceLabel;
return this;
@@ -454,6 +487,7 @@ public boolean equals(Object o) {
&& Objects.equals(effectivePersonalCompute, that.effectivePersonalCompute)
&& Objects.equals(effectiveRestrictWorkspaceAdmins, that.effectiveRestrictWorkspaceAdmins)
&& Objects.equals(effectiveStringVal, that.effectiveStringVal)
+ && Objects.equals(effectiveWorkspaceDashboardTheme, that.effectiveWorkspaceDashboardTheme)
&& Objects.equals(effectiveWorkspaceLabel, that.effectiveWorkspaceLabel)
&& Objects.equals(integerVal, that.integerVal)
&& Objects.equals(name, that.name)
@@ -461,6 +495,7 @@ public boolean equals(Object o) {
&& Objects.equals(personalCompute, that.personalCompute)
&& Objects.equals(restrictWorkspaceAdmins, that.restrictWorkspaceAdmins)
&& Objects.equals(stringVal, that.stringVal)
+ && Objects.equals(workspaceDashboardTheme, that.workspaceDashboardTheme)
&& Objects.equals(workspaceLabel, that.workspaceLabel);
}
@@ -484,6 +519,7 @@ public int hashCode() {
effectivePersonalCompute,
effectiveRestrictWorkspaceAdmins,
effectiveStringVal,
+ effectiveWorkspaceDashboardTheme,
effectiveWorkspaceLabel,
integerVal,
name,
@@ -491,6 +527,7 @@ public int hashCode() {
personalCompute,
restrictWorkspaceAdmins,
stringVal,
+ workspaceDashboardTheme,
workspaceLabel);
}
@@ -520,6 +557,7 @@ public String toString() {
.add("effectivePersonalCompute", effectivePersonalCompute)
.add("effectiveRestrictWorkspaceAdmins", effectiveRestrictWorkspaceAdmins)
.add("effectiveStringVal", effectiveStringVal)
+ .add("effectiveWorkspaceDashboardTheme", effectiveWorkspaceDashboardTheme)
.add("effectiveWorkspaceLabel", effectiveWorkspaceLabel)
.add("integerVal", integerVal)
.add("name", name)
@@ -527,6 +565,7 @@ public String toString() {
.add("personalCompute", personalCompute)
.add("restrictWorkspaceAdmins", restrictWorkspaceAdmins)
.add("stringVal", stringVal)
+ .add("workspaceDashboardTheme", workspaceDashboardTheme)
.add("workspaceLabel", workspaceLabel)
.toString();
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactRequest.java
new file mode 100644
index 000000000..b20ecf23c
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactRequest.java
@@ -0,0 +1,43 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetSoftwareArtifactRequest {
+ /**
+ * Resource name of the artifact, of the form `software-artifacts/{catalog}.{schema}.{artifact}`.
+ */
+ @JsonIgnore private String name;
+
+ public GetSoftwareArtifactRequest 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;
+ GetSoftwareArtifactRequest that = (GetSoftwareArtifactRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetSoftwareArtifactRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactVersionRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactVersionRequest.java
new file mode 100644
index 000000000..5fda12ada
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/GetSoftwareArtifactVersionRequest.java
@@ -0,0 +1,44 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class GetSoftwareArtifactVersionRequest {
+ /**
+ * Resource name of the version, of the form
+ * `software-artifacts/{catalog}.{schema}.{artifact}/versions/{version}`.
+ */
+ @JsonIgnore private String name;
+
+ public GetSoftwareArtifactVersionRequest 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;
+ GetSoftwareArtifactVersionRequest that = (GetSoftwareArtifactVersionRequest) o;
+ return Objects.equals(name, that.name);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(GetSoftwareArtifactVersionRequest.class).add("name", name).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetail.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetail.java
new file mode 100644
index 000000000..41a82a39d
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetail.java
@@ -0,0 +1,43 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Objects;
+
+/** Image acceleration information for a software artifact version. */
+@Generated
+public class ImageAccelerationDetail {
+ /** Image acceleration status for the version. */
+ @JsonProperty("status")
+ private ImageAccelerationDetailStatus status;
+
+ public ImageAccelerationDetail setStatus(ImageAccelerationDetailStatus status) {
+ this.status = status;
+ return this;
+ }
+
+ public ImageAccelerationDetailStatus getStatus() {
+ return status;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ ImageAccelerationDetail that = (ImageAccelerationDetail) o;
+ return Objects.equals(status, that.status);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(status);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(ImageAccelerationDetail.class).add("status", status).toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetailStatus.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetailStatus.java
new file mode 100644
index 000000000..2235cac49
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ImageAccelerationDetailStatus.java
@@ -0,0 +1,12 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+
+/** Image acceleration status for a software artifact version. */
+@Generated
+public enum ImageAccelerationDetailStatus {
+ SUCCESS,
+ UNSPECIFIED,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsRequest.java
new file mode 100644
index 000000000..6304a03df
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsRequest.java
@@ -0,0 +1,84 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import java.util.Objects;
+
+@Generated
+public class ListSoftwareArtifactVersionsRequest {
+ /**
+ * Maximum number of versions to return. If omitted or set to 0, the page size defaults to 50. The
+ * maximum value is 50; values above 50 or below 0 are rejected.
+ */
+ @JsonIgnore
+ @QueryParam("page_size")
+ private Long pageSize;
+
+ /**
+ * Opaque continuation token from a previous response's next_page_token. Omit for the first page.
+ */
+ @JsonIgnore
+ @QueryParam("page_token")
+ private String pageToken;
+
+ /**
+ * Resource name of the parent artifact, of the form
+ * `software-artifacts/{catalog}.{schema}.{artifact}`.
+ */
+ @JsonIgnore private String parent;
+
+ public ListSoftwareArtifactVersionsRequest setPageSize(Long pageSize) {
+ this.pageSize = pageSize;
+ return this;
+ }
+
+ public Long getPageSize() {
+ return pageSize;
+ }
+
+ public ListSoftwareArtifactVersionsRequest setPageToken(String pageToken) {
+ this.pageToken = pageToken;
+ return this;
+ }
+
+ public String getPageToken() {
+ return pageToken;
+ }
+
+ public ListSoftwareArtifactVersionsRequest setParent(String parent) {
+ this.parent = parent;
+ return this;
+ }
+
+ public String getParent() {
+ return parent;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ ListSoftwareArtifactVersionsRequest that = (ListSoftwareArtifactVersionsRequest) o;
+ return Objects.equals(pageSize, that.pageSize)
+ && Objects.equals(pageToken, that.pageToken)
+ && Objects.equals(parent, that.parent);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(pageSize, pageToken, parent);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(ListSoftwareArtifactVersionsRequest.class)
+ .add("pageSize", pageSize)
+ .add("pageToken", pageToken)
+ .add("parent", parent)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsResponse.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsResponse.java
new file mode 100644
index 000000000..a1b988e3c
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/ListSoftwareArtifactVersionsResponse.java
@@ -0,0 +1,62 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import java.util.Collection;
+import java.util.Objects;
+
+/** Response containing a page of software artifact versions. */
+@Generated
+public class ListSoftwareArtifactVersionsResponse {
+ /** Opaque token to pass as the next request's page_token. Empty when there are no more pages. */
+ @JsonProperty("next_page_token")
+ private String nextPageToken;
+
+ /** The versions of the requested software artifact. */
+ @JsonProperty("software_artifact_versions")
+ private Collection This is the high-level interface, that contains generated methods.
+ *
+ * Evolving: this interface is under development. Method signatures may change.
+ */
+@Generated
+public interface SoftwareArtifactsService {
+ /** Gets a software artifact. */
+ SoftwareArtifact getSoftwareArtifact(GetSoftwareArtifactRequest getSoftwareArtifactRequest);
+
+ /** Gets a software artifact version. */
+ SoftwareArtifactVersion getSoftwareArtifactVersion(
+ GetSoftwareArtifactVersionRequest getSoftwareArtifactVersionRequest);
+
+ /** Lists the versions of a software artifact. */
+ ListSoftwareArtifactVersionsResponse listSoftwareArtifactVersions(
+ ListSoftwareArtifactVersionsRequest listSoftwareArtifactVersionsRequest);
+
+ /** Lists software artifacts in a schema. */
+ ListSoftwareArtifactsResponse listSoftwareArtifacts(
+ ListSoftwareArtifactsRequest listSoftwareArtifactsRequest);
+
+ /** Resolves a software artifact version from its tag alias. */
+ ResolveSoftwareArtifactVersionResponse resolveSoftwareArtifactVersion(
+ ResolveSoftwareArtifactVersionRequest resolveSoftwareArtifactVersionRequest);
+
+ /**
+ * Updates a software artifact. The name is immutable; only the owner may be changed. The
+ * destination owner must exist in the account. The caller needs MANAGE_ACCESS_CONTROL on the
+ * artifact. The response contains its name and the requested owner; audit fields are omitted.
+ */
+ SoftwareArtifact updateSoftwareArtifact(
+ UpdateSoftwareArtifactRequest updateSoftwareArtifactRequest);
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/UpdateSoftwareArtifactRequest.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/UpdateSoftwareArtifactRequest.java
new file mode 100644
index 000000000..efedce1ba
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/softwareartifacts/UpdateSoftwareArtifactRequest.java
@@ -0,0 +1,85 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.softwareartifacts;
+
+import com.databricks.sdk.support.Generated;
+import com.databricks.sdk.support.QueryParam;
+import com.databricks.sdk.support.ToStringer;
+import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.google.protobuf.FieldMask;
+import java.util.Objects;
+
+@Generated
+public class UpdateSoftwareArtifactRequest {
+ /**
+ * Resource name of the artifact, of the form `software-artifacts/{catalog}.{schema}.{artifact}`.
+ */
+ @JsonIgnore private String name;
+
+ /**
+ * The software artifact to update. Its name identifies the existing artifact; only owner may be
+ * changed.
+ */
+ @JsonProperty("software_artifact")
+ private SoftwareArtifact softwareArtifact;
+
+ /**
+ * Fields to update, relative to `software_artifact`. Accepts `owner` or `*`; owner is the only
+ * mutable field, so both select the same update. Output-only values in the resource are ignored.
+ */
+ @JsonIgnore
+ @QueryParam("update_mask")
+ private FieldMask updateMask;
+
+ public UpdateSoftwareArtifactRequest setName(String name) {
+ this.name = name;
+ return this;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public UpdateSoftwareArtifactRequest setSoftwareArtifact(SoftwareArtifact softwareArtifact) {
+ this.softwareArtifact = softwareArtifact;
+ return this;
+ }
+
+ public SoftwareArtifact getSoftwareArtifact() {
+ return softwareArtifact;
+ }
+
+ public UpdateSoftwareArtifactRequest setUpdateMask(FieldMask updateMask) {
+ this.updateMask = updateMask;
+ return this;
+ }
+
+ public FieldMask getUpdateMask() {
+ return updateMask;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ UpdateSoftwareArtifactRequest that = (UpdateSoftwareArtifactRequest) o;
+ return Objects.equals(name, that.name)
+ && Objects.equals(softwareArtifact, that.softwareArtifact)
+ && Objects.equals(updateMask, that.updateMask);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name, softwareArtifact, updateMask);
+ }
+
+ @Override
+ public String toString() {
+ return new ToStringer(UpdateSoftwareArtifactRequest.class)
+ .add("name", name)
+ .add("softwareArtifact", softwareArtifact)
+ .add("updateMask", updateMask)
+ .toString();
+ }
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfo.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfo.java
index 537e7fe5e..c82aa46a7 100644
--- a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfo.java
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfo.java
@@ -13,6 +13,36 @@
*/
@Generated
public class EndpointScalingInfo {
+ /**
+ * Reason the in-progress scaling change is delayed. When set, `estimated_completion_timestamp` is
+ * unset. Unset when the change is not delayed or no scaling change is in progress.
+ */
+ @JsonProperty("delayed_reason")
+ private EndpointScalingInfoScalingDelayReason delayedReason;
+
+ /**
+ * Estimated time at which the in-progress scaling change will complete, in milliseconds since the
+ * Unix epoch. The estimate may change as the scaling change progresses. Unset when no scaling
+ * change is in progress, when no estimate is available, or when the change is delayed (see
+ * `delayed_reason`).
+ */
+ @JsonProperty("estimated_completion_timestamp")
+ private Long estimatedCompletionTimestamp;
+
+ /**
+ * Percentage of index initialization completed, from 0 to 100. Set only during the
+ * `INITIALIZING_INDEX` phase; unset in other phases or when progress is not available.
+ */
+ @JsonProperty("index_initialization_percentage")
+ private Long indexInitializationPercentage;
+
+ /**
+ * Current phase of the in-progress scaling change. Unset when no scaling change is in progress or
+ * the phase is not available.
+ */
+ @JsonProperty("phase")
+ private EndpointScalingInfoScalingPhase phase;
+
/**
* The requested QPS target for the endpoint. Best-effort; the system does not guarantee this QPS
* will be achieved.
@@ -24,6 +54,50 @@ public class EndpointScalingInfo {
@JsonProperty("state")
private ScalingChangeState state;
+ /**
+ * Earliest time a new Target QPS change is accepted, in milliseconds since the Unix epoch. Set
+ * only while a scaling change is in progress, the change lock is on, and the endpoint has a
+ * recorded last throughput change; may be in the past once the lock has expired.
+ */
+ @JsonProperty("target_qps_change_allowed_after_timestamp")
+ private Long targetQpsChangeAllowedAfterTimestamp;
+
+ public EndpointScalingInfo setDelayedReason(EndpointScalingInfoScalingDelayReason delayedReason) {
+ this.delayedReason = delayedReason;
+ return this;
+ }
+
+ public EndpointScalingInfoScalingDelayReason getDelayedReason() {
+ return delayedReason;
+ }
+
+ public EndpointScalingInfo setEstimatedCompletionTimestamp(Long estimatedCompletionTimestamp) {
+ this.estimatedCompletionTimestamp = estimatedCompletionTimestamp;
+ return this;
+ }
+
+ public Long getEstimatedCompletionTimestamp() {
+ return estimatedCompletionTimestamp;
+ }
+
+ public EndpointScalingInfo setIndexInitializationPercentage(Long indexInitializationPercentage) {
+ this.indexInitializationPercentage = indexInitializationPercentage;
+ return this;
+ }
+
+ public Long getIndexInitializationPercentage() {
+ return indexInitializationPercentage;
+ }
+
+ public EndpointScalingInfo setPhase(EndpointScalingInfoScalingPhase phase) {
+ this.phase = phase;
+ return this;
+ }
+
+ public EndpointScalingInfoScalingPhase getPhase() {
+ return phase;
+ }
+
public EndpointScalingInfo setRequestedTargetQps(Long requestedTargetQps) {
this.requestedTargetQps = requestedTargetQps;
return this;
@@ -42,25 +116,53 @@ public ScalingChangeState getState() {
return state;
}
+ public EndpointScalingInfo setTargetQpsChangeAllowedAfterTimestamp(
+ Long targetQpsChangeAllowedAfterTimestamp) {
+ this.targetQpsChangeAllowedAfterTimestamp = targetQpsChangeAllowedAfterTimestamp;
+ return this;
+ }
+
+ public Long getTargetQpsChangeAllowedAfterTimestamp() {
+ return targetQpsChangeAllowedAfterTimestamp;
+ }
+
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
EndpointScalingInfo that = (EndpointScalingInfo) o;
- return Objects.equals(requestedTargetQps, that.requestedTargetQps)
- && Objects.equals(state, that.state);
+ return Objects.equals(delayedReason, that.delayedReason)
+ && Objects.equals(estimatedCompletionTimestamp, that.estimatedCompletionTimestamp)
+ && Objects.equals(indexInitializationPercentage, that.indexInitializationPercentage)
+ && Objects.equals(phase, that.phase)
+ && Objects.equals(requestedTargetQps, that.requestedTargetQps)
+ && Objects.equals(state, that.state)
+ && Objects.equals(
+ targetQpsChangeAllowedAfterTimestamp, that.targetQpsChangeAllowedAfterTimestamp);
}
@Override
public int hashCode() {
- return Objects.hash(requestedTargetQps, state);
+ return Objects.hash(
+ delayedReason,
+ estimatedCompletionTimestamp,
+ indexInitializationPercentage,
+ phase,
+ requestedTargetQps,
+ state,
+ targetQpsChangeAllowedAfterTimestamp);
}
@Override
public String toString() {
return new ToStringer(EndpointScalingInfo.class)
+ .add("delayedReason", delayedReason)
+ .add("estimatedCompletionTimestamp", estimatedCompletionTimestamp)
+ .add("indexInitializationPercentage", indexInitializationPercentage)
+ .add("phase", phase)
.add("requestedTargetQps", requestedTargetQps)
.add("state", state)
+ .add("targetQpsChangeAllowedAfterTimestamp", targetQpsChangeAllowedAfterTimestamp)
.toString();
}
}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingDelayReason.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingDelayReason.java
new file mode 100644
index 000000000..c26e01ae2
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingDelayReason.java
@@ -0,0 +1,13 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.vectorsearch;
+
+import com.databricks.sdk.support.Generated;
+
+/** Reason an in-progress scaling change is delayed. */
+@Generated
+public enum EndpointScalingInfoScalingDelayReason {
+ CAPACITY_UNAVAILABLE,
+ SCALE_DOWN_BLOCKED,
+ TAKING_LONGER_THAN_EXPECTED,
+}
diff --git a/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingPhase.java b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingPhase.java
new file mode 100644
index 000000000..c6daa2b1e
--- /dev/null
+++ b/databricks-sdk-java/src/main/java/com/databricks/sdk/service/vectorsearch/EndpointScalingInfoScalingPhase.java
@@ -0,0 +1,13 @@
+// Code generated from OpenAPI specs by Databricks SDK Generator. DO NOT EDIT.
+
+package com.databricks.sdk.service.vectorsearch;
+
+import com.databricks.sdk.support.Generated;
+
+/** Phase of an in-progress scaling change. */
+@Generated
+public enum EndpointScalingInfoScalingPhase {
+ ADJUSTING_CAPACITY,
+ ESTIMATING,
+ INITIALIZING_INDEX,
+}
diff --git a/examples/docs/pom.xml b/examples/docs/pom.xml
index 0b878cbdb..d27ad4a73 100644
--- a/examples/docs/pom.xml
+++ b/examples/docs/pom.xml
@@ -24,7 +24,7 @@