Welcome to Pyrogram

Telegram MTProto API Framework for Python
Documentation Changelog Community
Schema Layer TgCrypto Version

from pyrogram import Client, Filters

app = Client("my_account")

def hello(client, message):
    message.reply("Hello {}".format(message.from_user.first_name))


Welcome to Pyrogram’s Documentation! Here you can find resources for learning how to use the framework. Contents are organized into self-contained topics and can be accessed from the sidebar, or by following them in order using the Next button at the end of each page. But first, here’s a brief overview of what is this all about.


Pyrogram is an elegant, easy-to-use Telegram client library and framework written from the ground up in Python and C. It enables you to easily create custom apps using both user and bot identities (bot API alternative) via the MTProto API.


  • Easy: You can install Pyrogram with pip and start building your applications right away.
  • Elegant: Low-level details are abstracted and re-presented in a much nicer and easier way.
  • Fast: Crypto parts are boosted up by TgCrypto, a high-performance library written in pure C.
  • Documented: Pyrogram API methods, types and public interfaces are well documented.
  • Type-hinted: Exposed Pyrogram types and method parameters are all type-hinted.
  • Updated, to the latest Telegram API version, currently Layer 97 on top of MTProto 2.0.
  • Pluggable: The Smart Plugin system allows to write components with minimal boilerplate code.
  • Comprehensive: Execute any advanced action an official client is able to do, and even more.

To get started, press the Next button.