Skip to main content

Python library for interacting with the Amazon MWS API

Project description

mws PyPI version

master: Requirements Status Build Status codecov

develop: Requirements Status Build Status codecov

This is a fork and continuation of https://github.com/czpython/python-amazon-mws with preliminary Python 2/3 support.

The main aim is to provide 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.

Installation

Install from PyPI with pip install mws.

Quickstart

Put your API credentials in your environment.

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

Now you can experiment with the API from a shell.

>>> 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',  # if necessary
... )
>>> 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).

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

mws-0.8.6.tar.gz (19.9 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: mws-0.8.6.tar.gz
  • Upload date:
  • Size: 19.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.7

File hashes

Hashes for mws-0.8.6.tar.gz
Algorithm Hash digest
SHA256 c0cbcead410ecf9202971af9045b64b2ba14db3293cc288b36c8f8e9ef7ec520
MD5 5f8fa1576438195218142894cc7b859f
BLAKE2b-256 53f74d18db59f349c130f766b289ceda0ef374aa9322ff966978c9bf2d42f35c

See more details on using hashes here.

Supported by

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