Telegram + Табрика
Используйте Табрику как бэкенд для Telegram-бота: REST API для данных пользователей, визуальный интерфейс для управления базой, мгновенный старт без PostgreSQL.
Как начать
Создайте структуру данных
Таблица Users: telegram_id, username, настройки
Получите API-токен
Токен с правами на запись — в настройках организации, вкладка API
Интегрируйте в бота
POST /public/record/create при регистрации, GET /public/record/list для чтения
Опросный паттерн
Бот сам запрашивает данные по событиям пользователя через API
Архитектура Telegram-бота с Табрикой
Telegram-бот взаимодействует с Табрикой через REST API. Пользователь пишет боту — бот делает GET /public/record/list для проверки пользователя, POST /public/record/create для создания профиля. Данные мгновенно доступны в интерфейсе Табрики.
- Проверка пользователя: GET /public/record/list?where=(telegram_id,eq,12345)
- Новый пользователь: POST /public/record/create с данными в теле запроса
- Обновление данных: POST /public/record/update?row_id={id}
- Авторизация: заголовок Authorization: Bearer {ваш_токен}
Преимущества перед своей БД
Вместо PostgreSQL + SQLAlchemy + миграций + деплоя — просто Табрика. Экономите дни разработки на старте. При необходимости можно мигрировать позже.
- Нет настройки базы данных
- Визуальный интерфейс для просмотра пользователей
- Легко добавить поля без миграций
- Мгновенный старт для хакатонов
Примеры кода
import httpx
BASE = "https://api.tabrica.ru"
DB_ID = 42 # ID базы данных из URL в интерфейсе
TABLE_ID = 7 # ID таблицы из URL в интерфейсе
HEADERS = {
"Authorization": "Bearer ваш_токен",
"Content-Type": "application/json",
}
async def get_user(telegram_id: int):
async with httpx.AsyncClient() as client:
r = await client.get(
f"{BASE}/public/record/list",
params={
"database_id": DB_ID,
"table_id": TABLE_ID,
"where": f"(telegram_id,eq,{telegram_id})",
"response_format": "names",
},
headers=HEADERS,
)
rows = r.json()["rows"]
return rows[0] if rows else None
async def create_user(telegram_id: int, username: str):
async with httpx.AsyncClient() as client:
r = await client.post(
f"{BASE}/public/record/create",
params={"database_id": DB_ID, "table_id": TABLE_ID},
json={"data": {"telegram_id": telegram_id, "username": username}},
headers=HEADERS,
)
return r.json()Ответы на вопросы
Собрали ответы на самые частые вопросы о текущих возможностях и ближайших планах
Данные хранятся на территории РФ
Табрика проектируется для работы с персональными и рабочими данными в российском правовом поле, включая требования 152-ФЗ.
Инфраструктура в РФ
Хранение и обработка данных выполняются на территории Российской Федерации.
Соответствие 152-ФЗ
Подход к размещению данных соответствует требованиям Федерального закона N 152-ФЗ.
Контроль данных
Доступы и роли помогают держать рабочие данные под управлением команды; журнал аудита за 90 дней доступен на уровнях организации, базы и таблицы и показывает изменения полей.
Как быстро начать использование
Посмотрите нашу серию видео, чтобы быстро начать использовать Табрику
Начните путь к простому управлению уже сейчас
Подходящий тариф для каждого
Попробуйте весь функционал бесплатно и выберите наиболее подходящий тариф
Бесплатный
Для знакомства с платформой
Плюс
Параметры тарифа уточняются
Бизнес
Параметры тарифа уточняются
Корпоративный
Параметры тарифа уточняются
Проект находится на ранней стадии развития. Платные тарифы с расширенными лимитами будут добавлены по мере роста платформы.
Следите за обновлениями в Telegram