A Python wrapper for the WooCommerce REST API
Project description
A Python wrapper for the WooCommerce REST API. Easily interact with the WooCommerce REST API using this library.
Installation
pip install woocommerce
Getting started
Generate API credentials (Consumer Key & Consumer Secret) following this instructions http://docs.woothemes.com/document/woocommerce-rest-api/.
Check out the WooCommerce API endpoints and data that can be manipulated in http://woothemes.github.io/woocommerce-rest-api-docs/.
Setup
Setup for the old WooCommerce API v3:
from woocommerce import API
wcapi = API(
url="http://example.com",
consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
)
Setup for the new WP REST API integration:
from woocommerce import API
wcapi = API(
url="http://example.com",
consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
wp_api=True,
version="wc/v1"
)
Options
Option |
Type |
Required |
Description |
---|---|---|---|
url |
string |
yes |
Your Store URL, example: http://woo.dev/ |
consumerKey |
string |
yes |
Your API consumer key |
consumerSecret |
string |
yes |
Your API consumer secret |
wp_api |
bool |
no |
Allow requests to the WP REST API |
version |
string |
no |
API version, default is v3 |
timeout |
integer |
no |
Connection timeout, default is 5 |
verify_ssl |
bool |
no |
Verify SSL when connect, use this option as False when need to test with self-signed certificates |
Methods
Params |
Type |
Description |
---|---|---|
endpoint |
string |
WooCommerce API endpoint, example: customers or order/12 |
data |
dictionary |
Data that will be converted to JSON |
GET
.get(endpoint)
POST
.post(endpoint, data)
PUT
.put(endpoint, data)
DELETE
.delete(endpoint)
OPTIONS
.options(endpoint)
Response
All methods will return Response object.
Example of returned data:
>>> r = wcapi.get("products")
>>> r.status_code
200
>>> r.headers['content-type']
'application/json; charset=UTF-8'
>>> r.encoding
'UTF-8'
>>> r.text
u'{"products":[{"title":"Flying Ninja","id":70,...' // Json text
>>> r.json()
{u'products': [{u'sold_individually': False,... // Dictionary data
Changelog
1.1.0 - 2016/05/09
Added support for WP REST API.
Added method to do HTTP OPTIONS requests.
1.0.5 - 2015/12/07
Fixed oAuth filters sorting.
1.0.4 - 2015/09/25
Implemented timeout argument for API class.
1.0.3 - 2015/08/07
Forced utf-8 encoding on API.__request() to avoid UnicodeDecodeError
1.0.2 - 2015/08/05
Fixed handler for query strings
1.0.1 - 2015/07/13
Fixed support for Python 2.6
1.0.1 - 2015/07/12
Initial version
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 WooCommerce-1.1.0.tar.gz
.
File metadata
- Download URL: WooCommerce-1.1.0.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e269050a03fd3ff60d3265f2f7d9764e99be1cd8107d1be1f13adf5b425e3908 |
|
MD5 | 801de65671c83eed109957b90348d1d2 |
|
BLAKE2b-256 | 489d0369733b52d6de0911c1160ef94cf4e5091f480e44927598b59f45072510 |