w.groups: Groups

class databricks.sdk.service.iam.GroupsAPI

Groups simplify identity management, making it easier to assign access to Databricks workspace, data, and other securable objects.

It is best practice to assign access to workspaces and access-control policies in Unity Catalog to groups, instead of to users individually. All Databricks workspace identities can be assigned as members of groups, and members inherit permissions that are assigned to their group.

create([, display_name: Optional[str], entitlements: Optional[List[ComplexValue]], external_id: Optional[str], groups: Optional[List[ComplexValue]], id: Optional[str], members: Optional[List[ComplexValue]], meta: Optional[ResourceMeta], roles: Optional[List[ComplexValue]], schemas: Optional[List[GroupSchema]]]) Group

Usage:

import time

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

group = w.groups.create(display_name=f'sdk-{time.time_ns()}')

# cleanup
w.groups.delete(id=group.id)

Create a new group.

Creates a group in the Databricks workspace with a unique name, using the supplied group details.

Parameters:
Returns:

Group

delete(id: str)

Usage:

import time

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

group = w.groups.create(display_name=f'sdk-{time.time_ns()}')

w.groups.delete(id=group.id)

Delete a group.

Deletes a group from the Databricks workspace.

Parameters:

id – str Unique ID for a group in the Databricks workspace.

get(id: str) Group

Usage:

import time

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

group = w.groups.create(display_name=f'sdk-{time.time_ns()}')

fetch = w.groups.get(id=group.id)

# cleanup
w.groups.delete(id=group.id)

Get group details.

Gets the information for a specific group in the Databricks workspace.

Parameters:

id – str Unique ID for a group in the Databricks workspace.

Returns:

Group

list([, attributes: Optional[str], count: Optional[int], excluded_attributes: Optional[str], filter: Optional[str], sort_by: Optional[str], sort_order: Optional[ListSortOrder], start_index: Optional[int]]) Iterator[Group]

List group details.

Gets all details of the groups associated with the Databricks workspace.

Parameters:
  • attributes – str (optional) Comma-separated list of attributes to return in response.

  • count – int (optional) Desired number of results per page.

  • excluded_attributes – str (optional) Comma-separated list of attributes to exclude in response.

  • filter

    str (optional) Query by which the results have to be filtered. Supported operators are equals(eq), contains(co), starts with(sw) and not equals(ne). Additionally, simple expressions can be formed using logical operators - and and or. The [SCIM RFC] has more details but we currently only support simple expressions.

    [SCIM RFC]: https://tools.ietf.org/html/rfc7644#section-3.4.2.2

  • sort_by – str (optional) Attribute to sort the results.

  • sort_orderListSortOrder (optional) The order to sort the results.

  • start_index – int (optional) Specifies the index of the first result. First item is number 1.

Returns:

Iterator over Group

patch(id: str [, operations: Optional[List[Patch]], schemas: Optional[List[PatchSchema]]])

Usage:

import time
from databricks.sdk import WorkspaceClient
from databricks.sdk.service import iam

w = WorkspaceClient()

group = w.groups.create(display_name=f'sdk-{time.time_ns()}-group')
user = w.users.create(
    display_name=f'sdk-{time.time_ns()}-user', user_name=f'sdk-{time.time_ns()}@example.com')

w.groups.patch(
    id=group.id,
    operations=[iam.Patch(
        op=iam.PatchOp.ADD,
        value={"members": [{
            "value": user.id,
        }]},
    )],
    schemas=[iam.PatchSchema.URN_IETF_PARAMS_SCIM_API_MESSAGES_2_0_PATCH_OP],
)

# cleanup
w.users.delete(id=user.id)
w.groups.delete(id=group.id)

Update group details.

Partially updates the details of a group.

Parameters:
update(id: str [, display_name: Optional[str], entitlements: Optional[List[ComplexValue]], external_id: Optional[str], groups: Optional[List[ComplexValue]], members: Optional[List[ComplexValue]], meta: Optional[ResourceMeta], roles: Optional[List[ComplexValue]], schemas: Optional[List[GroupSchema]]])

Replace a group.

Updates the details of a group by replacing the entire group entity.

Parameters: