Runs
Queue all files for upload
Requires scope `runs:upload`.
Requires scope runs:upload.
Authorization
bearerAuth AuthorizationBearer <token>
Personal access tokens begin with dhub_… and are restricted by their assigned scopes.
In: header
Path Parameters
instrumentId*string
runId*string
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/instruments/plate-reader/runs/run-2026-001/request-upload-all"{ "instrument_id": "string", "run_id": "string", "files_queued": 0}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}{ "error": { "code": "string", "message": "string", "details": { "property1": null, "property2": null } }}Queue selected files for upload POST
Requires scope `runs:upload`.
Request a presigned upload URL POST
Requires scope `runs:upload`. PAT only; browser sessions are rejected. Watchers at 1.1.0 or newer send `relative_path` and `X-Data-Hub-Watcher-Version`. A file whose name is already used by a different folder is stored as `<stem>~<folder hash>.<ext>`, and the returned `s3_key` uses that stored name. Older watchers are looked up by filename only.