Skip to content

Commit e7699ba

Browse files
committed
feat: user service
1 parent 221f5ed commit e7699ba

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

membersuite_api_client/security/services.py

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
from .models import PortalUser, generate_username
66
from ..exceptions import LoginToPortalError, LogoutError
7+
from ..mixins import ChunkQueryMixin
78
from ..utils import get_session_id
89

910

@@ -122,3 +123,28 @@ def get_user_for_membersuite_entity(membersuite_entity):
122123
user_created = True
123124

124125
return user, user_created
126+
127+
class UserService(ChunkQueryMixin, object):
128+
129+
def __init__(self, client):
130+
"""
131+
Requires a ConciergeClient to connect with MemberSuite
132+
"""
133+
self.client = client
134+
135+
136+
def get_all_users(self, limit_to=100, max_calls=None, parameters=None,
137+
since_when=None, start_record=0, verbose=False):
138+
"""
139+
Retrieve all users
140+
"""
141+
if not self.client.session_id:
142+
self.client.request_session()
143+
144+
query = "SELECT Objects() FROM Individual"
145+
146+
user_list = self.get_long_query(
147+
query, limit_to=limit_to, max_calls=max_calls,
148+
start_record=start_record, verbose=verbose)
149+
150+
return user_list or []

0 commit comments

Comments
 (0)