Quickly and easily access any RESTful or RESTful-like API.
If you are looking for the Twilio SendGrid API client library, please see this repo.
Table of Contents
- Installation
- Quick Start
- Usage
- How to Contribute
- Local Setup of the Project
- Troubleshooting
- Announcements
- Thanks
- About
- License
Installation
Prerequisites
- Python version 2.7 or 3.4+
Install Package
pip install python_http_client
or
easy_install python_http_client
API Key
Store your Twilio SendGrid API key in a .env
file.
cp .env_sample .env
Edit the .env
file and add your API key.
Quick Start
Here is a quick example:
GET /your/api/{param}/call
import python_http_client
global_headers = {"Authorization": "Bearer XXXXXXX"}
client = Client(host='base_url', request_headers=global_headers)
client.your.api._(param).call.get()
print(response.status_code)
print(response.headers)
print(response.body)
POST /your/api/{param}/call
with headers, query parameters and a request body with versioning.
import python_http_client
global_headers = {"Authorization": "Bearer XXXXXXX"}
client = Client(host='base_url', request_headers=global_headers)
query_params = {"hello":0, "world":1}
request_headers = {"X-Test": "test"}
data = {"some": 1, "awesome": 2, "data": 3}
response = client.your.api._(param).call.post(request_body=data,
query_params=query_params,
request_headers=request_headers)
print(response.status_code)
print(response.headers)
print(response.body)
Usage
How to Contribute
We encourage contribution to our projects, please see our CONTRIBUTING guide for details.
Quick links:
Local Setup of the Project
The simplest local development workflow is by using docker.
- Install Docker
- Run
docker-compose build
(this builds the container) - Run
docker-compose up
(this runs tests by default)
Troubleshooting
Please see our troubleshooting guide for any issues.
Announcements
All updates to this project is documented in our CHANGELOG.
Thanks
We were inspired by the work done on birdy and universalclient.
About
python-http-client is maintained and funded by Twilio SendGrid, Inc. The names and logos for python-http-client are trademarks of Twilio SendGrid, Inc.