HTTP API
Project routes
The routes of the projects: the list, a new project, one project with its videos, a change of name or state, and the upload of a video.
Source file: captionbob_server/project_routes.js
GET /api/projects
Access: any. A route that a dashboard login or an API key may call.
GET /api/projects. All projects of all users, the last changed first.
POST /api/projects
Access: any. A route that a dashboard login or an API key may call.
POST /api/projects with {"name"}. A new active project.
GET /api/projects/:projectId
Access: any. A route that a dashboard login or an API key may call.
Path values: projectId.
GET /api/projects/:projectId. One project with its videos, the newest first. Each video has its newest render, which gives its status.
PATCH /api/projects/:projectId
Access: any. A route that a dashboard login or an API key may call.
Path values: projectId.
PATCH /api/projects/:projectId with {"name"}, {"state"} or both. The state "archived" moves the project to the Archive tab.
POST /api/projects/:projectId/videos
Access: any. A route that a dashboard login or an API key may call.
Path values: projectId.
POST /api/projects/:projectId/videos?name=<file name>, with the video file as the raw body. The body is streamed to a file within the size limit. Python probes the file, and only a video is kept.