Skip to main content

Python library for interacting with the Amazon MWS API

Project description

mws PyPI version Gitter chat

master: Requirements Status Build Status codecov

develop: Requirements Status Build Status codecov

Python package for interacting the Amazon Marketplace Web Services API.

This project is a fork and continuation of czpython/python-amazon-mws with added Python 3 support.

Installation

Install the latest version from PyPI.

pip install mws

Currently the mws package on PyPI points to the 0.x branch, but at some later point may point to 1.x.

Versions Description Branch
0.x A backwards-compatible drop in replacement for the original package (i.e. same method signatures, class names, etc) with some extra features and anything that was obviously broken fixed. master
1.x New features along with backwards-incompatible API changes. develop

If you want to continue using the 0.x versions, please pin your package to major version 0. i.e use something like mws~=0.8.6 in your project's requirements.txt.

If you want to use 1.x functionality right now, you can install directly from the Git repo.

pip install git+https://github.com/python-amazon-mws/python-amazon-mws.git@develop#egg=mws

Quickstart

Export your API credentials as environment variables in your shell.

export MWS_ACCOUNT_ID=...
export MWS_ACCESS_KEY=...
export MWS_SECRET_KEY=...

Now you can experiment with the API from within an interactive Python shell e.g.

>>> import mws, os
>>> orders_api = mws.Orders(
...     access_key=os.environ['MWS_ACCESS_KEY'],
...     secret_key=os.environ['MWS_SECRET_KEY'],
...     account_id=os.environ['MWS_ACCOUNT_ID'],
...     region='UK',   # defaults to 'US'
... )
>>> service_status = orders_api.get_service_status()
>>> service_status
<mws.mws.DictWrapper object at 0x1063a2160>
>>> service_status.original
'<?xml version="1.0"?>\n<GetServiceStatusResponse xmlns="https://mws.amazonservices.com/Orders/2013-09-01">\n  <GetServiceStatusResult>\n    <Status>GREEN</Status>\n    <Timestamp>2017-06-14T16:39:12.765Z</Timestamp>\n  </GetServiceStatusResult>\n  <ResponseMetadata>\n    <RequestId>affdec68-05d2-4bc5-a8a4-bb40f307dd6b</RequestId>\n  </ResponseMetadata>\n</
GetServiceStatusResponse>\n'
>>> service_status.parsed
{'value': '\n    ', 'Status': {'value': 'GREEN'}, 'Timestamp': {'value': '2017-06-14T16:39:12.765Z'}}
>>> service_status.response
<Response [200]>

Development

All dependencies for working on mws are in requirements.txt and docs/requirements.txt.

Tests

Tests are run with pytest. We test against Python 2.7 and supported Python 3.x versions with Travis.

Documentation

Docs are built using Sphinx. Change into the docs/ directory and install any dependencies from the requirements.txt there.

To build HTML documentation, run:

make html

The output HTML documentation will be in docs/build/.

To run a live reloading server serving the HTML documentation (on port 8000 by default):

make livehtml

Contributing

Please make pull requests to develop. Code coverage isn't necessary but encouraged where possible (especially for anything which might behave differently between Python 2/3).

Download files

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

Source Distribution

mws-0.8.9.tar.gz (20.7 kB view details)

Uploaded Source

Built Distribution

mws-0.8.9-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

Details for the file mws-0.8.9.tar.gz.

File metadata

  • Download URL: mws-0.8.9.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.6.8

File hashes

Hashes for mws-0.8.9.tar.gz
Algorithm Hash digest
SHA256 b8fd4896538dcf222c4769d9e22d12d91fbced56a7d8b823177ad6ddfa9c0b6a
MD5 4549fc6f281d6335ad3851895985a177
BLAKE2b-256 8b0a5c8daca6fc7c23ab2ea2bc9ebff8200b3d1b98fc9fe201e3d7ad317c0f88

See more details on using hashes here.

File details

Details for the file mws-0.8.9-py3-none-any.whl.

File metadata

  • Download URL: mws-0.8.9-py3-none-any.whl
  • Upload date:
  • Size: 19.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.6.8

File hashes

Hashes for mws-0.8.9-py3-none-any.whl
Algorithm Hash digest
SHA256 07038560dd9d3eb2708bcd89d81db9f4f2d31df9fa583b7c0869335a5abec1e3
MD5 1c041a416e854ff7813fcd4b41bd5bb9
BLAKE2b-256 e2e45da18cd523f154bdb8459d356142c61f97512dab92c6bf009c43317b7126

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 Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page