plivo
A Python SDK to make voice calls & send SMS using Plivo and to generate Plivo XML
What it is and what it does
Plivo is a Python client library for Plivo's cloud communications platform, wrapping REST API endpoints for voice calls, SMS, and WhatsApp messaging. It provides a consistent object-oriented interface for creating, retrieving, updating, and deleting communication resources, plus utilities for generating Plivo XML to control call flows and interactive messaging templates.
The SDK handles authentication via environment variables or explicit credentials, supports both synchronous request patterns and context managers for resource cleanup, and includes pagination helpers for listing resources. It depends on requests for HTTP transport, lxml for XML generation, PyJWT for token handling, and six for Python 2/3 compatibility—though Python 2.7 support is legacy.
Use it for:
- Send SMS or WhatsApp messages programmatically from a web application or backend service.
- Initiate outbound voice calls with custom answer URLs to control call flow via Plivo XML.
- Build interactive WhatsApp bots using templated and free-form messaging with media support.
- Generate call-control XML responses for inbound call handling (IVR, call routing, etc.).
- Look up phone number metadata (carrier, type, validity) using the lookup API.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Python SDK for integrating Plivo's voice, SMS, and WhatsApp messaging APIs into applications, with support for making calls, sending messages, and generating Plivo XML for call control.
Yes. Plivo is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. Install it if you need to integrate Plivo's voice, SMS, or WhatsApp APIs into a Python application. The SDK is production-stable and suitable for commercial use.
Install
plivo on PyPI
pip
pip install plivouv
uv add plivopoetry
poetry add plivoInstalling plivo
Before you install
Low install friction with a pure-Python wheel distribution. Actively maintained with a recent release (17 days old) and an active repository. Depends on five common libraries (requests, six, decorator, lxml, PyJWT) with no compiled dependencies.
License in practice
MIT license (permissive) allows commercial and private use with minimal restrictions—suitable for most projects that can include a license notice.
Quickstart
pip install plivo
import plivo
client = plivo.RestClient(auth_id='your_auth_id', auth_token='your_auth_token')
message = client.messages.create(src='from_number', dst='to_number', text='Hello')
Requires Plivo account credentials (auth_id and auth_token) from https://manage.plivo.com/dashboard/ to authenticate API requests.
Verify before relying
- Whether all Python versions listed in classifiers (2.7, 3.4–3.13) are actively tested or only declared.
- Rate limits or quota constraints on API calls through this SDK.
- Whether WhatsApp messaging requires additional account setup beyond standard Plivo credentials.
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — requests, six, decorator, lxml, PyJWT |
| Maintenance | actively maintained — 17 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 259,708/month — #8,407 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: plivo-4.62.0-py2.py3-none-any.whl
Keywords: plivo, plivo xml, voice calls, sms
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
africastalkingProvides Python access to Africa's Talking APIs…
permissive · top 15,000 on PyPI
twilioPython client library for the Twilio API that…
permissive · top 5,000 on PyPI
vonage-messagesProvides Python message models and client…
permissive · top 15,000 on PyPI
neonizeNeonize is a Python library for automating…
unclear · top 15,000 on PyPI
pywaPyWa is a fully-typed Python framework for…
permissive · top 15,000 on PyPI
ringcentralPython SDK for accessing RingCentral's cloud…
unclear · top 15,000 on PyPI
telesignTeleSign SDK provides Python bindings to send…
permissive · top 15,000 on PyPI
messagebirdA Python client for MessageBird's REST API that…
permissive · top 15,000 on PyPI
clx-sdk-xmsPython SDK for the CLX Communications REST API…
permissive · top 15,000 on PyPI
vonage-smsSends SMS messages via Vonage's API and handles…
permissive · top 15,000 on PyPI