![https://github.com/sendgrid/sendgrid-python/raw/master/twilio_sendgrid_logo.png](https://github.com/sendgrid/sendgrid-python/raw/master/twilio_sendgrid_logo.png?raw=true)
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.
- Installation
- Quick Start
- Usage
- Roadmap
- How to Contribute
- Local Setup of the Project
- Troubleshooting
- Announcements
- Thanks
- About
- License
- Python version 2.7 or 3.4+
pip install python_http_client
or
easy_install python_http_client
Store your Twilio SendGrid API key in a .env
file.
cp .env_sample .env
Edit the .env
file and add your API key.
Here is a quick example:
GET /your/api/{param}/call
import python_http_client
global_headers = {"Authorization": "Basic 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": "Basic 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)
If you are interested in the future direction of this project, please take a look at our milestones. We would love to hear your feedback.
We encourage contribution to our projects, please see our CONTRIBUTING guide for details.
Quick links:
- Feature Request
- Bug Reports
- Sign the CLA to Create a Pull Request
- Improvements to the Codebase
- Review Pull Requests
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)
Please see our troubleshooting guide for any issues.
All updates to this project is documented in our CHANGELOG.
We were inspired by the work done on birdy and universalclient.
python-http-client is guided and supported by the Twilio SendGrid Developer Experience Team.
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.