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.0.1.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.0.1-py3-none-any.whl (5.9 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ftmgram-3.0.1.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.0.1.tar.gz
Algorithm Hash digest
SHA256 bb830aaac2d040a3f985f4d4f7937340a529f9ea95e682831bf79c7d6b89a8a1
MD5 fe99ab29993e39f8b85f0d17a81595c6
BLAKE2b-256 f32a6ce169bb410ac3744d335acc277ff090adb4cb5ada9f79d30ab48d201d18

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ftmgram-3.0.1-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.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 868a0da7b01f3ed2db9aa3f93620ece63cb1ad62640d1383f6414851b5812bd6
MD5 2d71f24a536528018544d78e0e38ca2e
BLAKE2b-256 da7382f31c5fee89d592d6aa8a52172600e2b9e5c5e25f18598062f410fb9790

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