REST API endpoints — all under /api with JWT Bearer authentication.
API Reference
All endpoints are prefixed with /api and authenticated with a JWT Bearer token, obtained via POST /api/auth/login. Agent endpoints use X-Agent-Token instead.
Authentication
Method
Endpoint
Description
GET
/api/auth/setup/status
Check whether admin initialization is needed
POST
/api/auth/setup
Initialize the first admin (only when no user exists)
POST
/api/auth/login
Log in and receive a JWT
POST
/api/auth/logout
Log out (invalidate current token)
GET
/api/auth/profile
Current user profile
PUT
/api/auth/password
Change password
Backup Tasks
Method
Endpoint
Description
GET
/api/backup/tasks
List tasks
POST
/api/backup/tasks
Create
GET
/api/backup/tasks/:id
Detail
PUT
/api/backup/tasks/:id
Update
DELETE
/api/backup/tasks/:id
Delete
PUT
/api/backup/tasks/:id/toggle
Enable / disable
POST
/api/backup/tasks/:id/run
Trigger a manual run
Backup Records
Method
Endpoint
Description
GET
/api/backup/records
List records with filters
GET
/api/backup/records/:id
Record detail
GET
/api/backup/records/:id/logs/stream
Live logs (SSE)
GET
/api/backup/records/:id/download
Download the artifact
POST
/api/backup/records/:id/restore
Restore to the original source
DELETE
/api/backup/records/:id
Delete a record
POST
/api/backup/records/batch-delete
Bulk delete
Storage Targets
Method
Endpoint
Description
GET
/api/storage-targets
List
POST
/api/storage-targets
Create
GET
/api/storage-targets/:id
Detail
PUT
/api/storage-targets/:id
Update
DELETE
/api/storage-targets/:id
Delete
POST
/api/storage-targets/test
Test connection with pending config
POST
/api/storage-targets/:id/test
Re-test a saved target
PUT
/api/storage-targets/:id/star
Toggle favourite
GET
/api/storage-targets/:id/usage
Query remote usage (where supported)
GET
/api/storage-targets/rclone/backends
List all available rclone backends
POST
/api/storage-targets/google-drive/auth-url
Start Google Drive OAuth
POST
/api/storage-targets/google-drive/complete
Complete OAuth flow
Nodes (Cluster)
Method
Endpoint
Description
GET
/api/nodes
List nodes
POST
/api/nodes
Create a node and return its token
GET
/api/nodes/:id
Node detail
PUT
/api/nodes/:id
Rename
DELETE
/api/nodes/:id
Delete (rejected if tasks are still attached)
GET
/api/nodes/:id/fs/list
Browse a directory (remote nodes use an async RPC via Agent)
Agent Protocol (X-Agent-Token)
Dedicated endpoints for the Agent CLI. Authenticated via the X-Agent-Token header instead of JWT.