forked fromwoocommerce/wc-api-python
- Notifications
You must be signed in to change notification settings - Fork0
A Python wrapper for the WooCommerce API.
License
NotificationsYou must be signed in to change notification settings
Comunitea/wc-api-python
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
A Python wrapper for the WooCommerce REST API. Easily interact with the WooCommerce REST API using this library.
pip install woocommerce
Generate API credentials (Consumer Key & Consumer Secret) following this instructionshttp://woocommerce.github.io/woocommerce-rest-api-docs/#rest-api-keys.
Check out the WooCommerce API endpoints and data that can be manipulated inhttp://woocommerce.github.io/woocommerce-rest-api-docs/.
fromwoocommerceimportAPIwcapi=API(url="http://example.com",consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",version="wc/v3")
| Option | Type | Required | Description |
|---|---|---|---|
url | string | yes | Your Store URL, example:http://woo.dev/ |
consumer_key | string | yes | Your API consumer key |
consumer_secret | string | yes | Your API consumer secret |
version | string | no | API version, default iswc/v3 |
timeout | integer | no | Connection timeout, default is5 |
verify_ssl | bool | no | Verify SSL when connect, use this option asFalse when need to test with self-signed certificates |
query_string_auth | bool | no | Force Basic Authentication as query string whenTrue and using under HTTPS, default isFalse |
oauth_timestamp | integer | no | Custom timestamp for requests made with oAuth1.0a |
wp_api | bool | no | Set toFalse in order to use the legacy WooCommerce API (deprecated) |
| Params | Type | Description |
|---|---|---|
endpoint | string | WooCommerce API endpoint, example:customers ororder/12 |
data | dictionary | Data that will be converted to JSON |
**kwargs | dictionary | Acceptsparams, also other Requests arguments |
.get(endpoint, **kwargs)
.post(endpoint, data, **kwargs)
.put(endpoint, data), **kwargs
.delete(endpoint, **kwargs)
.options(endpoint, **kwargs)
All methods will returnResponse object.
Example of returned data:
>>> r = wcapi.get("products")>>> r.status_code200>>> r.headers['content-type']'application/json; charset=UTF-8'>>> r.encoding'UTF-8'>>> r.textu'{"products":[{"title":"Flying Ninja","id":70,...' // Json text>>>r.json(){u'products': [{u'sold_individually': False,... // Dictionary data
fromwoocommerceimportAPIwcapi=API(url="http://example.com",consumer_key="ck_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",consumer_secret="cs_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",version="wc/v3")# Force delete example.print(wcapi.delete("products/100",params={"force":True}).json())# Query example.print(wcapi.get("products",params={"per_page":20}).json())
- Updated Request library to 2.22.0.
- Updated examples.
- Uses WP REST API by default, need to force
wp_apiasFalsein order to use the legacy WooCommerce API. - Updated default REST API version to
wc/v3.
- Updated "Requests" library to version 2.20.0.
- Added support for custom timestamps in oAuth1.0a requests with
oauth_timestamp. - Allow pass custom arguments to "Requests" library.
- Fixed WordPress 4.7 compatibility.
- Added option
query_string_authto allow Basic Auth as query strings.
- Fixed oAuth signature for WP REST API.
- Added support for WP REST API.
- Added method to do HTTP OPTIONS requests.
- Fixed oAuth filters sorting.
- Implemented
timeoutargument forAPIclass.
- Forced utf-8 encoding on
API.__request()to avoidUnicodeDecodeError
- Fixed handler for query strings
- Fixed support for Python 2.6
- Initial version
About
A Python wrapper for the WooCommerce API.
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
No packages published
Languages
- Python100.0%