> ## Documentation Index
> Fetch the complete documentation index at: https://docs.paradime.io/llms.txt
> Use this file to discover all available pages before exploring further.

# User Management

> List, invite, disable, and manage roles and permissions for Paradime workspace users programmatically with the User Management module of the paradime-io SDK.

### Overview

<Info>
  **Prerequisites:**

  * This feature is available with the [**Paradime Enterprise pack**](https://www.paradime.io/enterprise).
  * Your API keys ***must*** have either User Management Admin or User Metadata Viewer capabilities.
</Info>

<Info>
  These examples authenticate with an **account API key** (`api_secret="prdm_cmp_..."` plus `workspace_uid`), which requires `paradime-io` 6.0.0 or later. Legacy **workspace API keys** (`api_key` + `api_secret`) are still supported. See Getting Started.
</Info>

The User Management module enables you to efficiently administer and regulate user access within your workspace.

This module offers a comprehensive set of tools to list all users, send invitations to new members, disable users' accounts, and precisely control users' roles and permissions.

### Get all active users

Retrieves all active users.

<ResponseField name="Returns" type="List[ActiveUser]">
  A list of active user objects.
</ResponseField>

```python theme={"system"}
from paradime import Paradime

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

active_users = paradime.users.list_active()
```

### Get a user by email

Retrieves a user by email.

<ParamField path="email" type="str" required>
  The email of the user to retrieve.
</ParamField>

<ResponseField name="Returns" type="ActiveUser">
  The user object.
</ResponseField>

```python theme={"system"}
from paradime import Paradime

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

user = paradime.users.get_by_email(email="john@acme.io")
```

### Get all invited users

Retrieves all invited users.

<ResponseField name="Returns" type="List[InvitedUser]">
  A list of invited user objects.
</ResponseField>

```python theme={"system"}
from paradime import Paradime

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

invited_users = paradime.users.list_invited()
```

### Invite a user

Invites a user to the workspace.

<ParamField path="email" type="str" required>
  The email of the user to invite.
</ParamField>

<ParamField path="account_type" type="UserAccountType" required>
  The account type of the user to invite.
</ParamField>

<ResponseField name="Returns" type="None">
  This method returns nothing.
</ResponseField>

```python theme={"system"}
from paradime import Paradime
from paradime.apis.users.types import UserAccountType

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

# Invite a user as an admin
paradime.users.invite(email="bhuvan@paradime.io", account_type=UserAccountType.ADMIN)
```

### Update a user's account type

Updates the account type of a user.

<ParamField path="user_uid" type="str" required>
  The ID of the user to update the account type for.
</ParamField>

<ParamField path="account_type" type="UserAccountType" required>
  The new account type for the user.
</ParamField>

<ResponseField name="Returns" type="None">
  This method returns nothing.
</ResponseField>

```python theme={"system"}
from paradime import Paradime
from paradime.apis.users.types import UserAccountType

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

paradime.users.update_account_type(user_uid=user.uid, account_type=UserAccountType.DEVELOPER)
```

### Disable a user

Disable a user in the workspace.

<ParamField path="user_uid" type="str" required>
  The ID of the user to disable.
</ParamField>

<ResponseField name="Returns" type="None">
  This method returns nothing.
</ResponseField>

```python theme={"system"}
from paradime import Paradime

paradime = Paradime(api_endpoint="API_ENDPOINT", api_secret="prdm_cmp_...", workspace_uid="WORKSPACE_UID")

paradime.users.disable(user_uid=user.uid)
```


## Related topics

- [User Management API](/developers/graphql-api/api-reference/user-management-api.md)
- [Workspace Management](/developers/python-sdk/modules/workspace-management.md)
- [Workspace Management API](/developers/graphql-api/api-reference/workspace-management-api.md)
- [Managing Users in the Workspace](/guides/paradime-101/getting-started-with-your-paradime-workspace/managing-users-in-the-workspace.md)
- [Manage Users](/products/settings/users/manage-users.md)
