Automated Action d4b0ceed9c Implement Task Manager API with FastAPI and SQLite
- Setup project structure and FastAPI application
- Configure SQLite database with SQLAlchemy ORM
- Setup Alembic for database migrations
- Implement user authentication with JWT
- Create task models and CRUD operations
- Implement task assignment functionality
- Add detailed API documentation
- Create comprehensive README with usage instructions
- Lint code with Ruff
2025-06-08 18:02:43 +00:00

67 lines
1.7 KiB
Python

from fastapi.openapi.models import ExternalDocumentation
# External documentation
external_docs = ExternalDocumentation(
description="Task Manager API Documentation",
url="/redoc",
)
# API description
api_description = """
# Task Manager API
A RESTful API for managing tasks and assignments built with FastAPI and SQLite.
## Features
* User authentication and registration
* Task creation and management
* Task status tracking
* Task assignment to users
* Filtering and searching tasks
## Authentication
This API uses OAuth2 with JWT tokens for authentication.
Most endpoints require authentication.
To authenticate:
1. Use the `/api/v1/auth/login` endpoint with your username and password
2. Use the returned token in the Authorization header as `Bearer {token}`
## Rate Limiting
There is no rate limiting implemented in this version of the API.
## Pagination
List endpoints support pagination with `skip` and `limit` parameters.
"""
# Tags metadata
tags_metadata = [
{
"name": "Health",
"description": "Health check endpoints to verify API status.",
},
{
"name": "Authentication",
"description": "Operations for authentication, including login.",
},
{
"name": "Users",
"description": "Operations with users, including registration, profile "
"and user management.",
},
{
"name": "Tasks",
"description": "CRUD operations for tasks, including creation, updates, "
"and retrieval.",
},
{
"name": "Task Assignments",
"description": "Operations for assigning tasks to users and managing "
"task assignments.",
},
]