api
api
¶
REST API endpoints for the web UI.
All endpoints return JSON and are prefixed with /api.
list_jobs(request: Request, project: Optional[str] = None, group: Optional[str] = None, status: Optional[JobStatus] = None, limit: int = Query(default=100, le=1000))
async
¶
List all jobs with optional filtering.
list_running_jobs(request: Request)
async
¶
List all currently running jobs.
list_recent_jobs(request: Request, hours: int = Query(default=24, le=168), limit: int = Query(default=50, le=500))
async
¶
List jobs started within the last N hours.
get_job(request: Request, project: str, group: str, name: str, run_id: str)
async
¶
Get a specific job by its identifiers.
get_job_runs(request: Request, project: str, group: str, name: str)
async
¶
Get all runs for a specific job.
list_projects(request: Request)
async
¶
List all projects with summary stats.
get_dashboard_stats(request: Request)
async
¶
Get aggregated dashboard statistics.
list_job_checkpoints(request: Request, project: str, group: str, job_name: str)
async
¶
List all checkpoints for a specific job.
get_log(request: Request, project: str, group: str, name: str, run_id: str, tail: Optional[int] = Query(default=None, description='Return last N lines'), offset: int = Query(default=0, description='Byte offset to start reading from'))
async
¶
Get log contents for a job.
If tail is specified, returns the last N lines. Otherwise, returns content starting from offset.
stream_log(request: Request, project: str, group: str, name: str, run_id: str)
async
¶
Stream log contents via Server-Sent Events.
Connect to this endpoint for real-time log updates.
health_check(request: Request)
async
¶
Health check endpoint.