iamv2

package
v0.174.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 18, 2026 License: Apache-2.0 Imports: 10 Imported by: 2

Documentation

Overview

These APIs allow you to manage Account Iam V2, Workspace Iam V2, etc.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccountIamV2API

type AccountIamV2API struct {
	// contains filtered or unexported fields
}

These APIs are used to manage identities and the workspace access of these identities in <Databricks>.

func NewAccountIamV2

func NewAccountIamV2(client *client.DatabricksClient) *AccountIamV2API

func (*AccountIamV2API) CreateDirectGroupMember added in v0.172.0

func (a *AccountIamV2API) CreateDirectGroupMember(ctx context.Context, request CreateDirectGroupMemberRequest) (*DirectGroupMember, error)

func (*AccountIamV2API) CreateGroup added in v0.172.0

func (a *AccountIamV2API) CreateGroup(ctx context.Context, request CreateGroupRequest) (*Group, error)

func (*AccountIamV2API) CreateServicePrincipal added in v0.172.0

func (a *AccountIamV2API) CreateServicePrincipal(ctx context.Context, request CreateServicePrincipalRequest) (*ServicePrincipal, error)

func (*AccountIamV2API) CreateUser added in v0.172.0

func (a *AccountIamV2API) CreateUser(ctx context.Context, request CreateUserRequest) (*User, error)

func (*AccountIamV2API) CreateWorkspaceAssignment added in v0.172.0

