• Adds a resource_name kwarg to the get_api_root method


  • Removes support for Python 3.3


  • Adds support to Session requests


  • refresh_authentication should return data about the refresh token process
  • If a falsy value is returned by refresh_authentication the request wont be retried automatically
  • Data returned by refresh_authentication is stored in the tapioca class and can be accessed in the executor via the attribute refresh_data


  • refresh_token_by_default introduced to prevent passing refresh_token on every request.


  • Fixed bugs regarding request_kwargs passing over calls
  • Fixed bugs regarding external serializer passing over calls
  • Wrapper instatiation now accepts default_url_params


  • Automatic refresh token support
  • Added Python 3.5 support
  • Added support for OrderedDict
  • Documentation cleanup


  • Data serialization and deserialization
  • Access CamelCase attributes using snake_case
  • Dependencies are now tied to specific versions of libraries
  • data and response are now attributes instead of methods in the executor
  • Added status_code attribute to tapioca executor
  • Renamed status exception attribute to status_code
  • Fixed return for dir call on executor, so it’s lot easier to explore it
  • Multiple improvments to documentation


  • Giving access to request_method in get_request_kwargs
  • Verifying response content before trying to convert it to json on JSONAdapterMixin
  • Support for in operator
  • pep8 improvments


  • Adding max_pages and max_items to pages method


  • Verifying if there’s data before json dumping it on JSONAdapterMixin


  • Automatic pagination now requires an explicit pages() call
  • Support for len()
  • Attributes of wrapped data can now be accessed via executor
  • It’s now possible to iterate over wrapped lists


  • changed parameters for Adapter’s get_request_kwargs. Also, subclasses are expected to call super.
  • added mixins to allow adapters to easily choose witch data format they will be dealing with.
  • ServerError and ClientError are now raised on 4xx and 5xx response status. This behaviour can be customized for each service by overwriting adapter’s process_response method.