Skip to main content

Elegant, modern and asynchronous Telegram MTProto API framework in Python for users and bots

Project description

FTMGram
Telegram MTProto API Framework for Python

PyPI version License Python versions GitHub Stars


FTMGram

Elegant, modern and asynchronous Telegram MTProto API framework in Python — for users and bots

FTMGram is an actively maintained, feature-complete fork of Pyrogram with full Bot API 10.1 (June 2026) support. It is a drop-in replacement for Pyrogram and KuriGram with zero migration friction.

from ftmgram import Client, filters

app = Client("my_account")

@app.on_message(filters.private)
async def hello(client, message):
    await message.reply("Hello from FTMGram!")

app.run()

What's New in v3.0.0 — Bot API 10.1

Feature Status
Rich MessagessendRichMessage, sendRichMessageDraft, editMessageText
RichText — 14 inline text types (Bold, Italic, Url, Code, Marked, …)
RichBlock — 19 block types (Paragraph, Photo, Video, Table, Slideshow, …)
Checklist mediaMessageMediaType.CHECKLIST, Checklist, ChecklistTask
Link poll mediaMessageMediaType.LINK, Link type
Chat join request queriesanswerChatJoinRequestQuery, sendChatJoinRequestWebApp
User.supports_join_request_queries, Chat.guard_bot, ChatJoinRequest.query_id
Owned star balanceget_owned_star_count

Key Features

  • Readypip install ftmgram and start building immediately.
  • Easy — Clean, Pythonic API that hides MTProto complexity.
  • Elegant — Low-level details abstracted into intuitive high-level types.
  • Fast — Powered by TgCrypto, a C-level cryptography library.
  • Type-hinted — Full type annotations for excellent IDE/editor support.
  • Async — Fully asynchronous; synchronous usage also supported.
  • Powerful — Complete access to Telegram's API — every official client action and more.
  • Bot API 10.1 complete — Latest Telegram features covered on day one.

Installing

Stable (PyPI)

pip install ftmgram

Latest (GitHub)

pip install https://github.com/ftmdevz/ftmgram/archive/ftmdevz.zip --force-reinstall

Quick Example — Rich Message

from ftmgram import Client
from ftmgram.types import InputRichMessage, InputRichMessageContent, RichText

app = Client("my_bot", bot_token="TOKEN")

async def main():
    await app.send_rich_message(
        chat_id=123456,
        rich_message=InputRichMessage(
            title=RichText.plain("FTMGram Guide"),
            content=[
                InputRichMessageContent.paragraph(
                    text=RichText.concat([
                        RichText.bold("FTMGram"),
                        RichText.plain(" supports full Bot API 10.1!"),
                    ])
                )
            ]
        )
    )

app.run(main())

Support

FTMGram is open source. Support its development:

Thank you ❤️


Resources


FTMGram is a fork of Pyrogram and FTMGram. Licensed under LGPLv3.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ftmgram-3.1.0.tar.gz (4.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ftmgram-3.1.0-py3-none-any.whl (5.9 MB view details)

Uploaded Python 3

File details

Details for the file ftmgram-3.1.0.tar.gz.

File metadata

  • Download URL: ftmgram-3.1.0.tar.gz
  • Upload date:
  • Size: 4.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ftmgram-3.1.0.tar.gz
Algorithm Hash digest
SHA256 b2701dba060cfeff343050f97edb972eb1d67a5191d0205217d84e20b393fb50
MD5 5cb9fb1b776c58e3a829d34f1d4c573d
BLAKE2b-256 5dfed7169de5476818ea945f74b0e5007ea63cbb436cece73b38186fa22bb6b0

See more details on using hashes here.

File details

Details for the file ftmgram-3.1.0-py3-none-any.whl.

File metadata

  • Download URL: ftmgram-3.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ftmgram-3.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0b72f971289e718beff5d3e124b1dbd7744f6fb9365de9f9e3233144e87d2d32
MD5 c52f9b346ae029167ead9c6605656b4f
BLAKE2b-256 a2669d920fb5f3f0f889c671c3a736442bfddd55da1dc6f7f12c037ac9f06910

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page