webex-byova
Python SDK for Webex Contact Center Bring Your Own Virtual Agent (BYOVA) and Bring Your Own Data Source (BYODS).
Features
BYODS and platform APIs
- Integration OAuth with built-in redirect listener (
integration.aauthorize()) - Service App tokens per organization (webhook-driven or manual)
- DataSource CRUD — register, list, update, delete data sources
- Schema discovery — list and inspect BYODS schemas
- JWS verification — validate inbound tokens from Webex
BYOVA gRPC media server
Install with the optional [media] extra (pip install webex-byova[media]):
- Handler-based media server —
BYOVAMediaServerwith async event callbacks (no protobuf/gRPC code required) - Turn-based sessions — play prompts, collect voice or DTMF input, barge-in, multi-turn dialogs
- WebSocket proxy — bridge sessions to external voice AI backends via
WebSocketProxyConnector - Protocol compliance — BYOVA chunking, μ-law audio, and turn closure handled internally
- Coexistence with BYODS — run REST APIs and the media server in the same process
Install
Core SDK (BYODS, OAuth, webhooks):
pip install webex-byova
Voice / gRPC media server:
pip install webex-byova[media]
Quick links
| Topic | Guide |
|---|---|
| First steps | Getting Started |
| How it fits together | Architecture |
| OAuth flow | Integration OAuth |
| Multi-tenant setup | Automated Token Flow |
| Webhook handler | Webhooks |
| Media server overview | BYOVA gRPC Media Server |
| Media quickstart | Media Server Quickstart |
| Runnable examples | Examples |
| API reference | webex_byova · webex_byova.media |
See Getting Started for the BYODS walkthrough, or jump to the Media Server Quickstart for voice integration.