packge to allow defining an API via dictionaries
Project description
# 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
default_query={ '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.
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
default_query={ '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.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dappy-3.0.1.tar.gz
(14.9 kB
view hashes)
Built Distribution
Close
Hashes for dappy-3.0.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28261e800571a2e5b2abf9bff22105f1af9f4a2031134e5a939dcf3d05f3f98b |
|
MD5 | 0ae3103904b5d8aa09365f0626193968 |
|
BLAKE2b-256 | 6a0b300eb25a9b9cbfc6c5f6cdea14066ca82723d92f61ee02f0de85c8a22eaa |