aiogram is a modern and fully asynchronous framework for Telegram Bot API written in Python using asyncio
Find a file
Alex Root Junior c8dff11d1e
Update thumbnail type to InputFile only (#1374)
* Update thumbnail type to InputFile only

The thumbnail's type restriction has been changed in several methods and types. Previously, it accepted Union[InputFile, str], allowing both InputFile instances and strings. Now it's changed to accept only InputFile instances. This change enhances meaning of the thumbnail fields in due to Bot API accepts only InputFile instances.

* Added changelog

* Fixed typehints
2023-11-24 21:10:02 +02:00
.butcher Update thumbnail type to InputFile only (#1374) 2023-11-24 21:10:02 +02:00
.github Merge test+pypy tests but with separated jobs 2023-11-18 21:45:22 +02:00
aiogram Update thumbnail type to InputFile only (#1374) 2023-11-24 21:10:02 +02:00
CHANGES Update thumbnail type to InputFile only (#1374) 2023-11-24 21:10:02 +02:00
docs Fixed lines range 2023-11-23 02:27:03 +02:00
examples PoC Scenes (#1280) 2023-11-23 00:41:21 +02:00
scripts #1191 Added possibility to pass custom headers to URLInputFile object (#1197) 2023-06-25 01:39:26 +03:00
tests PoC Scenes (#1280) 2023-11-23 00:41:21 +02:00
.apiversion Telegram Bot API 6.9 (#1319) 2023-09-22 17:46:57 +03:00
.editorconfig Adding new code-generator (Butcher) (#1069) 2022-11-21 01:06:55 +02:00
.gitignore Migrate to hatchling (#1095) 2023-01-12 02:49:58 +02:00
.pre-commit-config.yaml Migrate to hatchling (#1095) 2023-01-12 02:49:58 +02:00
.readthedocs.yml Update ReadTheDocs configuration (#1345) 2023-10-21 19:31:48 +03:00
CHANGES.rst Bump version 2023-09-25 19:07:47 +03:00
CITATION.cff Update citation 2023-10-27 00:50:21 +03:00
codecov.yaml Remove compatibility with Python 3.7 2021-05-25 01:00:36 +03:00
CONTRIBUTING.md Fixed contributing URL 2023-04-13 00:02:15 +03:00
HISTORY.rst towncrier integration (#647) 2021-08-01 19:08:03 +03:00
LICENSE Update dates interval in license file 2023-09-03 03:16:48 +03:00
Makefile Re-generate Bot API 2023-10-29 02:15:50 +03:00
pyproject.toml Upgrade to py12 (#1354) 2023-11-18 21:24:19 +02:00
README.rst Telegram Bot API 6.9 (#1319) 2023-09-22 17:46:57 +03:00

#######
aiogram
#######

.. image:: https://img.shields.io/pypi/l/aiogram.svg?style=flat-square
    :target: https://opensource.org/licenses/MIT
    :alt: MIT License

.. image:: https://img.shields.io/pypi/status/aiogram.svg?style=flat-square
    :target: https://pypi.python.org/pypi/aiogram
    :alt: PyPi status

.. image:: https://img.shields.io/pypi/v/aiogram.svg?style=flat-square
    :target: https://pypi.python.org/pypi/aiogram
    :alt: PyPi Package Version

.. image:: https://img.shields.io/pypi/dm/aiogram.svg?style=flat-square
    :target: https://pypi.python.org/pypi/aiogram
    :alt: Downloads

.. image:: https://img.shields.io/pypi/pyversions/aiogram.svg?style=flat-square
    :target: https://pypi.python.org/pypi/aiogram
    :alt: Supported python versions

.. image:: https://img.shields.io/badge/dynamic/json?color=blue&logo=telegram&label=Telegram%20Bot%20API&query=%24.api.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Faiogram%2Faiogram%2Fdev-3.x%2F.butcher%2Fschema%2Fschema.json&style=flat-square
    :target: https://core.telegram.org/bots/api
    :alt: Telegram Bot API

.. image:: https://img.shields.io/github/actions/workflow/status/aiogram/aiogram/tests.yml?branch=dev-3.x&style=flat-square
    :target: https://github.com/aiogram/aiogram/actions
    :alt: Tests

.. image:: https://img.shields.io/codecov/c/github/aiogram/aiogram?style=flat-square
    :target: https://app.codecov.io/gh/aiogram/aiogram
    :alt: Codecov

**aiogram** is a modern and fully asynchronous framework for
`Telegram Bot API <https://core.telegram.org/bots/api>`_ written in Python 3.8 using
`asyncio <https://docs.python.org/3/library/asyncio.html>`_ and
`aiohttp <https://github.com/aio-libs/aiohttp>`_.

Make your bots faster and more powerful!

Documentation:
 - 🇺🇸 `English <https://docs.aiogram.dev/en/dev-3.x/>`_
 - 🇺🇦 `Ukrainian <https://docs.aiogram.dev/uk_UA/dev-3.x/>`_


Features
========

- Asynchronous (`asyncio docs <https://docs.python.org/3/library/asyncio.html>`_, :pep:`492`)
- Has type hints (:pep:`484`) and can be used with `mypy <http://mypy-lang.org/>`_
- Supports `PyPy <https://www.pypy.org/>`_
- Supports `Telegram Bot API 6.9 <https://core.telegram.org/bots/api>`_ and gets fast updates to the latest versions of the Bot API
- Telegram Bot API integration code was `autogenerated <https://github.com/aiogram/tg-codegen>`_ and can be easily re-generated when API gets updated
- Updates router (Blueprints)
- Has Finite State Machine
- Uses powerful `magic filters <https://docs.aiogram.dev/en/latest/dispatcher/filters/magic_filters.html#magic-filters>`_
- Middlewares (incoming updates and API calls)
- Provides `Replies into Webhook <https://core.telegram.org/bots/faq#how-can-i-make-requests-in-response-to-updates>`_
- Integrated I18n/L10n support with GNU Gettext (or Fluent)


.. warning::

    It is strongly advised that you have prior experience working
    with `asyncio <https://docs.python.org/3/library/asyncio.html>`_
    before beginning to use **aiogram**.

    If you have any questions, you can visit our community chats on Telegram:

    - 🇺🇸 `@aiogram <https://t.me/aiogram>`_
    - 🇺🇦 `@aiogramua <https://t.me/aiogramua>`_
    - 🇺🇿 `@aiogram_uz <https://t.me/aiogram_uz>`_
    - 🇰🇿 `@aiogram_kz <https://t.me/aiogram_kz>`_
    - 🇷🇺 `@aiogram_ru <https://t.me/aiogram_ru>`_
    - 🇮🇷 `@aiogram_fa <https://t.me/aiogram_fa>`_
    - 🇮🇹 `@aiogram_it <https://t.me/aiogram_it>`_
    - 🇧🇷 `@aiogram_br <https://t.me/aiogram_br>`_