Skip to main content

SDK for Commercetools

Project description

This is an unofficial Python SDK for the Commercetools platform. It only supports Python 3.6+ and uses type annotation for an improved development experience.

The API is mostly generated using the commercetools api RAML file and uses the attr library for the dataobjects and marshmallow for the serialization and deserialization steps.

Installation

pip install commercetools

Example

from commercetools import Client

client = Client(
    project_key="<your-project-key>",
    client_id="<your-client-id>",
    client_secret="<your-client-secret>",
    scope=["<scopes>"],
    url="https://api.sphere.io",
    token_url="https://auth.sphere.io",
)

product = client.products.get_by_id("00633d11-c5bb-434e-b132-73f7e130b4e3")
print(product)

The client can also be configured by setting the following environment variables:

export CTP_PROJECT_KEY="<project key>"
export CTP_CLIENT_SECRET="<client secret>"
export CTP_CLIENT_ID="<client id>"
export CTP_AUTH_URL="https://auth.sphere.io"
export CTP_API_URL="https://api.sphere.io"
export CTP_SCOPES="<comma seperated list of scopes>"

And then constructing a client without arguments:

from commercetools import Client

client = Client()

product = client.products.get_by_id("00633d11-c5bb-434e-b132-73f7e130b4e3")
print(product)

Releasing

To release this package first (pip) install bump2version and update the CHANGES file. Then update the version (either major/minor/patch depending on the change)

bumpversion --tag <major,minor,patch>

bumpversion is naive because it string replaces, so do a sanity check it didn’t accidentally update a Pypi dependency. If not, push the code:

git push --follow-tags

We use GitHub actions so make sure the build succeeds and then go to the release tab. GitHub will already have created a release for the tag, but ignore that for now and draft a new release and enter the tag which you created.

Copy the changelog items in in the release description and save. This will then automatically trigger a GitHub action to create and upload the package to PyPi.

Then go to Azure Pipelines and wait for the build to create an artifact. Once the build succeeded go to Releases and create a release with the correct artifact. This will release the package to Pypi.

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

commercetools-10.0.2.tar.gz (241.1 kB view details)

Uploaded Source

Built Distribution

commercetools-10.0.2-py3-none-any.whl (326.4 kB view details)

Uploaded Python 3

File details

Details for the file commercetools-10.0.2.tar.gz.

File metadata

  • Download URL: commercetools-10.0.2.tar.gz
  • Upload date:
  • Size: 241.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for commercetools-10.0.2.tar.gz
Algorithm Hash digest
SHA256 2b07bf02a995ef8d912f80aac452b08988368c8892e048a0016f7a9da69a8f3a
MD5 28ace6dc3f853cf5e566b82cc6855a1b
BLAKE2b-256 4365c5cb7102845a37271670b5a62b5bc60c5190e8cb7fc63a7e504ece4850b0

See more details on using hashes here.

File details

Details for the file commercetools-10.0.2-py3-none-any.whl.

File metadata

  • Download URL: commercetools-10.0.2-py3-none-any.whl
  • Upload date:
  • Size: 326.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.3.1 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for commercetools-10.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b7c932095d8f71ee9e3a776c83da218cda7de04c34597e2af2437a8b7d9ed567
MD5 a952e1d381c8d581ba2764b59b98ea2a
BLAKE2b-256 d31fd806b14c4913f8bc170541d4f4fbbef1b5ff97fcaf340af9e45b19b5c0f4

See more details on using hashes here.

Supported by

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