@@ -181,6 +181,10 @@ def query(self, **kwargs):
181181 if stream
182182 :param kwargs: stream -> if stream or full response
183183 :param kwargs: response -> response format
184+ :param kwargs: verify -> (optional) Either a boolean, in which case
185+ it controls whether we verify
186+ the server's TLS certificate, or a string, in which case it must be
187+ a path to a CA bundle to use. Defaults to ``True``.
184188 :return: Result of the query (dict) or Buffer object
185189 """
186190
@@ -216,31 +220,31 @@ def query(self, **kwargs):
216220
217221 return self ._call (
218222 self ._get_payload (query , query_id , dates , opts ),
219- stream
223+ stream , kwargs . get ( 'verify' , True )
220224 )
221225
222- def _call (self , payload , stream ):
226+ def _call (self , payload , stream , verify ):
223227 """
224228 Make the call, select correct item to return
225229 :param payload: item with headers for request
226230 :param stream: boolean, indicate if one call is a streaming call
227231 :return: Response from API
228232 """
229233 if stream :
230- return self ._return_stream (payload , stream )
234+ return self ._return_stream (payload , stream , verify )
231235
232- response = self ._make_request (payload , stream )
236+ response = self ._make_request (payload , stream , verify )
233237 if isinstance (response , str ):
234238 return proc_json ()(response )
235239 return self .processor (response .text )
236240
237- def _return_stream (self , payload , stream ):
241+ def _return_stream (self , payload , stream , verify ):
238242 """If its a stream call, return yield lines
239243 :param payload: item with headers for request
240244 :param stream: boolean, indicate if one call is a streaming call
241245 :return line: yield-generator item
242246 """
243- response = self ._make_request (payload , stream )
247+ response = self ._make_request (payload , stream , verify )
244248
245249 if isinstance (response , str ):
246250 yield proc_json ()(response )
@@ -259,7 +263,7 @@ def _return_stream(self, payload, stream):
259263 else :
260264 yield proc_json ()(first )
261265
262- def _make_request (self , payload , stream ):
266+ def _make_request (self , payload , stream , verify ):
263267 """
264268 Make the request and control the logic about retries if not internet
265269 :param payload: item with headers for request
@@ -273,7 +277,7 @@ def _make_request(self, payload, stream):
273277 self .query_url ),
274278 data = payload ,
275279 headers = self ._get_headers (payload ),
276- verify = True , timeout = self .timeout ,
280+ verify = verify , timeout = self .timeout ,
277281 stream = stream )
278282 if stream :
279283 return response .iter_lines ()
0 commit comments