Service for download your best ranobes for free from ranobelib
- Backend
- Create project arch
- /users
- Endpoints
- CRUD
- DB models
- Schemas
- /ranobes
- Endpoints
- CRUD
- DB models
- Schemas
- Docker
- Dockerfile
- .env
- Telegram Bot
- Create project arch
- Requests with backend
- Celery broker
- Message handlers
- /start
- /ranobe
- /help
- Callback handlers
- ...
- ...
- ...
- Inline mode
- Ad and news mailing
- Ranobe events
- Docker
- Dockerfile
- .env
- Docker-compose
- Release MVP
- Python 3.10 (FastAPI, SQLAIchemy, Aiohttp)
- Docker
- Python 3.10 (Aiogram 3.0, Aiohttp)
- Docker
- aiogram>=3.0.0b7
- aiohttp==3.8.4
- loguru>=0.6.0
- orjson>=3.8.8
- python-dotenv==1.0.0
- aiohttp==3.8.4
- alembic==1.10.3
- asyncio==3.4.3
- asyncpg==0.27.0
- fastapi==0.95.1
- gunicorn==20.1.0
- loguru==0.6.0
- orjson==3.8.10
- pydantic==1.10.7
- python-dotenv==1.0.0
- SQLAlchemy==2.0.9
- uvicorn==0.21.1
REST API docs
Create a new user
request body
{
"user_id": "1840037832",
"username": "vladdd00",
"full_name": "влад",
"admin": true
}
response body
{
"created": true,
}
User edit
request body
{
"admin": false (or null)
}
P.S. if the value is
null
it will not be changed
response body
{
"success": true,
}
Get users list
query parameters
{
"limit": 1 (optional, default=50)
}
response body
{
"users": [
{
"id": 1,
"telegram": {
"user_id": "1840037832",
"username": "vladdd00",
"full_name": "влад",
},
"admin": true
}
]
}
Get users count
response body
{
"count": 1,
"admin_count": 1
}
Get user by id
response body
{
"id": 1,
"telegram": {
"user_id": "1840037832",
"username": "vladdd00",
"full_name": "влад",
},
"admin": true
}
Get telegram user by user_id
response body
{
"user_id": "1840037832",
"username": "vladdd00",
"full_name": "влад",
"admin": true
}
in development