Skip to content

list_groups_for_entity async

list_groups_for_entity(
    organization_id: OrganizationId,
    entity_id: EntityIdentifier,
    *,
    config_overrides: Optional[AsyncWorkMailClientConfig] = None,
    filters: Optional[ListGroupsForEntityFilters] = None,
    next_token: Optional[NextToken] = None,
    max_results: Optional[MaxResults] = None,
) -> ListGroupsForEntityResponse

Returns all the groups to which an entity belongs.

Parameters:

  • organization_id (OrganizationId) –

    The identifier for the organization under which the entity exists.

  • entity_id (EntityIdentifier) –

    The identifier for the entity.

    The entity ID can accept UserId or GroupID, Username or Groupname, or email.

    • Entity ID: 12345678-1234-1234-1234-123456789012 or S-1-1-12-1234567890-123456789-123456789-1234

    • Email address: [email protected]

    • Entity name: entity

  • filters (Optional[ListGroupsForEntityFilters], default: None ) –

    Limit the search results based on the filter criteria.

  • next_token (Optional[NextToken], default: None ) –

    The token to use to retrieve the next page of results. The first call does not contain any tokens.

  • max_results (Optional[MaxResults], default: None ) –

    The maximum number of results to return in a single call.

Raises:

  • EntityNotFoundException –

    The identifier supplied for the user, group, or resource does not exist in your organization.

  • EntityStateException –

    You are performing an operation on a user, group, or resource that isn't in the expected state, such as trying to delete an active user.

  • InvalidParameterException –

    One or more of the input parameters don't match the service's restrictions.

  • OrganizationNotFoundException –

    An operation received a valid organization identifier that either doesn't belong or exist in the system.

  • OrganizationStateException –

    The organization must have a valid state to perform certain operations on the organization or its members.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_workmail/_services/async_work_mail.py
async def list_groups_for_entity(
    self,
    organization_id: "capo_workmail.types.organization_id.OrganizationId",
    entity_id: "capo_workmail.types.entity_identifier.EntityIdentifier",
    *,
    config_overrides: Optional[AsyncWorkMailClientConfig] = None,
    filters: Optional[
        "capo_workmail.types.list_groups_for_entity_filters.ListGroupsForEntityFilters"
    ] = None,
    next_token: Optional["capo_workmail.types.next_token.NextToken"] = None,
    max_results: Optional["capo_workmail.types.max_results.MaxResults"] = None,
) -> "capo_workmail.types.list_groups_for_entity_response.ListGroupsForEntityResponse":
    """<p>Returns all the groups to which an entity belongs.</p>

    Args:
        organization_id: <p>The identifier for the organization under which the entity exists.</p>
        entity_id: <p>The identifier for the entity.</p> <p>The entity ID can accept <i>UserId or GroupID</i>, <i>Username or Groupname</i>, or <i>email</i>.</p> <ul> <li> <p>Entity ID: 12345678-1234-1234-1234-123456789012 or S-1-1-12-1234567890-123456789-123456789-1234</p> </li> <li> <p>Email address: [email protected]</p> </li> <li> <p>Entity name: entity</p> </li> </ul>
        filters: <p>Limit the search results based on the filter criteria.</p>
        next_token: <p>The token to use to retrieve the next page of results. The first call does not contain any tokens.</p>
        max_results: <p>The maximum number of results to return in a single call.</p>

    Raises:
        capo_workmail.errors.entity_not_found_exception.EntityNotFoundException: <p>The identifier supplied for the user, group, or resource does not exist in your organization.</p>
        capo_workmail.errors.entity_state_exception.EntityStateException: <p>You are performing an operation on a user, group, or resource that isn't in the expected state, such as trying to delete an active user.</p>
        capo_workmail.errors.invalid_parameter_exception.InvalidParameterException: <p>One or more of the input parameters don't match the service's restrictions.</p>
        capo_workmail.errors.organization_not_found_exception.OrganizationNotFoundException: <p>An operation received a valid organization identifier that either doesn't belong or exist in the system.</p>
        capo_workmail.errors.organization_state_exception.OrganizationStateException: <p>The organization must have a valid state to perform certain operations on the organization or its members.</p>
        capo_workmail.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_workmail.types.list_groups_for_entity_request.ListGroupsForEntityRequest]",
    ) -> AsyncOperationResponse[
        "capo_workmail.types.list_groups_for_entity_response.ListGroupsForEntityResponse"
    ]:
        import capo_workmail._operations.work_mail_service.list_groups_for_entity

        (
            output,
            http_response,
        ) = await capo_workmail._operations.work_mail_service.list_groups_for_entity.async_list_groups_for_entity(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("ListGroupsForEntity")
    )
    input_: capo_workmail.types.list_groups_for_entity_request.ListGroupsForEntityRequest = {
        "organization_id": organization_id,
        "entity_id": entity_id,
    }
    if filters is not None:
        input_["filters"] = filters
    if next_token is not None:
        input_["next_token"] = next_token
    if max_results is not None:
        input_["max_results"] = max_results

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output