proknow.Requestor

Requestor

class proknow.Requestor.Requestor(base_url, username, password, max_retries=3)

A class used for issuing requests for the ProKnow API

delete(route, **kwargs)

Issues an HTTP DELETE request.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, msg).

  1. res (Response): the Response object

  2. msg (str, dict): the text response or, if the response was JSON, the decoded JSON dictionary.

Return type:

tuple

get(route, **kwargs)

Issues an HTTP GET request.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, msg).

  1. res (Response): the Response object

  2. msg (str, dict): the text response or, if the response was JSON, the decoded JSON dictionary.

Return type:

tuple

get_binary(route, **kwargs)

Issues an HTTP GET request, returning the binary data.

This method is useful when the response is known to not be JSON encoded and should be returned instead as a string of bytes.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, data).

  1. res (Response): the Response object

  2. data (bytes): The resonse as a byte string

Return type:

tuple

patch(route, **kwargs)

Issues an HTTP PATCH request.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, msg).

  1. res (Response): the Response object

  2. msg (str, dict): the text response or, if the response was JSON, the decoded JSON dictionary.

Return type:

tuple

post(route, **kwargs)

Issues an HTTP POST request.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, msg).

  1. res (Response): the Response object

  2. msg (str, dict): the text response or, if the response was JSON, the decoded JSON dictionary.

Return type:

tuple

put(route, **kwargs)

Issues an HTTP PUT request.

Parameters:
  • route (str) – The API route to use in the request.

  • **kwargs (dict, optional) – Additional keyword arguments to pass through in the request.

Returns:

A tuple (res, msg).

  1. res (Response): the Response object

  2. msg (str, dict): the text response or, if the response was JSON, the decoded JSON dictionary.

Return type:

tuple

stream(route, path)

Issues an HTTP PUT request.

Parameters:
  • route (str) – The API route to use in the request.

  • path (str) – The file path to stream the request response.