What is Bravado?
masterBravado is a Python client library designed for interacting with Swagger 2.0 services. Unlike traditional tools that require a code generation step, Bravado dynamically generates a client at runtime based on your Swagger schema.
Key capabilities include:
- Dynamic Client Generation: No pre-generation step required.
- HTTP Clients: Supports both Synchronous (via
requests) and Asynchronous (viafido) clients. - Validation: Performs strict validation to ensure Swagger Schema v2.0 compatibility and validates both HTTP requests and responses against the schema.
- Type Mapping: Maps Swagger models directly to Python types, allowing you to work with objects instead of raw JSON.
- Schema Ingestion: Can ingest Swagger schemas via local file paths or HTTP URLs.
- Developer Experience: Provides REPL-friendly navigation with docstrings for Resources, Operations, and Models.