kloudless.client - Client

class kloudless.client.Session

Bases: requests.sessions.Session

The Session class helps build Kloudless specific headers.

__init__()

Initialize self. See help(type(self)) for accurate signature.

request(method, url, api_version=None, get_raw_data=None, raw_headers=None, impersonate_user_id=None, **kwargs)

Override requests.Session.request() with additional parameters.

See API-wide options for more information about get_raw_data, raw_headers and impersonate_user_id parameters.

Parameters:
  • method (str) – Http method
  • url (str) – Request url
  • api_version (int) – API version
  • get_raw_data (bool) – Set to True if the raw object from upstream service is present. This is equal to the X-Kloudless-Raw-Data request header.
  • raw_headers (dict) – Headers fowarded to upstream service. This is equal to the X-Kloudless-Raw-Headers request header
  • impersonate_user_id (str) – User id to access or modify data for individual user accounts. This is equal to the X-Kloudless-As-User request header.
  • kwargs – kwargs passed to requests.Session.request()
Returns:

requests.Response

Raises:

kloudless.exceptions.APIException or its subclasses

class kloudless.client.Client(api_key=None, token=None)

Bases: kloudless.client.Session

Base Client class to send all http requests in this library.

Instance attributes

Variables:url (str) – Base url that will be used as a prefix for all http method calls
__init__(api_key=None, token=None)

Either api_key or token is needed for instantiation.

Parameters:
  • api_key – API key
  • token – Bearer token
request(method, path='', get_raw_response=False, **kwargs)
Note that the actual request url will have self.url as a prefix.
Parameters:
  • method (str) – Http method
  • path (str) – Request path
  • get_raw_response (str) – Set to True if the raw requests.Response instance is in the returned value
  • kwargs – kwargs passed to kloudless.client.Session.request()
Returns:

get(path='', **kwargs)
Http GET request.
Note that the actual request url will have self.url as a prefix.
Parameters:
Returns:

kloudless.resources.base.Response or its subclass

post(path='', data=None, json=None, **kwargs)
Http POST request.
Note that the actual request url will have self.url as a prefix.
Parameters:
  • path (str) – Request path
  • data – passed to request.Request.post()
  • json – passed to request.Request.post()
  • kwargs – See kloudless.client.Client.request() for more options.
Returns:

kloudless.resources.base.Response or its subclass

put(path='', data=None, **kwargs)
Http PUT request.
Note that the actual request url will have self.url as a prefix.
Parameters:
Returns:

kloudless.resources.base.Response or its subclass

patch(path='', data=None, **kwargs)
Http PATCH request.
Note that the actual request url will have self.url as a prefix.
Parameters:
Returns:

kloudless.resources.base.Response or its subclass

delete(path='', **kwargs)
Http DELETE request.
Note that the actual request url will have self.url as a prefix.
Parameters:
Returns:

kloudless.resources.base.Response or its subclass