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 tg-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.2.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

xtg_auth-0.0.2-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for xtg_auth-0.0.2.tar.gz
Algorithm Hash digest
SHA256 bca7cd0276090b61465470d4883bb964e44dfb670a0e873ccde71f70d97ff7d7
MD5 dec9b10da1cb4f45b70056c7f1b1b1ce
BLAKE2b-256 903976844a2a7255605d30bbbcd48ffbde41fa1a5a1fff05262ac2a9d6aa4c09

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for xtg_auth-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 98c609175a03f5d4fdbbc38ee6d7b1853af2413406cf5ac7f3c5334fe8f79c82
MD5 e553790927e19d26d6dae80a6d234307
BLAKE2b-256 2c9e13a174a2ac74a9321eec1b98eacbd7ea94399461a3e223c804eef50e2220

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