http://localhost:6699/api/v1
Canonical files
These files are served directly from the docs site and are the best entry points for tools that need to inspect the API.OpenAPI YAML
Raw OpenAPI 3.0 contract for endpoint discovery, schemas, and generated clients.
OpenAPI JSON
Raw JSON mirror of the OpenAPI contract.
Markdown Reference
Markdown export with examples, workflow notes, and endpoint behavior.
Authentication
Every endpoint exceptGET /health requires a Jumper Pro license key. Use the X-License-Key header when possible.
Typical workflow
1
Check health
Verify the backend is running with
GET /health.2
Analyze media
Run visual analysis, transcription, optional face clustering, and optional Summary Analysis with
POST /analyze. REST analysis runs directly and does not require MCP, an agent, or approval prompts.3
Track progress
Use the returned
task_id with Socket.IO progress events. In Socket.IO terms, emit join with the task_id, then listen for progress.4
Read summaries
Discover completed analyses with
POST /summaries/list or POST /summaries/collections, then read an overview and drill into selected nodes. This step is optional when Summary Analysis was not requested.5
Load analysis data
Load all analysis data with
POST /analysis-data/load, visual data for selected media with POST /analysis-data/load-for-media, or transcript-only data with POST /analysis-data/load-transcriptions.6
Search and retrieve
Search visually, search transcripts, fetch transcriptions, get thumbnails, inspect face clusters, or export clips and transcripts.
Endpoint groups
Important behavior notes
Analysis tasks
Analysis tasks
Only one analysis task can run at a time per backend instance. A new
POST /analyze request first asks the current task to stop. If the previous task is still unwinding, Jumper returns 409. The returned REST task_id identifies a Socket.IO room; there is currently no durable REST status or resume endpoint.Summary Analysis
Summary Analysis
Summary Analysis requires a supported Apple silicon or Windows device, a downloaded Summary model, and complete visual analysis for each file. Include the same path in
visual_media_paths to generate the visual dependency in one request. Use the /summaries/* read endpoints instead of depending on private cache files.Visual search results
Visual search results
POST /search/text, POST /search/image, and POST /search/frame return matches ordered best-first, but they do not return similarity scores. The optional exclude field is a soft ranking signal, not a hard filter.People filters
People filters
Use
people_filter on POST /search/text to restrict visual search results to named people or cluster IDs. When multiple people are supplied, people_filter_mode defaults to "and", which requires every selected person in the same frame; set it to "or" to match frames containing any selected person.Search match fields
Search match fields
Visual search matches use
frame_idx as a string on the 1-FPS embedding grid, include a base64 JPEG image, and provide scene_start_timestamp, scene_end_timestamp, original_index, hash_str, and video_path.Watch folder exclusions
Watch folder exclusions
Watch folders support
excluded_extensions and excluded_filename_globs. Glob patterns match the filename only, not the full path.Transcript exports
Transcript exports
Use
POST /export/transcript to export transcript segments to txt, csv, docx, or pdf.
