A Python wrapper for restmapper
Project description
python-restmapper is a tool that makes writing RESTful API clients a breeze. It removes all of the complexity with writing API-specific code, and lets you focus all your energy on the important stuff. Using Python-Requests, RestMapper will parse JSON and display responses nicely, based on a declarative format you provide for each API you integrate with (in progress).
Installation
python-restmapper is available for download through the Python Package Index (PyPi). You can install it right away using pip or easy_install.
pip install restmapper
Usage
The first thing you need to do is generate a base RestMapper object that will allow you to instantiate a connection with a remote API.
>>> Twitter = RestMapper("https://api.twitter.com/1.1/", url_transformer=lambda url: url + ".json")
The next step is to provide authentication. For Twitter, you’ll need to provide OAuth1 credentials (for other APIs, any other requests-compatible auth object will do):
>>> from requests_oauthlib import OAuth1
>>> auth = OAuth1('YOUR_APP_KEY', 'YOUR_APP_SECRET', 'USER_OAUTH_TOKEN', 'USER_OAUTH_TOKEN_SECRET')
>>> twitter = Twitter(auth=auth)
And start making calls. The API object is declarative, meaning that attributes and properties map 1-1 with the API you’re integrating with. I.e., the below:
>>> response = twitter.statuses.mentions_timeline()
…will request https://api.twitter.com/1.1/statuses/mentions_timeline.json. Notice the url_transformer object used above—this adds “.json” to any request. You can pass in any function into the url_transformer object to handle more complicated situations.
If you want to pass in body data for a POST, provide a single argument to the call to the API, and specify “POST” as the first attribute. I.e.
>>> twitter.POST.my.request(data)
PATCH, PUT, GET, and POST are all supported (more will come later). GET is currently the default.
Miscellaneous
By default, python-restmapper will return parsed JSON objects. If you’d like the raw response object for a request, just pass in parse_response=False as an argument to the API object.
Support
If you like this library, or need help implementing it, send us an email: hi@lionheartsw.com.
License
Apache License, Version 2.0. See LICENSE for details.
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.
Source Distribution
File details
Details for the file restmapper-0.1.1.tar.gz.
File metadata
- Download URL: restmapper-0.1.1.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d5f16ffa5e770bdb034d79c50586c80ba2c42e0f71deb266e14722855fa45a1
|
|
| MD5 |
325896da71effe243a37a672508c43b6
|
|
| BLAKE2b-256 |
a734bb89667fb8113dbb6b2dba889a782f8f7b606843039e6933d2c6eccf8ff7
|