Bravado is a Yelp maintained fork of digium/swagger-py for use with OpenAPI Specification (previously known as Swagger).
From the OpenAPI Specification project:
The goal of The OpenAPI Specification is to define a standard, language-agnostic interface to REST APIs which allows both humans and computers to discover and understand the capabilities of the service without access to source code, documentation, or through network traffic inspection.
Client libraries can automatically be generated from the OpenAPI specification, however Bravado aims to be a complete replacement for code generation (swagger-codegen).
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient
http_client = RequestsClient()
http_client.set_basic_auth(
'api.yourhost.com',
'username', 'password'
)
client = SwaggerClient.from_url(
'http://petstore.swagger.io/v2/swagger.json',
http_client=http_client,
)
pet = client.pet.getPetById(petId=42).result()
from bravado.requests_client import RequestsClient
from bravado.client import SwaggerClient
http_client = RequestsClient()
http_client.set_api_key(
'api.yourhost.com', 'token'
param_name='api_key', param_in='header'
)
client = SwaggerClient.from_url(
'http://petstore.swagger.io/v2/swagger.json',
http_client=http_client,
)
pet = client.pet.getPetById(petId=42).result()
# Install bravado with fido extra (``pip install bravado[fido]``)
from bravado.fido_client import FidoClient
from bravado.client import SwaggerClient
http_client = FidoClient()
client = SwaggerClient.from_url(
'http://petstore.swagger.io/v2/swagger.json',
http_client=http_client,
)
pet = client.pet.getPetById(petId=42).result()
More documentation is available at http://bravado.readthedocs.org
Code is documented using Sphinx.
virtualenv. is recommended to keep dependencies and libraries isolated.
- Fork it ( http://github.com/Yelp/bravado/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Add your modifications
- Add short summary of your modifications on
CHANGELOG-MASTER.rst
- Commit your changes (
git commit -m "Add some feature"
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Copyright (c) 2013, Digium, Inc. All rights reserved. Copyright (c) 2014-2015, Yelp, Inc. All rights reserved.
Bravado is licensed with a BSD 3-Clause License.