A library that makes consuming a REST API easier and more convenient
Project description
Slumber
Slumber is a python library that provides a convenient yet powerful object orientated interface to ReSTful APIs. It acts as a wrapper around the excellent requests library and abstracts away the handling of urls, serialization, and processing requests.
Getting Help
There are two primary ways of getting help. I have an IRC channel (#slumber on irc.freenode.net) to get help, want to bounce idea or generally shoot the breeze.
QuickStart
Install Slumber:
$ pip install slumber
Install Optional Requirements:
pip install simplejson pyyaml
Use Slumber!
Requirements
Slumber requires the following modules.
Python 2.5+
requests
simplejson (If using Python 2.5, or you desire the speedups for JSON serialization)
pyyaml (If you are using the optional yaml serialization)
Changelog
0.4.0
(Backwards Incompatible) Switched from httplib2 to requests
(Backwards Incompatible) Removed the Meta class Magic
(Backwards Incompatible) Removed the ability to subclass slumber.API to specify defaults
(Backwards Incompatible) New Syntax for Specifying Authentication
0.3.1
Fix regression where pre 0.3 urls were assumed to end in slash, and 0.3.0 presumed to end in not slash. Urls are now assumed to end in a slash, and if you don’t want this behavior you can disable it by the append_slash kwarg/Meta option (set to False to disable it).
Fix regression caused by a mistyped variable name.
0.3.0
Allowed nesting resources infinitely to allow more complex api usage.
Cleaned up the Meta class and allow subclassing slumber.API
(Backwards Incompatible) Cleaned up the exception names.
(Backwards Incompatible) Renamed the slumber.API serialization kwarg from default_format to format to be more consistent
Improved the documentation
Added Some Tests (This could still be better)
0.2.5
Fixed https urls and the accidental force to port 80
Fixed the assumption that all urls end in a trailing slash
0.2.4
Fixed Including of Changelog.rst
0.2.3
Updated the docs to include a section about url parameters
0.2
(Backwards Incompatible) Move specifying a non default serializer from api.resource.get(format="yaml") to api.resource(format="yaml").get()
Reworked the internal Resource api to not clobber any kwargs passed to it. This fixes a bug where you couldn’t use format or url as the name for one of the url parameters.
0.1.3
Fix for Resource.post() not passing kwargs to Resource.get()
0.1.2
Initial public release of Slumber
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.