timothyhahn / python-http-client

HTTP client for RESTful APIs, simplified for Python

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Travis Badge Code Climate

Quickly and easily access any RESTful or RESTful-like API.

If you are looking for the SendGrid API client library, please see this repo.

Announcements

All updates to this project is documented in our CHANGELOG.

Installation

Prerequisites

  • Python version 2.6, 2.7, 3.4, 3.5 or 3.6

Install Package

pip install python_http_client

or

easy_install python_http_client

Quick Start

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

Usage

Roadmap

If you are intersted in the future direction of this project, please take a look at our milestones. We would love to hear your feedback.

How to Contribute

We encourage contribution to our projects, please see our CONTRIBUTING guide for details.

Quick links:

Thanks

We were inspired by the work done on birdy and universalclient.

About

python-http-client is guided and supported by the SendGrid Developer Experience Team.

python-http-client is maintained and funded by SendGrid, Inc. The names and logos for python-http-client are trademarks of SendGrid, Inc.

![SendGrid Logo] (https://uiux.s3.amazonaws.com/2016-logos/email-logo%402x.png)

About

HTTP client for RESTful APIs, simplified for Python

License:MIT License


Languages

Language:Python 99.3%Language:Shell 0.7%