Slack API client providing comprehensive Python interface for messaging, file sharing, user management, and team communication features.
—
Manage users, user profiles, presence status, and user groups within your Slack workspace.
Retrieve and manage user information and profiles.
def info(self, user, include_locale=False):
"""
Get information about a user.
Args:
user (str): User ID
include_locale (bool): Include user locale info (default: False)
Returns:
Response: User information including profile, status, and permissions
"""
def list(self, presence=False):
"""
List all users in workspace.
Args:
presence (bool): Include presence information (default: False)
Returns:
Response: List of workspace users with profiles
"""
def identity(self):
"""
Get identity information for the current user.
Returns:
Response: Current user's identity and team information
"""Manage user activity status and presence.
def set_active(self):
"""
Mark the current user as active.
Returns:
Response: Activity status confirmation
"""
def get_presence(self, user):
"""
Get presence information for a user.
Args:
user (str): User ID
Returns:
Response: User presence status and activity
"""
def set_presence(self, presence):
"""
Set presence status for the current user.
Args:
presence (str): Presence status ('auto' or 'away')
Returns:
Response: Presence update confirmation
"""Manage user profile information and settings.
def get(self, user=None, include_labels=False):
"""
Get user profile information.
Args:
user (str, optional): User ID (current user if None)
include_labels (bool): Include field labels (default: False)
Returns:
Response: User profile with fields and values
"""
def set(self, user=None, profile=None, name=None, value=None):
"""
Set user profile information.
Args:
user (str, optional): User ID (current user if None)
profile (dict, optional): Complete profile object
name (str, optional): Field name to update
value (str, optional): Field value to set
Returns:
Response: Profile update confirmation
"""Administrative functions for user management.
def invite(self, email, channels=None, first_name=None, last_name=None, resend=True):
"""
Invite a new user to the workspace.
Args:
email (str): Email address to invite
channels (str, optional): Comma-separated channel IDs
first_name (str, optional): First name
last_name (str, optional): Last name
resend (bool): Resend invitation if already sent (default: True)
Returns:
Response: Invitation confirmation
"""Create and manage user groups for organization and permissions.
def list(self, include_disabled=None, include_count=None, include_users=None):
"""
List user groups.
Args:
include_disabled (bool, optional): Include disabled groups
include_count (bool, optional): Include member counts
include_users (bool, optional): Include user lists
Returns:
Response: User groups with metadata
"""
def create(self, name, handle=None, description=None, channels=None, include_count=None):
"""
Create a new user group.
Args:
name (str): Group name
handle (str, optional): Group handle (mention name)
description (str, optional): Group description
channels (list of str, optional): Default channels for group
include_count (bool, optional): Include member count in response
Returns:
Response: Created group information
"""
def update(self, usergroup, name=None, handle=None, description=None, channels=None, include_count=None):
"""
Update user group information.
Args:
usergroup (str): User group ID
name (str, optional): New group name
handle (str, optional): New group handle
description (str, optional): New group description
channels (list of str, optional): New default channels
include_count (bool, optional): Include member count in response
Returns:
Response: Updated group information
"""
def disable(self, usergroup, include_count=None):
"""
Disable a user group.
Args:
usergroup (str): User group ID
include_count (bool, optional): Include member count in response
Returns:
Response: Disable confirmation
"""
def enable(self, usergroup, include_count=None):
"""
Enable a user group.
Args:
usergroup (str): User group ID
include_count (bool, optional): Include member count in response
Returns:
Response: Enable confirmation
"""Manage user group membership.
def list(self, usergroup, include_disabled=None):
"""
List users in a user group.
Args:
usergroup (str): User group ID
include_disabled (bool, optional): Include disabled users
Returns:
Response: List of users in the group
"""
def update(self, usergroup, users, include_count=None):
"""
Update user group membership.
Args:
usergroup (str): User group ID
users (list of str): User IDs to set as members
include_count (bool, optional): Include member count in response
Returns:
Response: Updated membership information
"""def get_user_id(self, user_name):
"""
Get user ID by username.
Args:
user_name (str): Username to look up
Returns:
str or None: User ID if found, None otherwise
"""class Users(BaseAPI):
"""User management and information."""
def info(self, user, include_locale=False): ...
def list(self, presence=False): ...
def identity(self): ...
def set_active(self): ...
def get_presence(self, user): ...
def set_presence(self, presence): ...
def get_user_id(self, user_name): ...
@property
def profile(self): ... # Returns UsersProfile instance
@property
def admin(self): ... # Returns UsersAdmin instance
class UsersProfile(BaseAPI):
"""User profile management."""
def get(self, user=None, include_labels=False): ...
def set(self, user=None, profile=None, name=None, value=None): ...
class UsersAdmin(BaseAPI):
"""User administration functions."""
def invite(self, email, channels=None, first_name=None, last_name=None, resend=True): ...
class UserGroups(BaseAPI):
"""User group management."""
def list(self, include_disabled=None, include_count=None, include_users=None): ...
def create(self, name, handle=None, description=None, channels=None, include_count=None): ...
def update(self, usergroup, name=None, handle=None, description=None, channels=None, include_count=None): ...
def disable(self, usergroup, include_count=None): ...
def enable(self, usergroup, include_count=None): ...
@property
def users(self): ... # Returns UserGroupsUsers instance
class UserGroupsUsers(BaseAPI):
"""User group membership management."""
def list(self, usergroup, include_disabled=None): ...
def update(self, usergroup, users, include_count=None): ...Install with Tessl CLI
npx tessl i tessl/pypi-slacker