aftership

The python SDK of AfterShip API


Keywords
aftership, api, tracking, shipping, logistics, aftership-api, python, shipment-tracking, shipping-and-delivery
License
MIT
Install
pip install aftership==1.0.post1

Documentation

aftership-sdk-python

https://github.com/aftership/aftership-sdk-python/actions/workflows/test.yml/badge.svg?branch=master https://coveralls.io/repos/github/AfterShip/aftership-sdk-python/badge.svg?branch=master

aftership-sdk-python is Python SDK (module) for AfterShip API. Module provides clean way to access API endpoints.

IMPORTANT NOTE

Current version of aftership-sdk-python >=0.3 not compatible with previous version of sdk <=0.2.

Also, version since 1.0 is not support Python 2.X anymore. If you want to use this SDK under Python 2.X, please use versions <1.0.

Supported Python Versions

  • 3.6
  • 3.7
  • 3.8
  • 3.9
  • 3.10
  • pypy3

Installation

Via pip

Use Virtual Environment

We recommend using a virtualenv or poem to use this SDK.

$ pip install aftership

Via source code

Download the code archive, without unzip it, go to the source root directory, then run:

$ pip install aftership-sdk-python.zip

Usage

You need a valid API key to use this SDK. If you don't have one, please visit https://www.aftership.com/apps/api.

Quick Start

The following code gets list of supported couriers

import aftership
aftership.api_key = 'YOUR_API_KEY_FROM_AFTERSHIP'
couriers = aftership.courier.list_couriers()

You can also set API key via setting AFTERSHIP_API_KEY environment varaible.

export AFTERSHIP_API_KEY=THIS_IS_MY_API_KEY
import aftership
tracking = aftership.get_tracking(tracking_id='your_tracking_id')

The functions of the SDK will return data field value if the API endpoints return response with HTTP status 2XX, otherwise will throw an exception.

Exceptions

Exceptions are mapped from https://docs.aftership.com/api/4/errors, and this table is the exception attributes mapping.

API error AfterShipError
http status code http_status
meta.code code
meta.type message

Keyword arguments

Most of SDK functions only accept keyword arguments.

Examples

Goto examples to see more examples.