Metadata-Version: 2.1
Name: dappy
Version: 2.1.0
Summary: packge to allow defining an API via dictionaries
Home-page: https://gitlab.com/heathercreech/dappy
Author: Heather Creech
Author-email: heatherannecreech@gmail.com
License: MIT license
Keywords: dappy
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3.5
Requires-Dist: requests (>=2.18.4)

# dappy

package to allow defining an API declaratively


## Example

All the API calls below (".get()", ".search()") return a dict parsed with json.loads()
```python
from dappy import API, Endpoint

ItunesAPI = API('itunes.apple.com', [
    Endpoint(
        'search', '/search',
        query_map={ 'search_string': 'term' },  # Map input query params to what the API actually expects
        defaults={ 'entity': 'podcast' }  # Default query params to send with every request
    ),
    Endpoint('get', '/lookup')
], scheme='https')  # scheme defaults to 'https'

ItunesAPI.search(query={
    'search_string': 'Hello, World'  # 'search_string" will get mapped to 'term' before we send the request
})  # 'entity=podcast' gets added to the query without us providing it here

ItunesAPI.get(query={ 'id': '656270845' })
```
See https://dappy.readthedocs.io/en/latest/usage.html for more usage info.


* Free software: MIT license
* Documentation: https://dappy.readthedocs.io.


=======
History
=======

2.0.1 (2019-01-03)
------------------

* Readme change to clarify the new API expectations


2.0.0 (Who can remember)
------------------

* API now behaves differently.
  * no more kwargs on endpoint calls, use `query={}` to pass query params and `params={}` to pass post params


1.0.0 (2017-09-13)
------------------

* First release on PyPI.


