dapr
The official release of Dapr Python SDK.
What it is and what it does
Dapr SDK for Python is the official client library for the Dapr distributed application runtime. It provides a Python interface to Dapr's building blocks—state management, pub/sub messaging, service invocation, and more—along with an actor framework implementation based on the Virtual Actor model. The SDK includes client libraries for direct Dapr API calls, an actor framework for stateful, long-lived objects, and optional extensions for FastAPI and Flask to simplify integration into web applications.
The package depends on aiohttp, grpcio, protobuf, python-dateutil, and typing-extensions to handle async HTTP, gRPC communication, protocol buffer serialization, and date utilities. It targets modern Python versions (3.10 through 3.14) and is designed to run locally, in containers, or in distributed cloud and edge environments. To use it, you must have a Dapr runtime running separately—either locally via the Dapr CLI or deployed in your infrastructure.
Use it for:
- Build microservices that communicate through Dapr's service invocation building block without direct service-to-service coupling.
- Implement stateful actor-based applications where each actor maintains isolated state and handles messages sequentially.
- Integrate Dapr capabilities (state, pub/sub, secrets) into existing FastAPI or Flask web applications via the provided extensions.
- Develop event-driven applications using Dapr's pub/sub building block for asynchronous message handling across services.
- Create distributed workflows that coordinate multiple services through Dapr's orchestration and state management.
- Deploy applications across hybrid cloud and edge environments using Dapr's portable runtime abstraction.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Dapr SDK for Python provides client libraries and actor framework support for building distributed applications using the Dapr runtime, with built-in support for gRPC, FastAPI, and Flask integrations.
Yes, if you are building distributed applications and have or plan to deploy a Dapr runtime. The SDK is actively maintained, has no known vulnerabilities, supports current Python versions, and carries a permissive Apache-2.0 license. Install friction is low. However, it is a client library only—it requires a separate Dapr runtime to be useful, so evaluate whether Dapr's architecture and building blocks fit your application design before committing.
Install
dapr on PyPI
pip
pip install dapruv
uv add daprpoetry
poetry add daprInstalling dapr
Before you install
Low install friction with a pure-wheel distribution. Actively maintained with a release 30 days old and recent commits. Requires Python 3.10 or later and a local or remote Dapr runtime installation to function.
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; suitable for most production deployments.
Quickstart
pip install dapr
from dapr.clients import DaprClient
with DaprClient() as d:
d.invoke_method('service-name', 'method-name')
Requires a running Dapr runtime (dapr init or container deployment); Python 3.10 or later required.
Verify before relying
- Whether the package works offline or requires network connectivity to the Dapr runtime.
- Performance characteristics and latency overhead of the gRPC communication layer.
- Compatibility with Dapr runtime versions other than the one matching the SDK release.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — aiohttp, grpcio-status, grpcio, protobuf, python-dateutil, typing-extensions |
| Maintenance | actively maintained — 30 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 419,406/month — #6,798 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dapr-1.18.3-py3-none-any.whl
Tags
More Distributed Computing packages
gRPC Python is an HTTP/2-based RPC framework…
permissive · top 100 on PyPI
execnetexecnet lets you spawn and communicate with…
permissive · top 1,000 on PyPI
cloudpickleCloudpickle extends Python's standard pickle…
permissive · top 1,000 on PyPI
smart-openProvides a unified, open()-compatible Python…
permissive · top 1,000 on PyPI
portalockerPortalocker provides cross-platform file…
permissive · top 1,000 on PyPI
rayRay is a distributed computing framework that…
permissive · top 1,000 on PyPI
dapr-ext-fastapiIntegrates Dapr distributed application runtime…
permissive · top 15,000 on PyPI
dapr-ext-workflowExtends the Dapr Python SDK with workflow…
permissive · top 15,000 on PyPI
thespianThespian provides an Actor Model framework for…
permissive · top 15,000 on PyPI
a2a-sdkA Python SDK for building agentic applications…
permissive · top 5,000 on PyPI
apify-clientA Python client library for the Apify REST API…
permissive · top 5,000 on PyPI
apifyApify SDK for Python is the official framework…
permissive · top 15,000 on PyPI
SparkSpark is an async-first actor framework for…
permissive · top 15,000 on PyPI
aristaprotoGenerates Python gRPC stubs and message classes…
permissive · top 15,000 on PyPI
grpclibgrpclib is a pure-Python asyncio-based…
permissive · top 1,000 on PyPI
connectrpcConnect is a runtime library for building and…
permissive · top 15,000 on PyPI