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

Uploaded Python 3

File details

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

File metadata

  • Download URL: ftmgram-3.0.2.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.2.tar.gz
Algorithm Hash digest
SHA256 0948b9d28b00a65c787b59f447534573480a8a08609d99101def80190fb5717d
MD5 276a0f8d0efe1b4252438054f23672fa
BLAKE2b-256 a04e3e69a0921a644718b266d18eb4dc73183e2107bb50685b4d18fe7b0196e6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ftmgram-3.0.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b16f3c344b69c1547f169a2819187e773ee49d12d223f36dce48dde1f3c5e028
MD5 f7b3f32efe9495e480fb2a760f598b2c
BLAKE2b-256 d133e43407365147d4be542e40c939924056cc09035d6db8b99f2f2e45036227

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