Skip to main content

DEPO Delivery Service Bindings for Python

Project description

DEPO Delivery Service Bindings for Python

Python wrapper for DEPO's application interface. At the moment, it provides easy access to contracted places (input / output) and placing and canceling orders.

Detailed information of DEPO's API can be found at their website. If you feel like you need covering additional API methods, please open an issue or create a pull request.

Setup

You can install this package by using pip:

pip install depo

If you fancy pipenv use:

pipenv install depo

To install from source, run:

python setup.py install

For the API client to work you would need Python 2.7+ or Python 3.4+.

To install via requirements file from your project, add the following for the moment before updating dependencies:

git+git://github.com/palosopko/depo-python.git#egg=depo

Usage

First off, you need to require the library and provide authentication information by providing your user name and password do DEPO's admin interface

import depo
dibuk.api_credentials = ('email', 'password')

Getting contracted places is accomplished by calling depo.Place.all(). The method returns a list with depo.Place objects containing all the relevant details. Please note boolean properties is_input and is_output – if you are just trying to implement DEPO's service for your customers to get their orders, you will only be interested in the latter.

To place a new order you need to run depo.Order.create() with code of a place (or Place object), recipient's name, phone, email and order's amount, product amount and optionally an order reference. Method returns dictionary with delivery details including reference number under the number key.

Contributing

  1. Check for open issues or open a new issue for a feature request or a bug.
  2. Fork the repository and make your changes to the master branch (or branch off of it).
  3. Send a pull request.

Development

Run all tests on all supported Python versions:

make test

Run the linter with:

make lint

The client library uses Black for code formatting. Code must be formatted with Black before PRs are submitted. Run the formatter with:

make fmt

Changelog

v0.2.0: 30/09/2019

Python 3 compatibility for real, code formatting is covered by Black and various small fixes to make everything better and easier including first test.

v0.1.1: 04/04/2017

Fixes creating order from place's identifiers sent as unicode.

v0.1.0: 28/03/2017

Initial version with support for getting pickup places.

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

depo-0.2.0.tar.gz (6.2 kB view hashes)

Uploaded Source

Built Distributions

depo-0.2.0-py3.7.egg (8.5 kB view hashes)

Uploaded Source

depo-0.2.0-py2.py3-none-any.whl (6.3 kB view hashes)

Uploaded Python 2 Python 3

depo-0.2.0-py2.7.egg (9.2 kB view hashes)

Uploaded Source

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