@@ -76,14 +76,19 @@ def __new__(cls, **kwargs):
7676        if  'company_id'  in  kwargs :
7777            instance .company_id  =  kwargs ['company_id' ]
7878
79-         if  'minorversion'  in  kwargs :
80-             instance .minorversion  =  kwargs ['minorversion' ]
81- 
82-             if  instance .minorversion  <  instance .MINIMUM_MINOR_VERSION :
83-                 warnings .warn (
84-                     'Minor Version no longer supported.' 
85-                     'See: https://blogs.intuit.com/2025/01/21/changes-to-our-accounting-api-that-may-impact-your-application/' ,
86-                     DeprecationWarning )
79+         # Handle minorversion with default 
80+         instance .minorversion  =  kwargs .get ('minorversion' , instance .MINIMUM_MINOR_VERSION )
81+         if  'minorversion'  not  in kwargs :
82+             warnings .warn (
83+                 'No minor version specified. Defaulting to minimum supported version (75). ' 
84+                 'Please specify minorversion explicitly when initializing QuickBooks. ' 
85+                 'See: https://blogs.intuit.com/2025/01/21/changes-to-our-accounting-api-that-may-impact-your-application/' ,
86+                 DeprecationWarning )
87+         elif  instance .minorversion  <  instance .MINIMUM_MINOR_VERSION :
88+             warnings .warn (
89+                 f'Minor Version { instance .minorversion } { instance .MINIMUM_MINOR_VERSION }  
90+                 'See: https://blogs.intuit.com/2025/01/21/changes-to-our-accounting-api-that-may-impact-your-application/' ,
91+                 DeprecationWarning )
8792
8893        instance .invoice_link  =  kwargs .get ('invoice_link' , False )
8994
@@ -157,8 +162,7 @@ def make_request(self, request_type, url, request_body=None, content_type='appli
157162        if  not  params :
158163            params  =  {}
159164
160-         if  self .minorversion :
161-             params ['minorversion' ] =  self .minorversion 
165+         params ['minorversion' ] =  self .minorversion 
162166
163167        if  request_id :
164168            params ['requestid' ] =  request_id 
@@ -236,10 +240,18 @@ def make_request(self, request_type, url, request_body=None, content_type='appli
236240            return  result 
237241
238242    def  get (self , * args , ** kwargs ):
239-         return  self .make_request ("GET" , * args , ** kwargs )
243+         if  'params'  not  in kwargs :
244+             kwargs ['params' ] =  {}
245+         if  'minorversion'  not  in kwargs ['params' ]:
246+             kwargs ['params' ]['minorversion' ] =  self .MINIMUM_MINOR_VERSION 
247+         return  self .make_request ('GET' , * args , ** kwargs )
240248
241249    def  post (self , * args , ** kwargs ):
242-         return  self .make_request ("POST" , * args , ** kwargs )
250+         if  'params'  not  in kwargs :
251+             kwargs ['params' ] =  {}
252+         if  'minorversion'  not  in kwargs ['params' ]:
253+             kwargs ['params' ]['minorversion' ] =  self .MINIMUM_MINOR_VERSION 
254+         return  self .make_request ('POST' , * args , ** kwargs )
243255
244256    def  process_request (self , request_type , url , headers = "" , params = "" , data = "" ):
245257        if  self .session  is  None :
@@ -252,9 +264,10 @@ def process_request(self, request_type, url, headers="", params="", data=""):
252264
253265    def  get_single_object (self , qbbo , pk , params = None ):
254266        url  =  "{0}/company/{1}/{2}/{3}" .format (self .api_url , self .company_id , qbbo .lower (), pk )
255-         result  =  self .get (url , {}, params = params )
267+         if  params  is  None :
268+             params  =  {}
256269
257-         return  result 
270+         return  self . get ( url , {},  params = params ) 
258271
259272    @staticmethod  
260273    def  handle_exceptions (results ):
@@ -312,6 +325,9 @@ def isvalid_object_name(self, object_name):
312325
313326    def  update_object (self , qbbo , request_body , _file_path = None , _file_bytes = None , request_id = None , params = None ):
314327        url  =  "{0}/company/{1}/{2}" .format (self .api_url , self .company_id ,  qbbo .lower ())
328+         if  params  is  None :
329+             params  =  {}
330+ 
315331        result  =  self .post (url , request_body , file_path = _file_path , file_bytes = _file_bytes , request_id = request_id , params = params )
316332
317333        return  result 
0 commit comments