Metadata-Version: 1.1
Name: mbq.client
Version: 0.0.5
Summary: UNKNOWN
Home-page: https://github.com/managedbyq/mbq.client
Author: Managed by Q, Inc.
Author-email: open-source@managedbyq.com
License: Apache 2.0
Description: ###############
        MBQ Service to Service Client
        ###############
        
        .. image:: https://img.shields.io/pypi/v/mbq.client.svg
            :target: https://pypi.python.org/pypi/mbq.client
        
        .. image:: https://img.shields.io/pypi/l/mbq.client.svg
            :target: https://pypi.python.org/pypi/mbq.client
        
        .. image:: https://img.shields.io/pypi/pyversions/mbq.client.svg
            :target: https://pypi.python.org/pypi/mbq.client
        
        .. image:: https://img.shields.io/travis/managedbyq/mbq.tokens/master.svg
            :target: https://travis-ci.org/managedbyq/mbq.client)
        
        Installation
        ------------
        
        .. code-block:: bash
        
            $ pip install mbq.client
        
        
        Getting Started
        ---------------
        
        Key Concepts
        ^^^^^^^^^^^^
        
        - **ServiceClient** wraps python's requests library to enable token based service to service authentication
        - **Authenticator** provides Auth0 token based authentication
        - **TokenManager** A manager that stores refreshable tokens with support for different persistent storage backends.
        
        Django Integration
        ^^^^^^^^^^^^^^^^^^
        
        **DjangoCacheStorage** is a thin wrapper that stores token in your django project's cache.
        
        Example
        """""""
        
        .. code-block:: python
        
            from django.core.cache import cache
            from mbq.client import ServiceClient, Authenticator, TokenManager, DjangoCacheStorage
        
            token_manager = TokenManager(
                settings={
                    'api_ids': {'my_service': 'id'},
                    'client_id': 'client_id',
                    'client_secret': 'your_secret'
                    'domain': 'auth0domain'
                },
                storage=DjangoCacheStorage(cache),
            )
        
            my_service_client = ServiceClient(
                auth=Authenticator(
                    service_name='my_service',
                    token_manager=token_manager
                )
            )
        
        
            my_service_client.get()
            my_service_client.post()
            my_service_client.patch()
            my_service_client.put()
            my_service_client.delete()
        
        
            access_token.refresh()
            access_token() #retrieves token
        
Keywords: token access authorization
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Topic :: Software Development :: Libraries
