Skip to main content

Review

Source: app/api/review.py

Annotations

GET /api/v1/jobs/{job_id}/annotations

Paginated list of annotations for a labeling job. Query params: offset, limit, frame_id, class_name.

PATCH /api/v1/annotations/{annotation_id}

Update an annotation's bbox, class, or accepted state.

POST /api/v1/annotations/merge-classes

Bulk-rename one class to another across a job (e.g. merge truck and lorry).

Job management

PATCH /api/v1/jobs/{job_id}

Update job metadata (name, description).

DELETE /api/v1/jobs/{job_id}

Delete a job and all its annotations.

POST /api/v1/jobs/{job_id}/duplicate

Clone a job — useful when you want to re-run with different prompts but keep the original.

POST /api/v1/jobs/{job_id}/add-class

Add a new class to a finished job and re-run SAM 3 just for that class.

Classes

GET /api/v1/jobs/{job_id}/classes

List all classes present in a job's annotations.

DELETE /api/v1/jobs/{job_id}/classes/{class_name}

Remove a class entirely (deletes all annotations of that class).

Stats & export

GET /api/v1/jobs/{job_id}/overview

High-level summary: frame count, annotation count per class, completion %.

GET /api/v1/jobs/{job_id}/stats

Detailed stats — distributions, confidence histograms, per-class precision when ground truth is available.

POST /api/v1/jobs/{job_id}/export

Generate a YOLO-format dataset (images + labels) and stage it in MinIO. Returns a download URL.