func (a *AccountIamV2API) CreateWorkspaceAssignment(ctx context.Context, request CreateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

func (*AccountIamV2API) CreateWorkspaceAssignmentDetail added in v0.133.0

func (a *AccountIamV2API) CreateWorkspaceAssignmentDetail(ctx context.Context, request CreateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

func (*AccountIamV2API) DeleteDirectGroupMember added in v0.172.0

func (a *AccountIamV2API) DeleteDirectGroupMember(ctx context.Context, request DeleteDirectGroupMemberRequest) error

func (*AccountIamV2API) DeleteGroup added in v0.172.0

func (a *AccountIamV2API) DeleteGroup(ctx context.Context, request DeleteGroupRequest) error

func (*AccountIamV2API) DeleteServicePrincipal added in v0.172.0

func (a *AccountIamV2API) DeleteServicePrincipal(ctx context.Context, request DeleteServicePrincipalRequest) error

func (*AccountIamV2API) DeleteUser added in v0.172.0

func (a *AccountIamV2API) DeleteUser(ctx context.Context, request DeleteUserRequest) error

func (*AccountIamV2API) DeleteWorkspaceAssignment added in v0.172.0

func (a *AccountIamV2API) DeleteWorkspaceAssignment(ctx context.Context, request DeleteWorkspaceAssignmentRequest) error

func (*AccountIamV2API) DeleteWorkspaceAssignmentDetail added in v0.133.0

func (a *AccountIamV2API) DeleteWorkspaceAssignmentDetail(ctx context.Context, request DeleteWorkspaceAssignmentDetailRequest) error

func (*AccountIamV2API) GetDirectGroupMember added in v0.172.0

func (a *AccountIamV2API) GetDirectGroupMember(ctx context.Context, request GetDirectGroupMemberRequest) (*DirectGroupMember, error)

func (*AccountIamV2API) GetGroup added in v0.172.0

func (a *AccountIamV2API) GetGroup(ctx context.Context, request GetGroupRequest) (*Group, error)

func (*AccountIamV2API) GetServicePrincipal added in v0.172.0

func (a *AccountIamV2API) GetServicePrincipal(ctx context.Context, request GetServicePrincipalRequest) (*ServicePrincipal, error)

func (*AccountIamV2API) GetUser added in v0.172.0

func (a *AccountIamV2API) GetUser(ctx context.Context, request GetUserRequest) (*User, error)

func (*AccountIamV2API) GetWorkspaceAccessDetail

func (a *AccountIamV2API) GetWorkspaceAccessDetail(ctx context.Context, request GetWorkspaceAccessDetailRequest) (*WorkspaceAccessDetail, error)

func (*AccountIamV2API) GetWorkspaceAssignment added in v0.172.0

func (a *AccountIamV2API) GetWorkspaceAssignment(ctx context.Context, request GetWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

func (*AccountIamV2API) GetWorkspaceAssignmentDetail added in v0.133.0

func (a *AccountIamV2API) GetWorkspaceAssignmentDetail(ctx context.Context, request GetWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

func (*AccountIamV2API) ListDirectGroupMembers added in v0.172.0

func (a *AccountIamV2API) ListDirectGroupMembers(ctx context.Context, request ListDirectGroupMembersRequest) listing.Iterator[DirectGroupMember]

Lists provisioned direct members of a group with their membership source (internal or from identity provider).

func (*AccountIamV2API) ListDirectGroupMembersAll added in v0.173.0

func (a *AccountIamV2API) ListDirectGroupMembersAll(ctx context.Context, request ListDirectGroupMembersRequest) ([]DirectGroupMember, error)

Lists provisioned direct members of a group with their membership source (internal or from identity provider).

func (*AccountIamV2API) ListGroups added in v0.172.0

func (a *AccountIamV2API) ListGroups(ctx context.Context, request ListGroupsRequest) listing.Iterator[Group]

Lists the groups in the Databricks account, returning one page per call. Supports filtering by group name or external ID.

func (*AccountIamV2API) ListGroupsAll added in v0.172.0

func (a *AccountIamV2API) ListGroupsAll(ctx context.Context, request ListGroupsRequest) ([]Group, error)

Lists the groups in the Databricks account, returning one page per call. Supports filtering by group name or external ID.

func (*AccountIamV2API) ListServicePrincipals added in v0.172.0

func (a *AccountIamV2API) ListServicePrincipals(ctx context.Context, request ListServicePrincipalsRequest) listing.Iterator[ServicePrincipal]

Lists the service principals in the Databricks account, returning one page per call. Supports filtering by application ID or external ID.

func (*AccountIamV2API) ListServicePrincipalsAll added in v0.172.0

func (a *AccountIamV2API) ListServicePrincipalsAll(ctx context.Context, request ListServicePrincipalsRequest) ([]ServicePrincipal, error)

Lists the service principals in the Databricks account, returning one page per call. Supports filtering by application ID or external ID.

func (*AccountIamV2API) ListTransitiveParentGroups added in v0.172.0

func (a *AccountIamV2API) ListTransitiveParentGroups(ctx context.Context, request ListTransitiveParentGroupsRequest) (*ListTransitiveParentGroupsResponse, error)

func (*AccountIamV2API) ListUsers added in v0.172.0

func (a *AccountIamV2API) ListUsers(ctx context.Context, request ListUsersRequest) listing.Iterator[User]

Lists the users in the Databricks account, returning one page per call. Supports filtering by username or external ID.

func (*AccountIamV2API) ListUsersAll added in v0.172.0

func (a *AccountIamV2API) ListUsersAll(ctx context.Context, request ListUsersRequest) ([]User, error)

Lists the users in the Databricks account, returning one page per call. Supports filtering by username or external ID.

func (*AccountIamV2API) ListWorkspaceAssignmentDetails added in v0.133.0

func (a *AccountIamV2API) ListWorkspaceAssignmentDetails(ctx context.Context, request ListWorkspaceAssignmentDetailsRequest) listing.Iterator[WorkspaceAssignmentDetail]

Lists workspace assignment details 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 detail.

func (*AccountIamV2API) ListWorkspaceAssignmentDetailsAll added in v0.173.0

func (a *AccountIamV2API) ListWorkspaceAssignmentDetailsAll(ctx context.Context, request ListWorkspaceAssignmentDetailsRequest) ([]WorkspaceAssignmentDetail, error)

Lists workspace assignment details 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 detail.

func (*AccountIamV2API) ListWorkspaceAssignments added in v0.172.0

func (a *AccountIamV2API) ListWorkspaceAssignments(ctx context.Context, request ListWorkspaceAssignmentsRequest) listing.Iterator[WorkspaceAssignment]

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.

func (*AccountIamV2API) ListWorkspaceAssignmentsAll added in v0.173.0

func (a *AccountIamV2API) ListWorkspaceAssignmentsAll(ctx context.Context, request ListWorkspaceAssignmentsRequest) ([]WorkspaceAssignment, error)

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.

func (*AccountIamV2API) ResolveGroup

func (a *AccountIamV2API) ResolveGroup(ctx context.Context, request ResolveGroupRequest) (*ResolveGroupResponse, error)

func (*AccountIamV2API) ResolveServicePrincipal

func (a *AccountIamV2API) ResolveServicePrincipal(ctx context.Context, request ResolveServicePrincipalRequest) (*ResolveServicePrincipalResponse, error)

func (*AccountIamV2API) ResolveUser

func (a *AccountIamV2API) ResolveUser(ctx context.Context, request ResolveUserRequest) (*ResolveUserResponse, error)

func (*AccountIamV2API) UpdateGroup added in v0.172.0

func (a *AccountIamV2API) UpdateGroup(ctx context.Context, request UpdateGroupRequest) (*Group, error)

func (*AccountIamV2API) UpdateServicePrincipal added in v0.172.0

func (a *AccountIamV2API) UpdateServicePrincipal(ctx context.Context, request UpdateServicePrincipalRequest) (*ServicePrincipal, error)

func (*AccountIamV2API) UpdateUser added in v0.172.0

func (a *AccountIamV2API) UpdateUser(ctx context.Context, request UpdateUserRequest) (*User, error)

func (*AccountIamV2API) UpdateWorkspaceAssignment added in v0.172.0

func (a *AccountIamV2API) UpdateWorkspaceAssignment(ctx context.Context, request UpdateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

func (*AccountIamV2API) UpdateWorkspaceAssignmentDetail added in v0.133.0

func (a *AccountIamV2API) UpdateWorkspaceAssignmentDetail(ctx context.Context, request UpdateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

type AccountIamV2Interface

type AccountIamV2Interface interface {

	// Creates a group membership (assigns a principal to a group).
	CreateDirectGroupMember(ctx context.Context, request CreateDirectGroupMemberRequest) (*DirectGroupMember, error)

	// 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.
	//
	// 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.
	CreateGroup(ctx context.Context, request CreateGroupRequest) (*Group, error)

	// 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.
	//
	// 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.
	CreateServicePrincipal(ctx context.Context, request CreateServicePrincipalRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	CreateUser(ctx context.Context, request CreateUserRequest) (*User, error)

	// 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.
	CreateWorkspaceAssignment(ctx context.Context, request CreateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// Creates a workspace assignment detail 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 detail afterwards to confirm which
	// entitlements were granted.
	CreateWorkspaceAssignmentDetail(ctx context.Context, request CreateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

	// Deletes a group membership (unassigns a principal from a group).
	DeleteDirectGroupMember(ctx context.Context, request DeleteDirectGroupMemberRequest) error

	// Deletes a group from the Databricks account by its internal ID.
	DeleteGroup(ctx context.Context, request DeleteGroupRequest) error

	// Deletes a service principal from the Databricks account by its internal ID.
	DeleteServicePrincipal(ctx context.Context, request DeleteServicePrincipalRequest) error

	// Deletes a user from the Databricks account by its internal ID.
	DeleteUser(ctx context.Context, request DeleteUserRequest) error

	// 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.
	DeleteWorkspaceAssignment(ctx context.Context, request DeleteWorkspaceAssignmentRequest) error

	// Deletes a workspace assignment detail 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.
	DeleteWorkspaceAssignmentDetail(ctx context.Context, request DeleteWorkspaceAssignmentDetailRequest) error

	// Gets a provisioned direct member of a group.
	GetDirectGroupMember(ctx context.Context, request GetDirectGroupMemberRequest) (*DirectGroupMember, error)

	// Fetches a group from the Databricks account by its internal ID.
	GetGroup(ctx context.Context, request GetGroupRequest) (*Group, error)

	// Fetches a service principal from the Databricks account by its internal ID.
	GetServicePrincipal(ctx context.Context, request GetServicePrincipalRequest) (*ServicePrincipal, error)

	// Fetches a user from the Databricks account by its internal ID.
	GetUser(ctx context.Context, request GetUserRequest) (*User, error)

	// Returns the access details for a principal in a workspace. Allows for
	// checking access details for any provisioned principal (user, service
	// principal, or group) in a workspace. * Provisioned principal here refers to
	// one that has been synced into Databricks from the customer's IdP or added
	// explicitly to Databricks via SCIM/UI. Allows for passing in a "view"
	// parameter to control what fields are returned (BASIC by default or FULL).
	GetWorkspaceAccessDetail(ctx context.Context, request GetWorkspaceAccessDetailRequest) (*WorkspaceAccessDetail, error)

	// Returns the assignment for a principal in a workspace.
	GetWorkspaceAssignment(ctx context.Context, request GetWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// Returns the assignment details for a principal in a workspace.
	GetWorkspaceAssignmentDetail(ctx context.Context, request GetWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	//
	// This method is generated by Databricks SDK Code Generator.
	ListDirectGroupMembers(ctx context.Context, request ListDirectGroupMembersRequest) listing.Iterator[DirectGroupMember]

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	//
	// This method is generated by Databricks SDK Code Generator.
	ListDirectGroupMembersAll(ctx context.Context, request ListDirectGroupMembersRequest) ([]DirectGroupMember, error)

	// Lists the groups in the Databricks account, returning one page per call.
	// Supports filtering by group name or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListGroups(ctx context.Context, request ListGroupsRequest) listing.Iterator[Group]

	// Lists the groups in the Databricks account, returning one page per call.
	// Supports filtering by group name or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListGroupsAll(ctx context.Context, request ListGroupsRequest) ([]Group, error)

	// Lists the service principals in the Databricks account, returning one page
	// per call. Supports filtering by application ID or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListServicePrincipals(ctx context.Context, request ListServicePrincipalsRequest) listing.Iterator[ServicePrincipal]

	// Lists the service principals in the Databricks account, returning one page
	// per call. Supports filtering by application ID or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListServicePrincipalsAll(ctx context.Context, request ListServicePrincipalsRequest) ([]ServicePrincipal, error)

	// Lists all transitive parent groups of a principal.
	ListTransitiveParentGroups(ctx context.Context, request ListTransitiveParentGroupsRequest) (*ListTransitiveParentGroupsResponse, error)

	// Lists the users in the Databricks account, returning one page per call.
	// Supports filtering by username or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListUsers(ctx context.Context, request ListUsersRequest) listing.Iterator[User]

	// Lists the users in the Databricks account, returning one page per call.
	// Supports filtering by username or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListUsersAll(ctx context.Context, request ListUsersRequest) ([]User, error)

	// Lists workspace assignment details 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 detail.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentDetails(ctx context.Context, request ListWorkspaceAssignmentDetailsRequest) listing.Iterator[WorkspaceAssignmentDetail]

	// Lists workspace assignment details 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 detail.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentDetailsAll(ctx context.Context, request ListWorkspaceAssignmentDetailsRequest) ([]WorkspaceAssignmentDetail, error)

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignments(ctx context.Context, request ListWorkspaceAssignmentsRequest) listing.Iterator[WorkspaceAssignment]

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentsAll(ctx context.Context, request ListWorkspaceAssignmentsRequest) ([]WorkspaceAssignment, error)

	// 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.
	ResolveGroup(ctx context.Context, request ResolveGroupRequest) (*ResolveGroupResponse, error)

	// 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.
	ResolveServicePrincipal(ctx context.Context, request ResolveServicePrincipalRequest) (*ResolveServicePrincipalResponse, error)

	// 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.
	ResolveUser(ctx context.Context, request ResolveUserRequest) (*ResolveUserResponse, error)

	// Updates an existing group in the Databricks account. Only the fields named in
	// the update mask are modified. Returns the updated Group resource.
	//
	// 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.
	UpdateGroup(ctx context.Context, request UpdateGroupRequest) (*Group, error)

	// Updates an existing service principal in the Databricks account. Only the
	// fields named in the update mask are modified. Returns the updated
	// ServicePrincipal resource.
	//
	// 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.
	UpdateServicePrincipal(ctx context.Context, request UpdateServicePrincipalRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	UpdateUser(ctx context.Context, request UpdateUserRequest) (*User, error)

	// 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.
	UpdateWorkspaceAssignment(ctx context.Context, request UpdateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// 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 detail afterwards to confirm the final state.
	UpdateWorkspaceAssignmentDetail(ctx context.Context, request UpdateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)
}

type AccountIamV2Service deprecated

type AccountIamV2Service interface {

	// Creates a group membership (assigns a principal to a group).
	CreateDirectGroupMember(ctx context.Context, request CreateDirectGroupMemberRequest) (*DirectGroupMember, error)

	// 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.
	//
	// 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.
	CreateGroup(ctx context.Context, request CreateGroupRequest) (*Group, error)

	// 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.
	//
	// 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.
	CreateServicePrincipal(ctx context.Context, request CreateServicePrincipalRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	CreateUser(ctx context.Context, request CreateUserRequest) (*User, error)

	// 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.
	CreateWorkspaceAssignment(ctx context.Context, request CreateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// Creates a workspace assignment detail 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 detail afterwards
	// to confirm which entitlements were granted.
	CreateWorkspaceAssignmentDetail(ctx context.Context, request CreateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

	// Deletes a group membership (unassigns a principal from a group).
	DeleteDirectGroupMember(ctx context.Context, request DeleteDirectGroupMemberRequest) error

	// Deletes a group from the Databricks account by its internal ID.
	DeleteGroup(ctx context.Context, request DeleteGroupRequest) error

	// Deletes a service principal from the Databricks account by its internal
	// ID.
	DeleteServicePrincipal(ctx context.Context, request DeleteServicePrincipalRequest) error

	// Deletes a user from the Databricks account by its internal ID.
	DeleteUser(ctx context.Context, request DeleteUserRequest) error

	// 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.
	DeleteWorkspaceAssignment(ctx context.Context, request DeleteWorkspaceAssignmentRequest) error

	// Deletes a workspace assignment detail 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.
	DeleteWorkspaceAssignmentDetail(ctx context.Context, request DeleteWorkspaceAssignmentDetailRequest) error

	// Gets a provisioned direct member of a group.
	GetDirectGroupMember(ctx context.Context, request GetDirectGroupMemberRequest) (*DirectGroupMember, error)

	// Fetches a group from the Databricks account by its internal ID.
	GetGroup(ctx context.Context, request GetGroupRequest) (*Group, error)

	// Fetches a service principal from the Databricks account by its internal
	// ID.
	GetServicePrincipal(ctx context.Context, request GetServicePrincipalRequest) (*ServicePrincipal, error)

	// Fetches a user from the Databricks account by its internal ID.
	GetUser(ctx context.Context, request GetUserRequest) (*User, error)

	// Returns the access details for a principal in a workspace. Allows for
	// checking access details for any provisioned principal (user, service
	// principal, or group) in a workspace. * Provisioned principal here refers
	// to one that has been synced into Databricks from the customer's IdP or
	// added explicitly to Databricks via SCIM/UI. Allows for passing in a
	// "view" parameter to control what fields are returned (BASIC by default or
	// FULL).
	GetWorkspaceAccessDetail(ctx context.Context, request GetWorkspaceAccessDetailRequest) (*WorkspaceAccessDetail, error)

	// Returns the assignment for a principal in a workspace.
	GetWorkspaceAssignment(ctx context.Context, request GetWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// Returns the assignment details for a principal in a workspace.
	GetWorkspaceAssignmentDetail(ctx context.Context, request GetWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	ListDirectGroupMembers(ctx context.Context, request ListDirectGroupMembersRequest) (*ListDirectGroupMembersResponse, error)

	// Lists the groups in the Databricks account, returning one page per call.
	// Supports filtering by group name or external ID.
	ListGroups(ctx context.Context, request ListGroupsRequest) (*ListGroupsResponse, error)

	// Lists the service principals in the Databricks account, returning one
	// page per call. Supports filtering by application ID or external ID.
	ListServicePrincipals(ctx context.Context, request ListServicePrincipalsRequest) (*ListServicePrincipalsResponse, error)

	// Lists all transitive parent groups of a principal.
	ListTransitiveParentGroups(ctx context.Context, request ListTransitiveParentGroupsRequest) (*ListTransitiveParentGroupsResponse, error)

	// Lists the users in the Databricks account, returning one page per call.
	// Supports filtering by username or external ID.
	ListUsers(ctx context.Context, request ListUsersRequest) (*ListUsersResponse, error)

	// Lists workspace assignment details 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 detail.
	ListWorkspaceAssignmentDetails(ctx context.Context, request ListWorkspaceAssignmentDetailsRequest) (*ListWorkspaceAssignmentDetailsResponse, error)

	// 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.
	ListWorkspaceAssignments(ctx context.Context, request ListWorkspaceAssignmentsRequest) (*ListWorkspaceAssignmentsResponse, error)

	// 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.
	ResolveGroup(ctx context.Context, request ResolveGroupRequest) (*ResolveGroupResponse, error)

	// 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.
	ResolveServicePrincipal(ctx context.Context, request ResolveServicePrincipalRequest) (*ResolveServicePrincipalResponse, error)

	// 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.
	ResolveUser(ctx context.Context, request ResolveUserRequest) (*ResolveUserResponse, error)

	// Updates an existing group in the Databricks account. Only the fields
	// named in the update mask are modified. Returns the updated Group
	// resource.
	//
	// 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.
	UpdateGroup(ctx context.Context, request UpdateGroupRequest) (*Group, error)

	// Updates an existing service principal in the Databricks account. Only the
	// fields named in the update mask are modified. Returns the updated
	// ServicePrincipal resource.
	//
	// 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.
	UpdateServicePrincipal(ctx context.Context, request UpdateServicePrincipalRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	UpdateUser(ctx context.Context, request UpdateUserRequest) (*User, error)

	// 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.
	UpdateWorkspaceAssignment(ctx context.Context, request UpdateWorkspaceAssignmentRequest) (*WorkspaceAssignment, error)

	// 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 detail afterwards to confirm the final state.
	UpdateWorkspaceAssignmentDetail(ctx context.Context, request UpdateWorkspaceAssignmentDetailRequest) (*WorkspaceAssignmentDetail, error)
}

These APIs are used to manage identities and the workspace access of these identities in <Databricks>.

Deprecated: Do not use this interface, it will be removed in a future version of the SDK.

type CreateDirectGroupMemberProxyRequest added in v0.172.0

type CreateDirectGroupMemberProxyRequest struct {
	// Required. The group membership to create.
	DirectGroupMember DirectGroupMember `json:"direct_group_member"`
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
}

func (*CreateDirectGroupMemberProxyRequest) UnmarshalJSON added in v0.174.0

func (s *CreateDirectGroupMemberProxyRequest) UnmarshalJSON(b []byte) error

type CreateDirectGroupMemberRequest added in v0.172.0

type CreateDirectGroupMemberRequest struct {
	// Required. The direct group member to be added to the group.
	DirectGroupMember DirectGroupMember `json:"direct_group_member"`
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
}

func (*CreateDirectGroupMemberRequest) UnmarshalJSON added in v0.174.0

func (s *CreateDirectGroupMemberRequest) UnmarshalJSON(b []byte) error

type CreateGroupProxyRequest added in v0.172.0

type CreateGroupProxyRequest struct {
	// Required. Group to be created in <Databricks>
	Group Group `json:"group"`
}

func (*CreateGroupProxyRequest) UnmarshalJSON added in v0.174.0

func (s *CreateGroupProxyRequest) UnmarshalJSON(b []byte) error

type CreateGroupRequest added in v0.172.0

type CreateGroupRequest struct {
	// Required. Group to be created in <Databricks>
	Group Group `json:"group"`
}

func (*CreateGroupRequest) UnmarshalJSON added in v0.174.0

func (s *CreateGroupRequest) UnmarshalJSON(b []byte) error

type CreateServicePrincipalProxyRequest added in v0.172.0

type CreateServicePrincipalProxyRequest struct {
	// Required. Service principal to be created in <Databricks>
	ServicePrincipal ServicePrincipal `json:"service_principal"`
}

func (*CreateServicePrincipalProxyRequest) UnmarshalJSON added in v0.174.0

func (s *CreateServicePrincipalProxyRequest) UnmarshalJSON(b []byte) error

type CreateServicePrincipalRequest added in v0.172.0

type CreateServicePrincipalRequest struct {
	// Required. Service principal to be created in <Databricks>
	ServicePrincipal ServicePrincipal `json:"service_principal"`
}

func (*CreateServicePrincipalRequest) UnmarshalJSON added in v0.174.0

func (s *CreateServicePrincipalRequest) UnmarshalJSON(b []byte) error

type CreateUserProxyRequest added in v0.172.0

type CreateUserProxyRequest struct {
	// Required. User to be created in <Databricks>
	User User `json:"user"`
}

func (*CreateUserProxyRequest) UnmarshalJSON added in v0.174.0

func (s *CreateUserProxyRequest) UnmarshalJSON(b []byte) error

type CreateUserRequest added in v0.172.0

type CreateUserRequest struct {
	// Required. User to be created in <Databricks>
	User User `json:"user"`
}

func (*CreateUserRequest) UnmarshalJSON added in v0.174.0

func (s *CreateUserRequest) UnmarshalJSON(b []byte) error

type CreateWorkspaceAssignmentDetailProxyRequest added in v0.133.0

type CreateWorkspaceAssignmentDetailProxyRequest struct {
	// Required. Workspace assignment detail to be created in <Databricks>.
	WorkspaceAssignmentDetail WorkspaceAssignmentDetail `json:"workspace_assignment_detail"`
}

func (*CreateWorkspaceAssignmentDetailProxyRequest) UnmarshalJSON added in v0.174.0

type CreateWorkspaceAssignmentDetailRequest added in v0.133.0

type CreateWorkspaceAssignmentDetailRequest struct {
	// Required. Workspace assignment detail to be created in <Databricks>.
	WorkspaceAssignmentDetail WorkspaceAssignmentDetail `json:"workspace_assignment_detail"`
	// Required. The workspace ID for which the workspace assignment detail is
	// being created.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*CreateWorkspaceAssignmentDetailRequest) UnmarshalJSON added in v0.174.0

func (s *CreateWorkspaceAssignmentDetailRequest) UnmarshalJSON(b []byte) error

type CreateWorkspaceAssignmentProxyRequest added in v0.172.0

type CreateWorkspaceAssignmentProxyRequest struct {
	// Required. Workspace assignment to be created in <Databricks>.
	WorkspaceAssignment WorkspaceAssignment `json:"workspace_assignment"`
}

func (*CreateWorkspaceAssignmentProxyRequest) UnmarshalJSON added in v0.174.0

func (s *CreateWorkspaceAssignmentProxyRequest) UnmarshalJSON(b []byte) error

type CreateWorkspaceAssignmentRequest added in v0.172.0

type CreateWorkspaceAssignmentRequest struct {
	// Required. Workspace assignment to be created in <Databricks>.
	WorkspaceAssignment WorkspaceAssignment `json:"workspace_assignment"`
	// Required. The workspace ID for which the workspace assignment is being
	// created.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*CreateWorkspaceAssignmentRequest) UnmarshalJSON added in v0.174.0

func (s *CreateWorkspaceAssignmentRequest) UnmarshalJSON(b []byte) error

type DeleteDirectGroupMemberProxyRequest added in v0.172.0

type DeleteDirectGroupMemberProxyRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
	// Required. Internal ID of the principal to be unassigned from the group.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*DeleteDirectGroupMemberProxyRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteDirectGroupMemberProxyRequest) UnmarshalJSON(b []byte) error

type DeleteDirectGroupMemberRequest added in v0.172.0

type DeleteDirectGroupMemberRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
	// Required. Internal ID of the principal to be unassigned from the group.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*DeleteDirectGroupMemberRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteDirectGroupMemberRequest) UnmarshalJSON(b []byte) error

type DeleteGroupProxyRequest added in v0.172.0

type DeleteGroupProxyRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
}

func (*DeleteGroupProxyRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteGroupProxyRequest) UnmarshalJSON(b []byte) error

type DeleteGroupRequest added in v0.172.0

type DeleteGroupRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
}

func (*DeleteGroupRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteGroupRequest) UnmarshalJSON(b []byte) error

type DeleteServicePrincipalProxyRequest added in v0.172.0

type DeleteServicePrincipalProxyRequest struct {
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
}

func (*DeleteServicePrincipalProxyRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteServicePrincipalProxyRequest) UnmarshalJSON(b []byte) error

type DeleteServicePrincipalRequest added in v0.172.0

type DeleteServicePrincipalRequest struct {
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
}

func (*DeleteServicePrincipalRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteServicePrincipalRequest) UnmarshalJSON(b []byte) error

type DeleteUserProxyRequest added in v0.172.0

type DeleteUserProxyRequest struct {
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*DeleteUserProxyRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteUserProxyRequest) UnmarshalJSON(b []byte) error

type DeleteUserRequest added in v0.172.0

type DeleteUserRequest struct {
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*DeleteUserRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteUserRequest) UnmarshalJSON(b []byte) error

type DeleteWorkspaceAssignmentDetailProxyRequest added in v0.133.0

type DeleteWorkspaceAssignmentDetailProxyRequest struct {
	// Required. ID of the principal in Databricks to delete workspace
	// assignment for.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*DeleteWorkspaceAssignmentDetailProxyRequest) UnmarshalJSON added in v0.174.0

type DeleteWorkspaceAssignmentDetailRequest added in v0.133.0

type DeleteWorkspaceAssignmentDetailRequest struct {
	// Required. ID of the principal in Databricks to delete workspace
	// assignment for.
	PrincipalId int64 `json:"-" url:"-"`
	// The workspace ID where the principal has access.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*DeleteWorkspaceAssignmentDetailRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteWorkspaceAssignmentDetailRequest) UnmarshalJSON(b []byte) error

type DeleteWorkspaceAssignmentProxyRequest added in v0.172.0

type DeleteWorkspaceAssignmentProxyRequest struct {
	// Required. ID of the principal in Databricks to delete workspace
	// assignment for.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*DeleteWorkspaceAssignmentProxyRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteWorkspaceAssignmentProxyRequest) UnmarshalJSON(b []byte) error

type DeleteWorkspaceAssignmentRequest added in v0.172.0

type DeleteWorkspaceAssignmentRequest struct {
	// Required. ID of the principal in Databricks to delete workspace
	// assignment for.
	PrincipalId int64 `json:"-" url:"-"`
	// The workspace ID where the principal has access.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*DeleteWorkspaceAssignmentRequest) UnmarshalJSON added in v0.174.0

func (s *DeleteWorkspaceAssignmentRequest) UnmarshalJSON(b []byte) error

type DirectGroupMember added in v0.172.0

type DirectGroupMember struct {
	// Display name of the principal.
	DisplayName string `json:"display_name,omitempty"`
	// The external ID of the principal in Databricks.
	ExternalId string `json:"external_id,omitempty"`
	// The internal ID of the group this member belongs to.
	GroupId int64 `json:"group_id,omitempty"`
	// The source of group membership (internal or from identity provider).
	MembershipSource GroupMembershipSource `json:"membership_source,omitempty"`
	// Internal ID of the principal in Databricks.
	PrincipalId int64 `json:"principal_id"`
	// The type of the principal (user/service principal/group).
	PrincipalType PrincipalType `json:"principal_type,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Represents a principal that is a direct member of a group, with its source of membership.

func (DirectGroupMember) MarshalJSON added in v0.172.0

func (s DirectGroupMember) MarshalJSON() ([]byte, error)

func (*DirectGroupMember) UnmarshalJSON added in v0.172.0

func (s *DirectGroupMember) UnmarshalJSON(b []byte) error

type Entitlement added in v0.133.0

type Entitlement string
const EntitlementAllowClusterCreate Entitlement = `ALLOW_CLUSTER_CREATE`
const EntitlementAllowInstancePoolCreate Entitlement = `ALLOW_INSTANCE_POOL_CREATE`
const EntitlementDatabricksSqlAccess Entitlement = `DATABRICKS_SQL_ACCESS`
const EntitlementWorkspaceAccess Entitlement = `WORKSPACE_ACCESS`
const EntitlementWorkspaceAdmin Entitlement = `WORKSPACE_ADMIN`
const EntitlementWorkspaceConsume Entitlement = `WORKSPACE_CONSUME`

func (*Entitlement) Set added in v0.133.0

func (f *Entitlement) Set(v string) error

Set raw string value and validate it against allowed values

func (*Entitlement) String added in v0.133.0

func (f *Entitlement) String() string

String representation for fmt.Print

func (*Entitlement) Type added in v0.133.0

func (f *Entitlement) Type() string

Type always returns Entitlement to satisfy [pflag.Value] interface

func (*Entitlement) Values added in v0.133.0

func (f *Entitlement) Values() []Entitlement

Values returns all possible values for Entitlement.

There is no guarantee on the order of the values in the slice.

type GetDirectGroupMemberProxyRequest added in v0.172.0

type GetDirectGroupMemberProxyRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
	// Required. Internal ID of the principal belonging to the group in
	// Databricks.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*GetDirectGroupMemberProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetDirectGroupMemberProxyRequest) UnmarshalJSON(b []byte) error

type GetDirectGroupMemberRequest added in v0.172.0

type GetDirectGroupMemberRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId int64 `json:"-" url:"-"`
	// Required. Internal ID of the principal belonging to the group in
	// Databricks.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*GetDirectGroupMemberRequest) UnmarshalJSON added in v0.174.0

func (s *GetDirectGroupMemberRequest) UnmarshalJSON(b []byte) error

type GetGroupProxyRequest added in v0.172.0

type GetGroupProxyRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
}

func (*GetGroupProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetGroupProxyRequest) UnmarshalJSON(b []byte) error

type GetGroupRequest added in v0.172.0

type GetGroupRequest struct {
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
}

func (*GetGroupRequest) UnmarshalJSON added in v0.174.0

func (s *GetGroupRequest) UnmarshalJSON(b []byte) error

type GetServicePrincipalProxyRequest added in v0.172.0

type GetServicePrincipalProxyRequest struct {
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
}

func (*GetServicePrincipalProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetServicePrincipalProxyRequest) UnmarshalJSON(b []byte) error

type GetServicePrincipalRequest added in v0.172.0

type GetServicePrincipalRequest struct {
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
}

func (*GetServicePrincipalRequest) UnmarshalJSON added in v0.174.0

func (s *GetServicePrincipalRequest) UnmarshalJSON(b []byte) error

type GetUserProxyRequest added in v0.172.0

type GetUserProxyRequest struct {
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*GetUserProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetUserProxyRequest) UnmarshalJSON(b []byte) error

type GetUserRequest added in v0.172.0

type GetUserRequest struct {
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*GetUserRequest) UnmarshalJSON added in v0.174.0

func (s *GetUserRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAccessDetailLocalRequest

type GetWorkspaceAccessDetailLocalRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// access details are being requested.
	PrincipalId int64 `json:"-" url:"-"`
	// Controls what fields are returned.
	View WorkspaceAccessDetailView `json:"-" url:"view,omitempty"`
}

func (*GetWorkspaceAccessDetailLocalRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAccessDetailLocalRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAccessDetailRequest

type GetWorkspaceAccessDetailRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// access details are being requested.
	PrincipalId int64 `json:"-" url:"-"`
	// Controls what fields are returned.
	View WorkspaceAccessDetailView `json:"-" url:"view,omitempty"`
	// Required. The workspace ID for which the access details are being
	// requested.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceAccessDetailRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAccessDetailRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAssignmentDetailProxyRequest added in v0.133.0

type GetWorkspaceAssignmentDetailProxyRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// assignment details are being requested.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceAssignmentDetailProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAssignmentDetailProxyRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAssignmentDetailRequest added in v0.133.0

type GetWorkspaceAssignmentDetailRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// assignment details are being requested.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The workspace ID for which the assignment details are being
	// requested.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceAssignmentDetailRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAssignmentDetailRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAssignmentProxyRequest added in v0.172.0

type GetWorkspaceAssignmentProxyRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// assignment is being requested.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceAssignmentProxyRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAssignmentProxyRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceAssignmentRequest added in v0.172.0

type GetWorkspaceAssignmentRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// assignment is being requested.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The workspace ID for which the assignment is being requested.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceAssignmentRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceAssignmentRequest) UnmarshalJSON(b []byte) error

type GetWorkspaceIdentityDetailRequest added in v0.172.0

type GetWorkspaceIdentityDetailRequest struct {
	// Required. The internal ID of the principal (user/sp/group) for which the
	// identity details are being requested.
	PrincipalId int64 `json:"-" url:"-"`
}

func (*GetWorkspaceIdentityDetailRequest) UnmarshalJSON added in v0.174.0

func (s *GetWorkspaceIdentityDetailRequest) UnmarshalJSON(b []byte) error

type Group

type Group struct {
	// The parent account ID for group in Databricks.
	AccountId string `json:"account_id,omitempty"`
	// ExternalId of the group in the customer's IdP.
	ExternalId string `json:"external_id,omitempty"`
	// Internal group ID of the group in Databricks.
	GroupId string `json:"group_id,omitempty"`
	// Display name of the group.
	GroupName string `json:"group_name,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The details of a Group resource.

func (Group) MarshalJSON

func (s Group) MarshalJSON() ([]byte, error)

func (*Group) UnmarshalJSON

func (s *Group) UnmarshalJSON(b []byte) error

type GroupMembershipSource added in v0.172.0

type GroupMembershipSource string

The source of the group membership (internal or from identity provider).

const GroupMembershipSourceIdentityProvider GroupMembershipSource = `IDENTITY_PROVIDER`
const GroupMembershipSourceInternal GroupMembershipSource = `INTERNAL`

func (*GroupMembershipSource) Set added in v0.172.0

Set raw string value and validate it against allowed values

func (*GroupMembershipSource) String added in v0.172.0

func (f *GroupMembershipSource) String() string

String representation for fmt.Print

func (*GroupMembershipSource) Type added in v0.172.0

func (f *GroupMembershipSource) Type() string

Type always returns GroupMembershipSource to satisfy [pflag.Value] interface

func (*GroupMembershipSource) Values added in v0.172.0

Values returns all possible values for GroupMembershipSource.

There is no guarantee on the order of the values in the slice.

type ListDirectGroupMembersProxyRequest added in v0.172.0

type ListDirectGroupMembersProxyRequest struct {
	// Required. Internal ID of the group in Databricks whose direct members are
	// being listed.
	GroupId int64 `json:"-" url:"-"`
	// The maximum number of members to return. The service may return fewer
	// than this value. If not provided, defaults to 1000 (also the maximum
	// allowed).
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token from a previous list call. Provide this to retrieve the
	// subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListDirectGroupMembersProxyRequest) MarshalJSON added in v0.172.0

func (s ListDirectGroupMembersProxyRequest) MarshalJSON() ([]byte, error)

func (*ListDirectGroupMembersProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListDirectGroupMembersProxyRequest) UnmarshalJSON(b []byte) error

type ListDirectGroupMembersRequest added in v0.172.0

type ListDirectGroupMembersRequest struct {
	// Required. Internal ID of the group in Databricks whose direct members are
	// being listed.
	GroupId int64 `json:"-" url:"-"`
	// The maximum number of members to return. The service may return fewer
	// than this value. If not provided, defaults to 1000 (also the maximum
	// allowed).
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListDirectGroupMembers call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListDirectGroupMembersRequest) MarshalJSON added in v0.172.0

func (s ListDirectGroupMembersRequest) MarshalJSON() ([]byte, error)

func (*ListDirectGroupMembersRequest) UnmarshalJSON added in v0.172.0

func (s *ListDirectGroupMembersRequest) UnmarshalJSON(b []byte) error

type ListDirectGroupMembersResponse added in v0.172.0

type ListDirectGroupMembersResponse struct {
	// The list of direct group members with their membership source type.
	DirectGroupMembers []DirectGroupMember `json:"direct_group_members,omitempty"`
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message for listing direct group members.

func (ListDirectGroupMembersResponse) MarshalJSON added in v0.172.0

func (s ListDirectGroupMembersResponse) MarshalJSON() ([]byte, error)

func (*ListDirectGroupMembersResponse) UnmarshalJSON added in v0.172.0

func (s *ListDirectGroupMembersResponse) UnmarshalJSON(b []byte) error

type ListGroupsProxyRequest added in v0.172.0

type ListGroupsProxyRequest struct {
	// Optional. Allows filtering groups by group name or external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of groups to return. The service may return fewer than
	// this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListGroups call. Provide this to
	// retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListGroupsProxyRequest) MarshalJSON added in v0.172.0

func (s ListGroupsProxyRequest) MarshalJSON() ([]byte, error)

func (*ListGroupsProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListGroupsProxyRequest) UnmarshalJSON(b []byte) error

type ListGroupsRequest added in v0.172.0

type ListGroupsRequest struct {
	// Optional. Allows filtering groups by group name or external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of groups to return. The service may return fewer than
	// this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListGroups call. Provide this to
	// retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListGroupsRequest) MarshalJSON added in v0.172.0

func (s ListGroupsRequest) MarshalJSON() ([]byte, error)

func (*ListGroupsRequest) UnmarshalJSON added in v0.172.0

func (s *ListGroupsRequest) UnmarshalJSON(b []byte) error

type ListGroupsResponse added in v0.172.0

type ListGroupsResponse struct {
	Groups []Group `json:"groups,omitempty"`
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message containing a page of groups in the account.

func (ListGroupsResponse) MarshalJSON added in v0.172.0

func (s ListGroupsResponse) MarshalJSON() ([]byte, error)

func (*ListGroupsResponse) UnmarshalJSON added in v0.172.0

func (s *ListGroupsResponse) UnmarshalJSON(b []byte) error

type ListServicePrincipalsProxyRequest added in v0.172.0

type ListServicePrincipalsProxyRequest struct {
	// Optional. Allows filtering service principals by application id or
	// external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of SPs to return. The service may return fewer than
	// this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListServicePrincipals call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListServicePrincipalsProxyRequest) MarshalJSON added in v0.172.0

func (s ListServicePrincipalsProxyRequest) MarshalJSON() ([]byte, error)

func (*ListServicePrincipalsProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListServicePrincipalsProxyRequest) UnmarshalJSON(b []byte) error

type ListServicePrincipalsRequest added in v0.172.0

type ListServicePrincipalsRequest struct {
	// Optional. Allows filtering service principals by application id or
	// external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of service principals to return. The service may
	// return fewer than this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListServicePrincipals call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListServicePrincipalsRequest) MarshalJSON added in v0.172.0

func (s ListServicePrincipalsRequest) MarshalJSON() ([]byte, error)

func (*ListServicePrincipalsRequest) UnmarshalJSON added in v0.172.0

func (s *ListServicePrincipalsRequest) UnmarshalJSON(b []byte) error

type ListServicePrincipalsResponse added in v0.172.0

type ListServicePrincipalsResponse struct {
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	ServicePrincipals []ServicePrincipal `json:"service_principals,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message containing a page of service principals in the account.

func (ListServicePrincipalsResponse) MarshalJSON added in v0.172.0

func (s ListServicePrincipalsResponse) MarshalJSON() ([]byte, error)

func (*ListServicePrincipalsResponse) UnmarshalJSON added in v0.172.0

func (s *ListServicePrincipalsResponse) UnmarshalJSON(b []byte) error

type ListTransitiveParentGroupsProxyRequest added in v0.172.0

type ListTransitiveParentGroupsProxyRequest struct {
	// The maximum number of parent groups to return. The service may return
	// fewer than this value. If not provided, defaults to 1000 (also the
	// maximum allowed).
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListTransitiveParentGroups call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`
	// Required. Internal ID of the principal in Databricks whose transitive
	// parent groups are being listed.
	PrincipalId int64 `json:"-" url:"-"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListTransitiveParentGroupsProxyRequest) MarshalJSON added in v0.172.0

func (s ListTransitiveParentGroupsProxyRequest) MarshalJSON() ([]byte, error)

func (*ListTransitiveParentGroupsProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListTransitiveParentGroupsProxyRequest) UnmarshalJSON(b []byte) error

type ListTransitiveParentGroupsRequest added in v0.172.0

type ListTransitiveParentGroupsRequest struct {
	// The maximum number of parent groups to return. The service may return
	// fewer than this value. If not provided, defaults to 1000 (also the
	// maximum allowed).
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListTransitiveParentGroups call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`
	// Required. Internal ID of the principal in Databricks whose transitive
	// parent groups are being listed.
	PrincipalId int64 `json:"-" url:"-"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListTransitiveParentGroupsRequest) MarshalJSON added in v0.172.0

func (s ListTransitiveParentGroupsRequest) MarshalJSON() ([]byte, error)

func (*ListTransitiveParentGroupsRequest) UnmarshalJSON added in v0.172.0

func (s *ListTransitiveParentGroupsRequest) UnmarshalJSON(b []byte) error

type ListTransitiveParentGroupsResponse added in v0.172.0

type ListTransitiveParentGroupsResponse struct {
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`
	// The list of transitive parent groups.
	TransitiveParentGroups []TransitiveParentGroup `json:"transitive_parent_groups,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message for listing all transitive parent groups of a principal.

func (ListTransitiveParentGroupsResponse) MarshalJSON added in v0.172.0

func (s ListTransitiveParentGroupsResponse) MarshalJSON() ([]byte, error)

func (*ListTransitiveParentGroupsResponse) UnmarshalJSON added in v0.172.0

func (s *ListTransitiveParentGroupsResponse) UnmarshalJSON(b []byte) error

type ListUsersProxyRequest added in v0.172.0

type ListUsersProxyRequest struct {
	// Optional. Allows filtering users by username or external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of users to return. The service may return fewer than
	// this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListUsers call. Provide this to
	// retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListUsersProxyRequest) MarshalJSON added in v0.172.0

func (s ListUsersProxyRequest) MarshalJSON() ([]byte, error)

func (*ListUsersProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListUsersProxyRequest) UnmarshalJSON(b []byte) error

type ListUsersRequest added in v0.172.0

type ListUsersRequest struct {
	// Optional. Allows filtering users by username or external id.
	Filter string `json:"-" url:"filter,omitempty"`
	// The maximum number of users to return. The service may return fewer than
	// this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListUsers call. Provide this to
	// retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListUsersRequest) MarshalJSON added in v0.172.0

func (s ListUsersRequest) MarshalJSON() ([]byte, error)

func (*ListUsersRequest) UnmarshalJSON added in v0.172.0

func (s *ListUsersRequest) UnmarshalJSON(b []byte) error

type ListUsersResponse added in v0.172.0

type ListUsersResponse struct {
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	Users []User `json:"users,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListUsersResponse) MarshalJSON added in v0.172.0

func (s ListUsersResponse) MarshalJSON() ([]byte, error)

func (*ListUsersResponse) UnmarshalJSON added in v0.172.0

func (s *ListUsersResponse) UnmarshalJSON(b []byte) error

type ListWorkspaceAssignmentDetailsProxyRequest added in v0.133.0

type ListWorkspaceAssignmentDetailsProxyRequest struct {
	// The maximum number of workspace assignment details to return. The service
	// may return fewer than this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token from a previous list call. Provide this to retrieve the
	// subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListWorkspaceAssignmentDetailsProxyRequest) MarshalJSON added in v0.133.0

func (*ListWorkspaceAssignmentDetailsProxyRequest) UnmarshalJSON added in v0.133.0

type ListWorkspaceAssignmentDetailsRequest added in v0.133.0

type ListWorkspaceAssignmentDetailsRequest struct {
	// The maximum number of workspace assignment details to return. The service
	// may return fewer than this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListWorkspaceAssignmentDetails
	// call. Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`
	// Required. The workspace ID for which the workspace assignment details are
	// being fetched.
	WorkspaceId int64 `json:"-" url:"-"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListWorkspaceAssignmentDetailsRequest) MarshalJSON added in v0.133.0

func (s ListWorkspaceAssignmentDetailsRequest) MarshalJSON() ([]byte, error)

func (*ListWorkspaceAssignmentDetailsRequest) UnmarshalJSON added in v0.133.0

func (s *ListWorkspaceAssignmentDetailsRequest) UnmarshalJSON(b []byte) error

type ListWorkspaceAssignmentDetailsResponse added in v0.133.0

type ListWorkspaceAssignmentDetailsResponse struct {
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	WorkspaceAssignmentDetails []WorkspaceAssignmentDetail `json:"workspace_assignment_details,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message for listing workspace assignment details.

func (ListWorkspaceAssignmentDetailsResponse) MarshalJSON added in v0.133.0

func (s ListWorkspaceAssignmentDetailsResponse) MarshalJSON() ([]byte, error)

func (*ListWorkspaceAssignmentDetailsResponse) UnmarshalJSON added in v0.133.0

func (s *ListWorkspaceAssignmentDetailsResponse) UnmarshalJSON(b []byte) error

type ListWorkspaceAssignmentsProxyRequest added in v0.172.0

type ListWorkspaceAssignmentsProxyRequest struct {
	// The maximum number of workspace assignments to return. The service may
	// return fewer than this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token from a previous list call. Provide this to retrieve the
	// subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListWorkspaceAssignmentsProxyRequest) MarshalJSON added in v0.172.0

func (s ListWorkspaceAssignmentsProxyRequest) MarshalJSON() ([]byte, error)

func (*ListWorkspaceAssignmentsProxyRequest) UnmarshalJSON added in v0.172.0

func (s *ListWorkspaceAssignmentsProxyRequest) UnmarshalJSON(b []byte) error

type ListWorkspaceAssignmentsRequest added in v0.172.0

type ListWorkspaceAssignmentsRequest struct {
	// The maximum number of workspace assignments to return. The service may
	// return fewer than this value.
	PageSize int `json:"-" url:"page_size,omitempty"`
	// A page token, received from a previous ListWorkspaceAssignments call.
	// Provide this to retrieve the subsequent page.
	PageToken string `json:"-" url:"page_token,omitempty"`
	// Required. The workspace ID for which the workspace assignments are being
	// fetched.
	WorkspaceId int64 `json:"-" url:"-"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (ListWorkspaceAssignmentsRequest) MarshalJSON added in v0.172.0

func (s ListWorkspaceAssignmentsRequest) MarshalJSON() ([]byte, error)

func (*ListWorkspaceAssignmentsRequest) UnmarshalJSON added in v0.172.0

func (s *ListWorkspaceAssignmentsRequest) UnmarshalJSON(b []byte) error

type ListWorkspaceAssignmentsResponse added in v0.172.0

type ListWorkspaceAssignmentsResponse struct {
	// A token, which can be sent as page_token to retrieve the next page. If
	// this field is omitted, there are no subsequent pages.
	NextPageToken string `json:"next_page_token,omitempty"`

	WorkspaceAssignments []WorkspaceAssignment `json:"workspace_assignments,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Response message for listing workspace assignments.

func (ListWorkspaceAssignmentsResponse) MarshalJSON added in v0.172.0

func (s ListWorkspaceAssignmentsResponse) MarshalJSON() ([]byte, error)

func (*ListWorkspaceAssignmentsResponse) UnmarshalJSON added in v0.172.0

func (s *ListWorkspaceAssignmentsResponse) UnmarshalJSON(b []byte) error

type PrincipalType

type PrincipalType string

The type of the principal (user/sp/group).

const PrincipalTypeGroup PrincipalType = `GROUP`
const PrincipalTypeServicePrincipal PrincipalType = `SERVICE_PRINCIPAL`
const PrincipalTypeUser PrincipalType = `USER`

func (*PrincipalType) Set

func (f *PrincipalType) Set(v string) error

Set raw string value and validate it against allowed values

func (*PrincipalType) String

func (f *PrincipalType) String() string

String representation for fmt.Print

func (*PrincipalType) Type

func (f *PrincipalType) Type() string

Type always returns PrincipalType to satisfy [pflag.Value] interface

func (*PrincipalType) Values

func (f *PrincipalType) Values() []PrincipalType

Values returns all possible values for PrincipalType.

There is no guarantee on the order of the values in the slice.

type ResolveGroupProxyRequest

type ResolveGroupProxyRequest struct {
	// Required. The external ID of the group in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a group with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the group's name and inherited parent groups.

func (*ResolveGroupProxyRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveGroupProxyRequest) UnmarshalJSON(b []byte) error

type ResolveGroupRequest

type ResolveGroupRequest struct {
	// Required. The external ID of the group in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a group with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the group's name and inherited parent groups.

func (*ResolveGroupRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveGroupRequest) UnmarshalJSON(b []byte) error

type ResolveGroupResponse

type ResolveGroupResponse struct {
	// The group that was resolved.
	Group *Group `json:"group,omitempty"`
}

func (*ResolveGroupResponse) UnmarshalJSON added in v0.174.0

func (s *ResolveGroupResponse) UnmarshalJSON(b []byte) error

type ResolveServicePrincipalProxyRequest

type ResolveServicePrincipalProxyRequest struct {
	// Required. The external ID of the service principal in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a service principal with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the service principal's display name, status, and inherited parent groups.

func (*ResolveServicePrincipalProxyRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveServicePrincipalProxyRequest) UnmarshalJSON(b []byte) error

type ResolveServicePrincipalRequest

type ResolveServicePrincipalRequest struct {
	// Required. The external ID of the service principal in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a service principal with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the service principal's display name, status, and inherited parent groups.

func (*ResolveServicePrincipalRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveServicePrincipalRequest) UnmarshalJSON(b []byte) error

type ResolveServicePrincipalResponse

type ResolveServicePrincipalResponse struct {
	// The service principal that was resolved.
	ServicePrincipal *ServicePrincipal `json:"service_principal,omitempty"`
}

func (*ResolveServicePrincipalResponse) UnmarshalJSON added in v0.174.0

func (s *ResolveServicePrincipalResponse) UnmarshalJSON(b []byte) error

type ResolveUserProxyRequest

type ResolveUserProxyRequest struct {
	// Required. The external ID of the user in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a user with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the user's display name, status, and inherited parent groups.

func (*ResolveUserProxyRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveUserProxyRequest) UnmarshalJSON(b []byte) error

type ResolveUserRequest

type ResolveUserRequest struct {
	// Required. The external ID of the user in the customer's IdP.
	ExternalId string `json:"external_id"`
}

Request message for resolving a user with the given external ID from the customer's IdP into Databricks. Will resolve metadata such as the user's display name, status, and inherited parent groups.

func (*ResolveUserRequest) UnmarshalJSON added in v0.174.0

func (s *ResolveUserRequest) UnmarshalJSON(b []byte) error

type ResolveUserResponse

type ResolveUserResponse struct {
	// The user that was resolved.
	User *User `json:"user,omitempty"`
}

func (*ResolveUserResponse) UnmarshalJSON added in v0.174.0

func (s *ResolveUserResponse) UnmarshalJSON(b []byte) error

type ServicePrincipal

type ServicePrincipal struct {
	// The parent account ID for the service principal in Databricks.
	AccountId string `json:"account_id,omitempty"`
	// The activity status of a service principal in a Databricks account.
	AccountSpStatus State `json:"account_sp_status"`
	// Application ID of the service principal. Set at creation time and cannot
	// be changed afterwards; when omitted, the server generates one.
	ApplicationId string `json:"application_id,omitempty"`
	// Display name of the service principal.
	DisplayName string `json:"display_name"`
	// ExternalId of the service principal in the customer's IdP.
	ExternalId string `json:"external_id,omitempty"`
	// Internal service principal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"service_principal_id,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The details of a ServicePrincipal resource.

func (ServicePrincipal) MarshalJSON

func (s ServicePrincipal) MarshalJSON() ([]byte, error)

func (*ServicePrincipal) UnmarshalJSON

func (s *ServicePrincipal) UnmarshalJSON(b []byte) error

type State

type State string

The activity status of a user or service principal in a Databricks account or workspace.

const StateActive State = `ACTIVE`
const StateInactive State = `INACTIVE`

func (*State) Set

func (f *State) Set(v string) error

Set raw string value and validate it against allowed values

func (*State) String

func (f *State) String() string

String representation for fmt.Print

func (*State) Type

func (f *State) Type() string

Type always returns State to satisfy [pflag.Value] interface

func (*State) Values

func (f *State) Values() []State

Values returns all possible values for State.

There is no guarantee on the order of the values in the slice.

type TransitiveParentGroup added in v0.172.0

type TransitiveParentGroup struct {
	// The parent account ID for group in Databricks.
	AccountId string `json:"account_id,omitempty"`
	// ExternalId of the group in the customer's IdP.
	ExternalId string `json:"external_id,omitempty"`
	// Internal group ID of the group in Databricks.
	GroupId string `json:"group_id,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

Represents a group that is a transitive parent of a principal.

func (TransitiveParentGroup) MarshalJSON added in v0.172.0

func (s TransitiveParentGroup) MarshalJSON() ([]byte, error)

func (*TransitiveParentGroup) UnmarshalJSON added in v0.172.0

func (s *TransitiveParentGroup) UnmarshalJSON(b []byte) error

type UpdateGroupProxyRequest added in v0.172.0

type UpdateGroupProxyRequest struct {
	// Required. Group to be updated in <Databricks>
	Group Group `json:"group"`
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
}

func (*UpdateGroupProxyRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateGroupProxyRequest) UnmarshalJSON(b []byte) error

type UpdateGroupRequest added in v0.172.0

type UpdateGroupRequest struct {
	// Required. Group to be updated in <Databricks>
	Group Group `json:"group"`
	// Required. Internal ID of the group in Databricks.
	GroupId string `json:"-" url:"-"`
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
}

func (*UpdateGroupRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateGroupRequest) UnmarshalJSON(b []byte) error

type UpdateServicePrincipalProxyRequest added in v0.172.0

type UpdateServicePrincipalProxyRequest struct {
	// Required. Service principal to be updated in <Databricks>
	ServicePrincipal ServicePrincipal `json:"service_principal"`
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
}

func (*UpdateServicePrincipalProxyRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateServicePrincipalProxyRequest) UnmarshalJSON(b []byte) error

type UpdateServicePrincipalRequest added in v0.172.0

type UpdateServicePrincipalRequest struct {
	// Required. Service Principal to be updated in <Databricks>
	ServicePrincipal ServicePrincipal `json:"service_principal"`
	// Required. Internal ID of the service principal in Databricks.
	ServicePrincipalId string `json:"-" url:"-"`
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
}

func (*UpdateServicePrincipalRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateServicePrincipalRequest) UnmarshalJSON(b []byte) error

type UpdateUserProxyRequest added in v0.172.0

type UpdateUserProxyRequest struct {
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
	// Required. User to be updated in <Databricks>
	User User `json:"user"`
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*UpdateUserProxyRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateUserProxyRequest) UnmarshalJSON(b []byte) error

type UpdateUserRequest added in v0.172.0

type UpdateUserRequest struct {
	// Optional. The list of fields to update.
	UpdateMask string `json:"-" url:"update_mask"`
	// Required. User to be updated in <Databricks>
	User User `json:"user"`
	// Required. Internal ID of the user in Databricks.
	UserId string `json:"-" url:"-"`
}

func (*UpdateUserRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateUserRequest) UnmarshalJSON(b []byte) error

type UpdateWorkspaceAssignmentDetailProxyRequest added in v0.133.0

type UpdateWorkspaceAssignmentDetailProxyRequest struct {
	// Required. ID of the principal in Databricks.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The list of fields to update.
	UpdateMask fieldmask.FieldMask `json:"-" url:"update_mask"`
	// Required. Workspace assignment detail to be updated in <Databricks>.
	WorkspaceAssignmentDetail WorkspaceAssignmentDetail `json:"workspace_assignment_detail"`
}

func (*UpdateWorkspaceAssignmentDetailProxyRequest) UnmarshalJSON added in v0.174.0

type UpdateWorkspaceAssignmentDetailRequest added in v0.133.0

type UpdateWorkspaceAssignmentDetailRequest struct {
	// Required. ID of the principal in Databricks.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The list of fields to update.
	UpdateMask fieldmask.FieldMask `json:"-" url:"update_mask"`
	// Required. Workspace assignment detail to be updated in <Databricks>.
	WorkspaceAssignmentDetail WorkspaceAssignmentDetail `json:"workspace_assignment_detail"`
	// Required. The workspace ID for which the workspace assignment detail is
	// being updated.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*UpdateWorkspaceAssignmentDetailRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateWorkspaceAssignmentDetailRequest) UnmarshalJSON(b []byte) error

type UpdateWorkspaceAssignmentProxyRequest added in v0.172.0

type UpdateWorkspaceAssignmentProxyRequest struct {
	// Required. ID of the principal in Databricks.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The list of fields to update.
	UpdateMask fieldmask.FieldMask `json:"-" url:"update_mask"`
	// Required. Workspace assignment to be updated in <Databricks>.
	WorkspaceAssignment WorkspaceAssignment `json:"workspace_assignment"`
}

func (*UpdateWorkspaceAssignmentProxyRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateWorkspaceAssignmentProxyRequest) UnmarshalJSON(b []byte) error

type UpdateWorkspaceAssignmentRequest added in v0.172.0

type UpdateWorkspaceAssignmentRequest struct {
	// Required. ID of the principal in Databricks.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The list of fields to update.
	UpdateMask fieldmask.FieldMask `json:"-" url:"update_mask"`
	// Required. Workspace assignment to be updated in <Databricks>.
	WorkspaceAssignment WorkspaceAssignment `json:"workspace_assignment"`
	// Required. The workspace ID for which the workspace assignment is being
	// updated.
	WorkspaceId int64 `json:"-" url:"-"`
}

func (*UpdateWorkspaceAssignmentRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateWorkspaceAssignmentRequest) UnmarshalJSON(b []byte) error

type UpdateWorkspaceIdentityDetailRequest added in v0.172.0

type UpdateWorkspaceIdentityDetailRequest struct {
	// Required. ID of the principal in Databricks.
	PrincipalId int64 `json:"-" url:"-"`
	// Required. The list of fields to update.
	UpdateMask fieldmask.FieldMask `json:"-" url:"update_mask"`
	// Required. Workspace identity detail to be updated in <Databricks>.
	WorkspaceIdentityDetail WorkspaceIdentityDetail `json:"workspace_identity_detail"`
}

func (*UpdateWorkspaceIdentityDetailRequest) UnmarshalJSON added in v0.174.0

func (s *UpdateWorkspaceIdentityDetailRequest) UnmarshalJSON(b []byte) error

type User

type User struct {
	// The accountId parent of the user in Databricks.
	AccountId string `json:"account_id,omitempty"`
	// The activity status of a user in a Databricks account.
	AccountUserStatus State `json:"account_user_status"`
	// ExternalId of the user in the customer's IdP.
	ExternalId string `json:"external_id,omitempty"`

	FullName UserFullName `json:"full_name"`
	// Internal userId of the user in Databricks.
	UserId string `json:"user_id,omitempty"`
	// Username/email of the user.
	Username string `json:"username"`

	ForceSendFields []string `json:"-" url:"-"`
}

The details of a User resource.

func (User) MarshalJSON

func (s User) MarshalJSON() ([]byte, error)

func (*User) UnmarshalJSON

func (s *User) UnmarshalJSON(b []byte) error

type UserFullName added in v0.153.0

type UserFullName struct {
	FamilyName string `json:"family_name,omitempty"`

	GivenName string `json:"given_name,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

func (UserFullName) MarshalJSON added in v0.153.0

func (s UserFullName) MarshalJSON() ([]byte, error)

func (*UserFullName) UnmarshalJSON added in v0.153.0

func (s *UserFullName) UnmarshalJSON(b []byte) error

type WorkspaceAccessDetail

type WorkspaceAccessDetail struct {
	AccessType WorkspaceAccessDetailAccessType `json:"access_type,omitempty"`
	// The account ID parent of the workspace where the principal has access.
	AccountId string `json:"account_id,omitempty"`
	// The permissions granted to the principal in the workspace.
	Permissions []WorkspacePermission `json:"permissions,omitempty"`
	// The internal ID of the principal (user/sp/group) in Databricks.
	PrincipalId int64 `json:"principal_id,omitempty"`

	PrincipalType PrincipalType `json:"principal_type,omitempty"`
	// The activity status of the principal in the workspace. Not applicable for
	// groups at the moment.
	Status State `json:"status,omitempty"`
	// The workspace ID where the principal has access.
	WorkspaceId int64 `json:"workspace_id,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The details of a principal's access to a workspace.

func (WorkspaceAccessDetail) MarshalJSON

func (s WorkspaceAccessDetail) MarshalJSON() ([]byte, error)

func (*WorkspaceAccessDetail) UnmarshalJSON

func (s *WorkspaceAccessDetail) UnmarshalJSON(b []byte) error

type WorkspaceAccessDetailAccessType

type WorkspaceAccessDetailAccessType string

The type of access the principal has to the workspace.

const WorkspaceAccessDetailAccessTypeDirect WorkspaceAccessDetailAccessType = `DIRECT`
const WorkspaceAccessDetailAccessTypeIndirect WorkspaceAccessDetailAccessType = `INDIRECT`

func (*WorkspaceAccessDetailAccessType) Set

Set raw string value and validate it against allowed values

func (*WorkspaceAccessDetailAccessType) String

String representation for fmt.Print

func (*WorkspaceAccessDetailAccessType) Type

Type always returns WorkspaceAccessDetailAccessType to satisfy [pflag.Value] interface

func (*WorkspaceAccessDetailAccessType) Values

Values returns all possible values for WorkspaceAccessDetailAccessType.

There is no guarantee on the order of the values in the slice.

type WorkspaceAccessDetailView

type WorkspaceAccessDetailView string

Controls what fields are returned in the GetWorkspaceAccessDetail response.

const WorkspaceAccessDetailViewBasic WorkspaceAccessDetailView = `BASIC`
const WorkspaceAccessDetailViewFull WorkspaceAccessDetailView = `FULL`

func (*WorkspaceAccessDetailView) Set

Set raw string value and validate it against allowed values

func (*WorkspaceAccessDetailView) String

func (f *WorkspaceAccessDetailView) String() string

String representation for fmt.Print

func (*WorkspaceAccessDetailView) Type

Type always returns WorkspaceAccessDetailView to satisfy [pflag.Value] interface

func (*WorkspaceAccessDetailView) Values

Values returns all possible values for WorkspaceAccessDetailView.

There is no guarantee on the order of the values in the slice.

type WorkspaceAssignment added in v0.172.0

type WorkspaceAssignment struct {
	// The account ID parent of the workspace where the principal is assigned
	AccountId string `json:"account_id,omitempty"`
	// 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.
	EffectiveEntitlements []Entitlement `json:"effective_entitlements,omitempty"`
	// Entitlements granted directly to the principal on this workspace. This is
	// the only client-settable field. Create and update manage exactly this
	// set, including entitlements the principal also holds through a group.
	// List responses leave this field empty. Get a single principal to read its
	// entitlements.
	Entitlements []Entitlement `json:"entitlements,omitempty"`
	// The internal ID of the principal (user/sp/group) in Databricks.
	PrincipalId int64 `json:"principal_id"`
	// The type of the principal (user/service principal/group) that is
	// assigned.
	PrincipalType PrincipalType `json:"principal_type,omitempty"`
	// The workspace ID where the principal is assigned.
	WorkspaceId int64 `json:"workspace_id,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The direct assignment of a provisioned account-level principal (user, service principal, or group) to a workspace, together with the entitlements that assignment grants in the workspace.

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.

`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.

func (WorkspaceAssignment) MarshalJSON added in v0.172.0

func (s WorkspaceAssignment) MarshalJSON() ([]byte, error)

func (*WorkspaceAssignment) UnmarshalJSON added in v0.172.0

func (s *WorkspaceAssignment) UnmarshalJSON(b []byte) error

type WorkspaceAssignmentDetail added in v0.133.0

type WorkspaceAssignmentDetail struct {
	// The account ID parent of the workspace where the principal is assigned
	AccountId string `json:"account_id,omitempty"`
	// 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.
	EffectiveEntitlements []Entitlement `json:"effective_entitlements,omitempty"`
	// Entitlements granted directly to the principal on this workspace. This is
	// the only client-settable field. Create and update manage exactly this
	// set, including entitlements the principal also holds through a group.
	// List responses leave this field empty. Get a single principal to read its
	// entitlements.
	Entitlements []Entitlement `json:"entitlements,omitempty"`
	// The internal ID of the principal (user/sp/group) in Databricks.
	PrincipalId int64 `json:"principal_id"`

	PrincipalType PrincipalType `json:"principal_type,omitempty"`
	// The workspace ID where the principal is assigned.
	WorkspaceId int64 `json:"workspace_id,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The direct assignment of a provisioned account-level principal (user, service principal, or group) to a workspace, together with the entitlements that assignment grants in the workspace.

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.

`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.

func (WorkspaceAssignmentDetail) MarshalJSON added in v0.133.0

func (s WorkspaceAssignmentDetail) MarshalJSON() ([]byte, error)

func (*WorkspaceAssignmentDetail) UnmarshalJSON added in v0.133.0

func (s *WorkspaceAssignmentDetail) UnmarshalJSON(b []byte) error

type WorkspaceIamV2API

type WorkspaceIamV2API struct {
	// contains filtered or unexported fields
}

These APIs are used to manage identities and the workspace access of these identities in <Databricks>.

func NewWorkspaceIamV2

func NewWorkspaceIamV2(client *client.DatabricksClient) *WorkspaceIamV2API

func (*WorkspaceIamV2API) CreateDirectGroupMemberProxy added in v0.172.0

func (a *WorkspaceIamV2API) CreateDirectGroupMemberProxy(ctx context.Context, request CreateDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

func (*WorkspaceIamV2API) CreateGroupProxy added in v0.172.0

func (a *WorkspaceIamV2API) CreateGroupProxy(ctx context.Context, request CreateGroupProxyRequest) (*Group, error)

func (*WorkspaceIamV2API) CreateServicePrincipalProxy added in v0.172.0

func (a *WorkspaceIamV2API) CreateServicePrincipalProxy(ctx context.Context, request CreateServicePrincipalProxyRequest) (*ServicePrincipal, error)

func (*WorkspaceIamV2API) CreateUserProxy added in v0.172.0

func (a *WorkspaceIamV2API) CreateUserProxy(ctx context.Context, request CreateUserProxyRequest) (*User, error)

func (*WorkspaceIamV2API) CreateWorkspaceAssignmentDetailProxy added in v0.133.0

func (a *WorkspaceIamV2API) CreateWorkspaceAssignmentDetailProxy(ctx context.Context, request CreateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

func (*WorkspaceIamV2API) CreateWorkspaceAssignmentProxy added in v0.172.0

func (a *WorkspaceIamV2API) CreateWorkspaceAssignmentProxy(ctx context.Context, request CreateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

func (*WorkspaceIamV2API) DeleteDirectGroupMemberProxy added in v0.172.0

func (a *WorkspaceIamV2API) DeleteDirectGroupMemberProxy(ctx context.Context, request DeleteDirectGroupMemberProxyRequest) error

func (*WorkspaceIamV2API) DeleteGroupProxy added in v0.172.0

func (a *WorkspaceIamV2API) DeleteGroupProxy(ctx context.Context, request DeleteGroupProxyRequest) error

func (*WorkspaceIamV2API) DeleteServicePrincipalProxy added in v0.172.0

func (a *WorkspaceIamV2API) DeleteServicePrincipalProxy(ctx context.Context, request DeleteServicePrincipalProxyRequest) error

func (*WorkspaceIamV2API) DeleteUserProxy added in v0.172.0

func (a *WorkspaceIamV2API) DeleteUserProxy(ctx context.Context, request DeleteUserProxyRequest) error

func (*WorkspaceIamV2API) DeleteWorkspaceAssignmentDetailProxy added in v0.133.0

func (a *WorkspaceIamV2API) DeleteWorkspaceAssignmentDetailProxy(ctx context.Context, request DeleteWorkspaceAssignmentDetailProxyRequest) error

func (*WorkspaceIamV2API) DeleteWorkspaceAssignmentProxy added in v0.172.0

func (a *WorkspaceIamV2API) DeleteWorkspaceAssignmentProxy(ctx context.Context, request DeleteWorkspaceAssignmentProxyRequest) error

func (*WorkspaceIamV2API) GetDirectGroupMemberProxy added in v0.172.0

func (a *WorkspaceIamV2API) GetDirectGroupMemberProxy(ctx context.Context, request GetDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

func (*WorkspaceIamV2API) GetGroupProxy added in v0.172.0

func (a *WorkspaceIamV2API) GetGroupProxy(ctx context.Context, request GetGroupProxyRequest) (*Group, error)

func (*WorkspaceIamV2API) GetServicePrincipalProxy added in v0.172.0

func (a *WorkspaceIamV2API) GetServicePrincipalProxy(ctx context.Context, request GetServicePrincipalProxyRequest) (*ServicePrincipal, error)

func (*WorkspaceIamV2API) GetUserProxy added in v0.172.0

func (a *WorkspaceIamV2API) GetUserProxy(ctx context.Context, request GetUserProxyRequest) (*User, error)

func (*WorkspaceIamV2API) GetWorkspaceAccessDetailLocal

func (a *WorkspaceIamV2API) GetWorkspaceAccessDetailLocal(ctx context.Context, request GetWorkspaceAccessDetailLocalRequest) (*WorkspaceAccessDetail, error)

func (*WorkspaceIamV2API) GetWorkspaceAssignmentDetailProxy added in v0.133.0

func (a *WorkspaceIamV2API) GetWorkspaceAssignmentDetailProxy(ctx context.Context, request GetWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

func (*WorkspaceIamV2API) GetWorkspaceAssignmentProxy added in v0.172.0

func (a *WorkspaceIamV2API) GetWorkspaceAssignmentProxy(ctx context.Context, request GetWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

func (*WorkspaceIamV2API) GetWorkspaceIdentityDetail added in v0.172.0

func (a *WorkspaceIamV2API) GetWorkspaceIdentityDetail(ctx context.Context, request GetWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)

func (*WorkspaceIamV2API) ListDirectGroupMembersProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListDirectGroupMembersProxy(ctx context.Context, request ListDirectGroupMembersProxyRequest) listing.Iterator[DirectGroupMember]

Lists provisioned direct members of a group with their membership source (internal or from identity provider).

func (*WorkspaceIamV2API) ListDirectGroupMembersProxyAll added in v0.173.0

func (a *WorkspaceIamV2API) ListDirectGroupMembersProxyAll(ctx context.Context, request ListDirectGroupMembersProxyRequest) ([]DirectGroupMember, error)

Lists provisioned direct members of a group with their membership source (internal or from identity provider).

func (*WorkspaceIamV2API) ListGroupsProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListGroupsProxy(ctx context.Context, request ListGroupsProxyRequest) listing.Iterator[Group]

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.

func (*WorkspaceIamV2API) ListGroupsProxyAll added in v0.172.0

func (a *WorkspaceIamV2API) ListGroupsProxyAll(ctx context.Context, request ListGroupsProxyRequest) ([]Group, error)

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.

func (*WorkspaceIamV2API) ListServicePrincipalsProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListServicePrincipalsProxy(ctx context.Context, request ListServicePrincipalsProxyRequest) listing.Iterator[ServicePrincipal]

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.

func (*WorkspaceIamV2API) ListServicePrincipalsProxyAll added in v0.172.0

func (a *WorkspaceIamV2API) ListServicePrincipalsProxyAll(ctx context.Context, request ListServicePrincipalsProxyRequest) ([]ServicePrincipal, error)

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.

func (*WorkspaceIamV2API) ListTransitiveParentGroupsProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListTransitiveParentGroupsProxy(ctx context.Context, request ListTransitiveParentGroupsProxyRequest) (*ListTransitiveParentGroupsResponse, error)

func (*WorkspaceIamV2API) ListUsersProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListUsersProxy(ctx context.Context, request ListUsersProxyRequest) listing.Iterator[User]

Lists the users in the Databricks account that parents the calling workspace, returning one page per call. Supports filtering by username or external ID.

func (*WorkspaceIamV2API) ListUsersProxyAll added in v0.172.0

func (a *WorkspaceIamV2API) ListUsersProxyAll(ctx context.Context, request ListUsersProxyRequest) ([]User, error)

Lists the users in the Databricks account that parents the calling workspace, returning one page per call. Supports filtering by username or external ID.

func (*WorkspaceIamV2API) ListWorkspaceAssignmentDetailsProxy added in v0.133.0

func (a *WorkspaceIamV2API) ListWorkspaceAssignmentDetailsProxy(ctx context.Context, request ListWorkspaceAssignmentDetailsProxyRequest) listing.Iterator[WorkspaceAssignmentDetail]

Lists workspace assignment details 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 detail.

func (*WorkspaceIamV2API) ListWorkspaceAssignmentDetailsProxyAll added in v0.173.0

func (a *WorkspaceIamV2API) ListWorkspaceAssignmentDetailsProxyAll(ctx context.Context, request ListWorkspaceAssignmentDetailsProxyRequest) ([]WorkspaceAssignmentDetail, error)

Lists workspace assignment details 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 detail.

func (*WorkspaceIamV2API) ListWorkspaceAssignmentsProxy added in v0.172.0

func (a *WorkspaceIamV2API) ListWorkspaceAssignmentsProxy(ctx context.Context, request ListWorkspaceAssignmentsProxyRequest) listing.Iterator[WorkspaceAssignment]

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.

func (*WorkspaceIamV2API) ListWorkspaceAssignmentsProxyAll added in v0.173.0

func (a *WorkspaceIamV2API) ListWorkspaceAssignmentsProxyAll(ctx context.Context, request ListWorkspaceAssignmentsProxyRequest) ([]WorkspaceAssignment, error)

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.

func (*WorkspaceIamV2API) ResolveGroupProxy

func (a *WorkspaceIamV2API) ResolveGroupProxy(ctx context.Context, request ResolveGroupProxyRequest) (*ResolveGroupResponse, error)

func (*WorkspaceIamV2API) ResolveServicePrincipalProxy

func (a *WorkspaceIamV2API) ResolveServicePrincipalProxy(ctx context.Context, request ResolveServicePrincipalProxyRequest) (*ResolveServicePrincipalResponse, error)

func (*WorkspaceIamV2API) ResolveUserProxy

func (a *WorkspaceIamV2API) ResolveUserProxy(ctx context.Context, request ResolveUserProxyRequest) (*ResolveUserResponse, error)

func (*WorkspaceIamV2API) UpdateGroupProxy added in v0.172.0

func (a *WorkspaceIamV2API) UpdateGroupProxy(ctx context.Context, request UpdateGroupProxyRequest) (*Group, error)

func (*WorkspaceIamV2API) UpdateServicePrincipalProxy added in v0.172.0

func (a *WorkspaceIamV2API) UpdateServicePrincipalProxy(ctx context.Context, request UpdateServicePrincipalProxyRequest) (*ServicePrincipal, error)

func (*WorkspaceIamV2API) UpdateUserProxy added in v0.172.0

func (a *WorkspaceIamV2API) UpdateUserProxy(ctx context.Context, request UpdateUserProxyRequest) (*User, error)

func (*WorkspaceIamV2API) UpdateWorkspaceAssignmentDetailProxy added in v0.133.0

func (a *WorkspaceIamV2API) UpdateWorkspaceAssignmentDetailProxy(ctx context.Context, request UpdateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

func (*WorkspaceIamV2API) UpdateWorkspaceAssignmentProxy added in v0.172.0

func (a *WorkspaceIamV2API) UpdateWorkspaceAssignmentProxy(ctx context.Context, request UpdateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

func (*WorkspaceIamV2API) UpdateWorkspaceIdentityDetail added in v0.172.0

func (a *WorkspaceIamV2API) UpdateWorkspaceIdentityDetail(ctx context.Context, request UpdateWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)

type WorkspaceIamV2Interface

type WorkspaceIamV2Interface interface {

	// Creates a group membership (assigns a principal to a group).
	CreateDirectGroupMemberProxy(ctx context.Context, request CreateDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

	// 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.
	//
	// 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.
	CreateGroupProxy(ctx context.Context, request CreateGroupProxyRequest) (*Group, error)

	// 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.
	//
	// 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.
	CreateServicePrincipalProxy(ctx context.Context, request CreateServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	CreateUserProxy(ctx context.Context, request CreateUserProxyRequest) (*User, error)

	// Creates a workspace assignment detail 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
	// detail afterwards to confirm which entitlements were granted.
	CreateWorkspaceAssignmentDetailProxy(ctx context.Context, request CreateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// 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.
	CreateWorkspaceAssignmentProxy(ctx context.Context, request CreateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Deletes a group membership (unassigns a principal from a group).
	DeleteDirectGroupMemberProxy(ctx context.Context, request DeleteDirectGroupMemberProxyRequest) error

	// Deletes a group by its internal ID from the Databricks account that parents
	// the calling workspace.
	DeleteGroupProxy(ctx context.Context, request DeleteGroupProxyRequest) error

	// Deletes a service principal by its internal ID from the Databricks account
	// that parents the calling workspace.
	DeleteServicePrincipalProxy(ctx context.Context, request DeleteServicePrincipalProxyRequest) error

	// Deletes a user by its internal ID from the Databricks account that parents
	// the calling workspace.
	DeleteUserProxy(ctx context.Context, request DeleteUserProxyRequest) error

	// Deletes a workspace assignment detail 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.
	DeleteWorkspaceAssignmentDetailProxy(ctx context.Context, request DeleteWorkspaceAssignmentDetailProxyRequest) error

	// 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.
	DeleteWorkspaceAssignmentProxy(ctx context.Context, request DeleteWorkspaceAssignmentProxyRequest) error

	// Gets a provisioned direct member of a group.
	GetDirectGroupMemberProxy(ctx context.Context, request GetDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

	// Fetches a group by its internal ID from the Databricks account that parents
	// the calling workspace.
	GetGroupProxy(ctx context.Context, request GetGroupProxyRequest) (*Group, error)

	// Fetches a service principal by its internal ID from the Databricks account
	// that parents the calling workspace.
	GetServicePrincipalProxy(ctx context.Context, request GetServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// Fetches a user by its internal ID from the Databricks account that parents
	// the calling workspace.
	GetUserProxy(ctx context.Context, request GetUserProxyRequest) (*User, error)

	// Returns the access details for a principal in the current workspace. Allows
	// for checking access details for any provisioned principal (user, service
	// principal, or group) in the current workspace. * Provisioned principal here
	// refers to one that has been synced into Databricks from the customer's IdP or
	// added explicitly to Databricks via SCIM/UI. Allows for passing in a "view"
	// parameter to control what fields are returned (BASIC by default or FULL).
	GetWorkspaceAccessDetailLocal(ctx context.Context, request GetWorkspaceAccessDetailLocalRequest) (*WorkspaceAccessDetail, error)

	// Returns the assignment details for a principal in the calling workspace.
	GetWorkspaceAssignmentDetailProxy(ctx context.Context, request GetWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// Returns the assignment for a principal in the calling workspace.
	GetWorkspaceAssignmentProxy(ctx context.Context, request GetWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Returns the identity details for a principal in a workspace.
	GetWorkspaceIdentityDetail(ctx context.Context, request GetWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	//
	// This method is generated by Databricks SDK Code Generator.
	ListDirectGroupMembersProxy(ctx context.Context, request ListDirectGroupMembersProxyRequest) listing.Iterator[DirectGroupMember]

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	//
	// This method is generated by Databricks SDK Code Generator.
	ListDirectGroupMembersProxyAll(ctx context.Context, request ListDirectGroupMembersProxyRequest) ([]DirectGroupMember, error)

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListGroupsProxy(ctx context.Context, request ListGroupsProxyRequest) listing.Iterator[Group]

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListGroupsProxyAll(ctx context.Context, request ListGroupsProxyRequest) ([]Group, error)

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListServicePrincipalsProxy(ctx context.Context, request ListServicePrincipalsProxyRequest) listing.Iterator[ServicePrincipal]

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListServicePrincipalsProxyAll(ctx context.Context, request ListServicePrincipalsProxyRequest) ([]ServicePrincipal, error)

	// Lists all transitive parent groups of a principal.
	ListTransitiveParentGroupsProxy(ctx context.Context, request ListTransitiveParentGroupsProxyRequest) (*ListTransitiveParentGroupsResponse, error)

	// Lists the users in the Databricks account that parents the calling workspace,
	// returning one page per call. Supports filtering by username or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListUsersProxy(ctx context.Context, request ListUsersProxyRequest) listing.Iterator[User]

	// Lists the users in the Databricks account that parents the calling workspace,
	// returning one page per call. Supports filtering by username or external ID.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListUsersProxyAll(ctx context.Context, request ListUsersProxyRequest) ([]User, error)

	// Lists workspace assignment details 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 detail.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentDetailsProxy(ctx context.Context, request ListWorkspaceAssignmentDetailsProxyRequest) listing.Iterator[WorkspaceAssignmentDetail]

	// Lists workspace assignment details 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 detail.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentDetailsProxyAll(ctx context.Context, request ListWorkspaceAssignmentDetailsProxyRequest) ([]WorkspaceAssignmentDetail, error)

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentsProxy(ctx context.Context, request ListWorkspaceAssignmentsProxyRequest) listing.Iterator[WorkspaceAssignment]

	// 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.
	//
	// This method is generated by Databricks SDK Code Generator.
	ListWorkspaceAssignmentsProxyAll(ctx context.Context, request ListWorkspaceAssignmentsProxyRequest) ([]WorkspaceAssignment, error)

	// 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.
	ResolveGroupProxy(ctx context.Context, request ResolveGroupProxyRequest) (*ResolveGroupResponse, error)

	// 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.
	ResolveServicePrincipalProxy(ctx context.Context, request ResolveServicePrincipalProxyRequest) (*ResolveServicePrincipalResponse, error)

	// 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.
	ResolveUserProxy(ctx context.Context, request ResolveUserProxyRequest) (*ResolveUserResponse, error)

	// 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.
	//
	// 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.
	UpdateGroupProxy(ctx context.Context, request UpdateGroupProxyRequest) (*Group, error)

	// 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.
	//
	// 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.
	UpdateServicePrincipalProxy(ctx context.Context, request UpdateServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	UpdateUserProxy(ctx context.Context, request UpdateUserProxyRequest) (*User, error)

	// 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 detail afterwards to confirm the final state.
	UpdateWorkspaceAssignmentDetailProxy(ctx context.Context, request UpdateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// 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.
	UpdateWorkspaceAssignmentProxy(ctx context.Context, request UpdateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Updates a workspace identity detail for a principal.
	UpdateWorkspaceIdentityDetail(ctx context.Context, request UpdateWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)
}

type WorkspaceIamV2Service deprecated

type WorkspaceIamV2Service interface {

	// Creates a group membership (assigns a principal to a group).
	CreateDirectGroupMemberProxy(ctx context.Context, request CreateDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

	// 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.
	//
	// 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.
	CreateGroupProxy(ctx context.Context, request CreateGroupProxyRequest) (*Group, error)

	// 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.
	//
	// 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.
	CreateServicePrincipalProxy(ctx context.Context, request CreateServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	CreateUserProxy(ctx context.Context, request CreateUserProxyRequest) (*User, error)

	// Creates a workspace assignment detail 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 detail afterwards to confirm which entitlements were granted.
	CreateWorkspaceAssignmentDetailProxy(ctx context.Context, request CreateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// 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.
	CreateWorkspaceAssignmentProxy(ctx context.Context, request CreateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Deletes a group membership (unassigns a principal from a group).
	DeleteDirectGroupMemberProxy(ctx context.Context, request DeleteDirectGroupMemberProxyRequest) error

	// Deletes a group by its internal ID from the Databricks account that
	// parents the calling workspace.
	DeleteGroupProxy(ctx context.Context, request DeleteGroupProxyRequest) error

	// Deletes a service principal by its internal ID from the Databricks
	// account that parents the calling workspace.
	DeleteServicePrincipalProxy(ctx context.Context, request DeleteServicePrincipalProxyRequest) error

	// Deletes a user by its internal ID from the Databricks account that
	// parents the calling workspace.
	DeleteUserProxy(ctx context.Context, request DeleteUserProxyRequest) error

	// Deletes a workspace assignment detail 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.
	DeleteWorkspaceAssignmentDetailProxy(ctx context.Context, request DeleteWorkspaceAssignmentDetailProxyRequest) error

	// 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.
	DeleteWorkspaceAssignmentProxy(ctx context.Context, request DeleteWorkspaceAssignmentProxyRequest) error

	// Gets a provisioned direct member of a group.
	GetDirectGroupMemberProxy(ctx context.Context, request GetDirectGroupMemberProxyRequest) (*DirectGroupMember, error)

	// Fetches a group by its internal ID from the Databricks account that
	// parents the calling workspace.
	GetGroupProxy(ctx context.Context, request GetGroupProxyRequest) (*Group, error)

	// Fetches a service principal by its internal ID from the Databricks
	// account that parents the calling workspace.
	GetServicePrincipalProxy(ctx context.Context, request GetServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// Fetches a user by its internal ID from the Databricks account that
	// parents the calling workspace.
	GetUserProxy(ctx context.Context, request GetUserProxyRequest) (*User, error)

	// Returns the access details for a principal in the current workspace.
	// Allows for checking access details for any provisioned principal (user,
	// service principal, or group) in the current workspace. * Provisioned
	// principal here refers to one that has been synced into Databricks from
	// the customer's IdP or added explicitly to Databricks via SCIM/UI. Allows
	// for passing in a "view" parameter to control what fields are returned
	// (BASIC by default or FULL).
	GetWorkspaceAccessDetailLocal(ctx context.Context, request GetWorkspaceAccessDetailLocalRequest) (*WorkspaceAccessDetail, error)

	// Returns the assignment details for a principal in the calling workspace.
	GetWorkspaceAssignmentDetailProxy(ctx context.Context, request GetWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// Returns the assignment for a principal in the calling workspace.
	GetWorkspaceAssignmentProxy(ctx context.Context, request GetWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Returns the identity details for a principal in a workspace.
	GetWorkspaceIdentityDetail(ctx context.Context, request GetWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)

	// Lists provisioned direct members of a group with their membership source
	// (internal or from identity provider).
	ListDirectGroupMembersProxy(ctx context.Context, request ListDirectGroupMembersProxyRequest) (*ListDirectGroupMembersResponse, error)

	// 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.
	ListGroupsProxy(ctx context.Context, request ListGroupsProxyRequest) (*ListGroupsResponse, error)

	// 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.
	ListServicePrincipalsProxy(ctx context.Context, request ListServicePrincipalsProxyRequest) (*ListServicePrincipalsResponse, error)

	// Lists all transitive parent groups of a principal.
	ListTransitiveParentGroupsProxy(ctx context.Context, request ListTransitiveParentGroupsProxyRequest) (*ListTransitiveParentGroupsResponse, error)

	// Lists the users in the Databricks account that parents the calling
	// workspace, returning one page per call. Supports filtering by username or
	// external ID.
	ListUsersProxy(ctx context.Context, request ListUsersProxyRequest) (*ListUsersResponse, error)

	// Lists workspace assignment details 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 detail.
	ListWorkspaceAssignmentDetailsProxy(ctx context.Context, request ListWorkspaceAssignmentDetailsProxyRequest) (*ListWorkspaceAssignmentDetailsResponse, error)

	// 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.
	ListWorkspaceAssignmentsProxy(ctx context.Context, request ListWorkspaceAssignmentsProxyRequest) (*ListWorkspaceAssignmentsResponse, error)

	// 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.
	ResolveGroupProxy(ctx context.Context, request ResolveGroupProxyRequest) (*ResolveGroupResponse, error)

	// 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.
	ResolveServicePrincipalProxy(ctx context.Context, request ResolveServicePrincipalProxyRequest) (*ResolveServicePrincipalResponse, error)

	// 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.
	ResolveUserProxy(ctx context.Context, request ResolveUserProxyRequest) (*ResolveUserResponse, error)

	// 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.
	//
	// 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.
	UpdateGroupProxy(ctx context.Context, request UpdateGroupProxyRequest) (*Group, error)

	// 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.
	//
	// 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.
	UpdateServicePrincipalProxy(ctx context.Context, request UpdateServicePrincipalProxyRequest) (*ServicePrincipal, error)

	// 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.
	//
	// 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.
	UpdateUserProxy(ctx context.Context, request UpdateUserProxyRequest) (*User, error)

	// 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 detail afterwards to confirm the final
	// state.
	UpdateWorkspaceAssignmentDetailProxy(ctx context.Context, request UpdateWorkspaceAssignmentDetailProxyRequest) (*WorkspaceAssignmentDetail, error)

	// 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.
	UpdateWorkspaceAssignmentProxy(ctx context.Context, request UpdateWorkspaceAssignmentProxyRequest) (*WorkspaceAssignment, error)

	// Updates a workspace identity detail for a principal.
	UpdateWorkspaceIdentityDetail(ctx context.Context, request UpdateWorkspaceIdentityDetailRequest) (*WorkspaceIdentityDetail, error)
}

These APIs are used to manage identities and the workspace access of these identities in <Databricks>.

Deprecated: Do not use this interface, it will be removed in a future version of the SDK.

type WorkspaceIdentityDetail added in v0.172.0

type WorkspaceIdentityDetail struct {
	// The type of assignment the principal has to the workspace (direct or
	// indirect).
	AssignmentType WorkspaceIdentityDetailAssignmentType `json:"assignment_type,omitempty"`
	// The internal ID of the principal (user/sp/group) in Databricks.
	PrincipalId int64 `json:"principal_id,omitempty"`
	// The type of the principal (user/service principal/group).
	PrincipalType PrincipalType `json:"principal_type,omitempty"`
	// The activity status of an identity in a Databricks workspace.
	WorkspaceIdentityStatus State `json:"workspace_identity_status,omitempty"`

	ForceSendFields []string `json:"-" url:"-"`
}

The details of a directly or indirectly assigned principal's details in a workspace.

func (WorkspaceIdentityDetail) MarshalJSON added in v0.172.0

func (s WorkspaceIdentityDetail) MarshalJSON() ([]byte, error)

func (*WorkspaceIdentityDetail) UnmarshalJSON added in v0.172.0

func (s *WorkspaceIdentityDetail) UnmarshalJSON(b []byte) error

type WorkspaceIdentityDetailAssignmentType added in v0.172.0

type WorkspaceIdentityDetailAssignmentType string

The type of assignment the principal has to the workspace.

const WorkspaceIdentityDetailAssignmentTypeDirect WorkspaceIdentityDetailAssignmentType = `DIRECT`
const WorkspaceIdentityDetailAssignmentTypeIndirect WorkspaceIdentityDetailAssignmentType = `INDIRECT`

func (*WorkspaceIdentityDetailAssignmentType) Set added in v0.172.0

Set raw string value and validate it against allowed values

func (*WorkspaceIdentityDetailAssignmentType) String added in v0.172.0

String representation for fmt.Print

func (*WorkspaceIdentityDetailAssignmentType) Type added in v0.172.0

Type always returns WorkspaceIdentityDetailAssignmentType to satisfy [pflag.Value] interface

func (*WorkspaceIdentityDetailAssignmentType) Values added in v0.172.0

Values returns all possible values for WorkspaceIdentityDetailAssignmentType.

There is no guarantee on the order of the values in the slice.

type WorkspacePermission

type WorkspacePermission string

The type of permission a principal has to a workspace (admin/user).

const WorkspacePermissionAdminPermission WorkspacePermission = `ADMIN_PERMISSION`
const WorkspacePermissionUserPermission WorkspacePermission = `USER_PERMISSION`

func (*WorkspacePermission) Set

func (f *WorkspacePermission) Set(v string) error

Set raw string value and validate it against allowed values

func (*WorkspacePermission) String

func (f *WorkspacePermission) String() string

String representation for fmt.Print

func (*WorkspacePermission) Type

func (f *WorkspacePermission) Type() string

Type always returns WorkspacePermission to satisfy [pflag.Value] interface

func (*WorkspacePermission) Values

Values returns all possible values for WorkspacePermission.

There is no guarantee on the order of the values in the slice.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL