--- id: aiogram version: "3.30.0" license: MIT license_treatment: permissive maintenance: active --- # aiogram — Modern and fully asynchronous framework for Telegram Bot API License: permissive · Maintenance: active · Downloads: 4.0M/mo ## What it is and what it does aiogram is a fully asynchronous framework for building Telegram bots in Python 3.10+, built on asyncio and aiohttp. It provides type hints (compatible with mypy), automatic Telegram Bot API integration code generation, routing via Blueprints, a Finite State Machine for conversation flow, powerful magic filters for message matching, middleware support for both incoming updates and API calls, and integrated internationalization via GNU Gettext or Fluent. The framework is designed to make bots faster and more powerful by leveraging Python's async capabilities. The package depends on aiofiles, aiohttp, certifi, magic-filter, pydantic, and typing-extensions. It is actively maintained, supports current Python versions (3.10 through 3.14, including PyPy), and has no known security vulnerabilities. The documentation is available in multiple languages and the project maintains active community channels. Prior asyncio experience is strongly recommended before using aiogram. Use it for: - Build responsive Telegram bots that handle concurrent user interactions without blocking. - Create stateful conversation flows using the built-in Finite State Machine for multi-step dialogs. - Organize complex bot logic with Blueprints and routers for modular, maintainable code. - Implement custom message filtering and routing with magic filters for flexible update handling. - Integrate internationalization into bots with built-in I18n/L10n support. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. aiogram is an asynchronous Python framework for building Telegram bots using asyncio and aiohttp, with type hints, routing, state machines, and middleware support. Yes. aiogram is production-stable, actively maintained, has low install friction, carries a permissive MIT license, and supports current Python versions. It is the right choice if you need to build asynchronous Telegram bots and have asyncio experience. No security vulnerabilities are known. The main prerequisite is comfort with async/await patterns. ## Install pip install aiogram uv add aiogram poetry add aiogram ## Installing aiogram Before you install: Low install friction with a pure-Python wheel. Actively maintained with a recent release (28 days old) and an active repository with 5829 stars. Requires Python 3.10 or later. License in practice: MIT license permits commercial and private use with minimal restrictions, making it suitable for most projects. Quickstart: pip install aiogram from aiogram import Bot, Dispatcher, types from aiogram.filters import Command import asyncio bot = Bot(token="YOUR_BOT_TOKEN") dp = Dispatcher() @dp.message(Command("start")) async def start_handler(message: types.Message): await message.answer("Hello!") async def main(): await dp.start_polling(bot) asyncio.run(main()) Requires Python 3.10 or later and prior experience with asyncio; a valid Telegram Bot API token is needed to run bots. Verify before relying: - Whether the autogenerated Telegram Bot API integration covers all endpoints in API version 10.2 or if manual updates are sometimes required. - Performance characteristics and concurrency limits when handling high-volume update streams. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 4.0M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags telegram bot framework python, async telegram bot library, asyncio telegram api wrapper, python telegram bot development, telegram bot routing middleware, telegram bot state machine, telegram-bot, asyncio, state-machine [View on SkillFed](https://skillfed.io/packages/aiogram) · [View on PyPI](https://pypi.org/project/aiogram/)