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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ftmgram-3.0.25.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.25.tar.gz
Algorithm Hash digest
SHA256 94c407417d8651fc6bc88658a4efa7c85530188175122c4e94b5c5f734b3c8cb
MD5 c53ff8e49b40cc6623ae7df42e2c829d
BLAKE2b-256 2b250fa3cd9ae356b78d3895f268395590ce8c4d03c6647f7efb207d951b3ac5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ftmgram-3.0.25-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.25-py3-none-any.whl
Algorithm Hash digest
SHA256 8ae6ba114a6066fa452e7cfcecc82aa9ab480b809747b22fc1bf0093ee84f09c
MD5 23cdf59a232f82f6fc432224796ac9d4
BLAKE2b-256 ca18f07a49a81add7d1f6d969db92b07aeb7cfbe70e3f7d81e5d5973ee12b028

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