Skip to main content
PyPi version Supported Python versions

Scabbard

About

Scabbard is a Pythonic client for the Sabre Dev Studio REST APIs. With Scabbard, it is not necessary to create extensive low-level boilerplate code before you can use each API call. You can begin to interact with the Sabre Dev Studio APIs with as few as 3 lines of code.

A scabbard is a sheath for holding a sword, such as a sabre - https://en.wikipedia.org/wiki/Scabbard

Princely Mughal sabre with jewelled scabbard

Features

Defined Scabbard REST endpoints can be reviewed in the SwaggerUI:

https://bundgus.github.io/scabbard/SwaggerUI/index.html

Documentation

Sabre Dev Studio API Documentation:

https://developer.sabre.com/docs/read/Home

Sabre Dev Studio REST API documentation:

https://developer.sabre.com/docs/read/rest_apis/

https://developer.sabre.com/io-docs

Scabbard docs:

https://bundgus.github.io/scabbard/html/

Scabbard SwaggerUI:

https://bundgus.github.io/scabbard/SwaggerUI/index.html

Scabbard GitHub Home:

https://github.com/bundgus/scabbard

Scabbard PyPi Home:

https://pypi.python.org/pypi/scabbard

Getting Started

(1) You can register for a free Sabre Dev Studio account at the following URL:

https://developer.sabre.com/apps/mykeys

(2) Install the scabbard library with pip.

$ pip install scabbard

(3) A file called api_connect_parameters.json must exist in the directory in which python is run, with your Sabre Dev Studio clientID and clientSecret credentials.

api_connect_parameters.json

{
  "clientId": "zzzzzzzzzzzzzzzz",
  "clientSecret": "xxxxxxxx",
  "environment": "https://api.test.sabre.com",
  "group": "DEVCENTER",
  "domain": "EXT",
  "formatVersion": "V1"
}

(4) Run code to exercise the API. For example:

example_V1ListsSupportedCountriesGet.py

import scabbard

client = scabbard.get_client()
countries = client.Air_Utility.V1ListsSupportedCountriesGet(pointofsalecountry='NZ').result()

print('PointOfSale')
print(countries.PointOfSale)

print('OriginCountries')
for c in countries.OriginCountries:
    print(c.CountryCode, c.CountryName)

print('DestinationCountries')
for c in countries.DestinationCountries:
    print(c.CountryCode, c.CountryName)

print('Links')
for l in countries.Links:
    print(l.rel)
    print(l.href)

(5) Run your python example.

$ python example_V1ListsSupportedCountriesGet.py

PointOfSale
NZ
OriginCountries
AU Australia
ID Indonesia
IE Ireland
NZ New Zealand
TH Thailand
GB United Kingdom
DestinationCountries
AU Australia
FR France
DE Germany
HK Hong Kong
IN India
ID Indonesia
IE Ireland
MY Malaysia
NL Netherlands
NZ New Zealand
PH Philippines
SG Singapore
TH Thailand
GB United Kingdom
US United States
Links
self
https://api.test.sabre.com/v1/lists/supported/countries?pointofsalecountry=NZ
linkTemplate
https://api.test.sabre.com/v1/lists/supported/countries?pointofsalecountry=<pointofsalecountry>

Installation

$ pip install scabbard

License

Copyright (c) 2018, Mark Bundgus. All rights reserved. * not a Sabre provided or supported software library * all referenced Sabre content and services are the property of Sabre

Scabbard is licensed with a BSD 3-Clause License.

Metadata

Release files for scabbard 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for scabbard 0.2.1
File Size Uploaded
scabbard-0.2.1.tar.gz 17.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for scabbard 0.2.1
File Interpreter ABI Platform
scabbard-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 33.0 kB

Release files / scabbard-0.2.1.tar.gz

Download URL scabbard-0.2.1.tar.gz
Size 17.0 kB
Tags Source
SHA-256 checksum
How to use checksums
62d8043bd8adb7c3020d0e3ce7bdc172f94f57002101f82ec3be570fcaae0016
BLAKE2b-256 checksum
How to use checksums
ce0b7b6dc0e03d46b400685ba1d39f92da35c28c05ca9003b65d75456a456ed8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

Release files / scabbard-0.2.1-py3-none-any.whl

Download URL scabbard-0.2.1-py3-none-any.whl
Size 16.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
550737131e271ff3a50d6d390ce9ec759c4692218f3cc0f0cb050b88151767c7
BLAKE2b-256 checksum
How to use checksums
b5bf7927b1ba8ba1112225df5b8b0ff709d270473fc47ff7a45573bc0fd2725d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.1 pkginfo/1.4.2 requests/2.19.1 setuptools/40.4.3 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.6

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page