The endpoints the web app itself uses. They are not a stable public interface and can change between releases.
| Method | Path | Purpose |
|---|---|---|
| GET | /api/health |
Server health and version info |
| POST | /api/jobs |
JSON {url, stems?} or multipart file + stems → {job_id} |
| GET | /api/jobs |
List completed (library) jobs |
| GET | /api/jobs/{id} |
Job state snapshot |
| GET | /api/jobs/{id}/events |
SSE stream of job state |
| POST | /api/jobs/{id}/cancel |
Terminate active subprocess and cancel job |
| PATCH | /api/jobs/{id}/sections |
Save waveform section markers for a job |
| GET | /api/jobs/{id}/stems/{name}.wav |
Stream a single stem WAV file |
| GET | /api/jobs/{id}/stems/{name}.mp3 |
Transcode and stream a stem as MP3 |
| GET | /api/jobs/{id}/video.mp4 |
Mux the current mix with the source video (MP4 upload or YouTube) into an MP4 |
| DELETE | /api/jobs/{id} |
Remove job dir from disk (terminal jobs only) |