44from . import data
55from .calls import ping
66from .group import Group
7+ from .humbug import Humbug
78from .journal import Journal
89from .user import User
910from .settings import BUGOUT_BROOD_URL , BUGOUT_SPIRE_URL , REQUESTS_TIMEOUT
@@ -26,6 +27,7 @@ def __init__(
2627
2728 self .user = User (self .brood_api_url )
2829 self .group = Group (self .brood_api_url )
30+ self .humbug = Humbug (self .spire_api_url )
2931 self .journal = Journal (self .spire_api_url )
3032
3133 @property
@@ -185,13 +187,15 @@ def get_user_tokens(
185187 token : Union [str , uuid .UUID ],
186188 active : Optional [bool ] = None ,
187189 token_type : Optional [Union [str , data .TokenType ]] = None ,
190+ restricted : Optional [bool ] = None ,
188191 timeout : float = REQUESTS_TIMEOUT ,
189192 ) -> data .BugoutUserTokens :
190193 self .user .timeout = timeout
191194 return self .user .get_user_tokens (
192195 token = token ,
193196 active = active ,
194197 token_type = data .TokenType (token_type ) if token_type is not None else None ,
198+ restricted = restricted ,
195199 )
196200
197201 # Group handlers
@@ -344,10 +348,18 @@ def delete_journal_scopes(
344348
345349 # Journal handlers
346350 def create_journal (
347- self , token : Union [str , uuid .UUID ], name : str , timeout : float = REQUESTS_TIMEOUT
351+ self ,
352+ token : Union [str , uuid .UUID ],
353+ name : str ,
354+ journal_type : Optional [Union [str , data .JournalTypes ]] = None ,
355+ timeout : float = REQUESTS_TIMEOUT ,
348356 ) -> data .BugoutJournal :
349357 self .journal .timeout = timeout
350- return self .journal .create_journal (token = token , name = name )
358+ if journal_type is None :
359+ journal_type = data .JournalTypes .DEFAULT
360+ return self .journal .create_journal (
361+ token = token , name = name , journal_type = data .JournalTypes (journal_type )
362+ )
351363
352364 def list_journals (
353365 self , token : Union [str , uuid .UUID ], timeout : float = REQUESTS_TIMEOUT
@@ -547,3 +559,13 @@ def search(
547559 ) -> data .BugoutSearchResults :
548560 self .journal .timeout = timeout
549561 return self .journal .search (token , journal_id , query , limit , offset , content )
562+
563+ # Humbug
564+ def get_humbug_integrations (
565+ self ,
566+ token : Union [str , uuid .UUID ],
567+ group_id : Optional [Union [str , uuid .UUID ]] = None ,
568+ timeout : float = REQUESTS_TIMEOUT ,
569+ ) -> data .BugoutHumbugIntegrationsList :
570+ self .humbug .timeout = timeout
571+ return self .humbug .get_humbug_integrations (token = token , group_id = group_id )
0 commit comments