API Reference

All backend endpoints are prefixed with /data/.

The OpenAPI / Swagger UI is available (in local deployments) at:

Authentication

If Keycloak authentication is enabled, most endpoints require:

Authorization: Bearer <user_jwt>

Ownership is enforced for operations such as list/download/delete, job status, and schedules.

Files and metadata

Method Path Description

POST

/data/upload_file

Upload a file to object storage and record metadata + job

POST

/data/ingest_api

One-off HTTP ingest (JSON or raw file)

POST

/data/ingest_db

One-off DB ingest (PostgreSQL / MySQL)

GET

/data/file_exists

Check if a file exists for the current user

GET

/data/download_file

Download a file (ownership enforced)

GET

/data/list_files

List files for the current user

DELETE

/data/delete_file

Delete a file and its metadata (and DDE entry if configured)

POST

/data/save_metadata

Insert/update metadata row for current user

GET

/data/metadata

List metadata rows for current user

Jobs and schedules

Method Path Description

GET

/data/job_status/{job_id}

Job status/progress (ownership enforced)

GET

/data/jobs

List recent jobs for current user

POST

/data/schedule_ingest_api

Schedule recurring API ingests

POST

/data/schedule_db

Schedule recurring DB ingests

GET

/data/schedules

List schedules for current user

DELETE

/data/schedules/{schedule_id}

Cancel a schedule (ownership enforced)

Debug endpoints (development only)

A debug endpoint exists for service token exchange flows:

  • GET /data/debug_service_token

This is expected to be enabled only in non-production contexts.

Example usage (illustrative)

curl -X GET \
  "http://localhost:5002/data/list_files" \
  -H "Authorization: Bearer <user_jwt>"