Skip to main content

Client library for the Duffel API

Project description

PyPI Supported Python versions Build Status Code style:black Downloads

duffel-api

Python client library for the Duffel API.

Requirements

  • Python 3.8+

Getting started

pip install duffel-api

Usage

You first need to set the API token you can find in the Duffel dashboard under the section Developers > Access Tokens.

Once you have the token, you can call Duffel() with the value:

from duffel_api import Duffel

access_token = 'test_...'
client = Duffel(access_token = access_token)

After you have a client you can interact with, you can make calls to the Duffel API:

from duffel_api import Duffel

client = Duffel(access_token = 'test...')

offer_requests = client.offer_requests.list()
for offer_request in offer_requests:
    print(offer_request.id)

You can find a complete example of booking a flight in ./examples/book-flight.py.

Development

Testing

Run all the tests:

tox

As part of running tox, a code coverage report is built for you. You can navigate it by opening htmlcov/index.html in a browser, or if in a OS that supports it by using open (alternative xdg-open):

open ./htmlcov/index.html

Packaging

Setup pypi config (~/.pypirc):

[pypi]
  username = __token__
  password = pypi-generated-token

[testpypi]
  username = __token__
  password = pypi-generated-token

Install dependencies:

pip install wheel twine

Build the package before uploading:

python setup.py sdist bdist_wheel

Upload packages (test):

twine upload -r testpypi --verbose dist/*

The above will upload the packages to test.pypi.org which will allow you to verify all is well with your upload before uploading it to the main pypi repository.

twine upload -r pypi --verbose dist/*

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

duffel-api-0.6.2.tar.gz (38.4 kB view details)

Uploaded Source

Built Distribution

duffel_api-0.6.2-py3-none-any.whl (68.5 kB view details)

Uploaded Python 3

File details

Details for the file duffel-api-0.6.2.tar.gz.

File metadata

  • Download URL: duffel-api-0.6.2.tar.gz
  • Upload date:
  • Size: 38.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for duffel-api-0.6.2.tar.gz
Algorithm Hash digest
SHA256 663aa5fd55379a75146a9dc86bc5144ea2895c37a9898edc4df3a0e65360ad53
MD5 be2951357a0f754a3fa1fc91ce6eeda9
BLAKE2b-256 169bd57c89203ad7c3de80fad45a9d0c6f86f6206adf4956b74bbbf49bb4c358

See more details on using hashes here.

File details

Details for the file duffel_api-0.6.2-py3-none-any.whl.

File metadata

  • Download URL: duffel_api-0.6.2-py3-none-any.whl
  • Upload date:
  • Size: 68.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for duffel_api-0.6.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c60f09d0d76c7ee872060ff6722b146bc4c0022a9e573c0aab58ab8bd47bfc81
MD5 4c7e3226109c813c9664b43d01693cf3
BLAKE2b-256 22d621b17f1dfe215b176c2168ed17bdc66581a935f1fb7e253885f78ff3eae1

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