Skip to main content

Authentication backend for Telegram Mini Apps on starlette/fastapi API

Project description

Telegram Auth Backend for FastAPI/Starlette

INSTALL

In your FastAPI/Starlette app:

pip install xtg-auth

Add your Telegram Bot API Token to .env file as TgBotToken:

TgBotToken=0000000000:AAaaaAaAAAaaAAAAaaAAAaAAAaaAaaaaaAA

Before running add AuthenticationMiddleware to your app, and set TgAuth object with passed token as backend

from fastapi import FastAPI
from starlette.middleware.authentication import AuthenticationMiddleware
from tg_ath import TgAuth

app = FastAPI()
TOKEN = env('TgBotToken')
app.add_middleware(AuthenticationMiddleware, backend=TgAuth(TOKEN))

Using:

Protected endpoints expect Telegram.WebApp.initData string in Authorization header afrer Tg prefix in each request.

example:

Authorization: Tg user=%7B%22id%22%3A1038938370%2C%22first_name%22%3A%22Crypto%E2%86%94%EF%B8%8FFiat%22%2C%22last_name%22%3A%22%F0%9F%92%B5%F0%9F%92%B6%F0%9F%92%B3%22%2C%22username%22%3A%22ex212%22%2C%22language_code%22%3A%22en%22%2C%22allows_write_to_pm%22%3Atrue%7D&chat_instance=-6786124926491770465&chat_type=sender&auth_date=1729138692&hash=32e367eb6019007fdb2bd8f9a08628fb14ebc737df4a0dad3ecd2910b342f488 

Made with ❤ on top of the X-Model and Aiogram.

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

xtg_auth-0.0.14.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

xtg_auth-0.0.14-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file xtg_auth-0.0.14.tar.gz.

File metadata

  • Download URL: xtg_auth-0.0.14.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xtg_auth-0.0.14.tar.gz
Algorithm Hash digest
SHA256 ff856deec8200331c9726c08cf8ed65201fcb2a534c34aab2dae7e6a416f8fdd
MD5 b24284490be3e68cac15525185606625
BLAKE2b-256 81b1537042becddb77efb1ce3fbf5141d5a7d808b9049b3452c77f5140f34c2c

See more details on using hashes here.

File details

Details for the file xtg_auth-0.0.14-py3-none-any.whl.

File metadata

  • Download URL: xtg_auth-0.0.14-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for xtg_auth-0.0.14-py3-none-any.whl
Algorithm Hash digest
SHA256 c600c7fcfa975a63a5d7781b51d2e14c043abc04a0fd53d30fe6b80585ad397e
MD5 5e26bda46df571bc7e4a7fb8173c7890
BLAKE2b-256 092d4502da71429d91b1b70593c471a41a023d61681af31517a3cfaa19716d37

See more details on using hashes here.

Supported by

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