convex
Python client for the reactive backend-as-a-service Convex.
What it is and what it does
Convex is a Python client for the Convex backend-as-a-service platform. It allows you to call queries, mutations, and actions defined in your Convex backend from Python code, passing arguments and receiving results over HTTP. The client handles type conversion between Python and JavaScript (including special handling for Int64 via ConvexInt64), supports authentication via tokens, and provides subscription-based real-time updates. It also includes error handling for ConvexError exceptions propagated from backend functions.
The package is built with compiled wheels for broad platform support (x86_64, ARM, and other architectures across Linux, macOS, and musl systems). It has no runtime dependencies beyond Python itself, making it lightweight to install. The client is designed to integrate with Convex's cloud-hosted backend, requiring a deployment URL and knowledge of available RPC functions from the Convex dashboard.
Use it for:
- Call Convex backend queries from a Python script or application to fetch data without managing a separate database.
- Execute mutations from Python to write or update data in Convex, triggered by application logic or scheduled tasks.
- Subscribe to real-time updates from Convex queries to keep local state synchronized with backend changes.
- Authenticate Python clients with tokens from Convex authentication flows to enforce access control.
- Integrate Convex as the backend for a Python web service or CLI tool, delegating data persistence to the cloud.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Python client for Convex, a backend-as-a-service platform, enabling queries, mutations, and subscriptions to a Convex backend via RPC calls.
Yes, if you are already using Convex as your backend platform and need a Python client. The package is actively maintained, has no external dependencies, and supports current Python versions. The pre-1.0.0 status and stated willingness to make breaking changes warrant caution for long-term production use, but it is suitable for projects committed to tracking Convex's evolution. No known security vulnerabilities.
Install
convex on PyPI
pip
pip install convexuv
uv add convexpoetry
poetry add convexInstalling convex
Before you install
Medium install friction due to compiled wheels for multiple architectures and Python versions. Package is actively maintained with recent releases; repo shows active development and reasonable community engagement.
License in practice
Licensed under Apache-2.0 (permissive), allowing commercial and private use with minimal restrictions—suitable for most projects.
Quickstart
pip install convex
from convex import ConvexClient
client = ConvexClient('https://example-lion-123.convex.cloud')
messages = client.query("messages:list")
print(messages)
Requires Python 3.9 or later; Convex backend URL must be obtained from the Convex dashboard.
Verify before relying
- Whether subscription streaming (client.subscribe) works reliably in production environments and what reconnection/error-recovery behavior is implemented.
- Performance characteristics and latency for large result sets or high-frequency queries.
- Support timeline and backwards-compatibility guarantees given the pre-1.0.0 status and stated willingness to make breaking changes.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | medium — platform-specific wheel |
| Runtime dependencies | none |
| Maintenance | actively maintained — 605 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 95,068/month — #13,293 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: convex-0.7.0-cp313-cp313t-macosx_10_12_x86_64.whl; convex-0.7.0-cp313-cp313t-macosx_11_0_arm64.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_i686.manylinux2014_i686.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl; convex-0.7.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_aarch64.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_armv7l.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_i686.whl; convex-0.7.0-cp313-cp313t-musllinux_1_2_x86_64.whl; convex-0.7.0-cp39-abi3-macosx_10_12_x86_64.whl; convex-0.7.0-cp39-abi3-macosx_11_0_arm64.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl; convex-0.7.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
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
gqlA GraphQL client for Python that executes…
permissive · top 1,000 on PyPI
cvxoptcvxopt is a Python library for solving convex…
unclear · top 5,000 on PyPI
vhacdxComputes approximate convex decomposition of…
unclear · top 5,000 on PyPI
cvxpyCVXPY is a Python modeling language for…
permissive · top 5,000 on PyPI
scsscs is a Python interface to the Splitting…
permissive · top 5,000 on PyPI
python-graphql-clientSends GraphQL queries, mutations, and…
permissive · top 15,000 on PyPI
pipedreamProvides a Python client library for accessing…
unclear · top 15,000 on PyPI
qpsolversProvides a unified Python interface to solve…
copyleft · top 5,000 on PyPI
python-intercomA Python client library for the Intercom API,…
unclear · top 15,000 on PyPI
reka-apiProvides a Python client library for accessing…
permissive · top 15,000 on PyPI