Skip to main content

WooCommerce API is a REST API for WordPress that enables developers to manage products, orders, customers, and store settings, making it easy to build and extend custom eCommerce solutions.

Project description

Getting Started with WooCommerce REST API

Introduction

Taken from: https://github.com/woocommerce/woocommerce-rest-api-docs

Introduction

WooCommerce (WC) 2.6+ is fully integrated with the WordPress REST API. This allows WC data to be created, read, updated, and deleted using requests in JSON format and using WordPress REST API Authentication methods and standard HTTP verbs which are understood by most HTTP clients.

The current WP REST API integration version is v3 which takes a first-order position in endpoints.

The following table shows API versions present in each major version of WooCommerce:

API Version WC Version WP Version Documentation
`v3` 3.5.x or later 4.4 or later -
`v2` 3.0.x or later 4.4 or later [v2 docs](https://woocommerce.github.io/woocommerce-rest-api-docs/wp-api-v2.html)
`v1` 2.6.x or later 4.4 or later [v1 docs](https://woocommerce.github.io/woocommerce-rest-api-docs/wp-api-v1.html)

Prior to 2.6, WooCommerce has had a REST API separate from WordPress which is now known as the legacy API. You can find the documentation for the legacy API separately.

API Version WC Version WP Version Documentation
`Legacy v3` 2.4.x or later 4.1 or later [Legacy v3 docs](https://woocommerce.github.io/woocommerce-rest-api-docs/v3.html)
`Legacy v2` 2.2.x or later 4.1 or later [Legacy v2 docs](https://woocommerce.github.io/woocommerce-rest-api-docs/v2.html)
`Legacy v1` 2.1.x or later 4.1 or later [Legacy v1 docs](https://woocommerce.github.io/woocommerce-rest-api-docs/v1.html)

Requirements

To use the latest version of the REST API you must be using:

  • WooCommerce 3.5+.
  • WordPress 4.4+.
  • Pretty permalinks in Settings > Permalinks so that the custom endpoints are supported. Default permalinks will not work.
  • You may access the API over either HTTP or HTTPS, but HTTPS is recommended where possible.

If you use ModSecurity and see 501 Method Not Implemented errors, see this issue for details.

Install the Package

The package is compatible with Python versions 3.7+. Install the package from PyPi using the following pip command:

pip install woo-commerce-sdk==1.0.0

You can also view the package at: https://pypi.python.org/pypi/woo-commerce-sdk/1.0.0

Test the SDK

You can test the generated SDK and the server with test cases. unittest is used as the testing framework and pytest is used as the test runner. You can run the tests as follows:

Navigate to the root directory of the SDK and run the following commands

pip install -r test-requirements.txt pytest

Initialize the API Client

Note: Documentation for the client can be found here.

The following parameters are configurable for the API Client:

Parameter Type Description
environment Environment The API environment.
Default: Environment.PRODUCTION
http_client_instance HttpClient The Http Client passed from the sdk user for making requests
override_http_client_configuration bool The value which determines to override properties of the passed Http Client from the sdk user
http_call_back HttpCallBack The callback value that is invoked before and after an HTTP call is made to an endpoint
timeout float The value to use for connection timeout.
Default: 60
max_retries int The number of times to retry an endpoint call if it fails.
Default: 0
backoff_factor float A backoff factor to apply between attempts after the second try.
Default: 2
retry_statuses Array of int The http statuses on which retry is to be done.
Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524]
retry_methods Array of string The http methods on which retry is to be done.
Default: ['GET', 'PUT']
basic_auth_credentials BasicAuthCredentials The credential object for Basic Authentication

The API client can be initialized as follows:

from woocommercerestapi.configuration import Environment
from woocommercerestapi.http.auth.basic_auth import BasicAuthCredentials
from woocommercerestapi.woocommercerestapi_client import WoocommercerestapiClient

client = WoocommercerestapiClient(
    basic_auth_credentials=BasicAuthCredentials(
        username='username',
        password='password'
    ),
    environment=Environment.PRODUCTION
)

Authorization

This API uses the following authentication schemes.

List of APIs

SDK Infrastructure

HTTP

Utilities

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

woo_commerce_sdk-1.0.0.tar.gz (43.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

woo_commerce_sdk-1.0.0-py3-none-any.whl (86.4 kB view details)

Uploaded Python 3

File details

Details for the file woo_commerce_sdk-1.0.0.tar.gz.

File metadata

  • Download URL: woo_commerce_sdk-1.0.0.tar.gz
  • Upload date:
  • Size: 43.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.13

File hashes

Hashes for woo_commerce_sdk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 ac815e511f61c8826ed247c9650108ac3f9b95f2d6fe60c07dffcf4cc0d5d7e1
MD5 fdd92ada70d4afdce63a36b98e67c0e8
BLAKE2b-256 7d2c165e6ccd39f23dd524e336e86d19a77c20b1c90828ff4431ad67a46cabd6

See more details on using hashes here.

File details

Details for the file woo_commerce_sdk-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for woo_commerce_sdk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8411737e71f130ba45ff3ea0e3f5e89e25d0e0e730cd550d8e6944ab356ad2bf
MD5 08cd44f51e56fbf2c10e88fad7f23b11
BLAKE2b-256 bcb90c9cc0d589e206d0b0f7d63ae46de6ad2061f89a1bd83ada4a685d2c3c04

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page