@@ -289,18 +289,25 @@ def service_request_async(self, service, params, page_size=None, page=None, use_
289289 else :
290290 headers ['Content-Type' ] = 'application/json'
291291
292- # After parameter syntax is updated, revert back to dictionary
293- # so params can be passed as a JSON dictionary
294- params_dict = {}
295- catalogs_request .extend (self ._build_catalogs_params (params ))
296- for key , val in catalogs_request :
297- params_dict .setdefault (key , []).append (val )
298- catalogs_request = params_dict
299-
300- # Removing single-element lists. Single values will live on their own (except for `sort_by`)
301- for key in catalogs_request .keys ():
302- if (key != 'sort_by' ) & (len (catalogs_request [key ]) == 1 ):
303- catalogs_request [key ] = catalogs_request [key ][0 ]
292+ # Parameter syntax needs to be updated only for PANSTARRS catalog queries
293+ if service .lower () == 'panstarrs' :
294+ catalogs_request .extend (self ._build_catalogs_params (params ))
295+
296+ # After parameter syntax is updated, revert back to dictionary
297+ # so params can be passed as a JSON dictionary
298+ params_dict = {}
299+ for key , val in catalogs_request :
300+ params_dict .setdefault (key , []).append (val )
301+ catalogs_request = params_dict
302+
303+ # Removing single-element lists. Single values will live on their own (except for `sort_by`)
304+ for key in catalogs_request .keys ():
305+ if (key != 'sort_by' ) & (len (catalogs_request [key ]) == 1 ):
306+ catalogs_request [key ] = catalogs_request [key ][0 ]
307+
308+ # Otherwise, catalogs_request can remain as the original params dict
309+ else :
310+ catalogs_request = params
304311
305312 response = self ._request ('POST' , request_url , data = catalogs_request , headers = headers , use_json = use_json )
306313 return response
0 commit comments