foliolib.folio.users.Users

class foliolib.folio.users.Users(tenant: str)

Bases: foliolib.folio.FolioService

Parameters

tenant (str) – Tenant id

Methods

create_department(name, code)

Create a department.

create_group(name[, desc, ...])

Create a group.

create_user(username, password[, ...])

Create a user

delete_department(name_or_code_or_id)

Delete a department.

delete_group(name_or_id)

Delete a group.

delete_permission(username, permissionName)

Delete a permission for a user

delete_permissions(username, permissionNames)

Delete a permissions for a user

delete_user(name_or_id)

Delete a user by username or id.

get_department(name_or_code_or_id)

Get department by given name, code or id.

get_departments([query])

Get list of departments.

get_group(name_or_id)

Get group by given name or id.

get_groups([query])

Get list of groups.

get_permissions(username)

Get permissions of a user

get_servicePoints()

Get all available service points

get_topLevelPermissions()

Get all available top level permissions.

get_user(name_or_id)

Get a user by username or id

get_users([query])

Get users by query or get all users.

get_usersServicePoints(username)

Get service points of a user.

login(username, password)

Make a authentication.

modify_user(name_or_id, userData)

Modify a user by username or id.

set_password(username, password)

Set a new password for given username.

set_permission(username, permissionName)

Set permission for a user

set_permissions(username, permissionNames)

Set permissions for a user

set_servicePoints(username, ...)

Set service points for a user.

create_department(name: str, code: str)

Create a department.

Parameters
  • name (str) – Name of the department.

  • code (str) – Code of the department.

Returns

Instance of the department.

Return type

dict

create_group(name: str, desc: Optional[str] = None, expirationOffsetInDays: int = 0)

Create a group.

Parameters
  • name (str) – Name of the group.

  • desc (str, optional) – Description of the group. Defaults to None.

  • expirationOffsetInDays (int, optional) – Expiration offset days. Defaults to 0.

Returns

Instance of the group.

Return type

dict

create_user(username: str, password: str, permissions: Optional[list] = None, firstname: Optional[str] = None, lastname: Optional[str] = None, email: Optional[str] = None, barcode: Optional[str] = None, group: Optional[str] = None, departments: Optional[list] = None, inactive: bool = False, userServicePoints: bool = True, userData: Optional[dict] = None)

Create a user

Parameters
  • username (str) – Username

  • password (str) – Password

  • permissions (list, optional) – List with permissions. Defaults to None.

  • firstname (str, optional) – First name. Defaults to None.

  • lastname (str, optional) – Last name. Defaults to None.

  • email (str, optional) – EMail address. Defaults to None.

  • barcode (str, optional) – Barcode. Defaults to None.

  • group (str, optional) – Groupname or id. Defaults to None.

  • departments (list, optional) – Departments list with names, codes or ids. Defaults to None.

  • inactive (bool, optional) – Wether user is inactive. Defaults to False.

  • userServicePoints (bool, optional) – Wether to bind servicepoints to the user. Defaults to True.

  • userData (dict, optional) – Data for the user as a dict. This data will be merged into the user instance. Default to None.

Raises

GroupNotFound – _description_

Returns

Dict with user data

Return type

dict

delete_department(name_or_code_or_id: str)

Delete a department.

Parameters

name_or_code_or_id (str) – Department name, code or id.

delete_group(name_or_id: str)

Delete a group.

Parameters

name (str) – Name of the group.

delete_permission(username: str, permissionName: str)

Delete a permission for a user

Parameters
  • username (str) – Username

  • permissionName (str) – Permission name.

delete_permissions(username: str, permissionNames: list)

Delete a permissions for a user

Parameters
  • username (str) – Username

  • permissionNames (list) – List with permissions.

delete_user(name_or_id: str)

Delete a user by username or id.

Parameters

username (str) – Username or id

get_department(name_or_code_or_id: str)

Get department by given name, code or id.

Parameters

name_or_code_or_id (str) – Department name, code or id.

Raises

DepartmentNotFound – Department not found

Returns

Department instance

Return type

dict

get_departments(query: Optional[str] = None)

Get list of departments.

Parameters

query (str, optional) – CQL query string. Defaults to None.

Returns

List of department instances.

Return type

list

get_group(name_or_id: str)

Get group by given name or id.

Parameters

name_or_id (str) – Group name or id

Raises

GroupNotFound – Group not found

Returns

Group instance

Return type

dict

get_groups(query: Optional[str] = None)

Get list of groups.

Parameters

query (str, optional) – CQL query string. Defaults to None.

Returns

List of group instances.

Return type

list

get_permissions(username: str)

Get permissions of a user

Parameters

username (str) – Username

Returns

Dict with permissions

Return type

dict

get_servicePoints()

Get all available service points

Returns

Dict with service points

Return type

dict

get_topLevelPermissions()

Get all available top level permissions.

Returns

List with permission instances.

Return type

list

get_user(name_or_id: str)

Get a user by username or id

Parameters

name_or_id (str) – Username or id

Raises

UserNotFound – User not found

Returns

Dict with user data

Return type

dict

get_users(query=None)

Get users by query or get all users.

Returns

List with users

Return type

list

get_usersServicePoints(username)

Get service points of a user.

Returns

Dict with service points

Return type

dict

login(username: str, password: str)

Make a authentication.

Parameters
  • username (str) – Username

  • password (str) – Password

Returns

Instance of the authenticated user. If login failed, None is returned.

Return type

dict

modify_user(name_or_id: str, userData: dict)

Modify a user by username or id.

Parameters

username (str) – Username or id

set_password(username: str, password: str)

Set a new password for given username.

Parameters
  • username (str) – Username

  • password (str) – Password

Returns

Wether set password was successful

Return type

bool

set_permission(username: str, permissionName: str)

Set permission for a user

Parameters
  • username (str) – Username

  • permissionName (str) – Permission name.

set_permissions(username: str, permissionNames: list)

Set permissions for a user

Parameters
  • username (str) – Username

  • permissionNames (list) – List with permissions.

set_servicePoints(username: str, servicePointsIds: list, defaultServicePointId: str)

Set service points for a user.

Parameters
  • username (str) – Username.

  • servicePointsIds (list) – List with service point ids.

  • defaultServicePointId (str) – The default service point of a user.

Returns

[description]

Return type

[type]