docs: added architecture

This commit is contained in:
ITQ
2025-12-17 19:19:09 +03:00
parent cd1d375f05
commit 11331a5c10
2 changed files with 92 additions and 0 deletions
+8
View File
@@ -51,11 +51,13 @@ Create a `.env` file or export variables:
## API Endpoints
### Authentication
- `POST /api/v1/sign-up` - Register new user
- `POST /api/v1/sign-in` - Authenticate user
- `GET /api/v1/me` - Get current user profile (requires auth)
### Competitions
- `POST /api/v1/competitions` - Create competition (requires auth)
- `GET /api/v1/competitions` - List competitions (requires auth)
- `GET /api/v1/competitions/{id}` - Get competition details (requires auth)
@@ -65,6 +67,7 @@ Create a `.env` file or export variables:
- `POST /api/v1/competitions/{id}/join` - Join competition (requires auth)
### Tasks
- `POST /api/v1/competitions/{comp_id}/tasks` - Create task (requires auth)
- `GET /api/v1/competitions/{comp_id}/tasks` - List tasks (requires auth)
- `GET /api/v1/competitions/{comp_id}/tasks/{task_id}` - Get task (requires auth)
@@ -72,26 +75,31 @@ Create a `.env` file or export variables:
- `DELETE /api/v1/competitions/{comp_id}/tasks/{task_id}` - Delete task (requires auth)
### Submissions
- `POST /api/v1/competitions/{comp_id}/tasks/{task_id}/submit` - Submit task with file upload (requires auth)
- `GET /api/v1/competitions/{comp_id}/tasks/{task_id}/history` - Get submission history (requires auth)
### Results
- `GET /api/v1/competitions/{id}/results` - Get competition leaderboard (requires auth)
- `GET /api/v1/competitions/{id}/results/me` - Get my results (requires auth)
- `POST /api/v1/competitions/{id}/results/recalculate` - Recalculate results (requires auth)
### Review (Token-based)
- `GET /api/v1/review/{token}/submissions` - List submissions for review
- `GET /api/v1/review/{token}/submissions/{id}` - Get submission details
- `POST /api/v1/review/{token}/submissions/{id}/evaluate` - Evaluate submission
- `POST /api/v1/review/{token}/submissions/{id}/release` - Release submission
### Achievements
- `GET /api/v1/achievements` - List all achievements (requires auth)
- `GET /api/v1/achievements/{id}` - Get achievement details (requires auth)
- `GET /api/v1/users/{user_id}/achievements` - Get user achievements (requires auth)
### Health Check
- `GET /api/v1/ping` - Health check endpoint
## Authentication