inngest
Python SDK for Inngest
What it is and what it does
Inngest is a Python SDK that integrates durable, event-driven background job execution into web frameworks without requiring you to set up separate queueing systems. It lets you define functions that respond to events, with built-in support for multi-step workflows where each step can retry independently on failure. Functions can be synchronous or asynchronous, and state is managed automatically by the SDK.
You trigger jobs by sending events to Inngest, either from within your application or externally. During development, a local Dev Server handles execution; in production, Inngest Cloud manages the queue and scheduling. The SDK handles the plumbing of event routing, step retries, and function state, so you write business logic as plain Python functions decorated with Inngest metadata.
Use it for:
- Run background tasks triggered by application events without setting up separate infrastructure.
- Build multi-step workflows where each step retries independently and state persists across failures.
- Schedule recurring jobs or delayed execution using event-driven triggers.
- Process async work without blocking HTTP responses in web applications.
- Coordinate complex business logic across multiple services using event-driven architecture.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Inngest adds durable, event-driven background jobs and scheduled workflows to Python applications without requiring separate queueing infrastructure.
Yes, if you need event-driven background jobs in Python and want to avoid infrastructure overhead. Low install friction, active maintenance, and support for Python 3.10 through 3.13 make it accessible. However, verify the license terms before committing to production use, since the license status is currently unclear. No known security vulnerabilities.
Install
inngest on PyPI
pip
pip install inngestuv
uv add inngestpoetry
poetry add inngestInstalling inngest
Before you install
Low install friction with a pure-Python wheel. Active maintenance: last commit 2026-08-07, 52 days since latest release. Supports Python 3.10 through 3.13.
License in practice
License status is unclear—no SPDX identifier or raw license text is available in the package metadata. Verify the actual license before using in proprietary or restricted contexts.
Quickstart
pip install inngest
import inngest
from pydantic import BaseModel
inngest_client = inngest.Inngest(app_id="my_app", is_production=False)
@inngest_client.create_function(
fn_id="my_job",
trigger=inngest.TriggerEvent(event="app/event"),
)
def my_function(ctx: inngest.ContextSync) -> dict:
return {"result": "done"}
Requires Python 3.10 or later. Production use requires INNGEST_EVENT_KEY and INNGEST_SIGNING_KEY environment variables set for Inngest Cloud.
Verify before relying
- Whether the unclear license permits commercial or closed-source use without restriction.
- Performance characteristics and throughput limits under production load.
- Exact retry semantics and failure handling guarantees for step functions.
- Framework-specific integration requirements beyond the core SDK.
Package facts
| License | not declared (unclear) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 4 — httpx, jcs, pydantic, typing-extensions |
| Maintenance | actively maintained — 52 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,293,586/month — #4,097 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: inngest-0.5.19-py3-none-any.whl
Tags
More Application Frameworks packages
FastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
textualTextual is a Python framework for building…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
mcpBuild and connect to Model Context Protocol…
permissive · top 1,000 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
arqarq provides a job queue system for Python that…
permissive · top 5,000 on PyPI
absurd-sdkPython SDK for Absurd, a PostgreSQL-based…
permissive · top 15,000 on PyPI
rq-schedulerAdds job scheduling capabilities to RQ (Redis…
permissive · top 15,000 on PyPI
dbosDBOS adds durable workflows and queues to…
permissive · top 5,000 on PyPI
hatchet-sdkHatchet SDK is the official Python client for…
permissive · top 5,000 on PyPI
azure-functions-durableExtends Azure Functions to support stateful,…
permissive · top 5,000 on PyPI
saqSAQ is an async job queue framework that runs…
permissive · top 15,000 on PyPI
django-dramatiqIntegrates Dramatiq, a distributed task queue,…
unclear · top 15,000 on PyPI
Flask-APSchedulerFlask-APScheduler integrates APScheduler with…
permissive · top 15,000 on PyPI
bullmqBullMQ for Python is a Redis-backed job queue…
permissive · top 5,000 on PyPI