Lcore API Documentation

v0.0.1 · Interactive API reference

POST/auth/login

Authenticate and return a signed token + session cookie.

POST/auth/register

Register a new TaskFlow account.

GET/auth/me

Get current user from signed session cookie.

POST/auth/logout

Clear session cookie.

GET/auth/basic-demo

Protected by HTTP Basic Auth. Try: curl -u admin:admin123 ...

GET/api/users/

List all team members with optional role filter and pagination.

GET/api/users/<id:int>

Fetch a team member by ID.

ParameterTypeDefault
id-required
POST/api/users/

Invite a new team member. Admin only.

PUT/api/users/<id:int>

Full update of a user profile. Admin or self only.

ParameterTypeDefault
id-required
PATCH/api/users/<id:int>

Partial update (change role, deactivate, etc.). Admin only.

ParameterTypeDefault
id-required
DELETE/api/users/<id:int>

Remove a team member. Admin only.

ParameterTypeDefault
id-required
GET/api/users/search

Search team members by name or email.

GET/api/projects/

List all projects with optional status filter.

GET/api/projects/<id:int>

Get project with its task summary.

ParameterTypeDefault
id-required
POST/api/projects/

Create a new project. Admin only.

PUT/api/projects/<id:int>

Update project details. Admin only.

ParameterTypeDefault
id-required
DELETE/api/projects/<id:int>

Delete a project and all its tasks. Admin only.

ParameterTypeDefault
id-required
GET/api/projects/<project_id:int>/tasks

List all tasks in a project with optional filters.

ParameterTypeDefault
project_id-required
POST/api/projects/<project_id:int>/tasks

Create a new task in a project.

ParameterTypeDefault
project_id-required
GET/api/projects/<project_id:int>/tasks/<task_id:int>

Get a single task with its comments.

ParameterTypeDefault
project_id-required
task_id-required
PATCH/api/projects/<project_id:int>/tasks/<task_id:int>

Update task status, assignee, priority, etc.

ParameterTypeDefault
project_id-required
task_id-required
DELETE/api/projects/<project_id:int>/tasks/<task_id:int>

Delete a task.

ParameterTypeDefault
project_id-required
task_id-required
POST/api/projects/<project_id:int>/tasks/<task_id:int>/comments

Add a comment to a task.

ParameterTypeDefault
project_id-required
task_id-required
POST/api/projects/<project_id:int>/tasks/<task_id:int>/attachment

Upload a file attachment to a task. curl -X POST -F "[email protected]" http://localhost:8080/api/projects/1/tasks/1/attachment

ParameterTypeDefault
project_id-required
task_id-required
GET/api/projects/attachments/<filename:path>

Serve uploaded task attachments. Demonstrates static_file().

ParameterTypeDefault
filename-required
GET/api/projects/dashboard/overview

Project dashboard with aggregated stats. Demonstrates async route handler.

GET/api/projects/dashboard/activity

Recent activity feed.

POST/api/notifications/email

Send an email notification via SMTP.

POST/api/notifications/task-assigned/<task_id:int>

Notify a user they've been assigned a task.

ParameterTypeDefault
task_id-required
POST/api/notifications/async-batch

Send batch notifications asynchronously. Demonstrates async def route handler with asyncio.gather.

GET/api/notifications/history

Get notification log with optional filters.

GET/

TaskFlow welcome page with API overview.

GET/frontend

TaskFlow frontend — full project management UI.

POST/playground/run

Execute Lcore code in a sandboxed environment.

GET/health

Health check endpoint.

GET/static/<filepath:path>

Serve static files with ETag and cache headers.

ParameterTypeDefault
filepath-required
GET/admin/dashboard

Admin dashboard - requires admin role token.

GET/admin/users

Admin: list all users with all fields.

GET/debug/routes

Route inspection via app.show_routes().

GET/debug/middleware

Middleware stack via app.show_middleware().

GET/debug/config

Show config with sensitive values redacted.

GET/debug/stats

Plugin request counter stats.

GET/debug/di

Dependency injection demo - shows different lifetimes.

GET/old-api

Redirect demo - 301 Moved Permanently.

View raw JSON →