Skip to content

jambonz Python SDK

A Python SDK for the jambonz open-source CPaaS platform.

Features

  • REST API Client — Manage carriers, phone numbers, applications, speech services, and more
  • Webhook Response — Build call flows with typed Pydantic verbs (Say, Gather, LLM, Dial...)
  • Async + Sync — Both JambonzClient and AsyncJambonzClient
  • Framework Agnostic — Works with FastAPI, Flask, Django, or any Python web framework
  • Type Safe — Full Pydantic models, discriminated unions, IDE autocompletion
  • Production Ready — Retry with backoff, typed exceptions, env-based config

Quick Example

from jambonz import AsyncJambonzClient, JambonzResponse, Say, Gather, Hangup, Input

# REST API — list your phone numbers
async with AsyncJambonzClient() as client:
    numbers = await client.phone_numbers.list()

# Webhook — respond to incoming call
def handle_call() -> JambonzResponse:
    return [
        Say(text="Hello! How can I help you?"),
        Gather(input=[Input.SPEECH], action_hook="/handle-speech"),
    ]

Installation

pip install jambonz-python-sdk

Or with uv:

uv add jambonz-python-sdk