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.8.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

xtg_auth-0.0.8-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: xtg_auth-0.0.8.tar.gz
  • Upload date:
  • Size: 5.0 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.8.tar.gz
Algorithm Hash digest
SHA256 04452f81c086d7b97c62f4951000e098555975bc290d16f967ebf92010a2f0c5
MD5 c5e54fd447f26924aa142d69a1178435
BLAKE2b-256 0be3322241753c5da4a3157c58045f0a59d2aceeafce7d08e441e8c912639ef2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: xtg_auth-0.0.8-py3-none-any.whl
  • Upload date:
  • Size: 4.7 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 4919732500b78541e894089c1751be0c2c1d9c911b35adba5d868ca22ef71681
MD5 36d5a6e1b6c672b9315ba1d6b0ec85a7
BLAKE2b-256 649591447b6fe0bd2eb31c22a19ed1557c4bc6dd44dfba283b47a7789cc0fbb7

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