@@ -2054,6 +2054,53 @@ def oauth2_login(
20542054 except Exception as e :
20552055 return self .handle_error (e )
20562056
2057+ def get_companies (self ):
2058+ response = requests .get (f"{ self .base_url } /v1/companies" , headers = self .headers )
2059+ if self .verbose :
2060+ parse_response (response )
2061+ return response .json ()
2062+
2063+ def create_company (self , name : str , parent_company_id : Optional [str ] = None ):
2064+ params = {"name" : name }
2065+ if parent_company_id :
2066+ params ["parent_company_id" ] = parent_company_id
2067+ response = requests .post (
2068+ f"{ self .base_url } /v1/companies" ,
2069+ headers = self .headers ,
2070+ params = params ,
2071+ )
2072+ if self .verbose :
2073+ parse_response (response )
2074+ return response .json ()
2075+
2076+ def update_company (self , company_id : str , name : str ):
2077+ params = {"name" : name }
2078+ response = requests .put (
2079+ f"{ self .base_url } /v1/companies/{ company_id } " ,
2080+ headers = self .headers ,
2081+ params = params ,
2082+ )
2083+ if self .verbose :
2084+ parse_response (response )
2085+ return response .json ()
2086+
2087+ def delete_company (self , company_id : str ):
2088+ response = requests .delete (
2089+ f"{ self .base_url } /v1/companies/{ company_id } " , headers = self .headers
2090+ )
2091+ if self .verbose :
2092+ parse_response (response )
2093+ return response .json ()
2094+
2095+ def delete_user_from_company (self , company_id : str , user_id : str ):
2096+ response = requests .delete (
2097+ f"{ self .base_url } /v1/companies/{ company_id } /users/{ user_id } " ,
2098+ headers = self .headers ,
2099+ )
2100+ if self .verbose :
2101+ parse_response (response )
2102+ return response .json ()
2103+
20572104 def update_conversation_message_by_id (
20582105 self ,
20592106 message_id : str ,
0 commit comments